From 13c69817bd158a1d99535d9b2bef7850742b3169 Mon Sep 17 00:00:00 2001 From: "nars.wang" Date: Thu, 24 Jul 2008 11:48:19 +0000 Subject: [PATCH 001/206] Open-NARS distribution with examples --- nars-dist/Examples/Example-NAL1-abridged.txt | 52 + nars-dist/Examples/Example-NAL1-complete.txt | 122 + nars-dist/Examples/Example-NAL2-abridged.txt | 106 + nars-dist/Examples/Example-NAL2-complete.txt | 210 ++ nars-dist/Examples/Example-NAL3-abridged.txt | 117 + nars-dist/Examples/Example-NAL3-complete.txt | 249 ++ nars-dist/Examples/Example-NAL4-abridged.txt | 75 + nars-dist/Examples/Example-NAL4-complete.txt | 122 + nars-dist/Examples/Example-NAL5-abridged.txt | 284 ++ nars-dist/Examples/Example-NAL5-complete.txt | 357 +++ nars-dist/Examples/Example-NAL6-abridged.txt | 187 ++ nars-dist/Examples/Example-NAL6-complete.txt | 315 ++ nars-dist/Examples/Example-NAL7-abridged.txt | 78 + nars-dist/Examples/Example-NAL7-complete.txt | 247 ++ .../Examples/Example-NAL8-1-abridged.txt | 212 ++ .../Examples/Example-NAL8-1-complete.txt | 390 +++ .../Examples/Example-NAL8-2-abridged.txt | 52 + .../Examples/Example-NAL8-2-complete.txt | 83 + .../Examples/Example-NAL8-3-abridged.txt | 52 + .../Examples/Example-NAL8-3-complete.txt | 96 + .../Examples/Example-NAL8-4-abridged.txt | 66 + .../Examples/Example-NAL8-4-complete.txt | 124 + nars-dist/NARS-applet.html | 12 + nars-dist/README.TXT | 33 + nars-dist/javadoc/allclasses-frame.html | 198 ++ nars-dist/javadoc/allclasses-noframe.html | 198 ++ nars-dist/javadoc/constant-values.html | 917 ++++++ nars-dist/javadoc/deprecated-list.html | 147 + nars-dist/javadoc/help-doc.html | 224 ++ nars-dist/javadoc/index-files/index-1.html | 238 ++ nars-dist/javadoc/index-files/index-10.html | 152 + nars-dist/javadoc/index-files/index-11.html | 146 + nars-dist/javadoc/index-files/index-12.html | 170 ++ nars-dist/javadoc/index-files/index-13.html | 440 +++ nars-dist/javadoc/index-files/index-14.html | 223 ++ nars-dist/javadoc/index-files/index-15.html | 258 ++ nars-dist/javadoc/index-files/index-16.html | 280 ++ nars-dist/javadoc/index-files/index-17.html | 155 + nars-dist/javadoc/index-files/index-18.html | 242 ++ nars-dist/javadoc/index-files/index-19.html | 431 +++ nars-dist/javadoc/index-files/index-2.html | 201 ++ nars-dist/javadoc/index-files/index-20.html | 422 +++ nars-dist/javadoc/index-files/index-21.html | 164 + nars-dist/javadoc/index-files/index-22.html | 191 ++ nars-dist/javadoc/index-files/index-23.html | 161 + nars-dist/javadoc/index-files/index-3.html | 510 ++++ nars-dist/javadoc/index-files/index-4.html | 283 ++ nars-dist/javadoc/index-files/index-5.html | 230 ++ nars-dist/javadoc/index-files/index-6.html | 189 ++ nars-dist/javadoc/index-files/index-7.html | 338 +++ nars-dist/javadoc/index-files/index-8.html | 170 ++ nars-dist/javadoc/index-files/index-9.html | 452 +++ nars-dist/javadoc/index.html | 40 + .../javadoc/nars/entity/BudgetValue.html | 845 ++++++ nars-dist/javadoc/nars/entity/Concept.html | 1075 +++++++ nars-dist/javadoc/nars/entity/Goal.html | 282 ++ nars-dist/javadoc/nars/entity/Item.html | 374 +++ nars-dist/javadoc/nars/entity/Judgment.html | 348 +++ nars-dist/javadoc/nars/entity/Question.html | 270 ++ nars-dist/javadoc/nars/entity/Sentence.html | 891 ++++++ nars-dist/javadoc/nars/entity/ShortFloat.html | 459 +++ nars-dist/javadoc/nars/entity/Stamp.html | 599 ++++ nars-dist/javadoc/nars/entity/Task.html | 523 ++++ nars-dist/javadoc/nars/entity/TaskLink.html | 460 +++ nars-dist/javadoc/nars/entity/TermLink.html | 764 +++++ nars-dist/javadoc/nars/entity/TruthValue.html | 545 ++++ .../nars/entity/class-use/BudgetValue.html | 589 ++++ .../nars/entity/class-use/Concept.html | 287 ++ .../javadoc/nars/entity/class-use/Goal.html | 212 ++ .../javadoc/nars/entity/class-use/Item.html | 260 ++ .../nars/entity/class-use/Judgment.html | 503 +++ .../nars/entity/class-use/Question.html | 198 ++ .../nars/entity/class-use/Sentence.html | 527 ++++ .../nars/entity/class-use/ShortFloat.html | 213 ++ .../javadoc/nars/entity/class-use/Stamp.html | 328 ++ .../javadoc/nars/entity/class-use/Task.html | 627 ++++ .../nars/entity/class-use/TaskLink.html | 290 ++ .../nars/entity/class-use/TermLink.html | 419 +++ .../nars/entity/class-use/TruthValue.html | 944 ++++++ .../javadoc/nars/entity/package-frame.html | 57 + .../javadoc/nars/entity/package-summary.html | 245 ++ .../javadoc/nars/entity/package-tree.html | 168 + .../javadoc/nars/entity/package-use.html | 483 +++ nars-dist/javadoc/nars/gui/BagWindow.html | 679 +++++ nars-dist/javadoc/nars/gui/ConceptWindow.html | 548 ++++ .../javadoc/nars/gui/InferenceWindow.html | 598 ++++ nars-dist/javadoc/nars/gui/InputWindow.html | 616 ++++ nars-dist/javadoc/nars/gui/MainWindow.html | 818 +++++ nars-dist/javadoc/nars/gui/MessageDialog.html | 443 +++ nars-dist/javadoc/nars/gui/NarsFrame.html | 540 ++++ .../javadoc/nars/gui/ParameterWindow.html | 635 ++++ nars-dist/javadoc/nars/gui/TermWindow.html | 502 +++ .../javadoc/nars/gui/class-use/BagWindow.html | 181 ++ .../nars/gui/class-use/ConceptWindow.html | 181 ++ .../nars/gui/class-use/InferenceWindow.html | 181 ++ .../nars/gui/class-use/InputWindow.html | 210 ++ .../nars/gui/class-use/MainWindow.html | 181 ++ .../nars/gui/class-use/MessageDialog.html | 145 + .../javadoc/nars/gui/class-use/NarsFrame.html | 229 ++ .../nars/gui/class-use/ParameterWindow.html | 205 ++ .../nars/gui/class-use/TermWindow.html | 181 ++ nars-dist/javadoc/nars/gui/package-frame.html | 49 + .../javadoc/nars/gui/package-summary.html | 209 ++ nars-dist/javadoc/nars/gui/package-tree.html | 177 ++ nars-dist/javadoc/nars/gui/package-use.html | 271 ++ .../nars/inference/BudgetFunctions.html | 660 ++++ .../nars/inference/CompositionalRules.html | 449 +++ .../javadoc/nars/inference/MatchingRules.html | 520 ++++ .../javadoc/nars/inference/RuleTables.html | 574 ++++ .../nars/inference/StructuralRules.html | 515 ++++ .../nars/inference/SyllogisticRules.html | 519 ++++ .../inference/TemporalRules.Relation.html | 362 +++ .../javadoc/nars/inference/TemporalRules.html | 373 +++ .../nars/inference/TruthFunctions.html | 858 ++++++ .../nars/inference/UtilityFunctions.html | 351 +++ .../inference/class-use/BudgetFunctions.html | 145 + .../class-use/CompositionalRules.html | 145 + .../inference/class-use/MatchingRules.html | 145 + .../nars/inference/class-use/RuleTables.html | 145 + .../inference/class-use/StructuralRules.html | 145 + .../inference/class-use/SyllogisticRules.html | 145 + .../class-use/TemporalRules.Relation.html | 612 ++++ .../inference/class-use/TemporalRules.html | 145 + .../inference/class-use/TruthFunctions.html | 145 + .../inference/class-use/UtilityFunctions.html | 189 ++ .../javadoc/nars/inference/package-frame.html | 60 + .../nars/inference/package-summary.html | 261 ++ .../javadoc/nars/inference/package-tree.html | 166 + .../javadoc/nars/inference/package-use.html | 253 ++ nars-dist/javadoc/nars/io/ExperienceIO.html | 445 +++ nars-dist/javadoc/nars/io/Record.html | 485 +++ .../StringParser.InvalidInputException.html | 250 ++ nars-dist/javadoc/nars/io/StringParser.html | 671 ++++ nars-dist/javadoc/nars/io/Symbols.html | 1240 ++++++++ .../nars/io/class-use/ExperienceIO.html | 181 ++ .../javadoc/nars/io/class-use/Record.html | 145 + .../StringParser.InvalidInputException.html | 239 ++ .../nars/io/class-use/StringParser.html | 145 + .../javadoc/nars/io/class-use/Symbols.html | 181 ++ nars-dist/javadoc/nars/io/package-frame.html | 50 + .../javadoc/nars/io/package-summary.html | 203 ++ nars-dist/javadoc/nars/io/package-tree.html | 161 + nars-dist/javadoc/nars/io/package-use.html | 196 ++ .../javadoc/nars/language/CompoundTerm.html | 1228 ++++++++ .../javadoc/nars/language/Conjunction.html | 468 +++ .../nars/language/ConjunctionParallel.html | 484 +++ .../nars/language/ConjunctionSequence.html | 481 +++ .../javadoc/nars/language/DifferenceExt.html | 418 +++ .../javadoc/nars/language/DifferenceInt.html | 418 +++ .../javadoc/nars/language/Disjunction.html | 465 +++ .../javadoc/nars/language/Equivalence.html | 457 +++ .../nars/language/EquivalenceAfter.html | 469 +++ .../nars/language/EquivalenceWhen.html | 444 +++ nars-dist/javadoc/nars/language/ImageExt.html | 554 ++++ nars-dist/javadoc/nars/language/ImageInt.html | 554 ++++ .../javadoc/nars/language/Implication.html | 432 +++ .../nars/language/ImplicationAfter.html | 444 +++ .../nars/language/ImplicationBefore.html | 444 +++ .../nars/language/ImplicationWhen.html | 444 +++ .../javadoc/nars/language/Inheritance.html | 406 +++ nars-dist/javadoc/nars/language/Instance.html | 325 ++ .../nars/language/InstanceProperty.html | 325 ++ .../nars/language/IntersectionExt.html | 465 +++ .../nars/language/IntersectionInt.html | 465 +++ nars-dist/javadoc/nars/language/Negation.html | 416 +++ nars-dist/javadoc/nars/language/Product.html | 420 +++ nars-dist/javadoc/nars/language/Property.html | 325 ++ nars-dist/javadoc/nars/language/SetExt.html | 488 +++ nars-dist/javadoc/nars/language/SetInt.html | 488 +++ .../javadoc/nars/language/Similarity.html | 431 +++ .../javadoc/nars/language/Statement.html | 595 ++++ nars-dist/javadoc/nars/language/Temporal.html | 176 ++ nars-dist/javadoc/nars/language/Term.html | 563 ++++ .../nars/language/Variable.VarType.html | 378 +++ nars-dist/javadoc/nars/language/Variable.html | 761 +++++ .../nars/language/class-use/CompoundTerm.html | 701 +++++ .../nars/language/class-use/Conjunction.html | 220 ++ .../class-use/ConjunctionParallel.html | 145 + .../class-use/ConjunctionSequence.html | 145 + .../language/class-use/DifferenceExt.html | 145 + .../language/class-use/DifferenceInt.html | 145 + .../nars/language/class-use/Disjunction.html | 145 + .../nars/language/class-use/Equivalence.html | 216 ++ .../language/class-use/EquivalenceAfter.html | 182 ++ .../language/class-use/EquivalenceWhen.html | 182 ++ .../nars/language/class-use/ImageExt.html | 183 ++ .../nars/language/class-use/ImageInt.html | 183 ++ .../nars/language/class-use/Implication.html | 269 ++ .../language/class-use/ImplicationAfter.html | 182 ++ .../language/class-use/ImplicationBefore.html | 182 ++ .../language/class-use/ImplicationWhen.html | 182 ++ .../nars/language/class-use/Inheritance.html | 217 ++ .../nars/language/class-use/Instance.html | 145 + .../language/class-use/InstanceProperty.html | 145 + .../language/class-use/IntersectionExt.html | 145 + .../language/class-use/IntersectionInt.html | 145 + .../nars/language/class-use/Negation.html | 145 + .../nars/language/class-use/Product.html | 193 ++ .../nars/language/class-use/Property.html | 145 + .../nars/language/class-use/SetExt.html | 145 + .../nars/language/class-use/SetInt.html | 145 + .../nars/language/class-use/Similarity.html | 182 ++ .../nars/language/class-use/Statement.html | 633 ++++ .../nars/language/class-use/Temporal.html | 229 ++ .../javadoc/nars/language/class-use/Term.html | 2702 +++++++++++++++++ .../language/class-use/Variable.VarType.html | 292 ++ .../nars/language/class-use/Variable.html | 461 +++ .../javadoc/nars/language/package-frame.html | 113 + .../nars/language/package-summary.html | 389 +++ .../javadoc/nars/language/package-tree.html | 189 ++ .../javadoc/nars/language/package-use.html | 420 +++ nars-dist/javadoc/nars/main/Center.html | 442 +++ nars-dist/javadoc/nars/main/Memory.html | 1053 +++++++ nars-dist/javadoc/nars/main/NARS.html | 624 ++++ nars-dist/javadoc/nars/main/Parameters.html | 847 ++++++ .../javadoc/nars/main/class-use/Center.html | 145 + .../javadoc/nars/main/class-use/Memory.html | 145 + .../javadoc/nars/main/class-use/NARS.html | 145 + .../nars/main/class-use/Parameters.html | 145 + .../javadoc/nars/main/package-frame.html | 39 + .../javadoc/nars/main/package-summary.html | 203 ++ nars-dist/javadoc/nars/main/package-tree.html | 165 + nars-dist/javadoc/nars/main/package-use.html | 145 + nars-dist/javadoc/nars/operation/Break.html | 305 ++ nars-dist/javadoc/nars/operation/GoTo.html | 305 ++ nars-dist/javadoc/nars/operation/Open.html | 305 ++ .../javadoc/nars/operation/Operator.html | 364 +++ nars-dist/javadoc/nars/operation/Pick.html | 305 ++ .../nars/operation/class-use/Break.html | 145 + .../nars/operation/class-use/GoTo.html | 145 + .../nars/operation/class-use/Open.html | 145 + .../nars/operation/class-use/Operator.html | 266 ++ .../nars/operation/class-use/Pick.html | 145 + .../javadoc/nars/operation/package-frame.html | 41 + .../nars/operation/package-summary.html | 200 ++ .../javadoc/nars/operation/package-tree.html | 159 + .../javadoc/nars/operation/package-use.html | 192 ++ nars-dist/javadoc/nars/storage/Bag.html | 969 ++++++ .../javadoc/nars/storage/ConceptBag.html | 316 ++ .../javadoc/nars/storage/Distributor.html | 344 +++ .../javadoc/nars/storage/TaskBuffer.html | 341 +++ .../javadoc/nars/storage/TaskLinkBag.html | 316 ++ .../javadoc/nars/storage/TermLinkBag.html | 338 +++ .../javadoc/nars/storage/class-use/Bag.html | 249 ++ .../nars/storage/class-use/ConceptBag.html | 181 ++ .../nars/storage/class-use/Distributor.html | 181 ++ .../nars/storage/class-use/TaskBuffer.html | 181 ++ .../nars/storage/class-use/TaskLinkBag.html | 181 ++ .../nars/storage/class-use/TermLinkBag.html | 181 ++ .../javadoc/nars/storage/package-frame.html | 43 + .../javadoc/nars/storage/package-summary.html | 221 ++ .../javadoc/nars/storage/package-tree.html | 156 + .../javadoc/nars/storage/package-use.html | 248 ++ nars-dist/javadoc/overview-frame.html | 57 + nars-dist/javadoc/overview-summary.html | 214 ++ nars-dist/javadoc/overview-tree.html | 244 ++ nars-dist/javadoc/package-list | 8 + nars-dist/javadoc/resources/inherit.gif | Bin 0 -> 57 bytes nars-dist/javadoc/serialized-form.html | 847 ++++++ nars-dist/javadoc/stylesheet.css | 29 + 260 files changed, 84232 insertions(+) create mode 100644 nars-dist/Examples/Example-NAL1-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL1-complete.txt create mode 100644 nars-dist/Examples/Example-NAL2-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL2-complete.txt create mode 100644 nars-dist/Examples/Example-NAL3-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL3-complete.txt create mode 100644 nars-dist/Examples/Example-NAL4-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL4-complete.txt create mode 100644 nars-dist/Examples/Example-NAL5-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL5-complete.txt create mode 100644 nars-dist/Examples/Example-NAL6-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL6-complete.txt create mode 100644 nars-dist/Examples/Example-NAL7-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL7-complete.txt create mode 100644 nars-dist/Examples/Example-NAL8-1-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL8-1-complete.txt create mode 100644 nars-dist/Examples/Example-NAL8-2-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL8-2-complete.txt create mode 100644 nars-dist/Examples/Example-NAL8-3-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL8-3-complete.txt create mode 100644 nars-dist/Examples/Example-NAL8-4-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL8-4-complete.txt create mode 100644 nars-dist/NARS-applet.html create mode 100644 nars-dist/README.TXT create mode 100644 nars-dist/javadoc/allclasses-frame.html create mode 100644 nars-dist/javadoc/allclasses-noframe.html create mode 100644 nars-dist/javadoc/constant-values.html create mode 100644 nars-dist/javadoc/deprecated-list.html create mode 100644 nars-dist/javadoc/help-doc.html create mode 100644 nars-dist/javadoc/index-files/index-1.html create mode 100644 nars-dist/javadoc/index-files/index-10.html create mode 100644 nars-dist/javadoc/index-files/index-11.html create mode 100644 nars-dist/javadoc/index-files/index-12.html create mode 100644 nars-dist/javadoc/index-files/index-13.html create mode 100644 nars-dist/javadoc/index-files/index-14.html create mode 100644 nars-dist/javadoc/index-files/index-15.html create mode 100644 nars-dist/javadoc/index-files/index-16.html create mode 100644 nars-dist/javadoc/index-files/index-17.html create mode 100644 nars-dist/javadoc/index-files/index-18.html create mode 100644 nars-dist/javadoc/index-files/index-19.html create mode 100644 nars-dist/javadoc/index-files/index-2.html create mode 100644 nars-dist/javadoc/index-files/index-20.html create mode 100644 nars-dist/javadoc/index-files/index-21.html create mode 100644 nars-dist/javadoc/index-files/index-22.html create mode 100644 nars-dist/javadoc/index-files/index-23.html create mode 100644 nars-dist/javadoc/index-files/index-3.html create mode 100644 nars-dist/javadoc/index-files/index-4.html create mode 100644 nars-dist/javadoc/index-files/index-5.html create mode 100644 nars-dist/javadoc/index-files/index-6.html create mode 100644 nars-dist/javadoc/index-files/index-7.html create mode 100644 nars-dist/javadoc/index-files/index-8.html create mode 100644 nars-dist/javadoc/index-files/index-9.html create mode 100644 nars-dist/javadoc/index.html create mode 100644 nars-dist/javadoc/nars/entity/BudgetValue.html create mode 100644 nars-dist/javadoc/nars/entity/Concept.html create mode 100644 nars-dist/javadoc/nars/entity/Goal.html create mode 100644 nars-dist/javadoc/nars/entity/Item.html create mode 100644 nars-dist/javadoc/nars/entity/Judgment.html create mode 100644 nars-dist/javadoc/nars/entity/Question.html create mode 100644 nars-dist/javadoc/nars/entity/Sentence.html create mode 100644 nars-dist/javadoc/nars/entity/ShortFloat.html create mode 100644 nars-dist/javadoc/nars/entity/Stamp.html create mode 100644 nars-dist/javadoc/nars/entity/Task.html create mode 100644 nars-dist/javadoc/nars/entity/TaskLink.html create mode 100644 nars-dist/javadoc/nars/entity/TermLink.html create mode 100644 nars-dist/javadoc/nars/entity/TruthValue.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/BudgetValue.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/Concept.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/Goal.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/Item.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/Judgment.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/Question.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/Sentence.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/ShortFloat.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/Stamp.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/Task.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/TaskLink.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/TermLink.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/TruthValue.html create mode 100644 nars-dist/javadoc/nars/entity/package-frame.html create mode 100644 nars-dist/javadoc/nars/entity/package-summary.html create mode 100644 nars-dist/javadoc/nars/entity/package-tree.html create mode 100644 nars-dist/javadoc/nars/entity/package-use.html create mode 100644 nars-dist/javadoc/nars/gui/BagWindow.html create mode 100644 nars-dist/javadoc/nars/gui/ConceptWindow.html create mode 100644 nars-dist/javadoc/nars/gui/InferenceWindow.html create mode 100644 nars-dist/javadoc/nars/gui/InputWindow.html create mode 100644 nars-dist/javadoc/nars/gui/MainWindow.html create mode 100644 nars-dist/javadoc/nars/gui/MessageDialog.html create mode 100644 nars-dist/javadoc/nars/gui/NarsFrame.html create mode 100644 nars-dist/javadoc/nars/gui/ParameterWindow.html create mode 100644 nars-dist/javadoc/nars/gui/TermWindow.html create mode 100644 nars-dist/javadoc/nars/gui/class-use/BagWindow.html create mode 100644 nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html create mode 100644 nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html create mode 100644 nars-dist/javadoc/nars/gui/class-use/InputWindow.html create mode 100644 nars-dist/javadoc/nars/gui/class-use/MainWindow.html create mode 100644 nars-dist/javadoc/nars/gui/class-use/MessageDialog.html create mode 100644 nars-dist/javadoc/nars/gui/class-use/NarsFrame.html create mode 100644 nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html create mode 100644 nars-dist/javadoc/nars/gui/class-use/TermWindow.html create mode 100644 nars-dist/javadoc/nars/gui/package-frame.html create mode 100644 nars-dist/javadoc/nars/gui/package-summary.html create mode 100644 nars-dist/javadoc/nars/gui/package-tree.html create mode 100644 nars-dist/javadoc/nars/gui/package-use.html create mode 100644 nars-dist/javadoc/nars/inference/BudgetFunctions.html create mode 100644 nars-dist/javadoc/nars/inference/CompositionalRules.html create mode 100644 nars-dist/javadoc/nars/inference/MatchingRules.html create mode 100644 nars-dist/javadoc/nars/inference/RuleTables.html create mode 100644 nars-dist/javadoc/nars/inference/StructuralRules.html create mode 100644 nars-dist/javadoc/nars/inference/SyllogisticRules.html create mode 100644 nars-dist/javadoc/nars/inference/TemporalRules.Relation.html create mode 100644 nars-dist/javadoc/nars/inference/TemporalRules.html create mode 100644 nars-dist/javadoc/nars/inference/TruthFunctions.html create mode 100644 nars-dist/javadoc/nars/inference/UtilityFunctions.html create mode 100644 nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html create mode 100644 nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html create mode 100644 nars-dist/javadoc/nars/inference/class-use/MatchingRules.html create mode 100644 nars-dist/javadoc/nars/inference/class-use/RuleTables.html create mode 100644 nars-dist/javadoc/nars/inference/class-use/StructuralRules.html create mode 100644 nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html create mode 100644 nars-dist/javadoc/nars/inference/class-use/TemporalRules.Relation.html create mode 100644 nars-dist/javadoc/nars/inference/class-use/TemporalRules.html create mode 100644 nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html create mode 100644 nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html create mode 100644 nars-dist/javadoc/nars/inference/package-frame.html create mode 100644 nars-dist/javadoc/nars/inference/package-summary.html create mode 100644 nars-dist/javadoc/nars/inference/package-tree.html create mode 100644 nars-dist/javadoc/nars/inference/package-use.html create mode 100644 nars-dist/javadoc/nars/io/ExperienceIO.html create mode 100644 nars-dist/javadoc/nars/io/Record.html create mode 100644 nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html create mode 100644 nars-dist/javadoc/nars/io/StringParser.html create mode 100644 nars-dist/javadoc/nars/io/Symbols.html create mode 100644 nars-dist/javadoc/nars/io/class-use/ExperienceIO.html create mode 100644 nars-dist/javadoc/nars/io/class-use/Record.html create mode 100644 nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html create mode 100644 nars-dist/javadoc/nars/io/class-use/StringParser.html create mode 100644 nars-dist/javadoc/nars/io/class-use/Symbols.html create mode 100644 nars-dist/javadoc/nars/io/package-frame.html create mode 100644 nars-dist/javadoc/nars/io/package-summary.html create mode 100644 nars-dist/javadoc/nars/io/package-tree.html create mode 100644 nars-dist/javadoc/nars/io/package-use.html create mode 100644 nars-dist/javadoc/nars/language/CompoundTerm.html create mode 100644 nars-dist/javadoc/nars/language/Conjunction.html create mode 100644 nars-dist/javadoc/nars/language/ConjunctionParallel.html create mode 100644 nars-dist/javadoc/nars/language/ConjunctionSequence.html create mode 100644 nars-dist/javadoc/nars/language/DifferenceExt.html create mode 100644 nars-dist/javadoc/nars/language/DifferenceInt.html create mode 100644 nars-dist/javadoc/nars/language/Disjunction.html create mode 100644 nars-dist/javadoc/nars/language/Equivalence.html create mode 100644 nars-dist/javadoc/nars/language/EquivalenceAfter.html create mode 100644 nars-dist/javadoc/nars/language/EquivalenceWhen.html create mode 100644 nars-dist/javadoc/nars/language/ImageExt.html create mode 100644 nars-dist/javadoc/nars/language/ImageInt.html create mode 100644 nars-dist/javadoc/nars/language/Implication.html create mode 100644 nars-dist/javadoc/nars/language/ImplicationAfter.html create mode 100644 nars-dist/javadoc/nars/language/ImplicationBefore.html create mode 100644 nars-dist/javadoc/nars/language/ImplicationWhen.html create mode 100644 nars-dist/javadoc/nars/language/Inheritance.html create mode 100644 nars-dist/javadoc/nars/language/Instance.html create mode 100644 nars-dist/javadoc/nars/language/InstanceProperty.html create mode 100644 nars-dist/javadoc/nars/language/IntersectionExt.html create mode 100644 nars-dist/javadoc/nars/language/IntersectionInt.html create mode 100644 nars-dist/javadoc/nars/language/Negation.html create mode 100644 nars-dist/javadoc/nars/language/Product.html create mode 100644 nars-dist/javadoc/nars/language/Property.html create mode 100644 nars-dist/javadoc/nars/language/SetExt.html create mode 100644 nars-dist/javadoc/nars/language/SetInt.html create mode 100644 nars-dist/javadoc/nars/language/Similarity.html create mode 100644 nars-dist/javadoc/nars/language/Statement.html create mode 100644 nars-dist/javadoc/nars/language/Temporal.html create mode 100644 nars-dist/javadoc/nars/language/Term.html create mode 100644 nars-dist/javadoc/nars/language/Variable.VarType.html create mode 100644 nars-dist/javadoc/nars/language/Variable.html create mode 100644 nars-dist/javadoc/nars/language/class-use/CompoundTerm.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Conjunction.html create mode 100644 nars-dist/javadoc/nars/language/class-use/ConjunctionParallel.html create mode 100644 nars-dist/javadoc/nars/language/class-use/ConjunctionSequence.html create mode 100644 nars-dist/javadoc/nars/language/class-use/DifferenceExt.html create mode 100644 nars-dist/javadoc/nars/language/class-use/DifferenceInt.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Disjunction.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Equivalence.html create mode 100644 nars-dist/javadoc/nars/language/class-use/EquivalenceAfter.html create mode 100644 nars-dist/javadoc/nars/language/class-use/EquivalenceWhen.html create mode 100644 nars-dist/javadoc/nars/language/class-use/ImageExt.html create mode 100644 nars-dist/javadoc/nars/language/class-use/ImageInt.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Implication.html create mode 100644 nars-dist/javadoc/nars/language/class-use/ImplicationAfter.html create mode 100644 nars-dist/javadoc/nars/language/class-use/ImplicationBefore.html create mode 100644 nars-dist/javadoc/nars/language/class-use/ImplicationWhen.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Inheritance.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Instance.html create mode 100644 nars-dist/javadoc/nars/language/class-use/InstanceProperty.html create mode 100644 nars-dist/javadoc/nars/language/class-use/IntersectionExt.html create mode 100644 nars-dist/javadoc/nars/language/class-use/IntersectionInt.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Negation.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Product.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Property.html create mode 100644 nars-dist/javadoc/nars/language/class-use/SetExt.html create mode 100644 nars-dist/javadoc/nars/language/class-use/SetInt.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Similarity.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Statement.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Temporal.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Term.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Variable.VarType.html create mode 100644 nars-dist/javadoc/nars/language/class-use/Variable.html create mode 100644 nars-dist/javadoc/nars/language/package-frame.html create mode 100644 nars-dist/javadoc/nars/language/package-summary.html create mode 100644 nars-dist/javadoc/nars/language/package-tree.html create mode 100644 nars-dist/javadoc/nars/language/package-use.html create mode 100644 nars-dist/javadoc/nars/main/Center.html create mode 100644 nars-dist/javadoc/nars/main/Memory.html create mode 100644 nars-dist/javadoc/nars/main/NARS.html create mode 100644 nars-dist/javadoc/nars/main/Parameters.html create mode 100644 nars-dist/javadoc/nars/main/class-use/Center.html create mode 100644 nars-dist/javadoc/nars/main/class-use/Memory.html create mode 100644 nars-dist/javadoc/nars/main/class-use/NARS.html create mode 100644 nars-dist/javadoc/nars/main/class-use/Parameters.html create mode 100644 nars-dist/javadoc/nars/main/package-frame.html create mode 100644 nars-dist/javadoc/nars/main/package-summary.html create mode 100644 nars-dist/javadoc/nars/main/package-tree.html create mode 100644 nars-dist/javadoc/nars/main/package-use.html create mode 100644 nars-dist/javadoc/nars/operation/Break.html create mode 100644 nars-dist/javadoc/nars/operation/GoTo.html create mode 100644 nars-dist/javadoc/nars/operation/Open.html create mode 100644 nars-dist/javadoc/nars/operation/Operator.html create mode 100644 nars-dist/javadoc/nars/operation/Pick.html create mode 100644 nars-dist/javadoc/nars/operation/class-use/Break.html create mode 100644 nars-dist/javadoc/nars/operation/class-use/GoTo.html create mode 100644 nars-dist/javadoc/nars/operation/class-use/Open.html create mode 100644 nars-dist/javadoc/nars/operation/class-use/Operator.html create mode 100644 nars-dist/javadoc/nars/operation/class-use/Pick.html create mode 100644 nars-dist/javadoc/nars/operation/package-frame.html create mode 100644 nars-dist/javadoc/nars/operation/package-summary.html create mode 100644 nars-dist/javadoc/nars/operation/package-tree.html create mode 100644 nars-dist/javadoc/nars/operation/package-use.html create mode 100644 nars-dist/javadoc/nars/storage/Bag.html create mode 100644 nars-dist/javadoc/nars/storage/ConceptBag.html create mode 100644 nars-dist/javadoc/nars/storage/Distributor.html create mode 100644 nars-dist/javadoc/nars/storage/TaskBuffer.html create mode 100644 nars-dist/javadoc/nars/storage/TaskLinkBag.html create mode 100644 nars-dist/javadoc/nars/storage/TermLinkBag.html create mode 100644 nars-dist/javadoc/nars/storage/class-use/Bag.html create mode 100644 nars-dist/javadoc/nars/storage/class-use/ConceptBag.html create mode 100644 nars-dist/javadoc/nars/storage/class-use/Distributor.html create mode 100644 nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html create mode 100644 nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html create mode 100644 nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html create mode 100644 nars-dist/javadoc/nars/storage/package-frame.html create mode 100644 nars-dist/javadoc/nars/storage/package-summary.html create mode 100644 nars-dist/javadoc/nars/storage/package-tree.html create mode 100644 nars-dist/javadoc/nars/storage/package-use.html create mode 100644 nars-dist/javadoc/overview-frame.html create mode 100644 nars-dist/javadoc/overview-summary.html create mode 100644 nars-dist/javadoc/overview-tree.html create mode 100644 nars-dist/javadoc/package-list create mode 100644 nars-dist/javadoc/resources/inherit.gif create mode 100644 nars-dist/javadoc/serialized-form.html create mode 100644 nars-dist/javadoc/stylesheet.css diff --git a/nars-dist/Examples/Example-NAL1-abridged.txt b/nars-dist/Examples/Example-NAL1-abridged.txt new file mode 100644 index 00000000..3190a33a --- /dev/null +++ b/nars-dist/Examples/Example-NAL1-abridged.txt @@ -0,0 +1,52 @@ +********** revision + IN: swimmer>. + IN: swimmer>. %0.1;0.6% +1 + OUT: swimmer>. %0.87;0.91% {2: 2;1} + +********** deduction + IN: animal>. + IN: bird>. +1 + OUT: animal>. %1.00;0.81% {2: 1;2} + +********** abduction + IN: competition>. + IN: competition>. %0.8% +1 + OUT: chess>. %1.00;0.39% {2: 1;2} + OUT: sport>. %0.80;0.44% {2: 1;2} + +********** induction + IN: swimmer>. %0.7% + IN: bird>. +1 + OUT: swimmer>. %0.70;0.44% {2: 1;2} + OUT: bird>. %1.00;0.36% {2: 1;2} + +********** exemplification + IN: bird>. + IN: animal>. +1 + OUT: robin>. %1.00;0.44% {2: 1;2} + +********** conversion + IN: swimmer>. + IN: bird>? +2 + OUT: bird>. %1.00;0.47% {1: 1} + +********** "y/n" question + IN: swimmer>. + IN: swimmer>? +1 + OUT: swimmer>. %1.00;0.90% {1: 1} + +********** "wh" question + IN: swimmer>. + IN: swimmer>? +1 + OUT: swimmer>. %1.00;0.90% {1: 1} + OUT: bird>? {2: 2;1} + OUT: ?1>? {2: 2;1} + OUT: bird>? {2: 2;1} diff --git a/nars-dist/Examples/Example-NAL1-complete.txt b/nars-dist/Examples/Example-NAL1-complete.txt new file mode 100644 index 00000000..fc5ff099 --- /dev/null +++ b/nars-dist/Examples/Example-NAL1-complete.txt @@ -0,0 +1,122 @@ +********** revision + IN: swimmer>. %1.00;0.90% {1: 1} + + IN: swimmer>. %0.10;0.60% {1: 2} + +1 + + OUT: swimmer>. %0.87;0.91% {2: 2;1} + +********** deduction + IN: animal>. %1.00;0.90% {1: 1} + + IN: bird>. %1.00;0.90% {1: 2} + +1 + + OUT: animal>. %1.00;0.81% {2: 1;2} + + OUT: robin>. %1.00;0.44% {2: 1;2} + +********** abduction + IN: competition>. %1.00;0.90% {1: 1} + + IN: competition>. %0.80;0.90% {1: 2} + +1 + + OUT: chess>. %1.00;0.39% {2: 1;2} + + OUT: sport>. %0.80;0.44% {2: 1;2} + + OUT: sport>. %0.80;0.44% {2: 1;2} + + OUT: < #1> ==> #1>>. %1.00;0.39% {2: 1;2} + + OUT: < #1> ==> #1>>. %0.80;0.44% {2: 1;2} + + OUT: < #1> <=> #1>>. %0.80;0.44% {2: 1;2} + + OUT: <(&,chess,sport) --> competition>. %1.00;0.97% {2: 1;2} + + OUT: <(|,chess,sport) --> competition>. %0.80;0.82% {2: 1;2} + + OUT: <(~,sport,chess) --> competition>. %0.20;0.88% {2: 1;2} + + OUT: <(~,chess,sport) --> competition>. %0.00;0.91% {2: 1;2} + + OUT: (&&, #1()>, #1()>). %0.80;0.82% {2: 1;2} + +********** induction + IN: swimmer>. %0.70;0.90% {1: 1} + + IN: bird>. %1.00;0.90% {1: 2} + +1 + + OUT: swimmer>. %0.70;0.44% {2: 1;2} + + OUT: bird>. %1.00;0.36% {2: 1;2} + + OUT: swimmer>. %0.70;0.44% {2: 1;2} + + OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.70;0.44% {2: 1;2} + + OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.36% {2: 1;2} + + OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.70;0.44% {2: 1;2} + + OUT: (|,bird,swimmer)>. %1.00;0.96% {2: 1;2} + + OUT: (&,bird,swimmer)>. %0.70;0.83% {2: 1;2} + + OUT: (-,swimmer,bird)>. %0.00;0.92% {2: 1;2} + + OUT: (-,bird,swimmer)>. %0.30;0.87% {2: 1;2} + + OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.70;0.83% {2: 1;2} + +********** exemplification + IN: bird>. %1.00;0.90% {1: 1} + + IN: animal>. %1.00;0.90% {1: 2} + +1 + + OUT: animal>. %1.00;0.81% {2: 1;2} + + OUT: robin>. %1.00;0.44% {2: 1;2} + +********** conversion + IN: swimmer>. %1.00;0.90% {1: 1} + + IN: bird>? {1: 2} + +2 + + OUT: bird>. %1.00;0.47% {1: 1} + +********** "y/n" question + IN: swimmer>. %1.00;0.90% {1: 1} + + IN: swimmer>? {1: 2} + +1 + + OUT: swimmer>. %1.00;0.90% {1: 1} + +********** "wh" question + IN: swimmer>. %1.00;0.90% {1: 1} + + IN: swimmer>? {1: 2} + +1 + + OUT: swimmer>. %1.00;0.90% {1: 1} + + OUT: bird>? {2: 2;1} + + OUT: ?1>? {2: 2;1} + + OUT: bird>? {2: 2;1} + diff --git a/nars-dist/Examples/Example-NAL2-abridged.txt b/nars-dist/Examples/Example-NAL2-abridged.txt new file mode 100644 index 00000000..7e7c53df --- /dev/null +++ b/nars-dist/Examples/Example-NAL2-abridged.txt @@ -0,0 +1,106 @@ +********** revision + IN: swan>. + IN: swan>. %0.1;0.6% +1 + OUT: swan>. %0.87;0.91% {2: 2;1} + +********** comparison + IN: swimmer>. %0.7% + IN: bird>. +1 + OUT: swimmer>. %0.70;0.44% {2: 1;2} + +********** comparison + IN: competition>. + IN: competition>. %0.8% +1 + OUT: sport>. %0.80;0.44% {2: 1;2} + +********** analogy + IN: swimmer>. + IN: swan>. +1 + OUT: swimmer>. %1.00;0.72% {2: 1;2} + +********** analogy + IN: swimmer>. + IN: swan>. +1 + OUT: swimmer>. %1.00;0.72% {2: 1;2} + +********** resemblance + IN: swan>. + IN: swan>. +1 + OUT: robin>. %1.00;0.81% {2: 1;2} + +********** instance and property + IN: . + IN: . + IN: . + +********** conversions between inheritance and similarity + IN: bird>. + IN: swan>. %0.1% +1 + OUT: swan>. %0.10;0.89% {2: 1;2} + +********** conversions between inheritance and similarity + IN: bird>. + IN: swan>. %0.1% +1 + OUT: swan>. %0.10;0.73% {2: 1;2} + +********** conversions between inheritance and similarity + IN: bird>. %0.9% + IN: swan>? +2 + OUT: swan>. %0.90;0.47% {1: 1} + +********** conversions between inheritance and similarity + IN: swan>. %0.9% + IN: bird>? +2 + OUT: bird>. %0.90;0.81% {1: 1} + +********** set definition + IN: <{Tweety} --> {Birdie}>. +6 + OUT: <{Birdie} <-> {Tweety}>. %1.00;0.90% {1: 1} + +********** set definition + IN: <[smart] --> [bright]>. +5 + OUT: <[bright] <-> [smart]>. %1.00;0.90% {1: 1} + +********** set definition + IN: <{Birdie} <-> {Tweety}>. +5 + OUT: Tweety>. %1.00;0.90% {1: 1} + OUT: <{Tweety} --> {Birdie}>. %1.00;0.90% {1: 1} + +********** set definition + IN: <[bright] <-> [smart]>. +5 + OUT: smart>. %1.00;0.90% {1: 1} + OUT: <[bright] --> [smart]>. %1.00;0.90% {1: 1} + +********** structure transformation + IN: Tweety>. %0.9% + IN: <{Birdie} <-> {Tweety}>? +5 + OUT: <{Birdie} <-> {Tweety}>. %0.90;0.90% {1: 1} + +********** structure transformation + IN: smart>. %0.9% + IN: <[bright] --> [smart]>? +9 + OUT: <[bright] --> [smart]>. %0.90;0.90% {1: 1} + +********** question derivation + IN: swimmer>. + IN: ? +1 + OUT: <{?1} --> bird>? {2: 2;1} + OUT: {?1}>? {2: 2;1} + OUT: <{?1} <-> bird>? {2: 2;1} diff --git a/nars-dist/Examples/Example-NAL2-complete.txt b/nars-dist/Examples/Example-NAL2-complete.txt new file mode 100644 index 00000000..3e223e30 --- /dev/null +++ b/nars-dist/Examples/Example-NAL2-complete.txt @@ -0,0 +1,210 @@ +********** revision + IN: swan>. %1.00;0.90% {1: 1} + + IN: swan>. %0.10;0.60% {1: 2} + +1 + + OUT: swan>. %0.87;0.91% {2: 2;1} + +********** comparison + IN: swimmer>. %0.70;0.90% {1: 1} + + IN: bird>. %1.00;0.90% {1: 2} + +1 + + OUT: swimmer>. %0.70;0.44% {2: 1;2} + + OUT: bird>. %1.00;0.36% {2: 1;2} + + OUT: swimmer>. %0.70;0.44% {2: 1;2} + + OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.70;0.44% {2: 1;2} + + OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.36% {2: 1;2} + + OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.70;0.44% {2: 1;2} + + OUT: (|,bird,swimmer)>. %1.00;0.96% {2: 1;2} + + OUT: (&,bird,swimmer)>. %0.70;0.83% {2: 1;2} + + OUT: (-,swimmer,bird)>. %0.00;0.92% {2: 1;2} + + OUT: (-,bird,swimmer)>. %0.30;0.87% {2: 1;2} + + OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.70;0.83% {2: 1;2} + +********** comparison + IN: competition>. %1.00;0.90% {1: 1} + + IN: competition>. %0.80;0.90% {1: 2} + +1 + + OUT: chess>. %1.00;0.39% {2: 1;2} + + OUT: sport>. %0.80;0.44% {2: 1;2} + + OUT: sport>. %0.80;0.44% {2: 1;2} + + OUT: < #1> ==> #1>>. %1.00;0.39% {2: 1;2} + + OUT: < #1> ==> #1>>. %0.80;0.44% {2: 1;2} + + OUT: < #1> <=> #1>>. %0.80;0.44% {2: 1;2} + + OUT: <(&,chess,sport) --> competition>. %1.00;0.97% {2: 1;2} + + OUT: <(|,chess,sport) --> competition>. %0.80;0.82% {2: 1;2} + + OUT: <(~,sport,chess) --> competition>. %0.20;0.88% {2: 1;2} + + OUT: <(~,chess,sport) --> competition>. %0.00;0.91% {2: 1;2} + + OUT: (&&, #1()>, #1()>). %0.80;0.82% {2: 1;2} + +********** analogy + IN: swimmer>. %1.00;0.90% {1: 1} + + IN: swan>. %1.00;0.90% {1: 2} + +1 + + OUT: swimmer>. %1.00;0.72% {2: 1;2} + +********** analogy + IN: swimmer>. %1.00;0.90% {1: 1} + + IN: swan>. %1.00;0.90% {1: 2} + +1 + + OUT: swimmer>. %1.00;0.72% {2: 1;2} + +********** resemblance + IN: swan>. %1.00;0.90% {1: 1} + + IN: swan>. %1.00;0.90% {1: 2} + +1 + + OUT: robin>. %1.00;0.81% {2: 1;2} + +********** instance and property + IN: <{Tweety} --> bird>. %1.00;0.90% {1: 1} + + IN: [black]>. %1.00;0.90% {1: 2} + + IN: <{Tweety} --> [yellow]>. %1.00;0.90% {1: 3} + +********** conversions between inheritance and similarity + IN: bird>. %1.00;0.90% {1: 1} + + IN: swan>. %0.10;0.90% {1: 2} + +1 + + OUT: swan>. %0.10;0.89% {2: 1;2} + +********** conversions between inheritance and similarity + IN: bird>. %1.00;0.90% {1: 1} + + IN: swan>. %0.10;0.90% {1: 2} + +1 + + OUT: swan>. %0.10;0.73% {2: 1;2} + +********** conversions between inheritance and similarity + IN: bird>. %0.90;0.90% {1: 1} + + IN: swan>? {1: 2} + +2 + + OUT: swan>. %0.90;0.47% {1: 1} + +********** conversions between inheritance and similarity + IN: swan>. %0.90;0.90% {1: 1} + + IN: bird>? {1: 2} + +2 + + OUT: bird>. %0.90;0.81% {1: 1} + +********** set definition + IN: <{Tweety} --> {Birdie}>. %1.00;0.90% {1: 1} + +6 + + OUT: <{Birdie} <-> {Tweety}>. %1.00;0.90% {1: 1} + +********** set definition + IN: <[smart] --> [bright]>. %1.00;0.90% {1: 1} + +5 + + OUT: <[bright] <-> [smart]>. %1.00;0.90% {1: 1} + +********** set definition + IN: <{Birdie} <-> {Tweety}>. %1.00;0.90% {1: 1} + +5 + + OUT: Tweety>. %1.00;0.90% {1: 1} + + OUT: <{Tweety} --> {Birdie}>. %1.00;0.90% {1: 1} + +********** set definition + IN: <[bright] <-> [smart]>. %1.00;0.90% {1: 1} + +5 + + OUT: smart>. %1.00;0.90% {1: 1} + + OUT: <[bright] --> [smart]>. %1.00;0.90% {1: 1} + +********** structure transformation + IN: Tweety>. %0.90;0.90% {1: 1} + + IN: <{Birdie} <-> {Tweety}>? {1: 2} + +2 + + OUT: Tweety>? {1: 2} + + OUT: <{Tweety} --> {Birdie}>? {1: 2} + +3 + + OUT: <{Birdie} <-> {Tweety}>. %0.90;0.90% {1: 1} + +********** structure transformation + IN: smart>. %0.90;0.90% {1: 1} + + IN: <[bright] --> [smart]>? {1: 2} + +2 + + OUT: <[bright] <-> [smart]>? {1: 2} + +7 + + OUT: <[bright] <-> [smart]>. %0.90;0.90% {1: 1} + +********** question derivation + IN: swimmer>. %1.00;0.90% {1: 1} + + IN: <{?1} --> swimmer>? {1: 2} + +1 + + OUT: <{?1} --> bird>? {2: 2;1} + + OUT: {?1}>? {2: 2;1} + + OUT: <{?1} <-> bird>? {2: 2;1} + diff --git a/nars-dist/Examples/Example-NAL3-abridged.txt b/nars-dist/Examples/Example-NAL3-abridged.txt new file mode 100644 index 00000000..12caeb84 --- /dev/null +++ b/nars-dist/Examples/Example-NAL3-abridged.txt @@ -0,0 +1,117 @@ +********** compound composition, two premises + IN: swimmer>. %0.9% + IN: bird>. %0.8% +1 + OUT: (|,bird,swimmer)>. %0.98;0.96% {2: 1;2} + OUT: (&,bird,swimmer)>. %0.72;0.83% {2: 1;2} + OUT: (-,swimmer,bird)>. %0.18;0.89% {2: 1;2} + OUT: (-,bird,swimmer)>. %0.08;0.90% {2: 1;2} + +********** compound composition, two premises + IN: competition>. %0.9% + IN: competition>. %0.8% +1 + OUT: <(&,chess,sport) --> competition>. %0.98;0.96% {2: 1;2} + OUT: <(|,chess,sport) --> competition>. %0.72;0.83% {2: 1;2} + OUT: <(~,sport,chess) --> competition>. %0.18;0.89% {2: 1;2} + OUT: <(~,chess,sport) --> competition>. %0.08;0.90% {2: 1;2} + +********** compound decomposition, two premises + IN: (|,bird,swimmer)>. + IN: swimmer>. %0% +1 + OUT: bird>. %1.00;0.81% {2: 2;1} + +********** compound decomposition, two premises + IN: (-,mammal,swimmer)>. %0% + IN: swimmer>. %0% +1 + OUT: mammal>. %0.00;0.81% {2: 2;1} + +********** set operations + IN: {Mars,Pluto,Venus}>. %0.9% + IN: {Pluto,Saturn}>. %0.7% +1 + OUT: {Mars,Pluto,Saturn,Venus}>. %0.97;0.95% {2: 2;1} + OUT: {Pluto}>. %0.63;0.84% {2: 2;1} + OUT: {Saturn}>. %0.07;0.91% {2: 2;1} + OUT: {Mars,Venus}>. %0.27;0.88% {2: 2;1} + +********** composition on both sides of a statement + IN: animal>. %0.9% + IN: <(&,bird,swimmer) --> (&,animal,swimmer)>? +1 + OUT: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.81% {1: 1} + +********** composition on both sides of a statement + IN: animal>. %0.9% + IN: <(-,swimmer,animal) --> (-,swimmer,bird)>? +1 + OUT: <(-,swimmer,animal) --> (-,swimmer,bird)>. %0.90;0.81% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.8% + IN: (&,bird,swimmer)>? +9 + OUT: (&,bird,swimmer)>. %0.80;0.47% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.8% + IN: (|,bird,swimmer)>? +9 + OUT: (|,bird,swimmer)>. %0.80;0.72% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.8% + IN: <(&,swan,swimmer) --> bird>? +8 + OUT: <(&,swan,swimmer) --> bird>. %0.80;0.72% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.8% + IN: <(|,swan,swimmer) --> bird>? +8 + OUT: <(|,swan,swimmer) --> bird>. %0.80;0.47% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.8% + IN: (-,bird,swimmer)>? +9 + OUT: (-,bird,swimmer)>. %0.80;0.47% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.8% + IN: (-,swimmer,bird)>? +10 + OUT: (-,swimmer,bird)>. %0.20;0.72% + +********** compound composition, one premise + IN: bird>. %0.8% + IN: (~,bird,swimmer)>? +10 + OUT: (~,bird,swimmer)>. %0.80;0.72% + +********** compound decomposition, one premise + IN: (&,bird,swimmer)>. %0.9% +6 + OUT: bird>. %0.90;0.81% {1: 1} + +********** compound decomposition, one premise + IN: (|,bird,swimmer)>. %0.9% +6 + OUT: bird>. %0.90;0.47% {1: 1} + +********** compound decomposition, one premise + IN: (-,bird,swimmer)>. %0.9% +6 + OUT: swimmer>. %0.10;0.81% {1: 1} + +********** decomposition on both sides of a statement + IN: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.9% +1 + OUT: animal>. %0.90;0.47% {1: 1} + +********** decomposition on both sides of a statement + IN: <(-,swimmer,bird) --> (-,swimmer,animal)>. %0.9% +1 + OUT: bird>. %0.90;0.47% {1: 1} diff --git a/nars-dist/Examples/Example-NAL3-complete.txt b/nars-dist/Examples/Example-NAL3-complete.txt new file mode 100644 index 00000000..fbccd212 --- /dev/null +++ b/nars-dist/Examples/Example-NAL3-complete.txt @@ -0,0 +1,249 @@ +********** compound composition, two premises + IN: swimmer>. %0.90;0.90% {1: 1} + + IN: bird>. %0.80;0.90% {1: 2} + +1 + + OUT: swimmer>. %0.90;0.39% {2: 1;2} + + OUT: bird>. %0.80;0.42% {2: 1;2} + + OUT: swimmer>. %0.73;0.44% {2: 1;2} + + OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.90;0.39% {2: 1;2} + + OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %0.80;0.42% {2: 1;2} + + OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.73;0.44% {2: 1;2} + + OUT: (|,bird,swimmer)>. %0.98;0.96% {2: 1;2} + + OUT: (&,bird,swimmer)>. %0.72;0.83% {2: 1;2} + + OUT: (-,swimmer,bird)>. %0.18;0.89% {2: 1;2} + + OUT: (-,bird,swimmer)>. %0.08;0.90% {2: 1;2} + + OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.72;0.83% {2: 1;2} + +********** compound composition, two premises + IN: competition>. %0.90;0.90% {1: 1} + + IN: competition>. %0.80;0.90% {1: 2} + +1 + + OUT: chess>. %0.90;0.39% {2: 1;2} + + OUT: sport>. %0.80;0.42% {2: 1;2} + + OUT: sport>. %0.73;0.44% {2: 1;2} + + OUT: < #1> ==> #1>>. %0.90;0.39% {2: 1;2} + + OUT: < #1> ==> #1>>. %0.80;0.42% {2: 1;2} + + OUT: < #1> <=> #1>>. %0.73;0.44% {2: 1;2} + + OUT: <(&,chess,sport) --> competition>. %0.98;0.96% {2: 1;2} + + OUT: <(|,chess,sport) --> competition>. %0.72;0.83% {2: 1;2} + + OUT: <(~,sport,chess) --> competition>. %0.18;0.89% {2: 1;2} + + OUT: <(~,chess,sport) --> competition>. %0.08;0.90% {2: 1;2} + + OUT: (&&, #1()>, #1()>). %0.72;0.83% {2: 1;2} + +********** compound decomposition, two premises + IN: (|,bird,swimmer)>. %1.00;0.90% {1: 1} + + IN: swimmer>. %0.00;0.90% {1: 2} + +1 + + OUT: bird>. %1.00;0.81% {2: 2;1} + +********** compound decomposition, two premises + IN: (-,mammal,swimmer)>. %0.00;0.90% {1: 1} + + IN: swimmer>. %0.00;0.90% {1: 2} + +1 + + OUT: mammal>. %0.00;0.81% {2: 2;1} + +********** set operations + IN: {Mars,Pluto,Venus}>. %0.90;0.90% {1: 1} + + IN: {Pluto,Saturn}>. %0.70;0.90% {1: 2} + +1 + + OUT: <{Mars,Pluto,Venus} --> {Pluto,Saturn}>. %0.70;0.42% {2: 2;1} + + OUT: <{Pluto,Saturn} --> {Mars,Pluto,Venus}>. %0.90;0.36% {2: 2;1} + + OUT: <{Mars,Pluto,Venus} <-> {Pluto,Saturn}>. %0.64;0.44% {2: 2;1} + + OUT: <<#1 --> {Mars,Pluto,Venus}> ==> <#1 --> {Pluto,Saturn}>>. %0.70;0.42% {2: 2;1} + + OUT: <<#1 --> {Pluto,Saturn}> ==> <#1 --> {Mars,Pluto,Venus}>>. %0.90;0.36% {2: 2;1} + + OUT: <<#1 --> {Mars,Pluto,Venus}> <=> <#1 --> {Pluto,Saturn}>>. %0.64;0.44% {2: 2;1} + + OUT: {Mars,Pluto,Saturn,Venus}>. %0.97;0.95% {2: 2;1} + + OUT: {Pluto}>. %0.63;0.84% {2: 2;1} + + OUT: {Saturn}>. %0.07;0.91% {2: 2;1} + + OUT: {Mars,Venus}>. %0.27;0.88% {2: 2;1} + + OUT: (&&,<#1() --> {Mars,Pluto,Venus}>,<#1() --> {Pluto,Saturn}>). %0.63;0.84% {2: 2;1} + +********** composition on both sides of a statement + IN: animal>. %0.90;0.90% {1: 1} + + IN: <(&,bird,swimmer) --> (&,animal,swimmer)>? {1: 2} + +1 + + OUT: <(&,bird,swimmer) --> animal>. %0.90;0.81% {1: 1} + + OUT: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.81% {1: 1} + +********** composition on both sides of a statement + IN: animal>. %0.90;0.90% {1: 1} + + IN: <(-,swimmer,animal) --> (-,swimmer,bird)>? {1: 2} + +1 + + OUT: (-,swimmer,animal)>. %0.10;0.81% {1: 1} + + OUT: <(-,swimmer,animal) --> (-,swimmer,bird)>. %0.90;0.81% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.80;0.90% {1: 1} + + IN: (&,bird,swimmer)>? {1: 2} + +9 + + OUT: (&,bird,swimmer)>. %0.80;0.47% {1: 1} + + OUT: <(&,swan,swimmer) --> (&,bird,swimmer)>. %0.80;0.72% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.80;0.90% {1: 1} + + IN: (|,bird,swimmer)>? {1: 2} + +9 + + OUT: (|,bird,swimmer)>. %0.80;0.72% {1: 1} + + OUT: <(|,swan,swimmer) --> (|,bird,swimmer)>. %0.80;0.72% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.80;0.90% {1: 1} + + IN: <(&,swan,swimmer) --> bird>? {1: 2} + +8 + + OUT: <(&,swan,swimmer) --> bird>. %0.80;0.72% {1: 1} + + OUT: <(&,swan,swimmer) --> (&,bird,swimmer)>. %0.80;0.72% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.80;0.90% {1: 1} + + IN: <(|,swan,swimmer) --> bird>? {1: 2} + +8 + + OUT: <(|,swan,swimmer) --> bird>. %0.80;0.47% {1: 1} + + OUT: <(|,swan,swimmer) --> (|,bird,swimmer)>. %0.80;0.72% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.80;0.90% {1: 1} + + IN: (-,bird,swimmer)>? {1: 2} + +9 + + OUT: (-,bird,swimmer)>. %0.80;0.47% {1: 1} + + OUT: <(-,swan,swimmer) --> (-,bird,swimmer)>. %0.80;0.72% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.80;0.90% {1: 1} + + IN: (-,swimmer,bird)>? {1: 2} + +9 + + OUT: (-,swimmer,bird)>. %0.20;0.72% {1: 1} + + OUT: <(-,swimmer,bird) --> (-,swimmer,swan)>. %0.80;0.72% {1: 1} + +1 + + OUT: (-,swimmer,bird)>. %0.20;0.72% {1: 1} + +********** compound composition, one premise + IN: bird>. %0.80;0.90% {1: 1} + + IN: (~,bird,swimmer)>? {1: 2} + +9 + + OUT: (~,bird,swimmer)>. %0.80;0.72% {1: 1} + + OUT: <(~,swan,swimmer) --> (~,bird,swimmer)>. %0.80;0.72% {1: 1} + +1 + + OUT: (~,bird,swimmer)>. %0.80;0.72% {1: 1} + +********** compound decomposition, one premise + IN: (&,bird,swimmer)>. %0.90;0.90% {1: 1} + +6 + + OUT: bird>. %0.90;0.81% {1: 1} + +********** compound decomposition, one premise + IN: (|,bird,swimmer)>. %0.90;0.90% {1: 1} + +6 + + OUT: bird>. %0.90;0.47% {1: 1} + +********** compound decomposition, one premise + IN: (-,bird,swimmer)>. %0.90;0.90% {1: 1} + +6 + + OUT: bird>. %0.90;0.81% {1: 1} + +********** decomposition on both sides of a statement + IN: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.90% {1: 1} + +1 + + OUT: (&,animal,swimmer)>. %0.90;0.47% {1: 1} + + OUT: animal>. %0.90;0.47% {1: 1} + +********** decomposition on both sides of a statement + IN: <(-,swimmer,bird) --> (-,swimmer,animal)>. %0.90;0.90% {1: 1} + +1 + + OUT: bird>. %0.90;0.47% {1: 1} + diff --git a/nars-dist/Examples/Example-NAL4-abridged.txt b/nars-dist/Examples/Example-NAL4-abridged.txt new file mode 100644 index 00000000..bd6e7fb7 --- /dev/null +++ b/nars-dist/Examples/Example-NAL4-abridged.txt @@ -0,0 +1,75 @@ +********** structural transformation + IN: <(*,acid,base) --> reaction>. +1 + OUT: (/,reaction,_,base)>. %1.00;0.90% {1: 1} +1 + OUT: (/,reaction,acid,_)>. %1.00;0.90% {1: 1} + +********** structural transformation + IN: (/,reaction,_,base)>. +2 + OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {1: 1} +1 + OUT: (/,reaction,acid,_)>. %1.00;0.90% {1: 1} + +********** structural transformation + IN: (/,reaction,acid,_)>. +2 + OUT: (/,reaction,_,base)>. %1.00;0.90% {1: 1} +1 + OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {1: 1} + +********** structural transformation + IN: (*,acid,base)>. %0.8% +2 + OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1: 1} +1 + OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {1: 1} + +********** structural transformation + IN: <(\,neutralization,_,base) --> acid>. %0.8% +1 + OUT: (*,acid,base)>. %0.80;0.90% {1: 1} +1 + OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {1: 1} + +********** structural transformation + IN: <(\,neutralization,acid,_) --> base>. %0.8% +1 + OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1: 1} +1 + OUT: (*,acid,base)>. %0.80;0.90% {1: 1} + +********** composition on both sides of a statement + IN: animal>. %0.9% + IN: <(*,bird,plant) --> ?x>? +7 + OUT: <(*,bird,plant) --> (*,animal,plant)>. %0.90;0.81% {1: 1} + +********** composition on both sides of a statement + IN: reaction>. %0.9% + IN: <(/,neutralization,acid,_) --> ?x>? +4 + OUT: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.90;0.81% {1: 1} + +********** composition on both sides of a statement + IN: base>. %0.9% + IN: <(/,neutralization,_,base) --> ?x>? +4 + OUT: <(/,neutralization,_,base) --> (/,neutralization,_,soda)>. %0.90;0.81% {1: 1} + +********** decomposition on both sides of a statement + IN: <(*,plant,bird) --> (*,plant,animal)>. %0.9% +1 + OUT: animal>. %0.90;0.47% {1: 1} + +********** decomposition on both sides of a statement + IN: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.9% +1 + OUT: reaction>. %0.90;0.47% {1: 1} + +********** decomposition on both sides of a statement + IN: <(/,neutralization,_,soda) --> (/,neutralization,_,base)>. %0.9% +1 + OUT: soda>. %0.90;0.47% {1: 1} + diff --git a/nars-dist/Examples/Example-NAL4-complete.txt b/nars-dist/Examples/Example-NAL4-complete.txt new file mode 100644 index 00000000..49111ed1 --- /dev/null +++ b/nars-dist/Examples/Example-NAL4-complete.txt @@ -0,0 +1,122 @@ +********** structural transformation + IN: <(*,acid,base) --> reaction>. %1.00;0.90% {1: 1} + +1 + + OUT: (/,reaction,_,base)>. %1.00;0.90% {1: 1} + +1 + + OUT: (/,reaction,acid,_)>. %1.00;0.90% {1: 1} + +********** structural transformation + IN: (/,reaction,_,base)>. %1.00;0.90% {1: 1} + +2 + + OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {1: 1} + +1 + + OUT: (/,reaction,acid,_)>. %1.00;0.90% {1: 1} + +********** structural transformation + IN: (/,reaction,acid,_)>. %1.00;0.90% {1: 1} + +2 + + OUT: (/,reaction,_,base)>. %1.00;0.90% {1: 1} + +1 + + OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {1: 1} + +********** structural transformation + IN: (*,acid,base)>. %0.80;0.90% {1: 1} + +2 + + OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1: 1} + +1 + + OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {1: 1} + +********** structural transformation + IN: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1: 1} + +1 + + OUT: (*,acid,base)>. %0.80;0.90% {1: 1} + +1 + + OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {1: 1} + +********** structural transformation + IN: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {1: 1} + +1 + + OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1: 1} + +1 + + OUT: (*,acid,base)>. %0.80;0.90% {1: 1} + +********** composition on both sides of a statement + IN: animal>. %0.90;0.90% {1: 1} + + IN: <(*,bird,plant) --> ?1>? {1: 2} + +1 + + OUT: (/,?1,_,plant)>? {1: 2} + +5 + + OUT: (/,?1,bird,_)>? {1: 2} + +1 + + OUT: <(*,bird,plant) --> (*,animal,plant)>. %0.90;0.81% {1: 1} + +********** composition on both sides of a statement + IN: reaction>. %0.90;0.90% {1: 1} + + IN: <(/,neutralization,acid,_) --> ?1>? {1: 2} + +4 + + OUT: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.90;0.81% {1: 1} + +********** composition on both sides of a statement + IN: base>. %0.90;0.90% {1: 1} + + IN: <(/,neutralization,_,base) --> ?1>? {1: 2} + +4 + + OUT: <(/,neutralization,_,base) --> (/,neutralization,_,soda)>. %0.90;0.81% {1: 1} + +********** decomposition on both sides of a statement + IN: <(*,plant,bird) --> (*,plant,animal)>. %0.90;0.90% {1: 1} + +1 + + OUT: animal>. %0.90;0.47% {1: 1} + +********** decomposition on both sides of a statement + IN: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.90;0.90% {1: 1} + +1 + + OUT: reaction>. %0.90;0.47% {1: 1} + +********** decomposition on both sides of a statement + IN: <(/,neutralization,_,soda) --> (/,neutralization,_,base)>. %0.90;0.90% {1: 1} + +1 + + OUT: soda>. %0.90;0.47% {1: 1} + diff --git a/nars-dist/Examples/Example-NAL5-abridged.txt b/nars-dist/Examples/Example-NAL5-abridged.txt new file mode 100644 index 00000000..e9af3d2c --- /dev/null +++ b/nars-dist/Examples/Example-NAL5-abridged.txt @@ -0,0 +1,284 @@ +********** revision + IN: < flyer> ==> bird>>. + IN: < flyer> ==> bird>>. %0.00;0.60% +1 + + OUT: < flyer> ==> bird>>. %0.85;0.91% {2: 2;1} + + +********** deduction + IN: < bird> ==> animal>>. + IN: < flyer> ==> bird>>. + +1 + OUT: < flyer> ==> animal>>. %1.00;0.81% {2: 1;2} + + +********** exemplification + IN: < flyer> ==> bird>>. + + IN: < bird> ==> animal>>. + +7 + OUT: < animal> ==> flyer>>. %1.00;0.44% {2: 1;2} + + +********** induction + IN: < bird> ==> animal>>. + + IN: < bird> ==> flyer>>. %0.8% +1 + OUT: < flyer> ==> animal>>. %1.00;0.39% {2: 1;2} + + OUT: < animal> ==> flyer>>. %0.80;0.44% {2: 1;2} + + +********** abduction + IN: < bird> ==> animal>>. %0.7% + IN: < flyer> ==> animal>>. + +7 + OUT: < bird> ==> flyer>>. %0.70;0.44% {2: 1;2} + + OUT: < flyer> ==> bird>>. %1.00;0.36% {2: 1;2} + + +********** detachment + IN: < bird> ==> animal>>. + + IN: bird>. + +1 + + OUT: animal>. %1.00;0.81% {2: 1;2} + + +********** detachment + IN: < bird> ==> animal>>. %0.7% + + IN: animal>. + +1 + OUT: bird>. %1.00;0.36% {2: 2;1} + + +********** comparison + IN: < bird> ==> animal>>. + + IN: < bird> ==> flyer>>. %0.8% + +1 + OUT: < animal> <=> flyer>>. %0.80;0.44% {2: 1;2} + + +********** comparison + IN: < bird> ==> animal>>. %0.7% + IN: < flyer> ==> animal>>. + +7 + OUT: < bird> <=> flyer>>. %0.70;0.44% {2: 1;2} + + +********** analogy + IN: < bird> ==> animal>>. + + IN: < bird> <=> flyer>>. %0.8% +1 + + OUT: < flyer> ==> animal>>. %0.80;0.46% {2: 1;2} + + +********** analogy + IN: bird>. + + IN: < bird> <=> flyer>>. %0.8% +1 + + OUT: flyer>. %0.80;0.72% {2: 1;2} + + +********** resemblance + IN: < animal> <=> bird>>. + + IN: < bird> <=> flyer>>. %0.8% + +7 + OUT: < animal> <=> flyer>>. %0.80;0.81% {2: 1;2} + + +********** conversions between Implication and Equivalence + IN: < flyer> ==> bird>>. %0.9% + + IN: < bird> ==> flyer>>. %0.9% + +5 + + OUT: < bird> <=> flyer>>. %0.81;0.82% {2: 1;2} + + +********** compound composition, two premises + IN: < bird> ==> animal>>. + + IN: < bird> ==> flyer>>. %0.8% + +1 + + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {2: 1;2} + + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.82% {2: 1;2} + + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.91% {2: 1;2} + + +********** compound decomposition, two premises + IN: < bird> ==> (&&, animal>, flyer>)>. %0% + + IN: < bird> ==> flyer>>. + +6 + OUT: < bird> ==> animal>>. %0.00;0.81% {2: 1;2} + + +********** compound decomposition, two premises + IN: (&&, flyer>, swimmer>). %0% + + IN: flyer>. + +1 + + OUT: swimmer>. %0.00;0.81% {2: 1;2} + + +********** compound decomposition, two premises + IN: (||, flyer>, swimmer>). + + IN: swimmer>. %0% +1 + + OUT: flyer>. %1.00;0.47% {1: 1} + + +********** compound composition, one premises + IN: flyer>. %0.9% + + IN: (&&, flyer>, swimmer>)? +6 + OUT: (&&, flyer>, swimmer>). %0.90;0.47% {1: 1} + + +********** compound composition, one premises + IN: flyer>. %0.9% + + IN: (||, flyer>, swimmer>)? +6 + OUT: (||, flyer>, swimmer>). %0.90;0.81% {1: 1} + + +********** compound decomposition, one premises + IN: (&&, flyer>, swimmer>). %0.9% + +3 + OUT: flyer>. %0.90;0.81% {1: 1} +5 + OUT: swimmer>. %0.90;0.81% {1: 1} + +********** compound decomposition, one premises + IN: (||, flyer>, swimmer>). %0.9% + +3 + OUT: flyer>. %0.90;0.47% {1: 1} +4 + OUT: swimmer>. %0.90;0.47% {1: 1} + + +********** negation + IN: (--, flyer>). %0.1% + +2 + OUT: flyer>. %0.90;0.90% {1: 1} + + +********** negation + IN: flyer>. %0.9% + + IN: (--, flyer>)? +1 +2 + OUT: (--, flyer>). %0.10;0.90% {1: 1} + + +********** contraposition + IN: <(--, bird>) ==> flyer>>. %0.1% + + IN: <(--, flyer>) ==> bird>>? +15 + OUT: <(--, flyer>) ==> bird>>. %0.00;0.44% {1: 1} + + +********** conditional deduction + IN: <(&&,a,b) ==> c>. + + IN: a. + +1 + + OUT: c>. %1.00;0.81% {2: 1;2} + + +********** conditional deduction + IN: <(&&,a,b,c) ==> d>. + + IN: a. + +1 + OUT: <(&&,b,c) ==> d>. %1.00;0.81% {2: 1;2} + + +********** conditional deduction + IN: <(&&,a,b) ==> c>. + + IN: a>. + +1 + + OUT: <(&&,b,d) ==> c>. %1.00;0.81% {2: 2;1} + + +********** conditional abduction + IN: c>. + + IN: <(&&,a,b) ==> c>. %0.4% + +5 + OUT: a. %1.00;0.24% {2: 1;2} + + +********** conditional abduction + IN: <(&&,b,c) ==> d>. + + IN: <(&&,a,b,c) ==> d>. + +3 + + OUT: a. %1.00;0.44% {2: 1;2} + + +********** conditional abduction + IN: <(&&,b,d) ==> c>. %0.4% + + IN: <(&&,a,b) ==> c>. + +6 + + OUT: d>. %1.00;0.24% {2: 1;2} + + OUT: a>. %0.40;0.44% {2: 1;2} + +********** conditional induction + IN: <(&&,a,b) ==> c>. + + IN: d>. %0.7% + +1 + OUT: <(&&,b,d) ==> c>. %1.00;0.36% {2: 2;1} + diff --git a/nars-dist/Examples/Example-NAL5-complete.txt b/nars-dist/Examples/Example-NAL5-complete.txt new file mode 100644 index 00000000..9ee2120d --- /dev/null +++ b/nars-dist/Examples/Example-NAL5-complete.txt @@ -0,0 +1,357 @@ +********** revision + IN: < flyer> ==> bird>>. %1.00;0.90% {1: 1} + + IN: < flyer> ==> bird>>. %0.00;0.60% {1: 2} + +1 + + OUT: < flyer> ==> bird>>. %0.85;0.91% {2: 2;1} + +********** deduction + IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + + IN: < flyer> ==> bird>>. %1.00;0.90% {1: 2} + +1 + + OUT: < flyer> ==> animal>>. %1.00;0.81% {2: 1;2} + + OUT: < animal> ==> flyer>>. %1.00;0.44% {2: 1;2} + +********** exemplification + IN: < flyer> ==> bird>>. %1.00;0.90% {1: 1} + + IN: < bird> ==> animal>>. %1.00;0.90% {1: 2} + +7 + + OUT: < flyer> ==> animal>>. %1.00;0.81% {2: 1;2} + + OUT: < animal> ==> flyer>>. %1.00;0.44% {2: 1;2} + +********** induction + IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + + IN: < bird> ==> flyer>>. %0.80;0.90% {1: 2} + +1 + + OUT: < flyer> ==> animal>>. %1.00;0.39% {2: 1;2} + + OUT: < animal> ==> flyer>>. %0.80;0.44% {2: 1;2} + + OUT: < animal> <=> flyer>>. %0.80;0.44% {2: 1;2} + + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {2: 1;2} + + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.82% {2: 1;2} + + OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {2: 1;2} + + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.91% {2: 1;2} + + OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.82% {2: 1;2} + +********** abduction + IN: < bird> ==> animal>>. %0.70;0.90% {1: 1} + + IN: < flyer> ==> animal>>. %1.00;0.90% {1: 2} + +7 + + OUT: < bird> ==> flyer>>. %0.70;0.44% {2: 1;2} + + OUT: < flyer> ==> bird>>. %1.00;0.36% {2: 1;2} + + OUT: < bird> <=> flyer>>. %0.70;0.44% {2: 1;2} + + OUT: <(&&, bird>, flyer>) ==> animal>>. %1.00;0.96% {2: 1;2} + + OUT: <(||, bird>, flyer>) ==> animal>>. %0.70;0.83% {2: 1;2} + + OUT: <(||,(--, flyer>), bird>) ==> animal>>. %0.00;0.92% {2: 1;2} + + OUT: <(||,(--, bird>), flyer>) ==> animal>>. %0.30;0.87% {2: 1;2} + + OUT: (&&,< bird> ==> #1()>,< flyer> ==> #1()>). %0.70;0.83% {2: 1;2} + +********** detachment + IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + + IN: bird>. %1.00;0.90% {1: 2} + +1 + + OUT: animal>. %1.00;0.81% {2: 2;1} + +********** detachment + IN: < bird> ==> animal>>. %0.70;0.90% {1: 1} + + IN: animal>. %1.00;0.90% {1: 2} + +1 + + OUT: bird>. %1.00;0.36% {2: 2;1} + +********** comparison + IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + + IN: < bird> ==> flyer>>. %0.80;0.90% {1: 2} + +1 + + OUT: < flyer> ==> animal>>. %1.00;0.39% {2: 1;2} + + OUT: < animal> ==> flyer>>. %0.80;0.44% {2: 1;2} + + OUT: < animal> <=> flyer>>. %0.80;0.44% {2: 1;2} + + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {2: 1;2} + + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.82% {2: 1;2} + + OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {2: 1;2} + + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.91% {2: 1;2} + + OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.82% {2: 1;2} + +********** comparison + IN: < bird> ==> animal>>. %0.70;0.90% {1: 1} + + IN: < flyer> ==> animal>>. %1.00;0.90% {1: 2} + +7 + + OUT: < bird> ==> flyer>>. %0.70;0.44% {2: 1;2} + + OUT: < flyer> ==> bird>>. %1.00;0.36% {2: 1;2} + + OUT: < bird> <=> flyer>>. %0.70;0.44% {2: 1;2} + + OUT: <(&&, bird>, flyer>) ==> animal>>. %1.00;0.96% {2: 1;2} + + OUT: <(||, bird>, flyer>) ==> animal>>. %0.70;0.83% {2: 1;2} + + OUT: <(||,(--, flyer>), bird>) ==> animal>>. %0.00;0.92% {2: 1;2} + + OUT: <(||,(--, bird>), flyer>) ==> animal>>. %0.30;0.87% {2: 1;2} + + OUT: (&&,< bird> ==> #1()>,< flyer> ==> #1()>). %0.70;0.83% {2: 1;2} + +********** analogy + IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + + IN: < bird> <=> flyer>>. %0.80;0.90% {1: 2} + +1 + + OUT: < flyer> ==> animal>>. %0.80;0.46% {2: 1;2} + +********** analogy + IN: bird>. %1.00;0.90% {1: 1} + + IN: < bird> <=> flyer>>. %0.80;0.90% {1: 2} + +1 + + OUT: flyer>. %0.80;0.72% {2: 1;2} + +********** resemblance + IN: < animal> <=> bird>>. %1.00;0.90% {1: 1} + + IN: < bird> <=> flyer>>. %0.80;0.90% {1: 2} + +7 + + OUT: < animal> <=> flyer>>. %0.80;0.81% {2: 1;2} + +********** conversions between Implication and Equivalence + IN: < flyer> ==> bird>>. %0.90;0.90% {1: 1} + + IN: < bird> ==> flyer>>. %0.90;0.90% {1: 2} + +5 + + OUT: < bird> <=> flyer>>. %0.81;0.82% {2: 1;2} + +********** compound composition, two premises + IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + + IN: < bird> ==> flyer>>. %0.80;0.90% {1: 2} + +1 + + OUT: < flyer> ==> animal>>. %1.00;0.39% {2: 1;2} + + OUT: < animal> ==> flyer>>. %0.80;0.44% {2: 1;2} + + OUT: < animal> <=> flyer>>. %0.80;0.44% {2: 1;2} + + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {2: 1;2} + + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.82% {2: 1;2} + + OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {2: 1;2} + + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.91% {2: 1;2} + + OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.82% {2: 1;2} + +********** compound decomposition, two premises + IN: < bird> ==> (&&, animal>, flyer>)>. %0.00;0.90% {1: 1} + + IN: < bird> ==> flyer>>. %1.00;0.90% {1: 2} + +6 + + OUT: < bird> ==> animal>>. %0.00;0.81% {2: 1;2} + +********** compound decomposition, two premises + IN: (&&, flyer>, swimmer>). %0.00;0.90% {1: 1} + + IN: flyer>. %1.00;0.90% {1: 2} + +1 + + OUT: swimmer>. %0.00;0.81% {2: 2;1} + +********** compound decomposition, two premises + IN: (||, flyer>, swimmer>). %1.00;0.90% {1: 1} + + IN: swimmer>. %0.00;0.90% {1: 2} + +1 + + OUT: flyer>. %1.00;0.81% {2: 2;1} + +********** compound composition, one premises + IN: flyer>. %0.90;0.90% {1: 1} + + IN: (&&, flyer>, swimmer>)? {1: 2} + +6 + + OUT: (&&, flyer>, swimmer>). %0.90;0.47% {1: 1} + +********** compound composition, one premises + IN: flyer>. %0.90;0.90% {1: 1} + + IN: (||, flyer>, swimmer>)? {1: 2} + +6 + + OUT: (||, flyer>, swimmer>). %0.90;0.81% {1: 1} + +********** compound decomposition, one premises + IN: (&&, flyer>, swimmer>). %0.90;0.90% {1: 1} + +3 + + OUT: flyer>. %0.90;0.81% {1: 1} + +5 + + OUT: swimmer>. %0.90;0.81% {1: 1} + +********** compound decomposition, one premises + IN: (||, flyer>, swimmer>). %0.90;0.90% {1: 1} + +3 + + OUT: flyer>. %0.90;0.47% {1: 1} + +4 + + OUT: swimmer>. %0.90;0.47% {1: 1} + +********** negation + IN: (--, flyer>). %0.10;0.90% {1: 1} + +2 + + OUT: flyer>. %0.90;0.90% {1: 1} + +********** negation + IN: flyer>. %0.90;0.90% {1: 1} + + IN: (--, flyer>)? {1: 2} + +3 + + OUT: flyer>? {1: 2} + +********** contraposition + IN: <(--, bird>) ==> flyer>>. %0.10;0.90% {1: 1} + + IN: <(--, flyer>) ==> bird>>? {1: 2} + +15 + + OUT: <(--, flyer>) ==> bird>>. %0.00;0.44% {1: 1} + +********** conditional deduction + IN: <(&&,a,b) ==> c>. %1.00;0.90% {1: 1} + + IN: a. %1.00;0.90% {1: 2} + +1 + + OUT: c>. %1.00;0.81% {2: 2;1} + +********** conditional deduction + IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {1: 1} + + IN: a. %1.00;0.90% {1: 2} + +1 + + OUT: <(&&,b,c) ==> d>. %1.00;0.81% {2: 2;1} + +********** conditional deduction + IN: <(&&,a,b) ==> c>. %1.00;0.90% {1: 1} + + IN: a>. %1.00;0.90% {1: 2} + +1 + + OUT: <(&&,b,d) ==> c>. %1.00;0.81% {2: 2;1} + +********** conditional abduction + IN: c>. %1.00;0.90% {1: 1} + + IN: <(&&,a,b) ==> c>. %0.40;0.90% {1: 2} + +5 + + OUT: a. %1.00;0.24% {2: 1;2} + +********** conditional abduction + IN: <(&&,b,c) ==> d>. %1.00;0.90% {1: 1} + + IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {1: 2} + +3 + + OUT: a. %1.00;0.44% {2: 1;2} + +********** conditional abduction + IN: <(&&,b,d) ==> c>. %0.40;0.90% {1: 1} + + IN: <(&&,a,b) ==> c>. %1.00;0.90% {1: 2} + +6 + + OUT: d>. %1.00;0.24% {2: 1;2} + + OUT: a>. %0.40;0.44% {2: 1;2} + +********** conditional induction + IN: <(&&,a,b) ==> c>. %1.00;0.90% {1: 1} + + IN: d>. %0.70;0.90% {1: 2} + +1 + + OUT: <(&&,b,d) ==> c>. %1.00;0.36% {2: 2;1} + diff --git a/nars-dist/Examples/Example-NAL6-abridged.txt b/nars-dist/Examples/Example-NAL6-abridged.txt new file mode 100644 index 00000000..0e3ae213 --- /dev/null +++ b/nars-dist/Examples/Example-NAL6-abridged.txt @@ -0,0 +1,187 @@ +********** variable unification + IN: <<#x --> bird> ==> <#x --> flyer>>. + IN: <<#y --> bird> ==> <#y --> flyer>>. %0; 0.7% +1 + OUT: <<#1 --> bird> ==> <#1 --> flyer>>. %0.79;0.91% {2: 2;1} + + +********** variable unification + IN: (&&, <#w() --> bird>, <#w() --> flyer>). + IN: (&&, <#x() --> bird>, <#x() --> flyer>). %0.1; 0.7% +10 + OUT: [NO REVISION] + +********** variable unification + IN: <<#x --> bird> ==> <#x --> animal>>. + IN: <<#y --> robin> ==> <#y --> bird>>. +3 + + OUT: <<#1 --> robin> ==> <#1 --> animal>>. %1.00;0.81% {2: 1;2} + + OUT: <<#1 --> animal> ==> <#1 --> robin>>. %1.00;0.44% {2: 1;2} + + +********** variable unification + IN: < #y> ==> #y>>. + IN: < #w> ==> #w>>. %0.7% +3 + + OUT: < #1> ==> #1>>. %1.00;0.36% {2: 1;2} + + OUT: < #1> ==> #1>>. %0.70;0.44% {2: 1;2} + + OUT: < #1> <=> #1>>. %0.70;0.44% {2: 1;2} + + OUT: <(&&, #1>, #1>) ==> #1>>. %1.00;0.96% {2: 1;2} + + OUT: <(||, #1>, #1>) ==> #1>>. %0.70;0.83% {2: 1;2} + + OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.00;0.92% {2: 1;2} + + +********** variable unification + IN: <(&&, A, <#x --> b>) ==> <#x --> c>>. + IN: <<#y --> d> ==> <#y --> b>>. +1 + OUT: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %1.00;0.81% {2: 1;2} + + +********** variable unification + IN: <(&&, A, <#x --> b>, E) ==> <#x --> c>>. + IN: <(&&,<#y --> d>,A) ==> <#y --> c>>. %0.8% +2 + OUT: <(&&,<#1 --> b>,E) ==> <#1 --> d>>. %1.00;0.39% {2: 2;1} + + OUT: <<#1 --> d> ==> (&&,<#1 --> b>,E)>. %0.80;0.44% {2: 2;1} + + +********** variable unification + IN: <(&&, B, <#x --> a>) ==> <#x --> c>>. %0.7% + IN: <<#y --> a> ==> <#y --> d>>. +1 + + OUT: <(&&,<#1 --> d>,B) ==> <#1 --> c>>. %0.70;0.44% {2: 1;2} + + +********** variable elimination + IN: <<#x --> bird> ==> <#x --> animal>>. + IN: bird>. +2 + + OUT: animal>. %1.00;0.81% {2: 1;2} + + +********** variable elimination + IN: <<#x --> bird> ==> <#x --> animal>>. + IN: animal>. +2 + OUT: bird>. %1.00;0.44% {2: 1;2} + + +********** variable elimination + IN: <<#x --> bird> <=> <#x --> animal>>. + IN: bird>. +2 + + OUT: animal>. %1.00;0.72% {2: 1;2} + + +********** variable elimination + IN: (&&,<#x() --> bird>,<#x() --> swimmer>). + IN: bird>. %0.9% +2 + + OUT: swimmer>. %1.00;0.42% {2: 1;2} + + +********** variable elimination + IN: <(&&, <#x --> a>, B) ==> <#x --> c>>. + IN: a>. +1 + OUT: c>>. %1.00;0.81% {2: 1;2} + + +********** variable elimination + IN: <(&&, A, <#x --> b>, C) ==> <#x --> d>>. + IN: b>. +1 + + OUT: <(&&,A,C) ==> d>>. %1.00;0.81% {2: 2;1} + + +********** multiple variable elimination + IN: <(&&,<#x --> key>,<#y --> lock>) ==> <#y --> (/,open,#x,_)>>. + IN: . +12 + OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.81% {2: 2;1} + +********** multiple variable elimination + IN: <<#x --> lock> ==> (&&,<#x --> (/,open,#y(#x),_)>,<#y(#x) --> key>)>. + IN: . +3 + OUT: (&&,<{lock1} --> (/,open,#1(),_)>,<#1() --> key>). %1.00;0.81% {2: 1;2} + +********** multiple variable elimination + IN: (&&,<#x() --> lock>,<<#y --> key> ==> <#x() --> (/,open,#y,_)>>). + IN: . %0.9% +3 + OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.42% {2: 1;2} + +********** multiple variable elimination + IN: (&&,<#x() --> lock>,<#y() --> key>,<#x() --> (/,open,#y(),_)>). + IN: . %0.9% +5 + OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %1.00;0.42% {2: 1;2} + +********** variable introduction + IN: bird>. + IN: swimmer>. %0.8% +1 + OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.39% {2: 1;2} + OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.80;0.44% {2: 1;2} + OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.80;0.44% {2: 1;2} + OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.80;0.82% {2: 1;2} + +********** variable introduction + IN: swimmer>. + IN: swimmer>. %0.8% +1 + OUT: < #1> ==> #1>>. %1.00;0.39% {2: 1;2} + OUT: < #1> ==> #1>>. %0.80;0.44% {2: 1;2} + OUT: < #1> <=> #1>>. %0.80;0.44% {2: 1;2} + OUT: (&&, #1()>, #1()>). %0.80;0.82% {2: 1;2} + +********** multiple variables introduction + IN: key>. + IN: (/, open, _, lock1)>. +13 + OUT: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.44% {2: 1;2} + OUT: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.81% {2: 1;2} + +********** multiple variables introduction + IN: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. +3 + OUT: <<#1 --> key> ==> <(*,#1,lock1) --> open>>. %1.00;0.90% {1: 1} +1 + OUT: <<#1 --> key> ==> (/,open,#1,_)>>. %1.00;0.90% {1: 1} + +********** multiple variables introduction + IN: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). +2 + OUT: (&&,<#1() --> key>,<(*,#1(),lock1) --> open>). %1.00;0.90% {1: 1} +1 + OUT: (&&,<#1() --> key>, (/,open,#1(),_)>). %1.00;0.90% {1: 1} + +********** multiple variables introduction + IN: <<#x --> key> ==> (/,open,#x,_)>>. %0.8% + IN: lock>. +1 + OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.39% {2: 1;2} + OUT: <<#1 --> key> ==> (&&,<#2(#1) --> (/,open,#1,_)>,<#2(#1) --> lock>)>. %0.80;0.82% {2: 1;2} + +********** multiple variables introduction + IN: (&&, (/,open,#x(),_)>,<#x() --> key>). %0.8% + IN: lock>. +1 + OUT: (&&,<#1() --> key>,<<#2 --> lock> ==> <#2 --> (/,open,#1(),_)>>). %1.00;0.39% {2: 1;2} + OUT: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %0.80;0.82% {2: 1;2} diff --git a/nars-dist/Examples/Example-NAL6-complete.txt b/nars-dist/Examples/Example-NAL6-complete.txt new file mode 100644 index 00000000..168bbbef --- /dev/null +++ b/nars-dist/Examples/Example-NAL6-complete.txt @@ -0,0 +1,315 @@ +********** variable unification + IN: <<#1 --> bird> ==> <#1 --> flyer>>. %1.00;0.90% {1: 1} + + IN: <<#1 --> bird> ==> <#1 --> flyer>>. %0.00;0.70% {1: 2} + +1 + + OUT: <<#1 --> bird> ==> <#1 --> flyer>>. %0.79;0.91% {2: 2;1} + +********** variable unification + IN: (&&,<#1() --> bird>,<#1() --> flyer>). %1.00;0.90% {1: 1} + + IN: (&&,<#1() --> bird>,<#1() --> flyer>). %0.10;0.70% {1: 2} + +10 +********** variable unification + IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {1: 1} + + IN: <<#1 --> robin> ==> <#1 --> bird>>. %1.00;0.90% {1: 2} + +3 + + OUT: <<#1 --> robin> ==> <#1 --> animal>>. %1.00;0.81% {2: 1;2} + + OUT: <<#1 --> animal> ==> <#1 --> robin>>. %1.00;0.44% {2: 1;2} + +********** variable unification + IN: < #1> ==> #1>>. %1.00;0.90% {1: 1} + + IN: < #1> ==> #1>>. %0.70;0.90% {1: 2} + +3 + + OUT: < #1> ==> #1>>. %1.00;0.36% {2: 1;2} + + OUT: < #1> ==> #1>>. %0.70;0.44% {2: 1;2} + + OUT: < #1> <=> #1>>. %0.70;0.44% {2: 1;2} + + OUT: <(&&, #1>, #1>) ==> #1>>. %1.00;0.96% {2: 1;2} + + OUT: <(||, #1>, #1>) ==> #1>>. %0.70;0.83% {2: 1;2} + + OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.30;0.87% {2: 1;2} + + OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.00;0.92% {2: 1;2} + + OUT: (&&,< #1> ==> #2()>,< #1> ==> #2()>). %0.70;0.83% {2: 1;2} + +********** variable unification + IN: <(&&,<#1 --> b>,A) ==> <#1 --> c>>. %1.00;0.90% {1: 1} + + IN: <<#1 --> d> ==> <#1 --> b>>. %1.00;0.90% {1: 2} + +1 + + OUT: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %1.00;0.81% {2: 1;2} + +********** variable unification + IN: <(&&,<#1 --> b>,A,E) ==> <#1 --> c>>. %1.00;0.90% {1: 1} + + IN: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %0.80;0.90% {1: 2} + +2 + + OUT: <(&&,<#1 --> b>,E) ==> <#1 --> d>>. %1.00;0.39% {2: 2;1} + + OUT: <<#1 --> d> ==> (&&,<#1 --> b>,E)>. %0.80;0.44% {2: 2;1} + +********** variable unification + IN: <(&&,<#1 --> a>,B) ==> <#1 --> c>>. %0.70;0.90% {1: 1} + + IN: <<#1 --> a> ==> <#1 --> d>>. %1.00;0.90% {1: 2} + +1 + + OUT: <(&&,<#1 --> d>,B) ==> <#1 --> c>>. %0.70;0.44% {2: 1;2} + +********** variable elimination + IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {1: 1} + + IN: bird>. %1.00;0.90% {1: 2} + +2 + + OUT: animal>. %1.00;0.81% {2: 1;2} + +********** variable elimination + IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {1: 1} + + IN: animal>. %1.00;0.90% {1: 2} + +2 + + OUT: bird>. %1.00;0.44% {2: 1;2} + +********** variable elimination + IN: <<#1 --> animal> <=> <#1 --> bird>>. %1.00;0.90% {1: 1} + + IN: bird>. %1.00;0.90% {1: 2} + +2 + + OUT: animal>. %1.00;0.72% {2: 1;2} + +********** variable elimination + IN: (&&,<#1() --> bird>,<#1() --> swimmer>). %1.00;0.90% {1: 1} + + IN: bird>. %0.90;0.90% {1: 2} + +2 + + OUT: swimmer>. %1.00;0.42% {2: 1;2} + +********** variable elimination + IN: <(&&,<#1 --> a>,B) ==> <#1 --> c>>. %1.00;0.90% {1: 1} + + IN: a>. %1.00;0.90% {1: 2} + +1 + + OUT: c>>. %1.00;0.81% {2: 1;2} + +********** variable elimination + IN: <(&&,<#1 --> b>,A,C) ==> <#1 --> d>>. %1.00;0.90% {1: 1} + + IN: b>. %1.00;0.90% {1: 2} + +1 + + OUT: <(&&,A,C) ==> d>>. %1.00;0.81% {2: 2;1} + +********** multiple variable elimination + IN: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.90% {1: 1} + + IN: <{lock1} --> lock>. %1.00;0.90% {1: 2} + +7 + + OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <(*,#1,#2) --> open>>. %1.00;0.90% {1: 1} + +5 + + OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.81% {2: 2;1} + +********** multiple variable elimination + IN: <<#1 --> lock> ==> (&&,<#1 --> (/,open,#2(#1),_)>,<#2(#1) --> key>)>. %1.00;0.90% {1: 1} + + IN: <{lock1} --> lock>. %1.00;0.90% {1: 2} + +3 + + OUT: (&&,<{lock1} --> (/,open,#1(),_)>,<#1() --> key>). %1.00;0.81% {2: 1;2} + +********** multiple variable elimination + IN: (&&,<#1() --> lock>,<<#2 --> key> ==> <#1() --> (/,open,#2,_)>>). %1.00;0.90% {1: 1} + + IN: <{lock1} --> lock>. %0.90;0.90% {1: 2} + +3 + + OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.42% {2: 1;2} + +********** multiple variable elimination + IN: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %1.00;0.90% {1: 1} + + IN: <{lock1} --> lock>. %0.90;0.90% {1: 2} + +5 + + OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %1.00;0.42% {2: 1;2} + +********** variable introduction + IN: bird>. %1.00;0.90% {1: 1} + + IN: swimmer>. %0.80;0.90% {1: 2} + +1 + + OUT: bird>. %1.00;0.39% {2: 1;2} + + OUT: swimmer>. %0.80;0.44% {2: 1;2} + + OUT: swimmer>. %0.80;0.44% {2: 1;2} + + OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.39% {2: 1;2} + + OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.80;0.44% {2: 1;2} + + OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.80;0.44% {2: 1;2} + + OUT: (|,bird,swimmer)>. %1.00;0.97% {2: 1;2} + + OUT: (&,bird,swimmer)>. %0.80;0.82% {2: 1;2} + + OUT: (-,bird,swimmer)>. %0.20;0.88% {2: 1;2} + + OUT: (-,swimmer,bird)>. %0.00;0.91% {2: 1;2} + + OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.80;0.82% {2: 1;2} + +********** variable introduction + IN: swimmer>. %1.00;0.90% {1: 1} + + IN: swimmer>. %0.80;0.90% {1: 2} + +1 + + OUT: swan>. %1.00;0.39% {2: 1;2} + + OUT: gull>. %0.80;0.44% {2: 1;2} + + OUT: swan>. %0.80;0.44% {2: 1;2} + + OUT: < #1> ==> #1>>. %1.00;0.39% {2: 1;2} + + OUT: < #1> ==> #1>>. %0.80;0.44% {2: 1;2} + + OUT: < #1> <=> #1>>. %0.80;0.44% {2: 1;2} + + OUT: <(&,gull,swan) --> swimmer>. %1.00;0.97% {2: 1;2} + + OUT: <(|,gull,swan) --> swimmer>. %0.80;0.82% {2: 1;2} + + OUT: <(~,gull,swan) --> swimmer>. %0.20;0.88% {2: 1;2} + + OUT: <(~,swan,gull) --> swimmer>. %0.00;0.91% {2: 1;2} + + OUT: (&&, #1()>, #1()>). %0.80;0.82% {2: 1;2} + +********** multiple variables introduction + IN: key>. %1.00;0.90% {1: 1} + + IN: (/,open,_,lock1)>. %1.00;0.90% {1: 2} + +1 + + OUT: <(*,key1,lock1) --> open>. %1.00;0.90% {1: 2} + +1 + + OUT: (/,open,key1,_)>. %1.00;0.90% {1: 2} + +3 + + OUT: <(*,key1,lock1) --> (*,key,lock1)>. %1.00;0.90% {1: 1} + +8 + + OUT: <(/,open,_,lock1) --> key>. %1.00;0.44% {2: 1;2} + + OUT: (/,open,_,lock1)>. %1.00;0.44% {2: 1;2} + + OUT: <(/,open,_,lock1) <-> key>. %1.00;0.44% {2: 1;2} + + OUT: <<#1 --> (/,open,_,lock1)> ==> <#1 --> key>>. %1.00;0.44% {2: 1;2} + + OUT: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.44% {2: 1;2} + + OUT: <<#1 --> (/,open,_,lock1)> <=> <#1 --> key>>. %1.00;0.44% {2: 1;2} + + OUT: (|,(/,open,_,lock1),key)>. %1.00;0.99% {2: 1;2} + + OUT: (&,(/,open,_,lock1),key)>. %1.00;0.81% {2: 1;2} + + OUT: (-,key,(/,open,_,lock1))>. %0.00;0.90% {2: 1;2} + + OUT: (-,(/,open,_,lock1),key)>. %0.00;0.90% {2: 1;2} + + OUT: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.81% {2: 1;2} + +********** multiple variables introduction + IN: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.90% {1: 1} + +3 + + OUT: <<#1 --> key> ==> <(*,#1,lock1) --> open>>. %1.00;0.90% {1: 1} + +1 + + OUT: <<#1 --> key> ==> (/,open,#1,_)>>. %1.00;0.90% {1: 1} + +********** multiple variables introduction + IN: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.90% {1: 1} + +2 + + OUT: (&&,<#1() --> key>,<(*,#1(),lock1) --> open>). %1.00;0.90% {1: 1} + +1 + + OUT: (&&,<#1() --> key>, (/,open,#1(),_)>). %1.00;0.90% {1: 1} + +********** multiple variables introduction + IN: <<#1 --> key> ==> (/,open,#1,_)>>. %0.80;0.90% {1: 1} + + IN: lock>. %1.00;0.90% {1: 2} + +1 + + OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.39% {2: 1;2} + + OUT: <<#1 --> key> ==> (&&,<#2(#1) --> (/,open,#1,_)>,<#2(#1) --> lock>)>. %0.80;0.82% {2: 1;2} + +********** multiple variables introduction + IN: (&&,<#1() --> key>, (/,open,#1(),_)>). %0.80;0.90% {1: 1} + + IN: lock>. %1.00;0.90% {1: 2} + +1 + + OUT: (&&,<#1() --> key>,<<#2 --> lock> ==> <#2 --> (/,open,#1(),_)>>). %1.00;0.39% {2: 1;2} + + OUT: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %0.80;0.82% {2: 1;2} + diff --git a/nars-dist/Examples/Example-NAL7-abridged.txt b/nars-dist/Examples/Example-NAL7-abridged.txt new file mode 100644 index 00000000..c6d01c5a --- /dev/null +++ b/nars-dist/Examples/Example-NAL7-abridged.txt @@ -0,0 +1,78 @@ +********** temporal deduction/explification + IN: <<(*, #x, room_101) --> enter> =\> <(*, #x, door_101) --> open>>. %0.9% + IN: <<(*, #y, door_101) --> open> =\> <(*, #y, key_101) --> hold>>. %0.8% +14 + OUT: <<(*,#1,room_101) --> enter> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% {2: 1;2} + OUT: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.36% {2: 1;2} + +********** temporal induction + IN: <<(*, #x, door_101) --> open> =/> <(*, #x, room_101) --> enter>>. %0.9% + IN: <<(*, #y, door_101) --> open> =\> <(*, #y, key_101) --> hold>>. %0.8% +14 + OUT: <<(*,#1,key_101) --> hold> =\> <(*,#1,room_101) --> enter>>. %0.90;0.39% {2: 1;2} + OUT: <<(*,#1,room_101) --> enter> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% {2: 1;2} + OUT: <<(*,#1,room_101) --> enter> <(*,#1,key_101) --> hold>>. %0.73;0.44% {2: 1;2} + +********** temporal analogy + IN: <<(*, #x, door_101) --> open> =/> <(*, #x, room_101) --> enter>>. %0.95% + IN: <<(*, #x, room_101) --> enter> <=> <(*, #x, corridor_100) --> leave>>. +13 + OUT: <<(*,#1,door_101) --> open> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.72% {2: 1;2} + +********** inference on tense + IN: <<(*, #x, key_101) --> hold> =/> <(*, #x, room_101) --> enter>>. + IN: <(*, John, key_101) --> hold>. :/: +12 + OUT: <(*,John,room_101) --> enter>. :/: %1.00;0.81% {2: 1;2} + +********** inference on tense + IN: <<(*, #x, key_101) --> hold> =/> <(*, #x, room_101) --> enter>>. + IN: <(*, John, room_101) --> enter>. :|: +7 + OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.44% {2: 1;2} + +********** inference on tense + IN: <<(*, John, key_101) --> hold> =/> <(*, John, room_101) --> enter>>. + IN: <(*, John, key_101) --> hold>. :|: +1 + OUT: <(*,John,room_101) --> enter>. :/: %1.00;0.81% {2: 1;2} + +********** inference on tense + IN: <<(*, John, key_101) --> hold> =/> <(*, John, room_101) --> enter>>. + IN: <(*, John, room_101) --> enter>. :\: +2 + OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.44% {2: 2;1} + +********** induction on events + IN: <(*, John, door_101) --> open>. :|: +1 + IN: <(*, John, room_101) --> enter>. :|: +1 + OUT: <<(*,John,room_101) --> enter> =\> <(*,John,door_101) --> open>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} + +********** induction on events + IN: <(*, John, door_101) --> open>. :|: +1 + IN: <(*, John, room_101) --> enter>. :|: %0% +1 + OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 1;2} + OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 1;2} + +********** induction on events + IN: (/,open,_,door_101)>. :|: +1 + IN: (/,enter,_,room_101)>. :|: +1 + OUT: <<#1 --> (/,enter,_,room_101)> =\> <#1 --> (/,open,_,door_101)>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<#1 --> (/,open,_,door_101)> =/> <#1 --> (/,enter,_,room_101)>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<#1 --> (/,open,_,door_101)> <#1 --> (/,enter,_,room_101)>>. :|: %1.00;0.44% {2: 1;2} + +********** induction on events + IN: <(*,John,key_101) --> hold>. :|: +1 + IN: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: +1 + OUT: <(&/,<(*,John,key_101) --> hold>,<(*,John,door_101) --> open>) =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} + diff --git a/nars-dist/Examples/Example-NAL7-complete.txt b/nars-dist/Examples/Example-NAL7-complete.txt new file mode 100644 index 00000000..b56792a2 --- /dev/null +++ b/nars-dist/Examples/Example-NAL7-complete.txt @@ -0,0 +1,247 @@ +********** temporal deduction/explification + IN: <<(*,#1,room_101) --> enter> =\> <(*,#1,door_101) --> open>>. %0.90;0.90% {1: 1} + + IN: <<(*,#1,door_101) --> open> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {1: 2} + +3 + + OUT: < (/,enter,#1,_)> =\> <(*,#1,door_101) --> open>>. %0.90;0.90% {1: 1} + +2 + + OUT: <<(*,#1,door_101) --> open> =\> (/,hold,#1,_)>>. %0.80;0.90% {1: 2} + +2 + + OUT: <<(*,#1,room_101) --> enter> =\> (/,open,#1,_)>>. %0.90;0.90% {1: 1} + +3 + + OUT: < (/,open,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {1: 2} + +3 + + OUT: < (/,enter,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% {2: 1;2} + + OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %1.00;0.36% {2: 1;2} + +1 + + OUT: <<(*,#1,room_101) --> enter> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% {2: 1;2} + + OUT: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.36% {2: 1;2} + +********** temporal induction + IN: <<(*,#1,door_101) --> open> =/> <(*,#1,room_101) --> enter>>. %0.90;0.90% {1: 1} + + IN: <<(*,#1,door_101) --> open> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {1: 2} + +3 + + OUT: <<(*,#1,door_101) --> open> =/> (/,enter,#1,_)>>. %0.90;0.90% {1: 1} + +2 + + OUT: <<(*,#1,door_101) --> open> =\> (/,hold,#1,_)>>. %0.80;0.90% {1: 2} + +2 + + OUT: < (/,open,#1,_)> =/> <(*,#1,room_101) --> enter>>. %0.90;0.90% {1: 1} + +3 + + OUT: < (/,open,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {1: 2} + +3 + + OUT: <<(*,#1,key_101) --> hold> =\> (/,enter,#1,_)>>. %0.90;0.39% {2: 1;2} + + OUT: < (/,enter,#1,_)> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% {2: 1;2} + + OUT: < (/,enter,#1,_)> <(*,#1,key_101) --> hold>>. %0.73;0.44% {2: 1;2} + +1 + + OUT: <<(*,#1,key_101) --> hold> =\> <(*,#1,room_101) --> enter>>. %0.90;0.39% {2: 1;2} + + OUT: <<(*,#1,room_101) --> enter> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% {2: 1;2} + + OUT: <<(*,#1,room_101) --> enter> <(*,#1,key_101) --> hold>>. %0.73;0.44% {2: 1;2} + +********** temporal analogy + IN: <<(*,#1,door_101) --> open> =/> <(*,#1,room_101) --> enter>>. %0.95;0.90% {1: 1} + + IN: <<(*,#1,corridor_100) --> leave> <=> <(*,#1,room_101) --> enter>>. %1.00;0.90% {1: 2} + +3 + + OUT: < (/,open,#1,_)> =/> <(*,#1,room_101) --> enter>>. %0.95;0.90% {1: 1} + +2 + + OUT: <<(*,#1,room_101) --> enter> <=> (/,leave,#1,_)>>. %1.00;0.90% {1: 2} + +2 + + OUT: <<(*,#1,door_101) --> open> =/> (/,enter,#1,_)>>. %0.95;0.90% {1: 1} + +3 + + OUT: <<(*,#1,corridor_100) --> leave> <=> (/,enter,#1,_)>>. %1.00;0.90% {1: 2} + +2 + + OUT: < (/,open,#1,_)> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.72% {2: 1;2} + +1 + + OUT: <<(*,#1,door_101) --> open> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.72% {2: 1;2} + +********** inference on tense + IN: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {1: 1} + + IN: <(*,John,key_101) --> hold>. :/: %1.00;0.90% {1: 2} + +2 + + OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %1.00;0.90% {1: 1} + +2 + + OUT: (/,hold,_,key_101)>. :/: %1.00;0.90% {1: 2} + +2 + + OUT: < (/,hold,#1,_)> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {1: 1} + +1 + + OUT: (/,enter,John,_)>. :/: %1.00;0.81% {2: 1;2} + +4 + + OUT: (/,hold,John,_)>. :/: %1.00;0.90% {1: 2} + +1 + + OUT: <(*,John,room_101) --> enter>. :/: %1.00;0.81% {2: 1;2} + +********** inference on tense + IN: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {1: 1} + + IN: <(*,John,room_101) --> enter>. :|: %1.00;0.90% {1: 2} + +2 + + OUT: < (/,hold,#1,_)> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {1: 1} + +2 + + OUT: (/,enter,_,room_101)>. :|: %1.00;0.90% {1: 2} + +2 + + OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %1.00;0.90% {1: 1} + +1 + + OUT: (/,hold,John,_)>. :\: %1.00;0.44% {2: 1;2} + +********** inference on tense + IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. %1.00;0.90% {1: 1} + + IN: <(*,John,key_101) --> hold>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <(*,John,room_101) --> enter>. :/: %1.00;0.81% {2: 1;2} + +********** inference on tense + IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. %1.00;0.90% {1: 1} + + IN: <(*,John,room_101) --> enter>. :\: %1.00;0.90% {1: 2} + +2 + + OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.44% {2: 2;1} + +********** induction on events + IN: <(*,John,door_101) --> open>. :|: %1.00;0.90% {1: 1} + +1 + + OUT: (/,open,_,door_101)>. :|: %1.00;0.90% {1: 1} + + IN: <(*,John,room_101) --> enter>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <<(*,John,room_101) --> enter> =\> <(*,John,door_101) --> open>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} + + OUT: < (/,open,_,door_101)> =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 2;1} + + OUT: <<(*,John,room_101) --> enter> =\> (/,open,_,door_101)>>. :|: %1.00;0.44% {2: 2;1} + + OUT: < (/,open,_,door_101)> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 2;1} + + OUT: (/,open,John,_)>. :|: %1.00;0.90% {1: 1} + +********** induction on events + IN: <(*,John,door_101) --> open>. :|: %1.00;0.90% {1: 1} + +1 + + OUT: (/,open,_,door_101)>. :|: %1.00;0.90% {1: 1} + + IN: <(*,John,room_101) --> enter>. :|: %0.00;0.90% {1: 2} + +1 + + OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 1;2} + + OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 1;2} + + OUT: < (/,open,_,door_101)> =/> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 2;1} + + OUT: < (/,open,_,door_101)> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 2;1} + + OUT: (/,open,John,_)>. :|: %1.00;0.90% {1: 1} + +********** induction on events + IN: (/,open,_,door_101)>. :|: %1.00;0.90% {1: 1} + +1 + + IN: (/,enter,_,room_101)>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <<#1 --> (/,enter,_,room_101)> =\> <#1 --> (/,open,_,door_101)>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <<#1 --> (/,open,_,door_101)> =/> <#1 --> (/,enter,_,room_101)>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <<#1 --> (/,open,_,door_101)> <#1 --> (/,enter,_,room_101)>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <(*,John,door_101) --> open>. :|: %1.00;0.90% {1: 1} + +********** induction on events + IN: <(*,John,key_101) --> hold>. :|: %1.00;0.90% {1: 1} + +1 + + OUT: (/,hold,_,key_101)>. :|: %1.00;0.90% {1: 1} + + IN: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <(&/,<(*,John,key_101) --> hold>,<(*,John,door_101) --> open>) =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <(&/, (/,hold,_,key_101)>,<(*,John,door_101) --> open>) =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 2;1} + + OUT: (/,hold,John,_)>. :|: %1.00;0.90% {1: 1} + diff --git a/nars-dist/Examples/Example-NAL8-1-abridged.txt b/nars-dist/Examples/Example-NAL8-1-abridged.txt new file mode 100644 index 00000000..0ef38466 --- /dev/null +++ b/nars-dist/Examples/Example-NAL8-1-abridged.txt @@ -0,0 +1,212 @@ +*** [01] <{t001} --> [opened]>! +*** [02] <{t001} --> door>. +*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. +*** [04] <(*, {t002}, {t001}) --> key-of>. +*** [05] <(&/, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. +*** [06] <(&|, <(*, #x, #y(#x)) --> on>, <(*, Self, #y(#x)) --> at>) =|> <(*, Self, #x) --> reachable>>. +*** [07] <(*, {t002}, {t003}) --> on>. :|: +*** [08] <{t003} --> desk>. +*** [09] <(^go-to, #x) =/> <(*, Self, #x) --> at>>. + +********** [01 + 03 -> 10]: + IN: <{t001} --> [opened]>! + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. +18 + OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 1;2} + +********** [10 -> 11]: + IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! +5 + OUT: <(*,Self,{t002}) --> hold>! %1.00;0.44% {1: 1} + + +********** [11 + 05 -> 12]: + IN: <(*,Self,{t002}) --> hold>! + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. +7 + OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.81% {2: 1;2} + +********** [12 -> 13]: + IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! +1 + + OUT: <(*,Self,{t002}) --> reachable>! %1.00;0.47% {1: 1} + + +********** [13 + 06 -> 14]: + IN: <(*,Self,{t002}) --> reachable>! + IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. +3 + OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.81% {2: 1;2} + + +********** [07 + 14 -> 15]: + IN: <(*,{t002},{t003}) --> on>. :|: + IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! +15 + + OUT: (/,at,_,{t003})>! %1.00;0.81% {2: 2;1} + + +********** [15 + 09 -> 16]: + IN: <(*,Self,{t003}) --> at>! + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. +7 + + OUT: <(*,{t003}) --> ^go-to>! %1.00;0.81% {2: 1;2} + + +********** [16 -> 17] + IN: <(*,{t003}) --> ^go-to>! +1 + + OUT: <(*,{t003}) --> ^go-to>. :\: %1.00;0.90% {1: 2} + + +********** [17 + 09 -> 18] + IN: <(*,{t003}) --> ^go-to>. :\: + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. +12 + OUT: <(*,Self,{t003}) --> at>. :|: %1.00;0.81% {2: 1;2} + + +********** [18 -> 19] + IN: <(*,Self,{t003}) --> at>. :|: +6 + OUT: <{t003} --> (/,at,Self,_)>. :|: %1.00;0.90% {1: 1} + + +********** [07 -> 20] + IN: <(*,{t002},{t003}) --> on>. :|: +6 + + OUT: <{t003} --> (/,on,{t002},_)>. :|: %1.00;0.90% {1: 1} + + +********** [19 + 20 -> 21] + IN: <{t003} --> (/,at,Self,_)>. :|: + IN: <{t003} --> (/,on,{t002},_)>. :|: +2 + OUT: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :|: %1.00;0.81% {2: 1;2} + + +********** [21 -> 22] + IN: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :|: +8 + OUT: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :|: %1.00;0.90% {1: 1} + + +********** [22 -> 23] + IN: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). +4 + OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). %1.00;0.90% {1: 1} + + +********** [23 + 06 -> 24] + IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). :|: + IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. +1 + OUT: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.81% {2: 1;2} + + +********** [24 + 12 -> 25] + IN: <(*,Self,{t002}) --> reachable>. :|: + IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! +1 + OUT: <(*,{t002}) --> ^pick>! %1.00;0.81% {2: 2;1} + + +********** [25 -> 26] + IN: <(*,{t002}) --> ^pick>! +1 + + OUT: <(*,{t002}) --> ^pick>. :\: %1.00;0.90% {1: 2} + + +********** [24 + 05 -> 27] + IN: <(*,Self,{t002}) --> reachable>. :|: + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. +1 + OUT: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :|: %1.00;0.81% {2: 2;1} + + +********** [26 + 27 -> 28] + IN: <(*,{t002}) --> ^pick>. :\: + IN: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :|: +1 + + OUT: <(*,Self,{t002}) --> hold>. :|: %1.00;0.81% {2: 2;1} + + +********** [28 + 10 -> 29] + IN: <(*,Self,{t002}) --> hold>. :|: + IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! +7 + + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 2;1} + + +********** [03 + 28 -> 30] + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. + IN: <(*,Self,{t002}) --> hold>. :|: +3 + OUT: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 1;2} + + +********** [29 -> 31] + IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! +1 + + OUT: <(*,Self,{t001}) --> at>! %1.00;0.47% {1: 1} + + +********** [31 + 09 -> 32] + IN: <(*,Self,{t001}) --> at>! + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. +7 + OUT: <(*,{t001}) --> ^go-to>! %1.00;0.81% {2: 1;2} + + +********** [32 -> 33] + IN: <(*,{t001}) --> ^go-to>! +1 + + OUT: <(*,{t001}) --> ^go-to>. :\: %1.00;0.90% {1: 2} + + +********** [33 + 09 -> 34] + IN: <(*,{t001}) --> ^go-to>. :\: + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. + +12 + OUT: <(*,Self,{t001}) --> at>. :|: %1.00;0.81% {2: 1;2} + +********** [34 + 30 -> 35] + IN: <(*,Self,{t001}) --> at>. :|: + + IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: + +4 + OUT: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 2;1} + + +********** [34 + 29 -> 36] + IN: <(*,Self,{t001}) --> at>. :|: + IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! +1 + OUT: <(*,{t001}) --> ^open>! %1.00;0.81% {2: 2;1} + + +********** [36 -> 37] + IN: <(*,{t001}) --> ^open>! + +1 + + OUT: <(*,{t001}) --> ^open>. :\: %1.00;0.90% {1: 2} + + +********** [35 + 37 -> 38] + IN: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :|: + IN: <(*,{t001}) --> ^open>. :\: +1 + OUT: <{t001} --> [opened]>. :|: %1.00;0.81% {2: 2;1} diff --git a/nars-dist/Examples/Example-NAL8-1-complete.txt b/nars-dist/Examples/Example-NAL8-1-complete.txt new file mode 100644 index 00000000..3626890b --- /dev/null +++ b/nars-dist/Examples/Example-NAL8-1-complete.txt @@ -0,0 +1,390 @@ +*** [01] <{t001} --> [opened]>! +*** [02] <{t001} --> door>. +*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. +*** [04] <(*, {t002}, {t001}) --> key-of>. +*** [05] <(&/, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. +*** [06] <(&|, <(*, #x, #y(#x)) --> on>, <(*, Self, #y(#x)) --> at>) =|> <(*, Self, #x) --> reachable>>. +*** [07] <(*, {t002}, {t003}) --> on>. :|: +*** [08] <{t003} --> desk>. +*** [09] <(^go-to, #x) =/> <(*, Self, #x) --> at>>. +********** [01 + 03 -> 10]: + IN: <{t001} --> [opened]>! %1.00;0.90% {1: 1} + + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + +4 + + OUT: <(&/, (/,hold,_,{t002})>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + +4 + + OUT: <(&/,<(*,Self,{t002}) --> hold>, (/,at,_,{t001})>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + +2 + + OUT: <(&/,<{t002} --> (/,hold,Self,_)>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + +8 + + OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 1;2} + +********** [10 -> 11]: + IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 1} + +5 + + OUT: <(*,Self,{t002}) --> hold>! %1.00;0.47% {1: 1} + +********** [11 + 05 -> 12]: + IN: <(*,Self,{t002}) --> hold>! %1.00;0.90% {1: 1} + + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {1: 2} + +1 + + OUT: (/,hold,_,{t002})>! %1.00;0.90% {1: 1} + +6 + + OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.81% {2: 1;2} + +********** [12 -> 13]: + IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {1: 1} + +1 + + OUT: <(*,Self,{t002}) --> reachable>! %1.00;0.47% {1: 1} + +********** [13 + 06 -> 14]: + IN: <(*,Self,{t002}) --> reachable>! %1.00;0.90% {1: 1} + + IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {1: 2} + +3 + + OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.81% {2: 1;2} + +********** [07 + 14 -> 15]: + IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {1: 1} + + IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.90% {1: 2} + +1 + + OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>)! %1.00;0.90% {1: 2} + +8 + + OUT: (&|,<(*,Self,#1()) --> at>,<{t002} --> (/,on,_,#1())>)! %1.00;0.90% {1: 2} + +3 + + OUT: <{t003} --> (/,on,{t002},_)>. :|: %1.00;0.90% {1: 1} + +3 + + OUT: <(*,Self,{t003}) --> at>! %1.00;0.81% {2: 2;1} + +********** [15 + 09 -> 16]: + IN: <(*,Self,{t003}) --> at>! %1.00;0.90% {1: 1} + + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 2} + +1 + + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 2} + +4 + + OUT: <{t003} --> (/,at,Self,_)>! %1.00;0.90% {1: 1} + +2 + + OUT: <(*,{t003}) --> ^go-to>! %1.00;0.81% {2: 1;2} + +********** [16 -> 17] + IN: <(*,{t003}) --> ^go-to>! %1.00;0.90% {1: 1} + +1 + + OUT: <(*,{t003}) --> ^go-to>. :\: %1.00;0.90% {1: 2} + +********** [17 + 09 -> 18] + IN: <(*,{t003}) --> ^go-to>. :\: %1.00;0.90% {1: 1} + + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 2} + +2 + + OUT: <{t003} --> (/,^go-to,_)>. :\: %1.00;0.90% {1: 1} + +5 + + OUT: <(/,(*,{t003}),_) --> (/,^go-to,_)>. :\: %1.00;0.90% {1: 1} + +1 + + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 2} + +4 + + OUT: <(*,Self,{t003}) --> at>. :|: %1.00;0.81% {2: 2;1} + +********** [18 -> 19] + IN: <(*,Self,{t003}) --> at>. :|: %1.00;0.90% {1: 1} + +2 + + OUT: (/,at,_,{t003})>. :|: %1.00;0.90% {1: 1} + +4 + + OUT: <{t003} --> (/,at,Self,_)>. :|: %1.00;0.90% {1: 1} + +********** [07 -> 20] + IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {1: 1} + +5 + + OUT: <{t002} --> (/,on,_,{t003})>. :|: %1.00;0.90% {1: 1} + +1 + + OUT: <{t003} --> (/,on,{t002},_)>. :|: %1.00;0.90% {1: 1} + +********** [19 + 20 -> 21] + IN: <{t003} --> (/,at,Self,_)>. :|: %1.00;0.90% {1: 1} + + IN: <{t003} --> (/,on,{t002},_)>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <<#1 --> (/,on,{t002},_)> =\> <#1 --> (/,at,Self,_)>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <<#1 --> (/,at,Self,_)> =/> <#1 --> (/,on,{t002},_)>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <<#1 --> (/,at,Self,_)> <#1 --> (/,on,{t002},_)>>. :|: %1.00;0.44% {2: 1;2} + +1 + + OUT: <(/,on,{t002},_) --> (/,at,Self,_)>. :|: %1.00;0.44% {2: 1;2} + + OUT: <(/,at,Self,_) --> (/,on,{t002},_)>. :|: %1.00;0.44% {2: 1;2} + + OUT: <(/,on,{t002},_) <-> (/,at,Self,_)>. :|: %1.00;0.44% {2: 1;2} + + OUT: <<#1 --> (/,on,{t002},_)> =|> <#1 --> (/,at,Self,_)>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <<#1 --> (/,at,Self,_)> =|> <#1 --> (/,on,{t002},_)>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <<#1 --> (/,on,{t002},_)> <|> <#1 --> (/,at,Self,_)>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <{t003} --> (|,(/,on,{t002},_),(/,at,Self,_))>. :|: %1.00;0.99% {2: 1;2} + + OUT: <{t003} --> (&,(/,on,{t002},_),(/,at,Self,_))>. :|: %1.00;0.81% {2: 1;2} + + OUT: <{t003} --> (-,(/,at,Self,_),(/,on,{t002},_))>. :|: %0.00;0.90% {2: 1;2} + + OUT: <{t003} --> (-,(/,on,{t002},_),(/,at,Self,_))>. :|: %0.00;0.90% {2: 1;2} + + OUT: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :|: %1.00;0.81% {2: 1;2} + +********** [21 -> 22] + IN: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :|: %1.00;0.90% {1: 1} + +6 + + OUT: (&|,<#1() --> (/,at,Self,_)>,<{t002} --> (/,on,_,#1())>). :|: %1.00;0.90% {1: 1} + +2 + + OUT: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :|: %1.00;0.90% {1: 1} + +********** [22 -> 23] + IN: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). %1.00;0.90% {1: 1} + +3 + + OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>). %1.00;0.90% {1: 1} + +1 + + OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). %1.00;0.90% {1: 1} + +********** [23 + 06 -> 24] + IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). :|: %1.00;0.90% {1: 1} + + IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {1: 2} + +1 + + OUT: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.81% {2: 1;2} + +********** [24 + 12 -> 25] + IN: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.90% {1: 1} + + IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {1: 2} + +1 + + OUT: <(*,{t002}) --> ^pick>! %1.00;0.81% {2: 2;1} + +********** [25 -> 26] + IN: <(*,{t002}) --> ^pick>! %1.00;0.90% {1: 1} + +1 + + OUT: <(*,{t002}) --> ^pick>. :\: %1.00;0.90% {1: 2} + +********** [24 + 05 -> 27] + IN: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.90% {1: 1} + + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {1: 2} + +1 + + OUT: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :|: %1.00;0.81% {2: 1;2} + +********** [26 + 27 -> 28] + IN: <(*,{t002}) --> ^pick>. :\: %1.00;0.90% {1: 1} + + IN: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <(*,Self,{t002}) --> hold>. :|: %1.00;0.81% {2: 1;2} + +********** [28 + 10 -> 29] + IN: <(*,Self,{t002}) --> hold>. :|: %1.00;0.90% {1: 1} + + IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 2} + +1 + + OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>). :|: %1.00;0.47% {1: 1} + +1 + + OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>). :|: %1.00;0.47% {1: 1} + + OUT: (&/, (/,hold,_,{t002})>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 2} + +1 + + OUT: (&/,<{t002} --> (/,hold,Self,_)>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 2} + +2 + + OUT: (&/,<(*,Self,{t002}) --> hold>, (/,at,_,{t001})>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 2} + +2 + + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 2;1} + +********** [03 + 28 -> 30] + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 1} + + IN: <(*,Self,{t002}) --> hold>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>). :|: %1.00;0.47% {1: 2} + +1 + + OUT: <{t002} --> (/,hold,Self,_)>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 2;1} + +********** [29 -> 31] + IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 1} + +1 + + OUT: <(*,Self,{t001}) --> at>! %1.00;0.47% {1: 1} + +********** [31 + 09 -> 32] + IN: <(*,Self,{t001}) --> at>! %1.00;0.90% {1: 1} + + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 2} + +1 + + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 2} + +4 + + OUT: <{t001} --> (/,at,Self,_)>! %1.00;0.90% {1: 1} + +2 + + OUT: <(*,{t001}) --> ^go-to>! %1.00;0.81% {2: 1;2} + +********** [32 -> 33] + IN: <(*,{t001}) --> ^go-to>! %1.00;0.90% {1: 1} + +1 + + OUT: <(*,{t001}) --> ^go-to>. :\: %1.00;0.90% {1: 2} + +********** [33 + 09 -> 34] + IN: <(*,{t001}) --> ^go-to>. :\: %1.00;0.90% {1: 1} + + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 2} + +2 + + OUT: <{t001} --> (/,^go-to,_)>. :\: %1.00;0.90% {1: 1} + +5 + + OUT: <(/,(*,{t001}),_) --> (/,^go-to,_)>. :\: %1.00;0.90% {1: 1} + +1 + + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 2} + +4 + + OUT: <(*,Self,{t001}) --> at>. :|: %1.00;0.81% {2: 2;1} + +********** [34 + 30 -> 35] + IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {1: 1} + + IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <(&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. :|: %1.00;0.90% {1: 2} + +3 + + OUT: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 2;1} + +********** [34 + 29 -> 36] + IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {1: 1} + + IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 2} + +1 + + OUT: <(*,{t001}) --> ^open>! %1.00;0.81% {2: 2;1} + +********** [36 -> 37] + IN: <(*,{t001}) --> ^open>! %1.00;0.90% {1: 1} + +1 + + OUT: <(*,{t001}) --> ^open>. :\: %1.00;0.90% {1: 2} + +********** [35 + 37 -> 38] + IN: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {1: 1} + + IN: <(*,{t001}) --> ^open>. :\: %1.00;0.90% {1: 2} + +1 + + OUT: <{t001} --> [opened]>. :|: %1.00;0.81% {2: 2;1} + diff --git a/nars-dist/Examples/Example-NAL8-2-abridged.txt b/nars-dist/Examples/Example-NAL8-2-abridged.txt new file mode 100644 index 00000000..4fdda067 --- /dev/null +++ b/nars-dist/Examples/Example-NAL8-2-abridged.txt @@ -0,0 +1,52 @@ +*** [01] <{t001} --> [opened]>! +*** [02] <{t001} --> door>. +*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. +*** [04] <(*, {t002}, {t001}) --> key-of>. +*** [05] <(&/, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. +*** [06] <(&|, <(*, #x, #y(#x)) --> on>, <(*, Self, #y(#x)) --> at>) =|> <(*, Self, #x) --> reachable>>. +*** [07] <(*, {t002}, {t003}) --> on>. :|: +*** [08] <{t003} --> desk>. +*** [09] <(^go-to, #x) =/> <(*, Self, #x) --> at>>. + +********** [03 + 09 -> 10]: + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. + +2 + OUT: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {2: 1;2} + + +********** [10 + 05 -> 11] + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. + + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. +14 + OUT: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {2: 1;2} + + +********** [06 + 07 -> 12] + IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. + IN: <(*,{t002},{t003}) --> on>. :|: +7 + OUT: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :|: %1.00;0.81% {2: 2;1} + +********** [11 + 12 -> 13] + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. + + IN: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :|: +5 + OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 1;2} + +********** [13 + 09 -> 14] + IN: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. +8 + OUT: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 1;2} + + +********** [01 + 14 -> 15] + IN: <{t001} --> [opened]>! %1.00;0.90% + IN: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: +3 + OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 1;2} + diff --git a/nars-dist/Examples/Example-NAL8-2-complete.txt b/nars-dist/Examples/Example-NAL8-2-complete.txt new file mode 100644 index 00000000..2288c970 --- /dev/null +++ b/nars-dist/Examples/Example-NAL8-2-complete.txt @@ -0,0 +1,83 @@ +*** [01] <{t001} --> [opened]>! +*** [02] <{t001} --> door>. +*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. +*** [04] <(*, {t002}, {t001}) --> key-of>. +*** [05] <(&/, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. +*** [06] <(&|, <(*, #x, #y(#x)) --> on>, <(*, Self, #y(#x)) --> at>) =|> <(*, Self, #x) --> reachable>>. +*** [07] <(*, {t002}, {t003}) --> on>. :|: +*** [08] <{t003} --> desk>. +*** [09] <(^go-to, #x) =/> <(*, Self, #x) --> at>>. +********** [03 + 09 -> 10]: + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 1} + + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + +1 + + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 1} + +1 + + OUT: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {2: 1;2} + +********** [10 + 05 -> 11] + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 1} + + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {1: 2} + +10 + + OUT: <(&/, (/,hold,_,{t002})>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 1} + +1 + + OUT: <(&/,<{t002} --> (/,hold,Self,_)>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 1} + +3 + + OUT: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {2: 1;2} + +********** [06 + 07 -> 12] + IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {1: 1} + + IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {1: 2} + +4 + + OUT: <(&|,<(*,#1,#2(#1)) --> on>, (/,at,_,#2(#1))>) ==> <(*,Self,#1) --> reachable>>. %1.00;0.90% {1: 1} + +3 + + OUT: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :|: %1.00;0.81% {2: 2;1} + +********** [11 + 12 -> 13] + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 1} + + IN: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :|: %1.00;0.90% {1: 2} + +5 + + OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 1;2} + +********** [13 + 09 -> 14] + IN: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {1: 1} + + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 2} + +7 + + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 2} + +1 + + OUT: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 2;1} + +********** [01 + 14 -> 15] + IN: <{t001} --> [opened]>! %1.00;0.90% {1: 1} + + IN: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {1: 2} + +3 + + OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 1;2} + diff --git a/nars-dist/Examples/Example-NAL8-3-abridged.txt b/nars-dist/Examples/Example-NAL8-3-abridged.txt new file mode 100644 index 00000000..7616e9de --- /dev/null +++ b/nars-dist/Examples/Example-NAL8-3-abridged.txt @@ -0,0 +1,52 @@ +*** [01] <{t001} --> [opened]>! +*** [02] <{t001} --> door>. +*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. +*** [04] <(*, {t002}, {t001}) --> key-of>. +*** [05] <(*, Self, {t002}) --> hold>. :|: +*** [06] <(&/, <(*, Self, {t001}) --> at>, (^break, {t001})) =/> <{t001} --> [opened]>>. +*** [07] <(*, Self, {t001}) --> at>. :|: +*** [08] <{t001} --> [damaged]>! %0; 0.95% +*** [09] <(^break, #x) =/> <#x --> [damaged]>>. + +********** [01 + 06 -> 10]: + IN: <{t001} --> [opened]>! + IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>) =/> <{t001} --> [opened]>>. +24 + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% {2: 1;2} + +********** [10 + 07 -> 11]: + IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% + IN: <(*,Self,{t001}) --> at>. :|: +3 + OUT: <(*,{t001}) --> ^break>! %1.00;0.72% {2: 1;2} + +********** [09 + 08 -> 12]: + IN: <<(*,#1) --> ^break> =/> <#1 --> [damaged]>>. + IN: <{t001} --> [damaged]>! %0; 0.95% +16 + OUT: <(*,{t001}) --> ^break>! %0.00;0.85% {2: 2;1} + +********** [12 + 11 -> 13]: + IN: <(*,{t001}) --> ^break>! %0.00;0.85% +1 + IN: <(*,{t001}) --> ^break>! %1.00;0.72% +1 + OUT: <(*,{t001}) --> ^break>! %0.31;0.89% {2: 2;1} + +********** [13 -> NO EXECUTION]: + IN: <(*,{t001}) --> ^break>! %0.31;0.89% {2: 2;1} +10 + +*** [14] <(*,{t001}) --> ^break>! %1.00;0.95% + +********** [13 + 14 -> 15]: + IN: <(*,{t001}) --> ^break>! %0.31;0.89% +1 + IN: <(*,{t001}) --> ^break>! %1.00;0.95% +1 + OUT: <(*,{t001}) --> ^break>! %0.79;0.96% {2: 2;1} + +********** [15 -> 16]: + IN: <(*,{t001}) --> ^break>! %0.79;0.96% +1 + OUT: <(*,{t001}) --> ^break>. :\: %1.00;0.90% {1: 2} diff --git a/nars-dist/Examples/Example-NAL8-3-complete.txt b/nars-dist/Examples/Example-NAL8-3-complete.txt new file mode 100644 index 00000000..65c51201 --- /dev/null +++ b/nars-dist/Examples/Example-NAL8-3-complete.txt @@ -0,0 +1,96 @@ +*** [01] <{t001} --> [opened]>! +*** [02] <{t001} --> door>. +*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. +*** [04] <(*, {t002}, {t001}) --> key-of>. +*** [05] <(*, Self, {t002}) --> hold>. :|: +*** [06] <(&/, <(*, Self, {t001}) --> at>, (^break, {t001})) =/> <{t001} --> [opened]>>. +*** [07] <(*, Self, {t001}) --> at>. :|: +*** [08] <{t001} --> [damaged]>! %0; 0.95% +*** [09] <(^break, #x) =/> <#x --> [damaged]>>. +********** [01 + 06 -> 10]: + IN: <{t001} --> [opened]>! %1.00;0.90% {1: 1} + + IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + +3 + + OUT: <(&/, (/,at,_,{t001})>,<(*,{t001}) --> ^break>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + +10 + + OUT: <(&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^break>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + +7 + + OUT: <(&/,<(*,Self,{t001}) --> at>,<{t001} --> (/,^break,_)>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + +4 + + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% {2: 1;2} + +********** [10 + 07 -> 11]: + IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% {1: 1} + + IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>). :|: %1.00;0.47% {1: 2} + +1 + + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>). :|: %1.00;0.47% {1: 2} + + OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^break>)! %1.00;0.81% {1: 1} + +1 + + OUT: <(*,{t001}) --> ^break>! %1.00;0.72% {2: 1;2} + +********** [09 + 08 -> 12]: + IN: <<(*,#1) --> ^break> =/> <#1 --> [damaged]>>. %1.00;0.90% {1: 1} + + IN: <{t001} --> [damaged]>! %0.00;0.95% {1: 2} + +16 + + OUT: <(*,{t001}) --> ^break>! %0.00;0.85% {2: 2;1} + +********** [12 + 11 -> 13]: + IN: <(*,{t001}) --> ^break>! %0.00;0.85% {1: 1} + +1 + + IN: <(*,{t001}) --> ^break>! %1.00;0.72% {1: 2} + +1 + + OUT: <(*,{t001}) --> ^break>! %0.31;0.89% {2: 2;1} + +********** [13 -> NO EXECUTION]: + IN: <(*,{t001}) --> ^break>! %0.31;0.89% {1: 1} + +2 + + OUT: <{t001} --> (/,^break,_)>! %0.31;0.89% {1: 1} + +8 +*** [14] <(*,{t001}) --> ^break>! %1.00;0.95% +********** [13 + 14 -> 15]: + IN: <(*,{t001}) --> ^break>! %0.31;0.89% {1: 1} + +1 + + IN: <(*,{t001}) --> ^break>! %1.00;0.95% {1: 2} + +1 + + OUT: <(*,{t001}) --> ^break>! %0.79;0.96% {2: 2;1} + +********** [15 -> 16]: + IN: <(*,{t001}) --> ^break>! %0.79;0.96% {1: 1} + +1 + + OUT: <(*,{t001}) --> ^break>. :\: %1.00;0.90% {1: 2} + diff --git a/nars-dist/Examples/Example-NAL8-4-abridged.txt b/nars-dist/Examples/Example-NAL8-4-abridged.txt new file mode 100644 index 00000000..6d048bf6 --- /dev/null +++ b/nars-dist/Examples/Example-NAL8-4-abridged.txt @@ -0,0 +1,66 @@ +*** [01] <(*, Self, key001) --> hold>! +*** [02] <(*, Self, key001) --> hold>. :|: %0% +*** [03] <(&/, <(*, Self, key001) --> reachable>, (^pick, key001)) =/> <(*, Self, key001) --> hold>>. +*** [04] <(*, Self, key001) --> reachable>. :|: + +********** [04 + 03 -> 05]: + IN: <(*,Self,key001) --> reachable>. :|: + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. +1 + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {2: 2;1} + +********** [05 + 01 -> 06]: + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: + IN: <(*,Self,key001) --> hold>! +2 + OUT: <(*,key001) --> ^pick>! %1.00;0.81% {2: 2;1} + +********** [06 -> 07]: + IN: <(*,key001) --> ^pick>! +1 + OUT: <(*,key001) --> ^pick>. :\: %1.00;0.90% {1: 2} + +********** [07 + 05 -> 08]: + IN: <(*,key001) --> ^pick>. :\: + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. +1 + OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {2: 2;1} + +********** [02 + 08 -> 09]: + IN: <(*,Self,key001) --> hold>. :|: %0% +1 + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.81% +1 + OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% {2: 2;1} + IN: <(*,Self,key001) --> hold>? :|: +1 + OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {1: 2} + +*** [10] <(*, Self, key001) --> hold>. + +********** [08 + 10 -> 11]: + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.81% + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% +1 + OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.92% {2: 2;1} + +********** [07 + 11 -> 12]: + IN: <(*,key001) --> ^pick>. :\: %1.00;0.90% + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% +1 + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 1;2} + +********** [05 + 12 -> 13]: + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% +1 + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% +1 + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.0000;0.9076% {2: 1;2} + +********** [04 + 13 -> 14]: + IN: <(*,Self,key001) --> reachable>. :|: +1 + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.91% +1 + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 1;2} + diff --git a/nars-dist/Examples/Example-NAL8-4-complete.txt b/nars-dist/Examples/Example-NAL8-4-complete.txt new file mode 100644 index 00000000..177e5964 --- /dev/null +++ b/nars-dist/Examples/Example-NAL8-4-complete.txt @@ -0,0 +1,124 @@ +*** [01] <(*, Self, key001) --> hold>! +*** [02] <(*, Self, key001) --> hold>. :|: %0% +*** [03] <(&/, <(*, Self, key001) --> reachable>, (^pick, key001)) =/> <(*, Self, key001) --> hold>>. +*** [04] <(*, Self, key001) --> reachable>. :|: +********** [04 + 03 -> 05]: + IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {1: 1} + + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {1: 2} + +1 + + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {2: 1;2} + +********** [05 + 01 -> 06]: + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% {1: 1} + + IN: <(*,Self,key001) --> hold>! %1.00;0.90% {1: 2} + +1 + + OUT: (/,hold,_,key001)>! %1.00;0.90% {1: 2} + +1 + + OUT: <(*,key001) --> ^pick>! %1.00;0.81% {2: 2;1} + +********** [06 -> 07]: + IN: <(*,key001) --> ^pick>! %1.00;0.90% {1: 1} + +1 + + OUT: <(*,key001) --> ^pick>. :\: %1.00;0.90% {1: 2} + +********** [07 + 05 -> 08]: + IN: <(*,key001) --> ^pick>. :\: %1.00;0.90% {1: 1} + + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {1: 2} + +1 + + OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {2: 1;2} + +********** [02 + 08 -> 09]: + IN: <(*,Self,key001) --> hold>. :|: %0.00;0.90% {1: 1} + +1 + + OUT: (/,hold,_,key001)>. :|: %0.00;0.90% {1: 1} + + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {1: 2} + +1 + + OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% {2: 2;1} + + OUT: <<(*,Self,key001) --> hold> =\> (/,hold,_,key001)>>. :|: %0.00;0.42% {2: 2;1} + + OUT: < (/,hold,_,key001)> <(*,Self,key001) --> hold>>. :|: %0.00;0.42% {2: 2;1} + + OUT: (/,hold,_,key001)>. :|: %1.00;0.81% {1: 2} + + IN: <(*,Self,key001) --> hold>? :|: {1: 3} + +1 + + OUT: (/,hold,_,key001)>. :\: %0.00;0.90% {2: 2;1} + + OUT: < (/,hold,_,key001)> =\> <(*,Self,key001) --> hold>>. :|: %0.00;0.42% {2: 1;2} + + OUT: <<(*,Self,key001) --> hold> (/,hold,_,key001)>>. :|: %0.00;0.42% {2: 1;2} + + OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {1: 2} + +*** [10] <(*, Self, key001) --> hold>. +********** [08 + 10 -> 11]: + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {1: 1} + + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.92% {2: 2;1} + +********** [07 + 11 -> 12]: + IN: <(*,key001) --> ^pick>. :\: %1.00;0.90% {1: 1} + + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <<(*,Self,key001) --> hold> =\> <(*,key001) --> ^pick>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.44% {2: 1;2} + + OUT: <<(*,key001) --> ^pick> <(*,Self,key001) --> hold>>. :|: %1.00;0.44% {2: 1;2} + +********** [05 + 12 -> 13]: + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% {1: 1} + +1 + + OUT: < (/,^pick,_)> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% {1: 1} + + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {1: 2} + +1 + + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% {2: 2;1} + +********** [04 + 13 -> 14]: + IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {1: 1} + +1 + + OUT: (/,reachable,_,key001)>. :|: %1.00;0.90% {1: 1} + + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.91% {1: 2} + +1 + + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 1;2} + + OUT: <(&/, (/,reachable,_,key001)>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 2;1} + diff --git a/nars-dist/NARS-applet.html b/nars-dist/NARS-applet.html new file mode 100644 index 00000000..f53ffa13 --- /dev/null +++ b/nars-dist/NARS-applet.html @@ -0,0 +1,12 @@ + + + + + + NARS + + + +NARS is running. To stop it, close this window. + + diff --git a/nars-dist/README.TXT b/nars-dist/README.TXT new file mode 100644 index 00000000..ac612be1 --- /dev/null +++ b/nars-dist/README.TXT @@ -0,0 +1,33 @@ +======================== +BUILD OUTPUT DESCRIPTION +======================== + +When you build an Java application project that has a main class, the IDE +automatically copies all of the JAR +files on the projects classpath to your projects dist/lib folder. The IDE +also adds each of the JAR files to the Class-Path element in the application +JAR files manifest file (MANIFEST.MF). + +To run the project from the command line, go to the dist folder and +type the following: + +java -jar "NARS.jar" + +To distribute this project, zip up the dist folder (including the lib folder) +and distribute the ZIP file. + +Notes: + +* If two JAR files on the project classpath have the same name, only the first +JAR file is copied to the lib folder. +* Only JAR files are copied to the lib folder. +If the classpath contains other types of files or folders, none of the +classpath elements are copied to the lib folder. In such a case, +you need to copy the classpath elements to the lib folder manually after the build. +* If a library on the projects classpath also has a Class-Path element +specified in the manifest,the content of the Class-Path element has to be on +the projects runtime path. +* To set a main class in a standard Java project, right-click the project node +in the Projects window and choose Properties. Then click Run and enter the +class name in the Main Class field. Alternatively, you can manually type the +class name in the manifest Main-Class element. diff --git a/nars-dist/javadoc/allclasses-frame.html b/nars-dist/javadoc/allclasses-frame.html new file mode 100644 index 00000000..7510bbef --- /dev/null +++ b/nars-dist/javadoc/allclasses-frame.html @@ -0,0 +1,198 @@ + + + + + + + +All Classes (NARS Document) + + + + + + + + + + + +All Classes +
+ + + + + +
Bag +
+BagWindow +
+Break +
+BudgetFunctions +
+BudgetValue +
+Center +
+CompositionalRules +
+CompoundTerm +
+Concept +
+ConceptBag +
+ConceptWindow +
+Conjunction +
+ConjunctionParallel +
+ConjunctionSequence +
+DifferenceExt +
+DifferenceInt +
+Disjunction +
+Distributor +
+Equivalence +
+EquivalenceAfter +
+EquivalenceWhen +
+ExperienceIO +
+Goal +
+GoTo +
+ImageExt +
+ImageInt +
+Implication +
+ImplicationAfter +
+ImplicationBefore +
+ImplicationWhen +
+InferenceWindow +
+Inheritance +
+InputWindow +
+Instance +
+InstanceProperty +
+IntersectionExt +
+IntersectionInt +
+Item +
+Judgment +
+MainWindow +
+MatchingRules +
+Memory +
+MessageDialog +
+NARS +
+NarsFrame +
+Negation +
+Open +
+Operator +
+Parameters +
+ParameterWindow +
+Pick +
+Product +
+Property +
+Question +
+Record +
+RuleTables +
+Sentence +
+SetExt +
+SetInt +
+ShortFloat +
+Similarity +
+Stamp +
+Statement +
+StringParser +
+StringParser.InvalidInputException +
+StructuralRules +
+SyllogisticRules +
+Symbols +
+Task +
+TaskBuffer +
+TaskLink +
+TaskLinkBag +
+Temporal +
+TemporalRules +
+TemporalRules.Relation +
+Term +
+TermLink +
+TermLinkBag +
+TermWindow +
+TruthFunctions +
+TruthValue +
+UtilityFunctions +
+Variable +
+Variable.VarType +
+
+ + + diff --git a/nars-dist/javadoc/allclasses-noframe.html b/nars-dist/javadoc/allclasses-noframe.html new file mode 100644 index 00000000..ae7ae744 --- /dev/null +++ b/nars-dist/javadoc/allclasses-noframe.html @@ -0,0 +1,198 @@ + + + + + + + +All Classes (NARS Document) + + + + + + + + + + + +All Classes +
+ + + + + +
Bag +
+BagWindow +
+Break +
+BudgetFunctions +
+BudgetValue +
+Center +
+CompositionalRules +
+CompoundTerm +
+Concept +
+ConceptBag +
+ConceptWindow +
+Conjunction +
+ConjunctionParallel +
+ConjunctionSequence +
+DifferenceExt +
+DifferenceInt +
+Disjunction +
+Distributor +
+Equivalence +
+EquivalenceAfter +
+EquivalenceWhen +
+ExperienceIO +
+Goal +
+GoTo +
+ImageExt +
+ImageInt +
+Implication +
+ImplicationAfter +
+ImplicationBefore +
+ImplicationWhen +
+InferenceWindow +
+Inheritance +
+InputWindow +
+Instance +
+InstanceProperty +
+IntersectionExt +
+IntersectionInt +
+Item +
+Judgment +
+MainWindow +
+MatchingRules +
+Memory +
+MessageDialog +
+NARS +
+NarsFrame +
+Negation +
+Open +
+Operator +
+Parameters +
+ParameterWindow +
+Pick +
+Product +
+Property +
+Question +
+Record +
+RuleTables +
+Sentence +
+SetExt +
+SetInt +
+ShortFloat +
+Similarity +
+Stamp +
+Statement +
+StringParser +
+StringParser.InvalidInputException +
+StructuralRules +
+SyllogisticRules +
+Symbols +
+Task +
+TaskBuffer +
+TaskLink +
+TaskLinkBag +
+Temporal +
+TemporalRules +
+TemporalRules.Relation +
+Term +
+TermLink +
+TermLinkBag +
+TermWindow +
+TruthFunctions +
+TruthValue +
+UtilityFunctions +
+Variable +
+Variable.VarType +
+
+ + + diff --git a/nars-dist/javadoc/constant-values.html b/nars-dist/javadoc/constant-values.html new file mode 100644 index 00000000..20c099a2 --- /dev/null +++ b/nars-dist/javadoc/constant-values.html @@ -0,0 +1,917 @@ + + + + + + + +Constant Field Values (NARS Document) + + + + + + + + + + + + +
+ + + +
+ + + + + + + + + + + +
+ +
+ + + +
+
+

+Constant Field Values

+
+
+Contents + + + + + + +
+nars.entity.*
+ +

+ + + + + + + + + + + + + + + + + +
nars.entity.BudgetValue
+private static final charMARK36
+private static final charSEPARATOR59
+ +

+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
nars.entity.TermLink
+public static final shortCOMPONENT1
+public static final shortCOMPONENT_CONDITION5
+public static final shortCOMPONENT_STATEMENT3
+public static final shortCOMPOUND2
+public static final shortCOMPOUND_CONDITION6
+public static final shortCOMPOUND_STATEMENT4
+public static final shortSELF0
+public static final shortTRANSFORM8
+ +

+ +

+ + + + + + + + + + + + + + + + + +
nars.entity.TruthValue
+private static final charDELIMITER37
+private static final charSEPARATOR59
+ +

+ +

+ + + + + +
+nars.gui.*
+ +

+ + + + + + + + + + + + +
nars.gui.NarsFrame
+static final java.lang.StringUNAVAILABLE"\n Not implemented in this demo applet."
+ +

+ +

+ + + + + +
+nars.io.*
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
nars.io.Symbols
+public static final charARGUMENT_SEPARATOR44
+public static final charBUDGET_VALUE_MARK36
+public static final charCOMPOUND_TERM_CLOSER41
+public static final charCOMPOUND_TERM_OPENER40
+public static final java.lang.StringCONJUNCTION_OPERATOR"&&"
+public static final java.lang.StringDIFFERENCE_EXT_OPERATOR"-"
+public static final java.lang.StringDIFFERENCE_INT_OPERATOR"~"
+public static final java.lang.StringDISJUNCTION_OPERATOR"||"
+public static final java.lang.StringEQUIVALENCE_AFTER_RELATION"</>"
+public static final java.lang.StringEQUIVALENCE_RELATION"<=>"
+public static final java.lang.StringEQUIVALENCE_WHEN_RELATION"<|>"
+public static final charGOAL_MARK33
+public static final java.lang.StringIMAGE_EXT_OPERATOR"/"
+public static final java.lang.StringIMAGE_INT_OPERATOR"\\"
+public static final charIMAGE_PLACE_HOLDER95
+public static final java.lang.StringIMPLICATION_AFTER_RELATION"=/>"
+public static final java.lang.StringIMPLICATION_BEFORE_RELATION"=\\>"
+public static final java.lang.StringIMPLICATION_RELATION"==>"
+public static final java.lang.StringIMPLICATION_WHEN_RELATION"=|>"
+public static final java.lang.StringINHERITANCE_RELATION"-->"
+public static final java.lang.StringINSTANCE_PROPERTY_RELATION"{-]"
+public static final java.lang.StringINSTANCE_RELATION"{--"
+public static final java.lang.StringINTERSECTION_EXT_OPERATOR"&"
+public static final java.lang.StringINTERSECTION_INT_OPERATOR"|"
+public static final charJUDGMENT_MARK46
+public static final java.lang.StringNEGATION_OPERATOR"--"
+public static final charOPERATOR_TAG94
+public static final java.lang.StringPARALLEL_OPERATOR"&|"
+public static final java.lang.StringPRODUCT_OPERATOR"*"
+public static final java.lang.StringPROPERTY_RELATION"--]"
+public static final charQUERY_VARIABLE_TAG63
+public static final charQUESTION_MARK63
+public static final java.lang.StringSEQUENCE_OPERATOR"&/"
+public static final charSET_EXT_CLOSER125
+public static final charSET_EXT_OPENER123
+public static final charSET_INT_CLOSER93
+public static final charSET_INT_OPENER91
+public static final java.lang.StringSIMILARITY_RELATION"<->"
+public static final java.lang.StringSTAMP_CLOSER"} "
+public static final java.lang.StringSTAMP_OPENER" {"
+public static final java.lang.StringSTAMP_SEPARATOR";"
+public static final java.lang.StringSTAMP_STARTER": "
+public static final charSTATEMENT_CLOSER62
+public static final charSTATEMENT_OPENER60
+public static final java.lang.StringTENSE_FUTURE":/:"
+public static final java.lang.StringTENSE_MARK":"
+public static final java.lang.StringTENSE_PAST":\\:"
+public static final java.lang.StringTENSE_PRESENT":|:"
+public static final java.lang.StringTO_COMPONENT_1" @("
+public static final java.lang.StringTO_COMPONENT_2")_ "
+public static final java.lang.StringTO_COMPOUND_1" _@("
+public static final java.lang.StringTO_COMPOUND_2") "
+public static final charTRUTH_VALUE_MARK37
+public static final charVALUE_SEPARATOR59
+public static final charVARIABLE_TAG35
+ +

+ +

+ + + + + +
+nars.main.*
+ +

+ + + + + + + + + + + + + + + + + +
nars.main.NARS
+public static final java.lang.StringINFO" Open-NARS Version 1.1.0 August 2008 \n"
+public static final java.lang.StringWEBSITE" Open-NARS website: http://code.google.com/p/open-nars/ \n NARS website: http://nars.wang.googlepages.com/ "
+ +

+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
nars.main.Parameters
+public static final intBAG_LEVEL100
+public static final intBAG_THRESHOLD10
+public static final floatBUDGET_THRESHOLD0.0010000000474974513f
+public static final intCONCEPT_BAG_SIZE1000
+public static final intCONCEPT_FORGETTING_CYCLE3
+public static final floatDECISION_THRESHOLD0.6600000262260437f
+public static final floatDEFAULT_GOAL_DURABILITY0.699999988079071f
+public static final floatDEFAULT_GOAL_PRIORITY0.8999999761581421f
+public static final floatDEFAULT_JUDGMENT_CONFIDENCE0.8999999761581421f
+public static final floatDEFAULT_JUDGMENT_DURABILITY0.800000011920929f
+public static final floatDEFAULT_JUDGMENT_PRIORITY0.800000011920929f
+public static final floatDEFAULT_QUESTION_DURABILITY0.699999988079071f
+public static final floatDEFAULT_QUESTION_PRIORITY0.8999999761581421f
+public static final floatLOAD_FACTOR0.5f
+public static final intMAX_MATCHED_TERM_LINK10
+public static final intMAX_REASONED_TERM_LINK3
+public static final intMAXMUM_BELIEF_LENGTH8
+public static final intMAXMUM_EVENTS_LENGTH10
+public static final intMAXMUM_GOALS_LENGTH5
+public static final intMAXMUM_STAMP_LENGTH16
+public static final intNEAR_FUTURE1
+public static final intNEW_TASK_FORGETTING_CYCLE1
+public static final floatPRIORITY_THRESHOLD0.05999999865889549f
+public static final intSILENT_LEVEL10
+public static final intTASK_BUFFER_SIZE20
+public static final intTASK_LINK_BAG_SIZE20
+public static final intTASK_LINK_FORGETTING_CYCLE10
+public static final intTERM_LINK_BAG_SIZE100
+public static final intTERM_LINK_FORGETTING_CYCLE50
+public static final intTERM_LINK_RECORD_LENGTH10
+ +

+ +

+ + + + + +
+nars.storage.*
+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
nars.storage.Bag<Type extends Item>
+protected static final floatLOAD_FACTOR0.5f
+protected static final floatRELATIVE_THRESHOLD0.10000000149011612f
+protected static final intTHRESHOLD10
+protected static final intTOTAL_LEVEL100
+ +

+ +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/deprecated-list.html b/nars-dist/javadoc/deprecated-list.html new file mode 100644 index 00000000..ec19e4f6 --- /dev/null +++ b/nars-dist/javadoc/deprecated-list.html @@ -0,0 +1,147 @@ + + + + + + + +Deprecated List (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Deprecated API

+
+
+Contents
    +
+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/help-doc.html b/nars-dist/javadoc/help-doc.html new file mode 100644 index 00000000..56cc660a --- /dev/null +++ b/nars-dist/javadoc/help-doc.html @@ -0,0 +1,224 @@ + + + + + + + +API Help (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+How This API Document Is Organized

+
+This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

+Overview

+
+ +

+The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

+

+Package

+
+ +

+Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:

    +
  • Interfaces (italic)
  • Classes
  • Enums
  • Exceptions
  • Errors
  • Annotation Types
+
+

+Class/Interface

+
+ +

+Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

    +
  • Class inheritance diagram
  • Direct Subclasses
  • All Known Subinterfaces
  • All Known Implementing Classes
  • Class/interface declaration
  • Class/interface description +

    +

  • Nested Class Summary
  • Field Summary
  • Constructor Summary
  • Method Summary +

    +

  • Field Detail
  • Constructor Detail
  • Method Detail
+Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.
+ +

+Annotation Type

+
+ +

+Each annotation type has its own separate page with the following sections:

    +
  • Annotation Type declaration
  • Annotation Type description
  • Required Element Summary
  • Optional Element Summary
  • Element Detail
+
+ +

+Enum

+
+ +

+Each enum has its own separate page with the following sections:

    +
  • Enum declaration
  • Enum description
  • Enum Constant Summary
  • Enum Constant Detail
+
+

+Use

+
+Each documented package, class and interface has its own Use page. This page describes what packages, classes, methods, constructors and fields use any part of the given class or package. Given a class or interface A, its Use page includes subclasses of A, fields declared as A, methods that return A, and methods and constructors with parameters of type A. You can access this page by first going to the package, class or interface, then clicking on the "Use" link in the navigation bar.
+

+Tree (Class Hierarchy)

+
+There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object.
    +
  • When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.
  • When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.
+
+

+Deprecated API

+
+The Deprecated API page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.
+

+Index

+
+The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.
+

+Prev/Next

+These links take you to the next or previous class, interface, package, or related page.

+Frames/No Frames

+These links show and hide the HTML frames. All pages are available with or without frames. +

+

+Serialized Form

+Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description. +

+

+Constant Field Values

+The Constant Field Values page lists the static final fields and their values. +

+ + +This help file applies to API documentation generated using the standard doclet. + +
+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/index-files/index-1.html b/nars-dist/javadoc/index-files/index-1.html new file mode 100644 index 00000000..13d9ed6e --- /dev/null +++ b/nars-dist/javadoc/index-files/index-1.html @@ -0,0 +1,238 @@ + + + + + + + +A-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+A

+
+
abdIndCom(Term, Term, Sentence, Judgment, int) - +Static method in class nars.inference.SyllogisticRules +
{ S>, P>} |- { P>,

S>, P>} +

abduction(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ M>,

M>} |- P> +

abdVarDepOuter(CompoundTerm, Term, boolean) - +Static method in class nars.inference.CompositionalRules +
{(&&, <#x() --> S>, <#x() --> P>>, P>} |- S> +
aboveThreshold() - +Method in class nars.entity.BudgetValue +
Whether the budget should get any processing at all +
actionPerformed(ActionEvent) - +Method in class nars.gui.BagWindow +
Handling button click +
actionPerformed(ActionEvent) - +Method in class nars.gui.ConceptWindow +
Handling button click +
actionPerformed(ActionEvent) - +Method in class nars.gui.InferenceWindow +
Handling button click +
actionPerformed(ActionEvent) - +Method in class nars.gui.InputWindow +
Handling button click +
actionPerformed(ActionEvent) - +Method in class nars.gui.MainWindow +
Handling button click +
actionPerformed(ActionEvent) - +Method in class nars.gui.MessageDialog +
Handling button click +
actionPerformed(ActionEvent) - +Method in class nars.gui.ParameterWindow +
Handling button click +
actionPerformed(ActionEvent) - +Method in class nars.gui.TermWindow +
Handling button click +
activate(Concept, BudgetValue) - +Static method in class nars.inference.BudgetFunctions +
Activate a concept by an incoming TaskLink +
activateConcept(Concept, BudgetValue) - +Static method in class nars.main.Memory +
Adjust the activation level of a Concept +
activatedTask(BudgetValue, Sentence, boolean) - +Static method in class nars.main.Memory +
Activated task coming from MatchingRules.trySolution +
addComponents(CompoundTerm, Term) - +Static method in class nars.language.CompoundTerm +
Try to add a component into a compound +
addToTable(Judgment, ArrayList, int) - +Method in class nars.entity.Concept +
Add a new belief or goal into the table + Sort the beliefs/goals by rank, and remove redundant or low rank one +
adjustmentValueChanged(AdjustmentEvent) - +Method in class nars.gui.BagWindow +
Handling scrollbar movement +
adjustmentValueChanged(AdjustmentEvent) - +Method in class nars.gui.ParameterWindow +
Handling scrollbar movement +
analogy(Term, Term, Sentence, Sentence, int) - +Static method in class nars.inference.SyllogisticRules +
{ P>, P>} |- P> +
analogy(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ M>, P>} |- P> +
and(float...) - +Static method in class nars.inference.UtilityFunctions +
A function where the output is conjunctively determined by the inputs +
append(String) - +Method in class nars.gui.InferenceWindow +
Append a new line to display +
append(String) - +Static method in class nars.io.Record +
Add new text to display +
ARGUMENT_SEPARATOR - +Static variable in class nars.io.Symbols +
  +
argumentsToList(Term, Term) - +Static method in class nars.language.CompoundTerm +
build a component list from two terms +
asymmetricAsymmetric(Sentence, Judgment, int) - +Static method in class nars.inference.RuleTables +
Syllogistic rules whose both premises are on the same asymmetric relation +
asymmetricSymmetric(Sentence, Sentence, int) - +Static method in class nars.inference.RuleTables +
Syllogistic rules whose first premise is on an asymmetric relation, and the + second on a symmetric relation +
aveAri(float...) - +Static method in class nars.inference.UtilityFunctions +
A function where the output is the arithmetic average the inputs +
aveGeo(float...) - +Static method in class nars.inference.UtilityFunctions +
A function where the output is the geometric average the inputs +
averagePriority() - +Method in class nars.storage.Bag +
Get the average priority of Items +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-10.html b/nars-dist/javadoc/index-files/index-10.html new file mode 100644 index 00000000..043f6914 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-10.html @@ -0,0 +1,152 @@ + + + + + + + +J-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+J

+
+
Judgment - Class in nars.entity
A Judgment is an piece of new knowledge to be absorbed.
Judgment(Term, char, TemporalRules.Relation, TruthValue, Stamp) - +Constructor for class nars.entity.Judgment +
Constructor +
Judgment(Goal) - +Constructor for class nars.entity.Judgment +
Construct a Judgment to indicate an operation just executed +
JUDGMENT_MARK - +Static variable in class nars.io.Symbols +
  +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-11.html b/nars-dist/javadoc/index-files/index-11.html new file mode 100644 index 00000000..421c3705 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-11.html @@ -0,0 +1,146 @@ + + + + + + + +K-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+K

+
+
key - +Variable in class nars.entity.Item +
The key of the Item, unique in a Bag +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-12.html b/nars-dist/javadoc/index-files/index-12.html new file mode 100644 index 00000000..26272234 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-12.html @@ -0,0 +1,170 @@ + + + + + + + +L-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+L

+
+
latest() - +Method in class nars.entity.Stamp +
Get the latest Stamp in the list +
length - +Variable in class nars.entity.Stamp +
current stamp length +
length() - +Method in class nars.entity.Stamp +
Return the length of the list +
levelIndex - +Variable in class nars.storage.Bag +
index to get next level, kept in individual objects +
list - +Variable in class nars.entity.Stamp +
serial numbers +
LOAD_FACTOR - +Static variable in class nars.main.Parameters +
Hashtable load factor in Bag +
LOAD_FACTOR - +Static variable in class nars.storage.Bag +
hashtable load factor +
loadLine() - +Method in class nars.io.ExperienceIO +
Read a line from input, and send running instruction to Memory +
logFile - +Static variable in class nars.io.Record +
the log file +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-13.html b/nars-dist/javadoc/index-files/index-13.html new file mode 100644 index 00000000..4d01d117 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-13.html @@ -0,0 +1,440 @@ + + + + + + + +M-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+M

+
+
main(String[]) - +Static method in class nars.main.NARS +
The entry point of the standalone application. +
MAIN_WINDOW_COLOR - +Static variable in class nars.gui.NarsFrame +
Color for the background of the main window +
MainWindow - Class in nars.gui
Main window of NARS GUI
MainWindow() - +Constructor for class nars.gui.MainWindow +
Constructor +
mainWindow - +Static variable in class nars.main.Center +
The unique main window +
make(Term, char, TemporalRules.Relation, TruthValue, Stamp) - +Static method in class nars.entity.Sentence +
Make a Sentence from an input String. +
make(Sentence, Term, TemporalRules.Relation, TruthValue, Stamp) - +Static method in class nars.entity.Sentence +
Make a derived Sentence from a template and some initial values. +
make(Stamp, Stamp) - +Static method in class nars.entity.Stamp +
Try to merge two Stamps, return null if have overlap +
make(CompoundTerm, ArrayList<Term>) - +Static method in class nars.language.CompoundTerm +
Try to make a compound term from a template and a list of components +
make(String, ArrayList<Term>) - +Static method in class nars.language.CompoundTerm +
Try to make a compound term from an operator and a list of components +
make(Term, Term) - +Static method in class nars.language.Conjunction +
Try to make a new compound from two components. +
make(ArrayList<Term>) - +Static method in class nars.language.Conjunction +
Try to make a new compound from a list of components. +
make(TreeSet<Term>) - +Static method in class nars.language.Conjunction +
Try to make a new compound from a set of components. +
make(Term, Term) - +Static method in class nars.language.ConjunctionParallel +
Try to make a new compound from two components. +
make(ArrayList<Term>) - +Static method in class nars.language.ConjunctionParallel +
Try to make a new compound from a list of components. +
make(TreeSet<Term>) - +Static method in class nars.language.ConjunctionParallel +
Try to make a new compound from a set of components. +
make(ArrayList<Term>) - +Static method in class nars.language.ConjunctionSequence +
Try to make a new compound from a list of components. +
make(Term, Term) - +Static method in class nars.language.ConjunctionSequence +
  +
make(ArrayList<Term>) - +Static method in class nars.language.DifferenceExt +
Try to make a new DifferenceExt. +
make(Term, Term) - +Static method in class nars.language.DifferenceExt +
Try to make a new compound from two components. +
make(ArrayList<Term>) - +Static method in class nars.language.DifferenceInt +
Try to make a new DifferenceExt. +
make(Term, Term) - +Static method in class nars.language.DifferenceInt +
Try to make a new compound from two components. +
make(Term, Term) - +Static method in class nars.language.Disjunction +
Try to make a new Disjunction from two components. +
make(ArrayList<Term>) - +Static method in class nars.language.Disjunction +
Try to make a new IntersectionExt. +
make(TreeSet<Term>) - +Static method in class nars.language.Disjunction +
Try to make a new Disjunction from a set of components. +
make(Term, Term) - +Static method in class nars.language.Equivalence +
Try to make a new compound from two components. +
make(Term, Term, TemporalRules.Relation) - +Static method in class nars.language.Equivalence +
  +
make(Term, Term) - +Static method in class nars.language.EquivalenceAfter +
Try to make a new compound from two components. +
make(Term, Term) - +Static method in class nars.language.EquivalenceWhen +
Try to make a new compound from two components. +
make(ArrayList<Term>) - +Static method in class nars.language.ImageExt +
Try to make a new ImageExt. +
make(Product, Term, short) - +Static method in class nars.language.ImageExt +
Try to make an Image from a Product and a relation. +
make(ImageExt, Term, short) - +Static method in class nars.language.ImageExt +
Try to make an Image from an existing Image and a component. +
make(ArrayList<Term>, short) - +Static method in class nars.language.ImageExt +
Try to make a new compound from a set of components. +
make(ArrayList<Term>) - +Static method in class nars.language.ImageInt +
Try to make a new ImageExt. +
make(Product, Term, short) - +Static method in class nars.language.ImageInt +
Try to make an Image from a Product and a relation. +
make(ImageInt, Term, short) - +Static method in class nars.language.ImageInt +
Try to make an Image from an existing Image and a component. +
make(ArrayList<Term>, short) - +Static method in class nars.language.ImageInt +
Try to make a new compound from a set of components. +
make(Term, Term) - +Static method in class nars.language.Implication +
Try to make a new compound from two components. +
make(Term, Term, TemporalRules.Relation) - +Static method in class nars.language.Implication +
  +
make(Term, Term) - +Static method in class nars.language.ImplicationAfter +
Try to make a new compound from two components. +
make(Term, Term) - +Static method in class nars.language.ImplicationBefore +
Try to make a new compound from two components. +
make(Term, Term) - +Static method in class nars.language.ImplicationWhen +
Try to make a new compound from two components. +
make(Term, Term) - +Static method in class nars.language.Inheritance +
Try to make a new compound from two components. +
make(Term, Term) - +Static method in class nars.language.Instance +
Try to make a new compound from two components. +
make(Term, Term) - +Static method in class nars.language.InstanceProperty +
Try to make a new compound from two components. +
make(Term, Term) - +Static method in class nars.language.IntersectionExt +
Try to make a new compound from two components. +
make(ArrayList<Term>) - +Static method in class nars.language.IntersectionExt +
Try to make a new IntersectionExt. +
make(TreeSet<Term>) - +Static method in class nars.language.IntersectionExt +
Try to make a new compound from a set of components. +
make(Term, Term) - +Static method in class nars.language.IntersectionInt +
Try to make a new compound from two components. +
make(ArrayList<Term>) - +Static method in class nars.language.IntersectionInt +
Try to make a new IntersectionExt. +
make(TreeSet<Term>) - +Static method in class nars.language.IntersectionInt +
Try to make a new compound from a set of components. +
make(Term) - +Static method in class nars.language.Negation +
Try to make a Negation of one component. +
make(ArrayList<Term>) - +Static method in class nars.language.Negation +
Try to make a new SetExt. +
make(ArrayList<Term>) - +Static method in class nars.language.Product +
Try to make a new compound. +
make(CompoundTerm, Term, int) - +Static method in class nars.language.Product +
Try to make a Product from an ImageExt/ImageInt and a component. +
make(Term, Term) - +Static method in class nars.language.Property +
Try to make a new compound from two components. +
make(Term) - +Static method in class nars.language.SetExt +
Try to make a new set from one component. +
make(ArrayList<Term>) - +Static method in class nars.language.SetExt +
Try to make a new SetExt. +
make(TreeSet<Term>) - +Static method in class nars.language.SetExt +
Try to make a new compound from a set of components. +
make(Term) - +Static method in class nars.language.SetInt +
Try to make a new set from one component. +
make(ArrayList<Term>) - +Static method in class nars.language.SetInt +
Try to make a new SetExt. +
make(TreeSet<Term>) - +Static method in class nars.language.SetInt +
Try to make a new compound from a set of components. +
make(Term, Term) - +Static method in class nars.language.Similarity +
Try to make a new compound from two components. +
make(String, Term, Term) - +Static method in class nars.language.Statement +
Make a Statement from String, called by StringParser +
make(Statement, Term, Term) - +Static method in class nars.language.Statement +
Make a Statement from given components, called by the rules +
make(Statement, Term, Term, TemporalRules.Relation) - +Static method in class nars.language.Statement +
Make a Statement from given components and temporal information, called by the rules +
makeCompoundName(String, ArrayList<Term>) - +Static method in class nars.language.CompoundTerm +
default method to make the name of a compound term from given fields +
makeImageName(String, ArrayList<Term>, int) - +Static method in class nars.language.CompoundTerm +
default method to make the name of an image term from given fields +
makeName() - +Method in class nars.language.CompoundTerm +
default method to make the name of the current term from existing fields +
makeName() - +Method in class nars.language.ImageExt +
override the default in making the name of the current term from existing fields +
makeName() - +Method in class nars.language.ImageInt +
Override the default in making the name of the current term from existing fields +
makeName() - +Method in class nars.language.SetExt +
Make a String representation of the set, override the default. +
makeName() - +Method in class nars.language.SetInt +
Make a String representation of the set, override the default. +
makeName() - +Method in class nars.language.Statement +
Override the default in making the name of the current term from existing fields +
makeSetName(char, ArrayList<Term>, char) - +Static method in class nars.language.CompoundTerm +
make the name of an ExtensionSet or IntensionSet +
makeStatementName(Term, String, Term) - +Static method in class nars.language.Statement +
Default method to make the name of an image term from given fields +
makeSym(Statement, Term, Term, TemporalRules.Relation) - +Static method in class nars.language.Statement +
Make a symmetric Statement from given components and temporal information, called by the rules +
makeVarName(int, Variable) - +Method in class nars.language.CompoundTerm +
Sequentially generate new variable names +
MARK - +Static variable in class nars.entity.BudgetValue +
The charactor that marks the two ends of a budget value +
markEventComponents() - +Method in class nars.entity.Concept +
Terms in temporal compounds is event +
markVariables() - +Method in class nars.language.CompoundTerm +
Register open and closed variables in a CompoundTerm +
mass - +Variable in class nars.storage.Bag +
current sum of occupied level +
match(Task, Judgment) - +Static method in class nars.inference.MatchingRules +
The task and belief have the same content +
match(Variable.VarType, Variable.VarType) - +Static method in class nars.language.Variable +
Whether two variable types can match each other in unification +
matchAsymSym(Sentence, Sentence, int) - +Static method in class nars.inference.MatchingRules +
Inheritance/Implication matches Similarity/Equivalence +
MatchingRules - Class in nars.inference
Directly process a task by a oldBelief, with only two Terms in both.
MatchingRules() - +Constructor for class nars.inference.MatchingRules +
  +
matchReverse() - +Static method in class nars.inference.MatchingRules +
The task and belief match reversely +
MAX_MATCHED_TERM_LINK - +Static variable in class nars.main.Parameters +
Maximum TermLinks checked for novelity for each TaskLink in TermLinkBag +
MAX_REASONED_TERM_LINK - +Static variable in class nars.main.Parameters +
Maximum TermLinks used in reasoning for each Task in Concept +
MAXMUM_BELIEF_LENGTH - +Static variable in class nars.main.Parameters +
Maximum number of beliefs kept in a Concept +
MAXMUM_EVENTS_LENGTH - +Static variable in class nars.main.Parameters +
Range of temporal induction in input events. +
MAXMUM_GOALS_LENGTH - +Static variable in class nars.main.Parameters +
Maximum number of goals kept in a Concept +
MAXMUM_STAMP_LENGTH - +Static variable in class nars.main.Parameters +
Maximum length of Stamp, a power of 2 +
Memory - Class in nars.main
The memory of the system.
Memory() - +Constructor for class nars.main.Memory +
  +
merge(BudgetValue) - +Method in class nars.entity.BudgetValue +
Merge one BudgetValue into another +
merge(Item) - +Method in class nars.entity.Task +
Merge one Task into another +
merge(Item) - +Method in class nars.entity.TaskLink +
Merge one TaskLink into another +
merge(BudgetValue, BudgetValue) - +Static method in class nars.inference.BudgetFunctions +
Merge an item into another one in a bag, when the two are identical except in budget values +
MessageDialog - Class in nars.gui
Pop-up message for the user to accept
MessageDialog(Frame, String) - +Constructor for class nars.gui.MessageDialog +
Constructor +
MULTIPLE_WINDOW_COLOR - +Static variable in class nars.gui.NarsFrame +
Color for the background of the windows with multiple instantiations +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-14.html b/nars-dist/javadoc/index-files/index-14.html new file mode 100644 index 00000000..3250002b --- /dev/null +++ b/nars-dist/javadoc/index-files/index-14.html @@ -0,0 +1,223 @@ + + + + + + + +N-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+N

+
+
name - +Variable in class nars.language.Term +
A Term is identified uniquely by its name, a sequence of characters in a + given alphabet (ASCII or Unicode) +
nameTable - +Variable in class nars.storage.Bag +
mapping from key to item +
nameToConcept(String) - +Static method in class nars.main.Memory +
Get an existing Concept for a given name +
nameToListedTerm(String) - +Static method in class nars.main.Memory +
Get a Term for a given name of a Concept or Operator +
nameToOperator(String) - +Static method in class nars.main.Memory +
Check if a string is an operator name +
NARS - Class in nars.main
The main class of the project.
NARS() - +Constructor for class nars.main.NARS +
  +
nars.entity - package nars.entity
Data entities that are independently stored
nars.gui - package nars.gui
Graphical user interface of the system
nars.inference - package nars.inference
The inference rules and control functions
nars.io - package nars.io
Input/output management
nars.language - package nars.language
Term hierarchy in Narsese
nars.main - package nars.main
Top-level classes of the system
nars.operation - package nars.operation
Built-in operators
nars.storage - package nars.storage
Storage management
NarsFont - +Static variable in class nars.gui.NarsFrame +
Font for NARS GUI +
NarsFrame - Class in nars.gui
Specify shared properties of NARS windows
NarsFrame() - +Constructor for class nars.gui.NarsFrame +
Default constructor +
NarsFrame(String) - +Constructor for class nars.gui.NarsFrame +
Constructor with title and font setting +
narsThread - +Variable in class nars.main.NARS +
The internal working thread of the system. +
NEAR_FUTURE - +Static variable in class nars.main.Parameters +
Horizon, the amount of evidence coming in the near future. +
negation(TruthValue) - +Static method in class nars.inference.TruthFunctions +
{A} |- (--A) +
Negation - Class in nars.language
A negation of a Statement.
Negation(String, ArrayList<Term>) - +Constructor for class nars.language.Negation +
Constructor with partial values, called by make +
Negation(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.Negation +
Constructor with full values, called by clone +
NEGATION_OPERATOR - +Static variable in class nars.io.Symbols +
  +
negImply(TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ (--, B)>, A} |- B +
NEW_TASK_FORGETTING_CYCLE - +Static variable in class nars.main.Parameters +
Task decay rate in TaskBuffer, in [1, 99]. +
newTasks - +Static variable in class nars.main.Memory +
List of inference newTasks, to be processed in the next working cycle +
newTasksStartPlay(String) - +Static method in class nars.main.Memory +
Display newd tasks, called from MainWindow. +
newTasksToString() - +Static method in class nars.main.Memory +
Prepare buffered tasks for display, called from TaskBuffer. +
next(int) - +Method in class nars.storage.Distributor +
Advance the index +
nextSeparator(String, int) - +Static method in class nars.io.StringParser +
Locate the first top-level separator in a CompoundTerm +
noOverlapping(Sentence) - +Method in class nars.entity.Sentence +
Check whether one sentence has stamp overlapping with another one, and change the system cash +
noResult() - +Static method in class nars.main.Memory +
Check if there is already any derived Task in the current cycle +
novel(TermLink) - +Method in class nars.entity.TaskLink +
To check whether a TaskLink should use a TermLink, return false if they + interacted recently +
novelTaskBuffer - +Static variable in class nars.main.Memory +
New tasks with novel composed terms, for delayed and selective processing +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-15.html b/nars-dist/javadoc/index-files/index-15.html new file mode 100644 index 00000000..b6912d48 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-15.html @@ -0,0 +1,258 @@ + + + + + + + +O-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+O

+
+
okButton - +Variable in class nars.gui.InputWindow +
Control buttons +
Open - Class in nars.operation
A class used in testing only.
Open(String) - +Constructor for class nars.operation.Open +
  +
openLoadFile() - +Method in class nars.io.ExperienceIO +
Open an input experience file +
openLogFile() - +Static method in class nars.io.Record +
Open the log file +
openSaveFile() - +Method in class nars.io.ExperienceIO +
Open an output experience file +
openVariables - +Variable in class nars.language.CompoundTerm +
list of open variables in the compound +
operator() - +Method in class nars.language.CompoundTerm +
Abstract method to get the operator of the compound +
operator() - +Method in class nars.language.Conjunction +
Get the operator of the term. +
operator() - +Method in class nars.language.ConjunctionParallel +
Get the operator of the term. +
operator() - +Method in class nars.language.ConjunctionSequence +
Get the operator of the term. +
operator() - +Method in class nars.language.DifferenceExt +
Get the operator of the term. +
operator() - +Method in class nars.language.DifferenceInt +
Get the operator of the term. +
operator() - +Method in class nars.language.Disjunction +
Get the operator of the term. +
operator() - +Method in class nars.language.Equivalence +
Get the operator of the term. +
operator() - +Method in class nars.language.EquivalenceAfter +
Get the operator of the term. +
operator() - +Method in class nars.language.EquivalenceWhen +
Get the operator of the term. +
operator() - +Method in class nars.language.ImageExt +
get the operator of the term. +
operator() - +Method in class nars.language.ImageInt +
Get the operator of the term. +
operator() - +Method in class nars.language.Implication +
Get the operator of the term. +
operator() - +Method in class nars.language.ImplicationAfter +
Get the operator of the term. +
operator() - +Method in class nars.language.ImplicationBefore +
Get the operator of the term. +
operator() - +Method in class nars.language.ImplicationWhen +
Get the operator of the term. +
operator() - +Method in class nars.language.Inheritance +
Get the operator of the term. +
operator() - +Method in class nars.language.IntersectionExt +
Get the operator of the term. +
operator() - +Method in class nars.language.IntersectionInt +
Get the operator of the term. +
operator() - +Method in class nars.language.Negation +
Get the operator of the term. +
operator() - +Method in class nars.language.Product +
Get the operator of the term. +
operator() - +Method in class nars.language.SetExt +
Get the operator of the term. +
operator() - +Method in class nars.language.SetInt +
Get the operator of the term. +
operator() - +Method in class nars.language.Similarity +
Get the operator of the term. +
Operator - Class in nars.operation
An individual operator that can be execute by the system, though implemented + outside NARS.
Operator(String) - +Constructor for class nars.operation.Operator +
  +
OPERATOR_TAG - +Static variable in class nars.io.Symbols +
  +
operators - +Static variable in class nars.main.Memory +
Operators (built-in terms) table. +
or(float...) - +Static method in class nars.inference.UtilityFunctions +
A function where the output is disjunctively determined by the inputs +
order - +Variable in class nars.storage.Distributor +
Shuffled sequence of index numbers +
orderWith(Stamp) - +Method in class nars.entity.Stamp +
Compare two Stamps for their temporal order +
outExp - +Variable in class nars.io.ExperienceIO +
Output experience into a file +
outOfBase(Type) - +Method in class nars.storage.Bag +
Remove an item from itemTable, then adjust mass +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-16.html b/nars-dist/javadoc/index-files/index-16.html new file mode 100644 index 00000000..f4c0c6d5 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-16.html @@ -0,0 +1,280 @@ + + + + + + + +P-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+P

+
+
PARALLEL_OPERATOR - +Static variable in class nars.io.Symbols +
  +
Parameters - Class in nars.main
Collected system parameters.
Parameters() - +Constructor for class nars.main.Parameters +
  +
ParameterWindow - Class in nars.gui
Window displaying a system parameter that can be adjusted in run time
ParameterWindow(String, int) - +Constructor for class nars.gui.ParameterWindow +
Constructor +
parseArguments(String) - +Static method in class nars.io.StringParser +
Parse a String into the argument get of a CompoundTerm. +
parseBudget(String, char, TruthValue) - +Static method in class nars.io.StringParser +
parse the input String into a BudgetValue +
parseCompoundTerm(String) - +Static method in class nars.io.StringParser +
Parse a String to create a CompoundTerm. +
parseExperience(StringBuffer) - +Static method in class nars.io.StringParser +
Parse a line of input experience +
parseSimpleTerm(String) - +Static method in class nars.io.StringParser +
Parse a Term that has no internal structure. +
parseStatement(String) - +Static method in class nars.io.StringParser +
Parse a String to create a Statement. +
parseTask(String) - +Static method in class nars.io.StringParser +
The only public (static) method of the class, called from InputWindow or locally. +
parseTense(StringBuffer) - +Static method in class nars.io.StringParser +
Recognize the tense of an input sentence +
parseTerm(String) - +Static method in class nars.io.StringParser +
Top-level method that parse a Term in general, which may recursively call itself. +
parseTruth(String, char) - +Static method in class nars.io.StringParser +
parse the input String into a TruthValue (or DesireValue) +
Pick - Class in nars.operation
A class used in testing only.
Pick(String) - +Constructor for class nars.operation.Pick +
  +
pick(int) - +Method in class nars.storage.Distributor +
Get the next number according to the given index +
pickOut(String) - +Method in class nars.storage.Bag +
Pick an item by key, then remove it from the bag +
play() - +Method in class nars.entity.Concept +
Resume display, called from ConceptWindow only +
play() - +Static method in class nars.io.Record +
Begin the display +
play() - +Method in class nars.storage.Bag +
Resume display +
playButton - +Variable in class nars.gui.BagWindow +
Control buttons +
playButton - +Variable in class nars.gui.ConceptWindow +
Control buttons +
playButton - +Variable in class nars.gui.InferenceWindow +
Control buttons +
playButton - +Variable in class nars.gui.TermWindow +
Control buttons +
post(String) - +Method in class nars.gui.BagWindow +
Post the bag content +
post(String) - +Method in class nars.gui.ConceptWindow +
Display the content of the concept +
post(String) - +Method in class nars.gui.MainWindow +
Add new line to the display, plus the time interval +
prepareComponentLinks() - +Method in class nars.language.CompoundTerm +
Build TermLink templates to constant components and subcomponents +
prepareComponentLinks(ArrayList<TermLink>, short, CompoundTerm) - +Method in class nars.language.CompoundTerm +
Collect TermLink templates into a list, go down one level except in special cases +
previousValue - +Variable in class nars.gui.ParameterWindow +
parameter values +
priority - +Variable in class nars.entity.BudgetValue +
The relative share of time resource to be allocated +
PRIORITY_THRESHOLD - +Static variable in class nars.main.Parameters +
The priority threthold for operation to be executed. +
processComposed(Statement, Term, Term, TruthValue) - +Static method in class nars.inference.CompositionalRules +
Finish composing compound term +
processConcept() - +Static method in class nars.main.Memory +
Select a concept to fire. +
processGoal(Goal, Task) - +Method in class nars.entity.Concept +
Direct processing a new goal +
processJudgment(Judgment, Task) - +Method in class nars.entity.Concept +
To accept a new judgment as belief, and check for revisions and solutions +
processQuestion(Question, Task) - +Method in class nars.entity.Concept +
To answer a question by existing beliefs +
processTask() - +Static method in class nars.main.Memory +
Process the newTasks accumulated in the previous cycle, accept input ones + and those that corresponding to existing concepts, plus one from the buffer. +
Product - Class in nars.language
A Product is a sequence of terms.
Product(String, ArrayList<Term>) - +Constructor for class nars.language.Product +
Constructor with partial values, called by make +
Product(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.Product +
Constructor with full values, called by clone +
PRODUCT_OPERATOR - +Static variable in class nars.io.Symbols +
  +
Property - Class in nars.language
A Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
Property() - +Constructor for class nars.language.Property +
  +
PROPERTY_RELATION - +Static variable in class nars.io.Symbols +
  +
punctuation - +Variable in class nars.entity.Sentence +
The punctuation also indicates the type of the Sentence: Judgment, Question, or Goal +
putBack(Type) - +Method in class nars.storage.Bag +
Put an item back into the itemTable +
putIn(Type) - +Method in class nars.storage.Bag +
Add a new Item into the Bag +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-17.html b/nars-dist/javadoc/index-files/index-17.html new file mode 100644 index 00000000..49ec59bd --- /dev/null +++ b/nars-dist/javadoc/index-files/index-17.html @@ -0,0 +1,155 @@ + + + + + + + +Q-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+Q

+
+
quality - +Variable in class nars.entity.BudgetValue +
The overall (context-independent) evaluation +
QUERY_VARIABLE_TAG - +Static variable in class nars.io.Symbols +
  +
Question - Class in nars.entity
A Question is a sentence without a truth value, and may conain query variables
Question(Term, char, TemporalRules.Relation, Stamp) - +Constructor for class nars.entity.Question +
COnstructor +
QUESTION_MARK - +Static variable in class nars.io.Symbols +
  +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-18.html b/nars-dist/javadoc/index-files/index-18.html new file mode 100644 index 00000000..0270ed66 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-18.html @@ -0,0 +1,242 @@ + + + + + + + +R-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+R

+
+
rankBelief(Judgment) - +Static method in class nars.inference.BudgetFunctions +
Determine the rank of a judgment by its confidence and originality (stamp length) +
ready - +Variable in class nars.gui.InputWindow +
Whether the window is ready to accept new input +
reason(TaskLink, TermLink) - +Static method in class nars.inference.RuleTables +
Entry point of the inference engine +
recentEvents - +Static variable in class nars.main.Memory +
List of recent events, for temporal learning +
record - +Variable in class nars.entity.TaskLink +
Remember the TermLinks that has been used recently with this TaskLink +
Record - Class in nars.io
Inference log, which record input/output of each inference step
Record() - +Constructor for class nars.io.Record +
  +
reduceComponents(CompoundTerm, Term) - +Static method in class nars.language.CompoundTerm +
Try to remove a component from a compound +
reduceConjunction(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{(--, (&&, A, B)), B} |- (--, A) +
reduceConjunctionNeg(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{(--, (&&, A, (--, B))), (--, B)} |- (--, A) +
reduceDisjunction(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{(||, A, B), (--, B)} |- A +
refresh() - +Method in class nars.storage.Bag +
Refresh display +
relationIndex - +Variable in class nars.language.ImageExt +
The index of relation in the component list +
relationIndex - +Variable in class nars.language.ImageInt +
The index of relation in the component list +
RELATIVE_THRESHOLD - +Static variable in class nars.storage.Bag +
relative threshold, only calculate once +
renameVariables() - +Method in class nars.language.CompoundTerm +
Rename variables in input sentence +
renameVariables(HashMap<String, String>) - +Method in class nars.language.CompoundTerm +
Recursively rename variables by their appearing order in the CompoundTerm +
replaceComponent(CompoundTerm, int, Term) - +Static method in class nars.language.CompoundTerm +
Try to replace a component in a compound at a given index by another one +
replaceComponent(CompoundTerm, Term, Term) - +Static method in class nars.language.CompoundTerm +
Try to replace a given component in a compound by another one +
report(Sentence, boolean) - +Static method in class nars.main.Memory +
Display input/output sentence in the MainWindow. +
resemblance(Term, Term, Judgment, Sentence, int) - +Static method in class nars.inference.SyllogisticRules +
{ M>, P>} |- P> +
resemblance(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ M>, P>} |- P> +
reset() - +Static method in class nars.main.Center +
Reset the system with an empty memory and reset clock. +
resetBackground() - +Method in class nars.gui.InferenceWindow +
Reset background color after file saving +
reverse(TemporalRules.Relation) - +Static method in class nars.inference.TemporalRules +
  +
revise(TruthValue, TruthValue, TruthValue, Task, boolean) - +Static method in class nars.inference.BudgetFunctions +
Evaluate the quality of a revision, then de-prioritize the premises +
reviseTable(Judgment, Task, ArrayList) - +Method in class nars.entity.Concept +
Revise existing beliefs or goals +
revisible - +Variable in class nars.entity.Concept +
Whether truth value of judgments can be revised +
revision(Task, Judgment, boolean) - +Static method in class nars.inference.MatchingRules +
Belief revision +
revision(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ P>, P>} |- P> +
RuleTables - Class in nars.inference
Table of inference rules, indexed by the TermLinks for the task and the belief.
RuleTables() - +Constructor for class nars.inference.RuleTables +
  +
run() - +Method in class nars.main.NARS +
Repeatedly execute NARS working cycle. +
runButton - +Variable in class nars.gui.MainWindow +
Control buttons +
running - +Static variable in class nars.main.Center +
Flag for running continously +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-19.html b/nars-dist/javadoc/index-files/index-19.html new file mode 100644 index 00000000..bee9d5bf --- /dev/null +++ b/nars-dist/javadoc/index-files/index-19.html @@ -0,0 +1,431 @@ + + + + + + + +S-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+S

+
+
saveLine(String) - +Method in class nars.io.ExperienceIO +
Write a line into the output experience file +
SAVING_BACKGROUND_COLOR - +Static variable in class nars.gui.NarsFrame +
Color for the background of the text components that are being saved into a file +
savingExp - +Variable in class nars.gui.MainWindow +
Whether the experience is saving into a file +
scope - +Variable in class nars.language.Variable +
The minimum CompoundTerm what contains all occurences of this variable +
SELF - +Static variable in class nars.entity.TermLink +
At C, point to C; TaskLink only +
Sentence - Class in nars.entity
A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
Sentence() - +Constructor for class nars.entity.Sentence +
  +
sentence - +Variable in class nars.entity.Task +
The sentence of the Task +
SEPARATOR - +Static variable in class nars.entity.BudgetValue +
The charactor that separates the factors in a budget value +
SEPARATOR - +Static variable in class nars.entity.TruthValue +
The charactor that separates the factors in a truth value +
SEQUENCE_OPERATOR - +Static variable in class nars.io.Symbols +
  +
SET_EXT_CLOSER - +Static variable in class nars.io.Symbols +
  +
SET_EXT_OPENER - +Static variable in class nars.io.Symbols +
  +
SET_INT_CLOSER - +Static variable in class nars.io.Symbols +
  +
SET_INT_OPENER - +Static variable in class nars.io.Symbols +
  +
setBestSolution(Judgment) - +Method in class nars.entity.Sentence +
Set the best-so-far solution for a Question or Goal +
setContent(Term) - +Method in class nars.entity.Sentence +
Set the content Term of the Sentence +
setDurability(float) - +Method in class nars.entity.BudgetValue +
Change durability value +
setEvent() - +Method in class nars.entity.Concept +
Mark the concept as an event +
SetExt - Class in nars.language
An extensionally defined set, which contains one or more instances.
SetExt(String, ArrayList<Term>) - +Constructor for class nars.language.SetExt +
Constructor with partial values, called by make +
SetExt(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.SetExt +
Constructor with full values, called by clone +
setInput() - +Method in class nars.entity.Sentence +
The only place to change the default, called in StringParser +
SetInt - Class in nars.language
An intensionally defined set, which contains one or more instances defining the Term.
SetInt(String, ArrayList<Term>) - +Constructor for class nars.language.SetInt +
Constructor with partial values, called by make +
SetInt(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.SetInt +
constructor with full values, called by clone +
setKey() - +Method in class nars.entity.TermLink +
Set the key of the link +
setName(String) - +Method in class nars.language.Variable +
Rename the variable +
setOperators() - +Static method in class nars.operation.Operator +
Register all built-in operators in the Memory +
setPriority(float) - +Method in class nars.entity.BudgetValue +
Change priority value +
setQuality(float) - +Method in class nars.entity.BudgetValue +
Change quality value +
setScope(CompoundTerm) - +Method in class nars.language.Variable +
Set the scope of the variable +
setStoper(long) - +Static method in class nars.main.Center +
Walk a fixed number of steps or continously. +
setStructual() - +Method in class nars.entity.Task +
Record if a Task is derived by a StructuralRule +
setTense(TemporalRules.Relation) - +Method in class nars.entity.Sentence +
Set the tense of the Sentence +
setValue(float) - +Method in class nars.entity.ShortFloat +
Set new value, rounded, with validity checking +
ShortFloat - Class in nars.entity
A float value in [0, 1], with 4 digits accuracy.
ShortFloat(float) - +Constructor for class nars.entity.ShortFloat +
Constructor +
show() - +Static method in class nars.io.Record +
Show the window +
showExecution(Statement) - +Method in class nars.operation.Operator +
Display a message in the output stream to indicate the execution of an operation +
showing - +Variable in class nars.entity.Concept +
Whether the content of the concept is being displayed +
showing - +Variable in class nars.storage.Bag +
whether this bag has an active window +
showLevel - +Variable in class nars.gui.BagWindow +
The lowest level displayed +
showLevel() - +Method in class nars.gui.BagWindow +
The lowest display level +
SILENT_LEVEL - +Static variable in class nars.main.Parameters +
Silent threshold for task reporting, in [0, 100]. +
silentW - +Static variable in class nars.gui.MainWindow +
Windows for run-time parameter adjustment +
Similarity - Class in nars.language
A Statement about a Similarity relation.
Similarity(String, ArrayList<Term>) - +Constructor for class nars.language.Similarity +
Constructor with partial values, called by make +
Similarity(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.Similarity +
Constructor with full values, called by clone +
SIMILARITY_RELATION - +Static variable in class nars.io.Symbols +
  +
SINGLE_WINDOW_COLOR - +Static variable in class nars.gui.NarsFrame +
Color for the background of the windows with unique instantiation +
singlePremiseTask(BudgetValue, Term, TruthValue) - +Static method in class nars.main.Memory +
Shared final operations by all single-premise rules, called in StructuralRules +
size() - +Method in class nars.language.CompoundTerm +
get the number of components +
solutionEval(Sentence, Judgment, Task) - +Static method in class nars.inference.BudgetFunctions +
Evaluate the quality of a belief as a solution to a problem, then reward + the belief and de-prioritize the problem +
solutionQuality(Sentence) - +Method in class nars.entity.Judgment +
Evaluate the quality of the judgment as a solution to a problem +
stamp - +Variable in class nars.entity.Sentence +
Partial record of the derivation path +
Stamp - Class in nars.entity
Each Sentence has a get of serial numbers of a constant length attached.
Stamp() - +Constructor for class nars.entity.Stamp +
Generate a new stamp, with a new serial number, for input sentence +
Stamp(Stamp, Stamp) - +Constructor for class nars.entity.Stamp +
Generate a new stamp for derived sentence by merging the two from parents + the first one is no shorter than the second +
STAMP_CLOSER - +Static variable in class nars.io.Symbols +
  +
STAMP_OPENER - +Static variable in class nars.io.Symbols +
  +
STAMP_SEPARATOR - +Static variable in class nars.io.Symbols +
  +
STAMP_STARTER - +Static variable in class nars.io.Symbols +
  +
standAlone - +Static variable in class nars.main.NARS +
Flag to distinguish the two running modes of the project. +
start() - +Static method in class nars.main.Center +
Start the initial windows and memory. +
start() - +Method in class nars.main.NARS +
Start the thread if necessary, called when the page containing the applet first appears on the screen. +
startPlay() - +Method in class nars.entity.Concept +
Start displaying contents and links, called from ConceptWindow only +
startPlay(String) - +Method in class nars.storage.Bag +
To start displaying the Bag in a BagWindow +
Statement - Class in nars.language
A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
Statement() - +Constructor for class nars.language.Statement +
Default constructor +
Statement(String, ArrayList<Term>) - +Constructor for class nars.language.Statement +
Constructor with partial values, called by make +
Statement(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.Statement +
Constructor with full values, called by clone +
STATEMENT_CLOSER - +Static variable in class nars.io.Symbols +
  +
STATEMENT_OPENER - +Static variable in class nars.io.Symbols +
  +
stop() - +Method in class nars.entity.Concept +
Stop display, called from ConceptWindow only +
stop() - +Static method in class nars.io.Record +
Stop the display +
stop() - +Method in class nars.main.NARS +
Called when the page containing the applet is no longer on the screen. +
stop() - +Method in class nars.storage.Bag +
Stop display +
stopButton - +Variable in class nars.gui.BagWindow +
Control buttons +
stopButton - +Variable in class nars.gui.ConceptWindow +
Control buttons +
stopButton - +Variable in class nars.gui.InferenceWindow +
Control buttons +
stopButton - +Variable in class nars.gui.MainWindow +
Control buttons +
stoper - +Static variable in class nars.main.Center +
Timer for fixed distance walking +
StringParser - Class in nars.io
Parse input String into Task.
StringParser() - +Constructor for class nars.io.StringParser +
  +
StringParser.InvalidInputException - Exception in nars.io
All kinds of invalid input lines
StringParser.InvalidInputException(String) - +Constructor for exception nars.io.StringParser.InvalidInputException +
An invalid input line. +
structual - +Variable in class nars.entity.Task +
Whether it is derived by a structual rule +
structuralCompose1(CompoundTerm, short, Statement) - +Static method in class nars.inference.StructuralRules +
{ P>, P@(P&Q)} |- (P&Q)> +
structuralCompose2(CompoundTerm, short, Statement, short) - +Static method in class nars.inference.StructuralRules +
{ P>, S@(S&T)} |- <(S&T) --> (P&T)> + { P>, S@(M-S)} |- <(M-P) --> (M-S)> +
structuralCompound(CompoundTerm, Term, boolean) - +Static method in class nars.inference.StructuralRules +
{(&&, A, B), A@(&&, A, B)} |- A + {(||, A, B), A@(||, A, B)} |- A +
structuralDecompose1(CompoundTerm, short, Statement) - +Static method in class nars.inference.StructuralRules +
{<(S&T) --> P>, S@(S&T)} |- P> +
structuralDecompose2(Statement) - +Static method in class nars.inference.StructuralRules +
{<(S&T) --> (P&T)>, S@(S&T)} |- P> +
StructuralRules - Class in nars.inference
Single-premise inference rules involving compound terms.
StructuralRules() - +Constructor for class nars.inference.StructuralRules +
  +
structuralStatement(Term, Term, TruthValue) - +Static method in class nars.inference.StructuralRules +
Common final operations of the above two methods +
substituteComponent(HashMap<String, Term>, boolean) - +Method in class nars.language.CompoundTerm +
Substitute a variable component according to a given substitution +
summary() - +Method in class nars.entity.BudgetValue +
To summarize a BudgetValue into a single number in [0, 1] +
switchBackground() - +Method in class nars.gui.InferenceWindow +
Change background color to remind the on-going file saving +
switchOrder(CompoundTerm, short) - +Static method in class nars.inference.StructuralRules +
List the cases where the direction of inheritance is revised in conclusion +
syllogisms(TaskLink, TermLink, Term, Term) - +Static method in class nars.inference.RuleTables +
Meta-table of syllogistic rules, indexed by the content classes of the + taskSentence and the belief +
SyllogisticRules - Class in nars.inference
Syllogisms: Inference rules based on the transitivity of the relation.
SyllogisticRules() - +Constructor for class nars.inference.SyllogisticRules +
  +
Symbols - Class in nars.io
The ASCII symbols used in I/O.
Symbols() - +Constructor for class nars.io.Symbols +
  +
symmetricSymmetric(Judgment, Sentence, int) - +Static method in class nars.inference.RuleTables +
Syllogistic rules whose both premises are on the same symmetric relation +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-2.html b/nars-dist/javadoc/index-files/index-2.html new file mode 100644 index 00000000..6421e1c4 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-2.html @@ -0,0 +1,201 @@ + + + + + + + +B-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+B

+
+
backward(TruthValue) - +Static method in class nars.inference.BudgetFunctions +
Backward inference result and adjustment, stronger case +
backwardWeak(TruthValue) - +Static method in class nars.inference.BudgetFunctions +
Backward inference result and adjustment, weaker case +
bag - +Variable in class nars.gui.BagWindow +
The bag to be displayed +
Bag<Type extends Item> - Class in nars.storage
A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
Bag() - +Constructor for class nars.storage.Bag +
constructor, called from subclasses +
BAG_LEVEL - +Static variable in class nars.main.Parameters +
Level granularity in Bag, two digits +
BAG_THRESHOLD - +Static variable in class nars.main.Parameters +
Level separation in Bag, one digit, for display (run-time adjustable) and management (fixed) +
BagWindow - Class in nars.gui
Window display the priority distribution of items within a given bag
BagWindow(Bag, String) - +Constructor for class nars.gui.BagWindow +
Constructor +
bestSolution - +Variable in class nars.entity.Sentence +
For Question and Goal: best solution found so far +
betterSolution(Judgment, Judgment, Sentence) - +Static method in class nars.inference.MatchingRules +
Compare the quality of two solutions +
Break - Class in nars.operation
A class used in testing only.
Break(String) - +Constructor for class nars.operation.Break +
  +
BUDGET_THRESHOLD - +Static variable in class nars.main.Parameters +
The budget threthold for task to be accepted. +
BUDGET_VALUE_MARK - +Static variable in class nars.io.Symbols +
  +
BudgetFunctions - Class in nars.inference
Budget functions for resources allocation
BudgetFunctions() - +Constructor for class nars.inference.BudgetFunctions +
  +
budgetInference(float, int) - +Static method in class nars.inference.BudgetFunctions +
Common processing for all inference step +
BudgetValue - Class in nars.entity
A triple of priority (current), durability (decay), and quality (long-term average).
BudgetValue() - +Constructor for class nars.entity.BudgetValue +
Default constructor +
BudgetValue(float, float, float) - +Constructor for class nars.entity.BudgetValue +
Constructor with initialization +
BudgetValue(BudgetValue) - +Constructor for class nars.entity.BudgetValue +
Cloning constructor +
buildTermLinks(BudgetValue) - +Method in class nars.entity.Concept +
Recursively build TermLinks between a compound and its components +
button - +Variable in class nars.gui.MessageDialog +
  +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-20.html b/nars-dist/javadoc/index-files/index-20.html new file mode 100644 index 00000000..da4eb22b --- /dev/null +++ b/nars-dist/javadoc/index-files/index-20.html @@ -0,0 +1,422 @@ + + + + + + + +T-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+T

+
+
takeOut() - +Method in class nars.storage.Bag +
Choose an Item according to priority distribution and take it out of the Bag +
takeOut(TaskLink) - +Method in class nars.storage.TermLinkBag +
Replace defualt to prevent repeated inference, by checking TaskLink +
takeOutFirst(int) - +Method in class nars.storage.Bag +
Take out the first or last Type in a level from the itemTable +
target - +Variable in class nars.entity.TermLink +
The linked Term +
targetTask - +Variable in class nars.entity.TaskLink +
The Task linked. +
Task - Class in nars.entity
A task to be processed, consists of a Sentence and a BudgetValue
Task(Sentence, BudgetValue) - +Constructor for class nars.entity.Task +
Constructor +
TASK_BUFFER_SIZE - +Static variable in class nars.main.Parameters +
Size of TaskBuffer +
TASK_LINK_BAG_SIZE - +Static variable in class nars.main.Parameters +
Size of TaskLinkBag +
TASK_LINK_FORGETTING_CYCLE - +Static variable in class nars.main.Parameters +
TaskLink decay rate in TaskLinkBag, in [1, 99]. +
TaskBuffer - Class in nars.storage
New tasks that contain new Term.
TaskBuffer() - +Constructor for class nars.storage.TaskBuffer +
  +
TaskLink - Class in nars.entity
Reference to a Task.
TaskLink(Task, TermLink, BudgetValue) - +Constructor for class nars.entity.TaskLink +
Constructor +
TaskLinkBag - Class in nars.storage
TaskLinkBag contains links to tasks.
TaskLinkBag() - +Constructor for class nars.storage.TaskLinkBag +
  +
taskLinks - +Variable in class nars.entity.Concept +
Task links for indirect processing +
Temporal - Interface in nars.language
An interface for compound terms with temporal information in it
temporalIndCom(BudgetValue, BudgetValue, TruthValue) - +Static method in class nars.inference.BudgetFunctions +
Special treatment for temporal induction and comparison among recent event, no feedback +
temporalIndCom(Task, Task, TemporalRules.Relation) - +Static method in class nars.inference.SyllogisticRules +
{ S>, P>} |- { P>,

S>, P>} +

temporalInduction(TruthValue) - +Static method in class nars.inference.TruthFunctions +
Make temporal hypothesis +
temporalInference(TemporalRules.Relation, TemporalRules.Relation) - +Static method in class nars.inference.TemporalRules +
Temporal relationships among three terms +
TemporalRules - Class in nars.inference
Temporal inference rules
TemporalRules() - +Constructor for class nars.inference.TemporalRules +
  +
TemporalRules.Relation - Enum in nars.inference
Temporal relations: a default and three specific
TemporalRules.Relation() - +Constructor for enum nars.inference.TemporalRules.Relation +
  +
temporalSyllogism(TemporalRules.Relation, TemporalRules.Relation, int) - +Static method in class nars.inference.TemporalRules +
Temporal inference in syllogism +
tense - +Variable in class nars.entity.Sentence +
The tense of a Sentence can be BEFORE(past), WHEN(present), AFTER(future), or NONE +
TENSE_FUTURE - +Static variable in class nars.io.Symbols +
  +
TENSE_MARK - +Static variable in class nars.io.Symbols +
  +
TENSE_PAST - +Static variable in class nars.io.Symbols +
  +
TENSE_PRESENT - +Static variable in class nars.io.Symbols +
  +
tenseInference(TemporalRules.Relation, TemporalRules.Relation) - +Static method in class nars.inference.TemporalRules +
The temporal inference on tenses +
tenseToString() - +Method in class nars.entity.Sentence +
Get a String representation of the tense of the sentence +
term - +Variable in class nars.entity.Concept +
The term is the unique ID of the concept +
Term - Class in nars.language
Term is the basic component of Narsese, and the object of processing in NARS.
Term() - +Constructor for class nars.language.Term +
Default constructor +
Term(String) - +Constructor for class nars.language.Term +
Constructor with a given name +
TERM_LINK_BAG_SIZE - +Static variable in class nars.main.Parameters +
Size of TermLinkBag +
TERM_LINK_FORGETTING_CYCLE - +Static variable in class nars.main.Parameters +
TermLink decay rate in TermLinkBag, in [1, 99]. +
TERM_LINK_RECORD_LENGTH - +Static variable in class nars.main.Parameters +
Remember recently used TermLink on a Task +
termField - +Variable in class nars.gui.TermWindow +
Input field for term name +
termLabel - +Variable in class nars.gui.TermWindow +
Display label +
TermLink - Class in nars.entity
A link between a compound term and a component term
TermLink() - +Constructor for class nars.entity.TermLink +
Default constructor +
TermLink(Term, short, int...) - +Constructor for class nars.entity.TermLink +
Constructor for TermLink template +
TermLink(BudgetValue) - +Constructor for class nars.entity.TermLink +
Default Constructor need in TaskLink +
TermLink(Term, TermLink, BudgetValue) - +Constructor for class nars.entity.TermLink +
Constructor to make actual TermLink from a template +
TermLinkBag - Class in nars.storage
Contains TermLinks to relevant (compound or component) Terms.
TermLinkBag() - +Constructor for class nars.storage.TermLinkBag +
  +
termLinks - +Variable in class nars.entity.Concept +
Term links between the term and its components and compounds +
termLinkTemplates - +Variable in class nars.entity.Concept +
Link templates of TermLink, only in concepts with CompoundTerm +
termToConcept(Term) - +Static method in class nars.main.Memory +
Get an existing Concept for a given Term. +
TermWindow - Class in nars.gui
Window accept a Term, then display the content of the corresponding Concept
TermWindow() - +Constructor for class nars.gui.TermWindow +
Constructor +
text - +Variable in class nars.gui.BagWindow +
Display area +
text - +Variable in class nars.gui.ConceptWindow +
Display area +
text - +Variable in class nars.gui.InferenceWindow +
Display area +
text - +Variable in class nars.gui.MessageDialog +
  +
THRESHOLD - +Static variable in class nars.storage.Bag +
firing threshold +
tick() - +Static method in class nars.main.Center +
A clock tick. +
tickTimer() - +Method in class nars.gui.MainWindow +
Update timer and its display +
timer - +Variable in class nars.gui.MainWindow +
System clock +
timerLabel - +Variable in class nars.gui.MainWindow +
Label of the clock +
timerText - +Variable in class nars.gui.MainWindow +
Clock display field +
TO_COMPONENT_1 - +Static variable in class nars.io.Symbols +
  +
TO_COMPONENT_2 - +Static variable in class nars.io.Symbols +
  +
TO_COMPOUND_1 - +Static variable in class nars.io.Symbols +
  +
TO_COMPOUND_2 - +Static variable in class nars.io.Symbols +
  +
topRelation(String) - +Static method in class nars.io.StringParser +
locate the top-level relation in a statement +
toSet() - +Method in class nars.entity.Stamp +
Convert the list into a set +
toString() - +Method in class nars.entity.BudgetValue +
Fully display the BudgetValue +
toString() - +Method in class nars.entity.Concept +
Return a string representation of the concept, called in ConceptBag only +
toString() - +Method in class nars.entity.Sentence +
Get a String representation of the sentence +
toString() - +Method in class nars.entity.ShortFloat +
Convert the value into a String +
toString() - +Method in class nars.entity.Stamp +
Get a String form of the Stamp for display +
toString() - +Method in class nars.entity.Task +
Get a String representation of the Task +
toString() - +Method in class nars.entity.TermLink +
Get a String representation of the link, with full accuracy +
toString() - +Method in class nars.entity.TruthValue +
The String representation of a TruthValue +
toString() - +Method in class nars.language.Term +
The same as getName, used in display. +
toString() - +Method in class nars.storage.Bag +
Collect Bag content into a String for display +
toString() - +Method in class nars.storage.TaskBuffer +
Sepecial treatment: the display also include Tasks in the NewTask list +
toString2() - +Method in class nars.entity.BudgetValue +
Briefly display the BudgetValue +
toString2() - +Method in class nars.entity.Sentence +
Get a String representation of the sentence, with 2-digit accuracy +
toString2() - +Method in class nars.entity.ShortFloat +
Convert the value into a String +
toString2() - +Method in class nars.entity.Task +
Get a String representation of the Task, with reduced accuracy +
toString2() - +Method in class nars.entity.TermLink +
Get a String representation of the link, with 2-digit accuracy +
toString2() - +Method in class nars.entity.TruthValue +
A simplified String representation of a TruthValue, where each factor is accruate to 1% +
TOTAL_LEVEL - +Static variable in class nars.storage.Bag +
priority levels +
TRANSFORM - +Static variable in class nars.entity.TermLink +
At C, point to <(*, C, B) --> A>; TaskLink only +
transformNegation(Term) - +Static method in class nars.inference.StructuralRules +
{A, A@(--, A)} |- (--, A) +
transformProductImage(Inheritance, CompoundTerm, short[], Task) - +Static method in class nars.inference.StructuralRules +
Equivalent transformation between products and images + {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> + { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> + { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)> +
transformSetRelation(CompoundTerm, Statement, short) - +Static method in class nars.inference.StructuralRules +
{ {P}>} |- {P}> +
transformTask(Task, TaskLink) - +Static method in class nars.inference.RuleTables +
The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation +
truth - +Variable in class nars.entity.Sentence +
The truth value of Judgment or desire value of Goal +
TRUTH_VALUE_MARK - +Static variable in class nars.io.Symbols +
  +
TruthFunctions - Class in nars.inference
All truth-value (and desire-value) functions used in inference rules
TruthFunctions() - +Constructor for class nars.inference.TruthFunctions +
  +
truthToQuality(TruthValue) - +Static method in class nars.inference.BudgetFunctions +
Determine the quality of a judgment by its truth value alone +
TruthValue - Class in nars.entity
Frequency and confidence.
TruthValue(float, float) - +Constructor for class nars.entity.TruthValue +
Constructor with two ShortFloats +
TruthValue(TruthValue) - +Constructor for class nars.entity.TruthValue +
Constructor with a TruthValue to clone +
trySolution(Sentence, Judgment, Task) - +Static method in class nars.inference.MatchingRules +
Check if a Judgment provide a better answer to a Question +
type - +Variable in class nars.entity.TermLink +
The type of link, one of the above +
type - +Variable in class nars.language.Variable +
Type of the variable +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-21.html b/nars-dist/javadoc/index-files/index-21.html new file mode 100644 index 00000000..34732eb0 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-21.html @@ -0,0 +1,164 @@ + + + + + + + +U-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+U

+
+
UNAVAILABLE - +Static variable in class nars.gui.NarsFrame +
Message for unimplemented functions +
undoButton - +Variable in class nars.gui.ParameterWindow +
Control buttons +
unify(Variable.VarType, Term, Term, Term, Term) - +Static method in class nars.language.Variable +
To unify two Terms, then apply the substitution to the two compounds +
union(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ S>, P>} |- (S|P)> +
update(Task, TruthValue) - +Static method in class nars.inference.BudgetFunctions +
Update a belief +
update(Task, Judgment) - +Static method in class nars.inference.MatchingRules +
Belief update +
UtilityFunctions - Class in nars.inference
Common functions on real numbers, mostly in [0,1].
UtilityFunctions() - +Constructor for class nars.inference.UtilityFunctions +
  +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-22.html b/nars-dist/javadoc/index-files/index-22.html new file mode 100644 index 00000000..804a9a43 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-22.html @@ -0,0 +1,191 @@ + + + + + + + +V-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+V

+
+
value - +Variable in class nars.entity.ShortFloat +
To save space, the values are stored as short integers (-32768 to 32767, only 0 to 10000 used), + but used as float +
value() - +Method in class nars.gui.ParameterWindow +
Get the value of the parameter +
VALUE_SEPARATOR - +Static variable in class nars.io.Symbols +
  +
valueBar - +Variable in class nars.gui.BagWindow +
Adjustable display level +
valueBar - +Variable in class nars.gui.ParameterWindow +
Adjusting bar +
valueLabel - +Variable in class nars.gui.BagWindow +
Display label +
valueLabel - +Variable in class nars.gui.ParameterWindow +
Display label +
valueOf(String) - +Static method in enum nars.inference.TemporalRules.Relation +
Returns the enum constant of this type with the specified name. +
valueOf(String) - +Static method in enum nars.language.Variable.VarType +
Returns the enum constant of this type with the specified name. +
values() - +Static method in enum nars.inference.TemporalRules.Relation +
Returns an array containing the constants of this enum type, in +the order they are declared. +
values() - +Static method in enum nars.language.Variable.VarType +
Returns an array containing the constants of this enum type, in +the order they are declared. +
Variable - Class in nars.language
A variable term, which does not correspond to a concept
Variable(String) - +Constructor for class nars.language.Variable +
Constructor, from a given variable name +
Variable(String, Variable.VarType, CompoundTerm) - +Constructor for class nars.language.Variable +
Constructor, with all fields +
Variable.VarType - Enum in nars.language
Four variable types plus a wild card
Variable.VarType() - +Constructor for enum nars.language.Variable.VarType +
  +
VARIABLE_TAG - +Static variable in class nars.io.Symbols +
  +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-23.html b/nars-dist/javadoc/index-files/index-23.html new file mode 100644 index 00000000..a4e954ab --- /dev/null +++ b/nars-dist/javadoc/index-files/index-23.html @@ -0,0 +1,161 @@ + + + + + + + +W-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+W

+
+
w2c(float) - +Static method in class nars.inference.UtilityFunctions +
A function to convert weight to confidence +
walkButton - +Variable in class nars.gui.MainWindow +
Control buttons +
WEBSITE - +Static variable in class nars.main.NARS +
The project websites. +
window - +Variable in class nars.entity.Concept +
The display window +
window - +Static variable in class nars.io.Record +
the display window +
window - +Variable in class nars.storage.Bag +
display window +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-3.html b/nars-dist/javadoc/index-files/index-3.html new file mode 100644 index 00000000..8841c2c4 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-3.html @@ -0,0 +1,510 @@ + + + + + + + +C-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+C

+
+
calcComplexity() - +Method in class nars.language.CompoundTerm +
The complexity of the term is the sum of those of the components plus 1 +
call(Task) - +Method in class nars.operation.Operator +
Execute an operation, then handle feedback +
capacity - +Variable in class nars.storage.Bag +
defined in different bags +
capacity() - +Method in class nars.storage.Bag +
To get the capacity of the concrete subclass +
capacity() - +Method in class nars.storage.ConceptBag +
Get the (constant) capacity of ConceptBag +
capacity - +Variable in class nars.storage.Distributor +
Capacity of the array +
capacity() - +Method in class nars.storage.TaskBuffer +
Get the (constant) capacity of TaskBuffer +
capacity() - +Method in class nars.storage.TaskLinkBag +
Get the (constant) capacity of TaskLinkBag +
capacity() - +Method in class nars.storage.TermLinkBag +
Get the (constant) capacity of TermLinkBag +
Center - Class in nars.main
The control center of the system.
Center() - +Constructor for class nars.main.Center +
  +
checkRevisibility() - +Method in class nars.entity.Concept +
Judgments with dependent variable cannot be revised +
clear() - +Method in class nars.gui.InferenceWindow +
Clear display +
clearButton - +Variable in class nars.gui.InputWindow +
Control buttons +
clock - +Static variable in class nars.main.Center +
System clock, relatively defined to guaranttee the repeatability of behaviors +
clone() - +Method in class nars.entity.BudgetValue +
Cloning method +
clone() - +Method in class nars.entity.Sentence +
Clone the Sentence +
clone() - +Method in class nars.language.CompoundTerm +
Abstract clone method +
clone() - +Method in class nars.language.Conjunction +
Clone an object +
clone() - +Method in class nars.language.ConjunctionParallel +
Clone an object +
clone() - +Method in class nars.language.ConjunctionSequence +
Clone an object +
clone() - +Method in class nars.language.DifferenceExt +
Clone an object +
clone() - +Method in class nars.language.DifferenceInt +
Clone an object +
clone() - +Method in class nars.language.Disjunction +
Clone an object +
clone() - +Method in class nars.language.Equivalence +
Clone an object +
clone() - +Method in class nars.language.EquivalenceAfter +
Clone an object +
clone() - +Method in class nars.language.EquivalenceWhen +
Clone an object +
clone() - +Method in class nars.language.ImageExt +
Clone an object +
clone() - +Method in class nars.language.ImageInt +
Clone an object +
clone() - +Method in class nars.language.Implication +
Clone an object +
clone() - +Method in class nars.language.ImplicationAfter +
Clone an object +
clone() - +Method in class nars.language.ImplicationBefore +
Clone an object +
clone() - +Method in class nars.language.ImplicationWhen +
Clone an object +
clone() - +Method in class nars.language.Inheritance +
Clone an object +
clone() - +Method in class nars.language.IntersectionExt +
Clone an object +
clone() - +Method in class nars.language.IntersectionInt +
Clone an object +
clone() - +Method in class nars.language.Negation +
Clone an object +
clone() - +Method in class nars.language.Product +
Clone a Product +
clone() - +Method in class nars.language.SetExt +
Clone a SetExt +
clone() - +Method in class nars.language.SetInt +
Clone a SetInt +
clone() - +Method in class nars.language.Similarity +
Clone an object +
clone() - +Method in class nars.language.Term +
Make a new Term with the same name. +
clone() - +Method in class nars.language.Variable +
Clone a Variable +
cloneComponents() - +Method in class nars.language.CompoundTerm +
Clone the component list +
cloneContent() - +Method in class nars.entity.Sentence +
Clone the content of the sentence +
cloneList(ArrayList) - +Static method in class nars.language.CompoundTerm +
Deep clone an array list of terms +
closeButton - +Variable in class nars.gui.BagWindow +
Control buttons +
closeButton - +Variable in class nars.gui.ConceptWindow +
Control buttons +
closeButton - +Variable in class nars.gui.InputWindow +
Control buttons +
closeLoadFile() - +Method in class nars.io.ExperienceIO +
Close an input experience file +
closeLogFile() - +Static method in class nars.io.Record +
Close the log file +
closeSaveFile() - +Method in class nars.io.ExperienceIO +
Close an output experience file +
compareTo(Term) - +Method in class nars.language.Term +
Check the relative order of two Terms. +
comparison(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ S>, P>} |- P> +
complexity - +Variable in class nars.language.CompoundTerm +
syntactic complexity of the compound, the sum of those of its components plus 1 +
COMPONENT - +Static variable in class nars.entity.TermLink +
At (&&, A, C), point to C +
COMPONENT_CONDITION - +Static variable in class nars.entity.TermLink +
At <(&&, C, B) ==> A>, point to C +
COMPONENT_STATEMENT - +Static variable in class nars.entity.TermLink +
At A>, point to C +
componentAndStatement(CompoundTerm, short, Statement, short) - +Static method in class nars.inference.RuleTables +
Inference between a component term (of the current term) and a statement +
componentAt(int) - +Method in class nars.language.CompoundTerm +
get a component by index +
components - +Variable in class nars.language.CompoundTerm +
list of (direct) components +
composeCompound(Sentence, Judgment, int) - +Static method in class nars.inference.CompositionalRules +
{ M>,

M>} |- {<(S|P) ==> M>, <(S&P) ==> M>, <(S-P) ==> M>, <(P-S) ==> M>} +

CompositionalRules - Class in nars.inference
Compound term composition and decomposition rules, with two premises.
CompositionalRules() - +Constructor for class nars.inference.CompositionalRules +
  +
COMPOUND - +Static variable in class nars.entity.TermLink +
At C, point to (&&, A, C) +
COMPOUND_CONDITION - +Static variable in class nars.entity.TermLink +
At C, point to <(&&, C, B) ==> A> +
COMPOUND_STATEMENT - +Static variable in class nars.entity.TermLink +
At C, point to A> +
COMPOUND_TERM_CLOSER - +Static variable in class nars.io.Symbols +
  +
COMPOUND_TERM_OPENER - +Static variable in class nars.io.Symbols +
  +
compoundAndCompound(CompoundTerm, CompoundTerm) - +Static method in class nars.inference.RuleTables +
Inference between two compound terms +
compoundAndSelf(CompoundTerm, Term, boolean) - +Static method in class nars.inference.RuleTables +
Inference between a compound term and a component of it +
compoundAndStatement(CompoundTerm, short, Statement, short, Term) - +Static method in class nars.inference.RuleTables +
Inference between a compound term and a statement +
compoundBackward(Term) - +Static method in class nars.inference.BudgetFunctions +
Backward inference with CompoundTerm conclusion, stronger case +
compoundBackwardWeak(Term) - +Static method in class nars.inference.BudgetFunctions +
Backward inference with CompoundTerm conclusion, weaker case +
compoundForward(TruthValue, Term) - +Static method in class nars.inference.BudgetFunctions +
Forward inference with CompoundTerm conclusion +
CompoundTerm - Class in nars.language
A CompoundTerm is a Term with internal (syntactic) structure
CompoundTerm() - +Constructor for class nars.language.CompoundTerm +
Default constructor +
CompoundTerm(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.CompoundTerm +
Constructor called from subclasses constructors to clone the fields +
CompoundTerm(String, ArrayList<Term>) - +Constructor for class nars.language.CompoundTerm +
Constructor called from subclasses constructors to initialize the fields +
Concept - Class in nars.entity
A concept contains information associated with a term, including directly + and indirectly related tasks and beliefs.
Concept(Term) - +Constructor for class nars.entity.Concept +
Constructor, called in Memory.getConcept only +
concept - +Variable in class nars.gui.ConceptWindow +
The concept to be displayed +
CONCEPT_BAG_SIZE - +Static variable in class nars.main.Parameters +
Size of ConceptBag +
CONCEPT_FORGETTING_CYCLE - +Static variable in class nars.main.Parameters +
Concept decay rate in ConceptBag, in [1, 99]. +
ConceptBag - Class in nars.storage
Contains Concepts.
ConceptBag() - +Constructor for class nars.storage.ConceptBag +
  +
concepts - +Static variable in class nars.main.Memory +
Concept bag. +
conceptsStartPlay(String) - +Static method in class nars.main.Memory +
Display active concepts, called from MainWindow. +
conceptWin - +Static variable in class nars.gui.MainWindow +
Window to accept a Term to be looked into +
ConceptWindow - Class in nars.gui
Window displaying the content of a Concept, such as beliefs, goals, and questions
ConceptWindow(Concept) - +Constructor for class nars.gui.ConceptWindow +
Constructor +
conditionalAbd(Term, Term, Statement, Statement) - +Static method in class nars.inference.SyllogisticRules +
{<(&&, S2, S3) ==> P>, <(&&, S1, S3) ==> P>} |- S2> +
conditionalDedInd(Implication, short, Term, int) - +Static method in class nars.inference.SyllogisticRules +
{<(&&, S1, S2, S3) ==> P>, S1} |- <(&&, S2, S3) ==> P> + {<(&&, S2, S3) ==> P>, S2>} |- <(&&, S1, S3) ==> P> + {<(&&, S1, S3) ==> P>, S2>} |- <(&&, S2, S3) ==> P> +
conditionalDedIndWithVar(Implication, short, Statement, short) - +Static method in class nars.inference.RuleTables +
Conditional deduction or induction, with variable unification +
confidence - +Variable in class nars.entity.TruthValue +
The confidence factor of the truth value +
Conjunction - Class in nars.language
Conjunction of statements
Conjunction(String, ArrayList<Term>) - +Constructor for class nars.language.Conjunction +
Constructor with partial values, called by make +
Conjunction(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.Conjunction +
Constructor with full values, called by clone +
CONJUNCTION_OPERATOR - +Static variable in class nars.io.Symbols +
  +
ConjunctionParallel - Class in nars.language
A parallel conjunction of Statements.
ConjunctionParallel(String, ArrayList<Term>) - +Constructor for class nars.language.ConjunctionParallel +
Constructor with partial values, called by make +
ConjunctionParallel(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.ConjunctionParallel +
Constructor with full values, called by clone +
ConjunctionSequence - Class in nars.language
A sequential conjunction of Statements.
ConjunctionSequence(String, ArrayList<Term>) - +Constructor for class nars.language.ConjunctionSequence +
constructor with partial values, called by make +
ConjunctionSequence(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.ConjunctionSequence +
Constructor with full values, called by clone +
containAllComponents(Term) - +Method in class nars.language.CompoundTerm +
Check whether the compound contains all components of another term, or that term as a whole +
containComponent(Term) - +Method in class nars.language.CompoundTerm +
Check whether the compound contains a certain component +
contains(Type) - +Method in class nars.storage.Bag +
Check if an item is in the bag +
content - +Variable in class nars.entity.Sentence +
The content of a Sentence is a Term +
continuedProcess(Task, Term) - +Static method in class nars.main.Memory +
Link to a new task from all relevant concepts for continued processing in + the near future for unspecified time. +
contraposition(Statement) - +Static method in class nars.inference.StructuralRules +
{ B>, A@(--, A)} |- <(--, B) ==> (--, A)> +
contraposition(TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ B>} |- <(--, B) ==> (--, A)> +
conversion() - +Static method in class nars.inference.MatchingRules +
{

S>} |- P> + Produce an Inheritance/Implication from a reversed Inheritance/Implication +

conversion(TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ B>} |- A> +
convertedJudgment(TruthValue, BudgetValue) - +Static method in class nars.main.Memory +
Convert jusgment into different relation +
convertRelation() - +Static method in class nars.inference.MatchingRules +
{ P>} |- P> + { P>} |- P> + Switch between Inheritance/Implication and Similarity/Equivalence +
counter - +Static variable in class nars.gui.BagWindow +
The location of the display area, shifted according to the number of windows openned +
current - +Static variable in class nars.entity.Stamp +
serial number, for the whole system +
currentBelief - +Static variable in class nars.main.Memory +
Shortcut to the selected belief +
currentBeliefLink - +Static variable in class nars.main.Memory +
Shortcut to the selected TermLink +
currentCounter - +Variable in class nars.storage.Bag +
maximum number of items to be taken out at current level +
currentLevel - +Variable in class nars.storage.Bag +
current take out level +
currentStamp - +Static variable in class nars.main.Memory +
Shortcut to the derived Stamp +
currentTask - +Static variable in class nars.main.Memory +
Shortcut to the selected Task +
currentTaskLink - +Static variable in class nars.main.Memory +
Shortcut to the selected TaskLink +
currentTense - +Static variable in class nars.main.Memory +
Shortcut to the derived tense +
currentTerm - +Static variable in class nars.main.Memory +
Shortcut to the selected Term +
currentValue - +Variable in class nars.gui.ParameterWindow +
parameter values +
cycle() - +Static method in class nars.main.Memory +
An atomic working cycle of the system: process new Tasks, then fire a concept +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-4.html b/nars-dist/javadoc/index-files/index-4.html new file mode 100644 index 00000000..4c6da055 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-4.html @@ -0,0 +1,283 @@ + + + + + + + +D-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+D

+
+
decDurability(float) - +Method in class nars.entity.BudgetValue +
Decrease durability value by a percentage of the remaining range +
DECISION_THRESHOLD - +Static variable in class nars.main.Parameters +
The desireability threthold for an operation to be executed. +
decomposeCompound(CompoundTerm, Term, Term, int, boolean) - +Static method in class nars.inference.CompositionalRules +
{<(S|P) ==> M>,

M>} |- M> +

decomposeStatement(CompoundTerm, Term, boolean) - +Static method in class nars.inference.CompositionalRules +
{(||, S, P), P} |- S + {(&&, S, P), P} |- S +
decPriority(float) - +Method in class nars.entity.BudgetValue +
Decrease priority value by a percentage of the remaining range +
decQuality(float) - +Method in class nars.entity.BudgetValue +
Decrease quality value by a percentage of the remaining range +
dedExe(Term, Term, Sentence, Judgment) - +Static method in class nars.inference.SyllogisticRules +
{ M>, P>} |- { P>,

S>} +

deduction(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ M>, P>} |- P> +
DEFAULT_GOAL_DURABILITY - +Static variable in class nars.main.Parameters +
Default durability of input goal +
DEFAULT_GOAL_PRIORITY - +Static variable in class nars.main.Parameters +
Default priority of input goal +
DEFAULT_JUDGMENT_CONFIDENCE - +Static variable in class nars.main.Parameters +
Default confidence of input judgment. +
DEFAULT_JUDGMENT_DURABILITY - +Static variable in class nars.main.Parameters +
Default durability of input judgment +
DEFAULT_JUDGMENT_PRIORITY - +Static variable in class nars.main.Parameters +
Default priority of input judgment +
DEFAULT_QUESTION_DURABILITY - +Static variable in class nars.main.Parameters +
Default durability of input question +
DEFAULT_QUESTION_PRIORITY - +Static variable in class nars.main.Parameters +
Default priority of input question +
defaultButton - +Variable in class nars.gui.ParameterWindow +
Control buttons +
defaultValue - +Variable in class nars.gui.ParameterWindow +
parameter values +
DELIMITER - +Static variable in class nars.entity.TruthValue +
The charactor that marks the two ends of a truth value +
derivedTask(Task) - +Static method in class nars.main.Memory +
Derived task comes from the inference rules. +
desireDed(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
A function specially designed for desire value [To be refined] +
desireInd(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
A function specially designed for desire value [To be refined] +
desireStrong(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
A function specially designed for desire value [To be refined] +
desireWeak(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
A function specially designed for desire value [To be refined] +
detachment(Sentence, Sentence, int) - +Static method in class nars.inference.SyllogisticRules +
{< S> ==> P>>, S>} |- P> + {< S> ==> P>>, P>} |- S> +
detachmentWithVar(Sentence, Sentence, int) - +Static method in class nars.inference.RuleTables +
The detachment rule, with variable unification +
difference(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ S>, P>} |- (S-P)> +
DIFFERENCE_EXT_OPERATOR - +Static variable in class nars.io.Symbols +
  +
DIFFERENCE_INT_OPERATOR - +Static variable in class nars.io.Symbols +
  +
DifferenceExt - Class in nars.language
A compound term whose extension is the difference of the extensions of its components
DifferenceExt(String, ArrayList<Term>) - +Constructor for class nars.language.DifferenceExt +
Constructor with partial values, called by make +
DifferenceExt(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.DifferenceExt +
Constructor with full values, called by clone +
DifferenceInt - Class in nars.language
A compound term whose extension is the difference of the intensions of its components
DifferenceInt(String, ArrayList<Term>) - +Constructor for class nars.language.DifferenceInt +
Constructor with partial values, called by make +
DifferenceInt(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.DifferenceInt +
Constructor with full values, called by clone +
directBeliefs - +Variable in class nars.entity.Concept +
Judgments directly made about the term +
directGoals - +Variable in class nars.entity.Concept +
Goals directly requested on the term +
directProcess(Task) - +Method in class nars.entity.Concept +
Directly process a new task. +
directQuestion - +Variable in class nars.entity.Concept +
Question directly asked about the term +
Disjunction - Class in nars.language
A disjunction of Statements.
Disjunction(String, ArrayList<Term>) - +Constructor for class nars.language.Disjunction +
Constructor with partial values, called by make +
Disjunction(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.Disjunction +
Constructor with full values, called by clone +
DISJUNCTION_OPERATOR - +Static variable in class nars.io.Symbols +
  +
DISPLAY_BACKGROUND_COLOR - +Static variable in class nars.gui.NarsFrame +
Color for the background of the text components that are read-only +
displayContent() - +Method in class nars.entity.Concept +
Collect direct belief, questions, and goals for display +
distributeAmongLinks(BudgetValue, int) - +Static method in class nars.inference.BudgetFunctions +
Distribute the budget of a task among the links to it +
DISTRIBUTOR - +Static variable in class nars.storage.Bag +
shared distributor that produce the probability distribution +
Distributor - Class in nars.storage
A pseudo-random number generator, used in Bag.
Distributor(int) - +Constructor for class nars.storage.Distributor +
For any number N < range, there is N+1 copies of it in the array, distributed as evenly as possible +
doublePremiseTask(BudgetValue, Term, TruthValue) - +Static method in class nars.main.Memory +
Shared final operations by all double-premise rules, called from the rules except StructuralRules +
durability - +Variable in class nars.entity.BudgetValue +
The percent of priority to be kept in a constant period +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-5.html b/nars-dist/javadoc/index-files/index-5.html new file mode 100644 index 00000000..b3f1ee2d --- /dev/null +++ b/nars-dist/javadoc/index-files/index-5.html @@ -0,0 +1,230 @@ + + + + + + + +E-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+E

+
+
emptyLevel(int) - +Method in class nars.storage.Bag +
Check whether a level is empty +
equals(Object) - +Method in class nars.entity.ShortFloat +
Compare two ShortFloat values +
equals(Object) - +Method in class nars.entity.Stamp +
Check if two stamps contains the same set of numbers +
equals(Object) - +Method in class nars.entity.TruthValue +
Compare two truth values +
equals(Object) - +Method in class nars.language.Term +
Equal terms have identical name, though not necessarily the same reference. +
equals(Object) - +Method in class nars.language.Variable +
Whether this variable equals another one +
Equivalence - Class in nars.language
A Statement about an Equivalence relation.
Equivalence(String, ArrayList<Term>) - +Constructor for class nars.language.Equivalence +
Constructor with partial values, called by make +
Equivalence(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.Equivalence +
Constructor with full values, called by clone +
EQUIVALENCE_AFTER_RELATION - +Static variable in class nars.io.Symbols +
  +
EQUIVALENCE_RELATION - +Static variable in class nars.io.Symbols +
  +
EQUIVALENCE_WHEN_RELATION - +Static variable in class nars.io.Symbols +
  +
EquivalenceAfter - Class in nars.language
Temporal Implication relation, predicate after subject.
EquivalenceAfter(String, ArrayList<Term>) - +Constructor for class nars.language.EquivalenceAfter +
constructor with partial values, called by make +
EquivalenceAfter(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.EquivalenceAfter +
Constructor with full values, called by clone +
EquivalenceWhen - Class in nars.language
Temporal Equivalence relation, concurrent.
EquivalenceWhen(String, ArrayList<Term>) - +Constructor for class nars.language.EquivalenceWhen +
Constructor with partial values, called by make +
EquivalenceWhen(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.EquivalenceWhen +
Constructor with full values, called by clone +
equivalentTo(Judgment) - +Method in class nars.entity.Judgment +
Check whether the judgment is equivalent to another one +
event - +Variable in class nars.entity.Concept +
Whether the term specifies an event [to be refined] +
eventProcessing(Task) - +Static method in class nars.inference.TemporalRules +
Simple temporal regularity discovery [To be refined] +
execute(Task) - +Method in class nars.operation.Break +
  +
execute(Task) - +Method in class nars.operation.GoTo +
  +
execute(Task) - +Method in class nars.operation.Open +
  +
execute(Task) - +Method in class nars.operation.Operator +
Required method for every operation, specifying the operation +
execute(Task) - +Method in class nars.operation.Pick +
  +
executedTask(Task) - +Static method in class nars.main.Memory +
Reporting executed task, and remember the event +
exemplification(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ S>,

M>} |- P> +

existAnalogy(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P> +
exitButton - +Variable in class nars.gui.MainWindow +
Control buttons +
ExperienceIO - Class in nars.io
To read and write experience as Task streams
ExperienceIO() - +Constructor for class nars.io.ExperienceIO +
Default constructor +
experienceIO - +Static variable in class nars.main.Center +
The unique input channel +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-6.html b/nars-dist/javadoc/index-files/index-6.html new file mode 100644 index 00000000..db17aac8 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-6.html @@ -0,0 +1,189 @@ + + + + + + + +F-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+F

+
+
findSubstitute(Variable.VarType, Term, Term) - +Static method in class nars.language.Variable +
To find a substitution that can unify two Terms without changing them +
findSubstitute(Variable.VarType, Term, Term, HashMap<String, Term>) - +Static method in class nars.language.Variable +
To recursively find a substitution that can unify two Terms without changing them +
findSubstituteVar(Variable.VarType, Variable, Term, HashMap<String, Term>, boolean) - +Static method in class nars.language.Variable +
To find a substitution that can unify a Vriable and a Term +
fire() - +Method in class nars.entity.Concept +
An atomic step in a concept, only called in Memory.processConcept +
forget(BudgetValue, float, float) - +Static method in class nars.inference.BudgetFunctions +
Decrease Priority after an item is used, called in Bag +
forgetBW - +Static variable in class nars.gui.MainWindow +
Windows for run-time parameter adjustment +
forgetCW - +Static variable in class nars.gui.MainWindow +
Windows for run-time parameter adjustment +
forgetRate() - +Method in class nars.storage.Bag +
Get the item decay rate, which differs in difference subclass, and can be + changed in run time by the user, so not a constant. +
forgetRate() - +Method in class nars.storage.ConceptBag +
Get the (adjustable) forget rate of ConceptBag +
forgetRate() - +Method in class nars.storage.TaskBuffer +
Get the (constant) forget rate in TaskBuffer +
forgetRate() - +Method in class nars.storage.TaskLinkBag +
Get the (adjustable) forget rate of TaskLinkBag +
forgetRate() - +Method in class nars.storage.TermLinkBag +
Get the (adjustable) forget rate of TermLinkBag +
forgetTW - +Static variable in class nars.gui.MainWindow +
Windows for run-time parameter adjustment +
forward(TruthValue) - +Static method in class nars.inference.BudgetFunctions +
Forward inference result and adjustment +
frequency - +Variable in class nars.entity.TruthValue +
The frequency factor of the truth value +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-7.html b/nars-dist/javadoc/index-files/index-7.html new file mode 100644 index 00000000..7940d88e --- /dev/null +++ b/nars-dist/javadoc/index-files/index-7.html @@ -0,0 +1,338 @@ + + + + + + + +G-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+G

+
+
get(int) - +Method in class nars.entity.Stamp +
Get a number from the list by index, called in this class only +
get(String) - +Method in class nars.storage.Bag +
Get an Item by key +
getAppletInfo() - +Method in class nars.main.NARS +
Provide system information for the applet. +
getBelief(Task) - +Method in class nars.entity.Concept +
Select a belief to interact with the given task in inference +
getBestSolution() - +Method in class nars.entity.Sentence +
Get the best-so-far solution for a Question or Goal +
getBudget() - +Method in class nars.entity.Item +
Get current BudgetValue +
getBudgetString(StringBuffer) - +Static method in class nars.io.StringParser +
Return the prefex of a task string that contains a BudgetValue +
getComplexity() - +Method in class nars.language.CompoundTerm +
report the term's syntactic complexity +
getComplexity() - +Method in class nars.language.Term +
The syntactic complexity, for constant automic Term, is 1. +
getComponents() - +Method in class nars.language.CompoundTerm +
Get the component list +
getConcept(Term) - +Static method in class nars.main.Memory +
Get the Concept associated to a Term, or create it. +
getConfidence() - +Method in class nars.entity.TruthValue +
Get the confidence value +
getConstantName() - +Method in class nars.language.CompoundTerm +
skip all variable names to produce stable sorting order among components, not for display +
getConstantName() - +Method in class nars.language.Term +
Default, to be overrided in variable Terms. +
getConstantName() - +Method in class nars.language.Variable +
Variable name is omitted in sorting +
getContent() - +Method in class nars.entity.Sentence +
Get the content of the sentence +
getContent() - +Method in class nars.entity.Task +
Directly get the content of the sentence +
getDurability() - +Method in class nars.entity.BudgetValue +
Get durability value +
getExpDifAbs(TruthValue) - +Method in class nars.entity.TruthValue +
Calculate the absolute difference of the expectation value and that of a given truth value +
getExpectation() - +Method in class nars.entity.TruthValue +
Calculate the expectation value of the truth value +
getFrequency() - +Method in class nars.entity.TruthValue +
Get the frequency value +
getIndex(int) - +Method in class nars.entity.TermLink +
Get one index by level +
getIndices() - +Method in class nars.entity.TermLink +
Get all the indices +
getInput() - +Method in class nars.gui.InputWindow +
Get input lines, and send them to Memory +
getKey() - +Method in class nars.entity.Item +
Get the current key +
getLevel(Type) - +Method in class nars.storage.Bag +
Decide the put-in level according to priority +
getLine() - +Method in class nars.gui.InputWindow +
Get one input lines +
getName() - +Method in class nars.language.Term +
Reporting the name of the current Term. +
getName() - +Method in class nars.language.Variable +
Get variable name with dependency list (if any) +
getOpenVariables() - +Method in class nars.language.CompoundTerm +
get the OpenVariables list +
getPredicate() - +Method in class nars.language.Statement +
Return the second component of the statement +
getPriority() - +Method in class nars.entity.BudgetValue +
Get priority value +
getQuality() - +Method in class nars.entity.BudgetValue +
Get quality value +
getQuality() - +Method in class nars.entity.Concept +
Recalculate the quality of the concept [to be refined] +
getRecord() - +Method in class nars.entity.TaskLink +
Get the TermLink record +
getRelationIndex() - +Method in class nars.language.ImageExt +
get the index of the relation in the component list +
getRelationIndex() - +Method in class nars.language.ImageInt +
get the index of the relation in the component list +
getSentence() - +Method in class nars.entity.Task +
Get the sentence +
getShortValue() - +Method in class nars.entity.ShortFloat +
To access the value as short +
getStamp() - +Method in class nars.entity.Sentence +
Get the stamp of the sentence +
getStoredName() - +Method in class nars.language.Variable +
Get variable name without dependency list (if any) +
getSubject() - +Method in class nars.language.Statement +
Return the first component of the statement +
getTarget() - +Method in class nars.entity.TermLink +
Get the target of the link +
getTargetTask() - +Method in class nars.entity.TaskLink +
Get the target Task +
getTemporalOrder() - +Method in class nars.language.ConjunctionParallel +
The components are concurrent +
getTemporalOrder() - +Method in class nars.language.ConjunctionSequence +
The components are temporally sorted +
getTemporalOrder() - +Method in class nars.language.EquivalenceAfter +
Get the temporal order of the class +
getTemporalOrder() - +Method in class nars.language.EquivalenceWhen +
Get the temporal order of the class +
getTemporalOrder() - +Method in class nars.language.ImplicationAfter +
The relation is predictive +
getTemporalOrder() - +Method in class nars.language.ImplicationBefore +
The relation is retrospective +
getTemporalOrder() - +Method in class nars.language.ImplicationWhen +
The relation is concurrent +
getTemporalOrder() - +Method in class nars.language.Term +
Get the temporal order in a term, which is NONE by default +
getTense() - +Method in class nars.entity.Sentence +
Get the tense of the Sentence +
getTense() - +Method in class nars.entity.Task +
Directly get the tense of the sentence +
getTerm() - +Method in class nars.entity.Concept +
Return the assocated term, called from Memory only +
getTermLinkTemplates() - +Method in class nars.entity.Concept +
Return the templates for TermLinks, only called in Memory.continuedProcess +
getTruth() - +Method in class nars.entity.Sentence +
Get the truth value of the sentence +
getTruthString(StringBuffer) - +Static method in class nars.io.StringParser +
Return the postfix of a task string that contains a TruthValue +
getType() - +Method in class nars.entity.TermLink +
Get the link type +
getType() - +Method in class nars.language.Variable +
Get the type of the variable +
getValue() - +Method in class nars.entity.ShortFloat +
To access the value as float +
getVarName(boolean) - +Method in class nars.language.Variable +
Rename a variable temporally to distinguish it from variables in other Terms +
Goal - Class in nars.entity
A Goal is an event to be realized, and may conain query variables
Goal(Term, char, TruthValue, Stamp) - +Constructor for class nars.entity.Goal +
Constructor +
GOAL_MARK - +Static variable in class nars.io.Symbols +
  +
GoTo - Class in nars.operation
A class used in testing only.
GoTo(String) - +Constructor for class nars.operation.GoTo +
  +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-8.html b/nars-dist/javadoc/index-files/index-8.html new file mode 100644 index 00000000..da417685 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-8.html @@ -0,0 +1,170 @@ + + + + + + + +H-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+H

+
+
hashCode() - +Method in class nars.entity.ShortFloat +
The hash code of the ShortFloat +
hashCode() - +Method in class nars.entity.Stamp +
The hash code of Stamp +
hashCode() - +Method in class nars.entity.TruthValue +
The hash code of a TruthValue +
hashCode() - +Method in class nars.language.Term +
Produce a hash code for the term +
hashCode() - +Method in class nars.language.Variable +
Get a hash code for the variable +
hideButton - +Variable in class nars.gui.InferenceWindow +
Control buttons +
hideButton - +Variable in class nars.gui.ParameterWindow +
Control buttons +
hideButton - +Variable in class nars.gui.TermWindow +
Control buttons +
holdButton - +Variable in class nars.gui.InputWindow +
Control buttons +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index-files/index-9.html b/nars-dist/javadoc/index-files/index-9.html new file mode 100644 index 00000000..142217a3 --- /dev/null +++ b/nars-dist/javadoc/index-files/index-9.html @@ -0,0 +1,452 @@ + + + + + + + +I-Index (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+

+I

+
+
IMAGE_EXT_OPERATOR - +Static variable in class nars.io.Symbols +
  +
IMAGE_INT_OPERATOR - +Static variable in class nars.io.Symbols +
  +
IMAGE_PLACE_HOLDER - +Static variable in class nars.io.Symbols +
  +
ImageExt - Class in nars.language
An extension image.
ImageExt(String, ArrayList<Term>, short) - +Constructor for class nars.language.ImageExt +
Constructor with partial values, called by make +
ImageExt(String, ArrayList<Term>, ArrayList<Variable>, short, short) - +Constructor for class nars.language.ImageExt +
Constructor with full values, called by clone +
ImageInt - Class in nars.language
An intension image.
ImageInt(String, ArrayList<Term>, short) - +Constructor for class nars.language.ImageInt +
constructor with partial values, called by make +
ImageInt(String, ArrayList<Term>, ArrayList<Variable>, short, short) - +Constructor for class nars.language.ImageInt +
Constructor with full values, called by clone +
immediateProcess(Task) - +Static method in class nars.main.Memory +
Imediate processing of a new task, in constant time + Local processing, in one concept only +
Implication - Class in nars.language
A Statement about an Inheritance relation.
Implication(String, ArrayList<Term>) - +Constructor for class nars.language.Implication +
Constructor with partial values, called by make +
Implication(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.Implication +
Constructor with full values, called by clone +
IMPLICATION_AFTER_RELATION - +Static variable in class nars.io.Symbols +
  +
IMPLICATION_BEFORE_RELATION - +Static variable in class nars.io.Symbols +
  +
IMPLICATION_RELATION - +Static variable in class nars.io.Symbols +
  +
IMPLICATION_WHEN_RELATION - +Static variable in class nars.io.Symbols +
  +
ImplicationAfter - Class in nars.language
Temporal Implication relation, predicate after subject.
ImplicationAfter(String, ArrayList<Term>) - +Constructor for class nars.language.ImplicationAfter +
constructor with partial values, called by make +
ImplicationAfter(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.ImplicationAfter +
Constructor with full values, called by clone +
ImplicationBefore - Class in nars.language
Temporal Implication relation, predicate before subject.
ImplicationBefore(String, ArrayList<Term>) - +Constructor for class nars.language.ImplicationBefore +
Constructor with partial values, called by make +
ImplicationBefore(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.ImplicationBefore +
Constructor with full values, called by clone +
ImplicationWhen - Class in nars.language
Temporal Implication relation, concurrent.
ImplicationWhen(String, ArrayList<Term>) - +Constructor for class nars.language.ImplicationWhen +
Constructor with partial values, called by make +
ImplicationWhen(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.ImplicationWhen +
Constructor with full values, called by clone +
implied(TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ B>, B} |- A +
implying(TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ B>, A} |- B +
incDurability(float) - +Method in class nars.entity.BudgetValue +
Increase durability value by a percentage of the remaining range +
incPriority(float) - +Method in class nars.entity.BudgetValue +
Increase priority value by a percentage of the remaining range +
incQuality(float) - +Method in class nars.entity.BudgetValue +
Increase quality value by a percentage of the remaining range +
index - +Variable in class nars.entity.TermLink +
The index of the component in the component list of the compound, may have up to 4 levels +
indexToFigure(TermLink, TermLink) - +Static method in class nars.inference.RuleTables +
Decide the figure of syllogism according to the locations of the common + term in the premises +
induction(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ S>, P>} |- P> +
inExp - +Variable in class nars.io.ExperienceIO +
Input experience from a file +
InferenceWindow - Class in nars.gui
Window displying inference log
InferenceWindow() - +Constructor for class nars.gui.InferenceWindow +
Constructor +
inferToAsym(Judgment, Judgment, TemporalRules.Relation) - +Static method in class nars.inference.MatchingRules +
{ P>,

S>} |- P> + Produce an Inheritance/Implication from a Similarity/Equivalence and a reversed Inheritance/Implication +

inferToSym(Judgment, Judgment) - +Static method in class nars.inference.MatchingRules +
{ P>,

S} |- p> + Produce Similarity/Equivalence from a pair of reversed Inheritance/Implication +

INFO - +Static variable in class nars.main.NARS +
The information about the version and date of the project. +
Inheritance - Class in nars.language
A Statement about an Inheritance relation.
Inheritance(String, ArrayList<Term>) - +Constructor for class nars.language.Inheritance +
Constructor with partial values, called by make +
Inheritance(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.Inheritance +
Constructor with full values, called by clone +
INHERITANCE_RELATION - +Static variable in class nars.io.Symbols +
  +
init() - +Static method in class nars.entity.Stamp +
Initialize the stamp machenism of the system, called in Center +
init() - +Method in class nars.gui.InputWindow +
Initialize the window +
init() - +Method in class nars.gui.MainWindow +
Initialize the system for a new run +
init() - +Static method in class nars.io.Record +
Initialize the window and the file +
init() - +Static method in class nars.main.Memory +
Initialize a new memory by creating all members. +
init() - +Method in class nars.main.NARS +
Initialize the system at the control center. +
initTimer() - +Method in class nars.gui.MainWindow +
Reset timer and its display +
input - +Variable in class nars.entity.Sentence +
Whether it is an input sentence +
inputTask(Task) - +Static method in class nars.main.Memory +
Input task processing. +
inputText - +Variable in class nars.gui.InputWindow +
Input area +
InputWindow - Class in nars.gui
Input window, accepting user tasks
InputWindow() - +Constructor for class nars.gui.InputWindow +
Constructor +
inputWindow - +Static variable in class nars.gui.MainWindow +
Input experience window +
inputWindow - +Variable in class nars.io.ExperienceIO +
Input experience from a window +
insertTaskLink(TaskLink) - +Method in class nars.entity.Concept +
Insert a TaskLink into the TaskLink bag +
insertTermLink(TermLink) - +Method in class nars.entity.Concept +
Insert a TermLink into the TermLink bag +
Instance - Class in nars.language
A Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
Instance() - +Constructor for class nars.language.Instance +
  +
INSTANCE_PROPERTY_RELATION - +Static variable in class nars.io.Symbols +
  +
INSTANCE_RELATION - +Static variable in class nars.io.Symbols +
  +
InstanceProperty - Class in nars.language
A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
InstanceProperty() - +Constructor for class nars.language.InstanceProperty +
  +
intersection(TruthValue, TruthValue) - +Static method in class nars.inference.TruthFunctions +
{ S>, P>} |- (S&P)> +
INTERSECTION_EXT_OPERATOR - +Static variable in class nars.io.Symbols +
  +
INTERSECTION_INT_OPERATOR - +Static variable in class nars.io.Symbols +
  +
IntersectionExt - Class in nars.language
A compound term whose extension is the intersection of the extensions of its components
IntersectionExt(String, ArrayList<Term>) - +Constructor for class nars.language.IntersectionExt +
Constructor with partial values, called by make +
IntersectionExt(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.IntersectionExt +
Constructor with full values, called by clone +
IntersectionInt - Class in nars.language
A compound term whose intension is the intersection of the extensions of its components
IntersectionInt(String, ArrayList<Term>) - +Constructor for class nars.language.IntersectionInt +
Constructor with partial values, called by make +
IntersectionInt(String, ArrayList<Term>, ArrayList<Variable>, short) - +Constructor for class nars.language.IntersectionInt +
Constructor with full values, called by clone +
intoBase(Type) - +Method in class nars.storage.Bag +
Insert an item into the itemTable, and return the overflow +
introVarDep(Statement, Statement, int) - +Static method in class nars.inference.CompositionalRules +
{ S>, P>} |- (&&, <#x() --> S>, <#x() --> P>> +
introVarDepInner(CompoundTerm, Term, Term) - +Static method in class nars.inference.CompositionalRules +
Introduce a dependent variable in an inner-layer conjunction +
introVarDepOuter(Statement, Statement, int) - +Static method in class nars.inference.CompositionalRules +
Introduce a dependent variable in an outer-layer conjunction +
introVarInd(Sentence, Sentence, int, boolean) - +Static method in class nars.inference.SyllogisticRules +
{ S>, P>} |- <<#x --> S> ==> <#x --> P>> + { S>, P>} |- <<#x --> S> <=> <#x --> P>> +
introVarIndInner(Statement, Statement, CompoundTerm) - +Static method in class nars.inference.SyllogisticRules +
{ S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> + { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>) +
invalidStatement(Term, Term) - +Static method in class nars.language.Statement +
Check the validity of a potential Statement. +
ioText - +Variable in class nars.gui.MainWindow +
Experience display area +
isBuiltInOperator(String) - +Static method in class nars.language.CompoundTerm +
Check built-in operator name +
isCloser(String, int) - +Static method in class nars.io.StringParser +
Check CompoundTerm closer symbol +
isCommutative() - +Method in class nars.language.CompoundTerm +
Check if the order of the components matters +
isCommutative() - +Method in class nars.language.Conjunction +
Check if the compound is communitative. +
isCommutative() - +Method in class nars.language.ConjunctionSequence +
Check if the compound is communitative. +
isCommutative() - +Method in class nars.language.Disjunction +
Disjunction is communitative. +
isCommutative() - +Method in class nars.language.Equivalence +
Check if the compound is communitative. +
isCommutative() - +Method in class nars.language.EquivalenceAfter +
Check if the compound is communitative. +
isCommutative() - +Method in class nars.language.IntersectionExt +
Check if the compound is communitative. +
isCommutative() - +Method in class nars.language.IntersectionInt +
Check if the compound is communitative. +
isCommutative() - +Method in class nars.language.SetExt +
Check if the compound is communitative. +
isCommutative() - +Method in class nars.language.SetInt +
Check if the compound is communitative. +
isCommutative() - +Method in class nars.language.Similarity +
Check if the compound is communitative. +
isConstant() - +Method in class nars.language.CompoundTerm +
check if the term contains free variable +
isConstant() - +Method in class nars.language.Term +
Check whether the current Term can name a Concept. +
isConstant() - +Method in class nars.language.Variable +
A variable is constant +
isEvent() - +Method in class nars.entity.Concept +
Distinguish events from non-events +
isInput() - +Method in class nars.entity.Sentence +
Check input sentence +
isJudgment() - +Method in class nars.entity.Sentence +
Distinguish Judgment from Goal ("instanceof Judgment" doesn't work) +
isLogging() - +Static method in class nars.io.Record +
Check file logging +
isOpener(String, int) - +Static method in class nars.io.StringParser +
Check CompoundTerm opener symbol +
isOperator(String) - +Static method in class nars.language.CompoundTerm +
Check CompoundTerm operator symbol +
isRelation(String) - +Static method in class nars.language.Statement +
Check Statement relation symbol, called in StringPaser +
isReporting - +Static variable in class nars.io.Record +
whether to display +
isStandAlone() - +Static method in class nars.main.NARS +
Whether the project running as an application. +
isStructual() - +Method in class nars.entity.Task +
Check if a Task is derived by a StructuralRule +
isUpdate(Judgment, Judgment) - +Method in class nars.entity.Concept +
Distinguish update from revision [to be refined] +
Item - Class in nars.entity
An item is an object that can be put into a Bag, + to participate in the resource competation of the system.
Item() - +Constructor for class nars.entity.Item +
Default constructor +
Item(BudgetValue) - +Constructor for class nars.entity.Item +
Constructor with initial budget +
itemTable - +Variable in class nars.storage.Bag +
array of lists of items, for items on different level +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +A B C D E F G H I J K L M N O P Q R S T U V W
+ + + diff --git a/nars-dist/javadoc/index.html b/nars-dist/javadoc/index.html new file mode 100644 index 00000000..aeb863a0 --- /dev/null +++ b/nars-dist/javadoc/index.html @@ -0,0 +1,40 @@ + + + + + + + +NARS Document + + + + + + + + + + + +<H2> +Frame Alert</H2> + +<P> +This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. +<BR> +Link to<A HREF="overview-summary.html">Non-frame version.</A> + + + diff --git a/nars-dist/javadoc/nars/entity/BudgetValue.html b/nars-dist/javadoc/nars/entity/BudgetValue.html new file mode 100644 index 00000000..f3f1a5cb --- /dev/null +++ b/nars-dist/javadoc/nars/entity/BudgetValue.html @@ -0,0 +1,845 @@ + + + + + + + +BudgetValue (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class BudgetValue

+
+java.lang.Object
+  extended by nars.entity.BudgetValue
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
Direct Known Subclasses:
Item
+
+
+
+
public class BudgetValue
extends java.lang.Object
implements java.lang.Cloneable
+ + +

+A triple of priority (current), durability (decay), and quality (long-term average). +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+protected  ShortFloatdurability + +
+          The percent of priority to be kept in a constant period
+private static charMARK + +
+          The charactor that marks the two ends of a budget value
+protected  ShortFloatpriority + +
+          The relative share of time resource to be allocated
+protected  ShortFloatquality + +
+          The overall (context-independent) evaluation
+private static charSEPARATOR + +
+          The charactor that separates the factors in a budget value
+  + + + + + + + + + + + + + + + + +
+Constructor Summary
BudgetValue() + +
+          Default constructor
BudgetValue(BudgetValue v) + +
+          Cloning constructor
BudgetValue(float p, + float d, + float q) + +
+          Constructor with initialization
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ booleanaboveThreshold() + +
+          Whether the budget should get any processing at all
+ java.lang.Objectclone() + +
+          Cloning method
+ voiddecDurability(float v) + +
+          Decrease durability value by a percentage of the remaining range
+ voiddecPriority(float v) + +
+          Decrease priority value by a percentage of the remaining range
+ voiddecQuality(float v) + +
+          Decrease quality value by a percentage of the remaining range
+ floatgetDurability() + +
+          Get durability value
+ floatgetPriority() + +
+          Get priority value
+ floatgetQuality() + +
+          Get quality value
+ voidincDurability(float v) + +
+          Increase durability value by a percentage of the remaining range
+ voidincPriority(float v) + +
+          Increase priority value by a percentage of the remaining range
+ voidincQuality(float v) + +
+          Increase quality value by a percentage of the remaining range
+ voidmerge(BudgetValue that) + +
+          Merge one BudgetValue into another
+ voidsetDurability(float v) + +
+          Change durability value
+ voidsetPriority(float v) + +
+          Change priority value
+ voidsetQuality(float v) + +
+          Change quality value
+ floatsummary() + +
+          To summarize a BudgetValue into a single number in [0, 1]
+ java.lang.StringtoString() + +
+          Fully display the BudgetValue
+ java.lang.StringtoString2() + +
+          Briefly display the BudgetValue
+ + + + + + + +
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+MARK

+
+private static final char MARK
+
+
The charactor that marks the two ends of a budget value +

+

+
See Also:
Constant Field Values
+
+
+ +

+SEPARATOR

+
+private static final char SEPARATOR
+
+
The charactor that separates the factors in a budget value +

+

+
See Also:
Constant Field Values
+
+
+ +

+priority

+
+protected ShortFloat priority
+
+
The relative share of time resource to be allocated +

+

+
+
+
+ +

+durability

+
+protected ShortFloat durability
+
+
The percent of priority to be kept in a constant period +

+

+
+
+
+ +

+quality

+
+protected ShortFloat quality
+
+
The overall (context-independent) evaluation +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+BudgetValue

+
+public BudgetValue()
+
+
Default constructor +

+

+
+ +

+BudgetValue

+
+public BudgetValue(float p,
+                   float d,
+                   float q)
+
+
Constructor with initialization +

+

+
Parameters:
p - Initial priority
d - Initial durability
q - Initial quality
+
+
+ +

+BudgetValue

+
+public BudgetValue(BudgetValue v)
+
+
Cloning constructor +

+

+
Parameters:
v - Budget value to be cloned
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Cloning method +

+

+
Overrides:
clone in class java.lang.Object
+
+
+
+
+
+
+ +

+getPriority

+
+public float getPriority()
+
+
Get priority value +

+

+
+
+
+ +
Returns:
The current priority
+
+
+
+ +

+setPriority

+
+public void setPriority(float v)
+
+
Change priority value +

+

+
+
+
+
Parameters:
v - The new priority
+
+
+
+ +

+incPriority

+
+public void incPriority(float v)
+
+
Increase priority value by a percentage of the remaining range +

+

+
+
+
+
Parameters:
v - The increasing percent
+
+
+
+ +

+decPriority

+
+public void decPriority(float v)
+
+
Decrease priority value by a percentage of the remaining range +

+

+
+
+
+
Parameters:
v - The decreasing percent
+
+
+
+ +

+getDurability

+
+public float getDurability()
+
+
Get durability value +

+

+
+
+
+ +
Returns:
The current durability
+
+
+
+ +

+setDurability

+
+public void setDurability(float v)
+
+
Change durability value +

+

+
+
+
+
Parameters:
v - The new durability
+
+
+
+ +

+incDurability

+
+public void incDurability(float v)
+
+
Increase durability value by a percentage of the remaining range +

+

+
+
+
+
Parameters:
v - The increasing percent
+
+
+
+ +

+decDurability

+
+public void decDurability(float v)
+
+
Decrease durability value by a percentage of the remaining range +

+

+
+
+
+
Parameters:
v - The decreasing percent
+
+
+
+ +

+getQuality

+
+public float getQuality()
+
+
Get quality value +

+

+
+
+
+ +
Returns:
The current quality
+
+
+
+ +

+setQuality

+
+public void setQuality(float v)
+
+
Change quality value +

+

+
+
+
+
Parameters:
v - The new quality
+
+
+
+ +

+incQuality

+
+public void incQuality(float v)
+
+
Increase quality value by a percentage of the remaining range +

+

+
+
+
+
Parameters:
v - The increasing percent
+
+
+
+ +

+decQuality

+
+public void decQuality(float v)
+
+
Decrease quality value by a percentage of the remaining range +

+

+
+
+
+
Parameters:
v - The decreasing percent
+
+
+
+ +

+merge

+
+public void merge(BudgetValue that)
+
+
Merge one BudgetValue into another +

+

+
+
+
+
Parameters:
that - The other Budget
+
+
+
+ +

+summary

+
+public float summary()
+
+
To summarize a BudgetValue into a single number in [0, 1] +

+

+
+
+
+ +
Returns:
The summary value
+
+
+
+ +

+aboveThreshold

+
+public boolean aboveThreshold()
+
+
Whether the budget should get any processing at all +

+ to be revised to depend on how busy the system is +

+

+
+
+
+ +
Returns:
The decision on whether to process the Item
+
+
+
+ +

+toString

+
+public java.lang.String toString()
+
+
Fully display the BudgetValue +

+

+
Overrides:
toString in class java.lang.Object
+
+
+ +
Returns:
String representation of the value
+
+
+
+ +

+toString2

+
+public java.lang.String toString2()
+
+
Briefly display the BudgetValue +

+

+
+
+
+ +
Returns:
String representation of the value with 2-digit accuracy
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/Concept.html b/nars-dist/javadoc/nars/entity/Concept.html new file mode 100644 index 00000000..846c47d6 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/Concept.html @@ -0,0 +1,1075 @@ + + + + + + + +Concept (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class Concept

+
+java.lang.Object
+  extended by nars.entity.BudgetValue
+      extended by nars.entity.Item
+          extended by nars.entity.Concept
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
+
public final class Concept
extends Item
+ + +

+A concept contains information associated with a term, including directly + and indirectly related tasks and beliefs. +

+ To make sure the space will be released, the only allowed reference to a concept are + those in a ConceptBag. All other access go through the Term that names the concept. +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+private  java.util.ArrayList<Judgment>directBeliefs + +
+          Judgments directly made about the term
+private  java.util.ArrayList<Goal>directGoals + +
+          Goals directly requested on the term
+private  QuestiondirectQuestion + +
+          Question directly asked about the term
+private  booleanevent + +
+          Whether the term specifies an event [to be refined]
+private  booleanrevisible + +
+          Whether truth value of judgments can be revised
+private  booleanshowing + +
+          Whether the content of the concept is being displayed
+private  TaskLinkBagtaskLinks + +
+          Task links for indirect processing
+private  Termterm + +
+          The term is the unique ID of the concept
+private  TermLinkBagtermLinks + +
+          Term links between the term and its components and compounds
+private  java.util.ArrayList<TermLink>termLinkTemplates + +
+          Link templates of TermLink, only in concepts with CompoundTerm
+private  ConceptWindowwindow + +
+          The display window
+ + + + + + + +
Fields inherited from class nars.entity.Item
key
+ + + + + + + +
Fields inherited from class nars.entity.BudgetValue
durability, priority, quality
+  + + + + + + + + + + +
+Constructor Summary
Concept(Term tm) + +
+          Constructor, called in Memory.getConcept only
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+private  voidaddToTable(Judgment newJudgment, + java.util.ArrayList table, + int capacity) + +
+          Add a new belief or goal into the table + Sort the beliefs/goals by rank, and remove redundant or low rank one
+ voidbuildTermLinks(BudgetValue budget) + +
+          Recursively build TermLinks between a compound and its components
+private  voidcheckRevisibility() + +
+          Judgments with dependent variable cannot be revised
+ voiddirectProcess(Task task) + +
+          Directly process a new task.
+private  java.lang.StringdisplayContent() + +
+          Collect direct belief, questions, and goals for display
+ voidfire() + +
+          An atomic step in a concept, only called in Memory.processConcept
+ JudgmentgetBelief(Task task) + +
+          Select a belief to interact with the given task in inference
+ floatgetQuality() + +
+          Recalculate the quality of the concept [to be refined]
+ TermgetTerm() + +
+          Return the assocated term, called from Memory only
+ java.util.ArrayList<TermLink>getTermLinkTemplates() + +
+          Return the templates for TermLinks, only called in Memory.continuedProcess
+ voidinsertTaskLink(TaskLink taskLink) + +
+          Insert a TaskLink into the TaskLink bag
+ voidinsertTermLink(TermLink termLink) + +
+          Insert a TermLink into the TermLink bag
+ booleanisEvent() + +
+          Distinguish events from non-events
+private  booleanisUpdate(Judgment newBelief, + Judgment oldBelief) + +
+          Distinguish update from revision [to be refined]
+private  voidmarkEventComponents() + +
+          Terms in temporal compounds is event
+ voidplay() + +
+          Resume display, called from ConceptWindow only
+private  voidprocessGoal(Goal goal, + Task task) + +
+          Direct processing a new goal
+private  voidprocessJudgment(Judgment judg, + Task task) + +
+          To accept a new judgment as belief, and check for revisions and solutions
+private  voidprocessQuestion(Question ques, + Task task) + +
+          To answer a question by existing beliefs
+private  booleanreviseTable(Judgment newSentence, + Task task, + java.util.ArrayList table) + +
+          Revise existing beliefs or goals
+ voidsetEvent() + +
+          Mark the concept as an event
+ voidstartPlay() + +
+          Start displaying contents and links, called from ConceptWindow only
+ voidstop() + +
+          Stop display, called from ConceptWindow only
+ java.lang.StringtoString() + +
+          Return a string representation of the concept, called in ConceptBag only
+ + + + + + + +
Methods inherited from class nars.entity.Item
getBudget, getKey
+ + + + + + + +
Methods inherited from class nars.entity.BudgetValue
aboveThreshold, clone, decDurability, decPriority, decQuality, getDurability, getPriority, incDurability, incPriority, incQuality, merge, setDurability, setPriority, setQuality, summary, toString2
+ + + + + + + +
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+term

+
+private Term term
+
+
The term is the unique ID of the concept +

+

+
+
+
+ +

+directQuestion

+
+private Question directQuestion
+
+
Question directly asked about the term +

+

+
+
+
+ +

+directGoals

+
+private java.util.ArrayList<Goal> directGoals
+
+
Goals directly requested on the term +

+

+
+
+
+ +

+directBeliefs

+
+private java.util.ArrayList<Judgment> directBeliefs
+
+
Judgments directly made about the term +

+

+
+
+
+ +

+revisible

+
+private boolean revisible
+
+
Whether truth value of judgments can be revised +

+

+
+
+
+ +

+taskLinks

+
+private TaskLinkBag taskLinks
+
+
Task links for indirect processing +

+

+
+
+
+ +

+termLinks

+
+private TermLinkBag termLinks
+
+
Term links between the term and its components and compounds +

+

+
+
+
+ +

+termLinkTemplates

+
+private java.util.ArrayList<TermLink> termLinkTemplates
+
+
Link templates of TermLink, only in concepts with CompoundTerm +

+

+
+
+
+ +

+event

+
+private boolean event
+
+
Whether the term specifies an event [to be refined] +

+

+
+
+
+ +

+showing

+
+private boolean showing
+
+
Whether the content of the concept is being displayed +

+

+
+
+
+ +

+window

+
+private ConceptWindow window
+
+
The display window +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Concept

+
+public Concept(Term tm)
+
+
Constructor, called in Memory.getConcept only +

+

+
Parameters:
tm - A term corresponding to the concept
+
+ + + + + + + + +
+Method Detail
+ +

+checkRevisibility

+
+private void checkRevisibility()
+
+
Judgments with dependent variable cannot be revised +

+

+
+
+
+
+ +

+markEventComponents

+
+private void markEventComponents()
+
+
Terms in temporal compounds is event +

+

+
+
+
+
+ +

+directProcess

+
+public void directProcess(Task task)
+
+
Directly process a new task. Called exactly once on each task. + Using local information and finishing in a constant time. + Provide feedback in the budget value of the task. +

+ called in Memory.immediateProcess only +

+

+
Parameters:
task - The task to be processed
+
+
+
+ +

+processQuestion

+
+private void processQuestion(Question ques,
+                             Task task)
+
+
To answer a question by existing beliefs +

+

+
Parameters:
ques - The question to be answered
task - The task to be processed
+
+
+
+ +

+processGoal

+
+private void processGoal(Goal goal,
+                         Task task)
+
+
Direct processing a new goal +

+

+
Parameters:
goal - The goal to be processed
task - The task to be processed
+
+
+
+ +

+processJudgment

+
+private void processJudgment(Judgment judg,
+                             Task task)
+
+
To accept a new judgment as belief, and check for revisions and solutions +

+

+
Parameters:
judg - The judgment to be accepted
task - The task to be processed
+
+
+
+ +

+reviseTable

+
+private boolean reviseTable(Judgment newSentence,
+                            Task task,
+                            java.util.ArrayList table)
+
+
Revise existing beliefs or goals +

+

+
Parameters:
task - The task to be processed
table - The table to be revised
+
+
+
+ +

+isUpdate

+
+private boolean isUpdate(Judgment newBelief,
+                         Judgment oldBelief)
+
+
Distinguish update from revision [to be refined] +

+

+
Parameters:
newBelief - The new belief
oldBelief - The previous belief +
Returns:
Whether the operation is update
+
+
+
+ +

+addToTable

+
+private void addToTable(Judgment newJudgment,
+                        java.util.ArrayList table,
+                        int capacity)
+
+
Add a new belief or goal into the table + Sort the beliefs/goals by rank, and remove redundant or low rank one +

+

+
Parameters:
newJudgment - The judgment to be processed
table - The table to be revised
capacity - The capacity of the table
+
+
+
+ +

+insertTaskLink

+
+public void insertTaskLink(TaskLink taskLink)
+
+
Insert a TaskLink into the TaskLink bag +

+ called only from Memory.continuedProcess +

+

+
Parameters:
taskLink - The termLink to be inserted
+
+
+
+ +

+buildTermLinks

+
+public void buildTermLinks(BudgetValue budget)
+
+
Recursively build TermLinks between a compound and its components +

+ called only from Memory.continuedProcess +

+

+
Parameters:
budget - The budget of the task
+
+
+
+ +

+insertTermLink

+
+public void insertTermLink(TermLink termLink)
+
+
Insert a TermLink into the TermLink bag +

+ called from buildTermLinks only +

+

+
Parameters:
termLink - The termLink to be inserted
+
+
+
+ +

+getTerm

+
+public Term getTerm()
+
+
Return the assocated term, called from Memory only +

+

+ +
Returns:
The assocated term
+
+
+
+ +

+isEvent

+
+public boolean isEvent()
+
+
Distinguish events from non-events +

+

+ +
Returns:
Whether the concept is an event
+
+
+
+ +

+setEvent

+
+public void setEvent()
+
+
Mark the concept as an event +

+

+
+
+
+
+ +

+toString

+
+public java.lang.String toString()
+
+
Return a string representation of the concept, called in ConceptBag only +

+

+
Overrides:
toString in class BudgetValue
+
+
+ +
Returns:
The concept name, with budget in the full version
+
+
+
+ +

+getQuality

+
+public float getQuality()
+
+
Recalculate the quality of the concept [to be refined] +

+

+
Overrides:
getQuality in class BudgetValue
+
+
+ +
Returns:
The quality value
+
+
+
+ +

+getTermLinkTemplates

+
+public java.util.ArrayList<TermLink> getTermLinkTemplates()
+
+
Return the templates for TermLinks, only called in Memory.continuedProcess +

+

+ +
Returns:
The template get
+
+
+
+ +

+getBelief

+
+public Judgment getBelief(Task task)
+
+
Select a belief to interact with the given task in inference +

+ get the first qualified one +

+ only called in RuleTables.reason +

+

+
Parameters:
task - The selected task +
Returns:
The selected belief
+
+
+
+ +

+fire

+
+public void fire()
+
+
An atomic step in a concept, only called in Memory.processConcept +

+

+
+
+
+
+ +

+startPlay

+
+public void startPlay()
+
+
Start displaying contents and links, called from ConceptWindow only +

+

+
+
+
+
+ +

+play

+
+public void play()
+
+
Resume display, called from ConceptWindow only +

+

+
+
+
+
+ +

+stop

+
+public void stop()
+
+
Stop display, called from ConceptWindow only +

+

+
+
+
+
+ +

+displayContent

+
+private java.lang.String displayContent()
+
+
Collect direct belief, questions, and goals for display +

+

+ +
Returns:
String representation of direct content
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/Goal.html b/nars-dist/javadoc/nars/entity/Goal.html new file mode 100644 index 00000000..e09c1ff5 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/Goal.html @@ -0,0 +1,282 @@ + + + + + + + +Goal (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class Goal

+
+java.lang.Object
+  extended by nars.entity.Sentence
+      extended by nars.entity.Judgment
+          extended by nars.entity.Goal
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
+
public class Goal
extends Judgment
+ + +

+A Goal is an event to be realized, and may conain query variables +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.entity.Sentence
bestSolution, content, input, punctuation, stamp, tense, truth
+  + + + + + + + + + + +
+Constructor Summary
Goal(Term term, + char punc, + TruthValue t, + Stamp s) + +
+          Constructor
+  + + + + + + + +
+Method Summary
+ + + + + + + +
Methods inherited from class nars.entity.Judgment
equivalentTo, solutionQuality
+ + + + + + + +
Methods inherited from class nars.entity.Sentence
clone, cloneContent, getBestSolution, getContent, getStamp, getTense, getTruth, isInput, isJudgment, make, make, noOverlapping, setBestSolution, setContent, setInput, setTense, toString, toString2
+ + + + + + + +
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Goal

+
+public Goal(Term term,
+            char punc,
+            TruthValue t,
+            Stamp s)
+
+
Constructor +

+ A goal has no tense +

+

+
Parameters:
term - The content
punc - The punctuation
t - The desire (truth) value
s - The stamp
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/Item.html b/nars-dist/javadoc/nars/entity/Item.html new file mode 100644 index 00000000..1903f7a4 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/Item.html @@ -0,0 +1,374 @@ + + + + + + + +Item (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class Item

+
+java.lang.Object
+  extended by nars.entity.BudgetValue
+      extended by nars.entity.Item
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
Direct Known Subclasses:
Concept, Task, TermLink
+
+
+
+
public abstract class Item
extends BudgetValue
+ + +

+An item is an object that can be put into a Bag, + to participate in the resource competation of the system. +

+ It has a key and a budget. +

+ +

+


+ +

+ + + + + + + + + + + +
+Field Summary
+protected  java.lang.Stringkey + +
+          The key of the Item, unique in a Bag
+ + + + + + + +
Fields inherited from class nars.entity.BudgetValue
durability, priority, quality
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+protected Item() + +
+          Default constructor
+protected Item(BudgetValue v) + +
+          Constructor with initial budget
+  + + + + + + + + + + + + + + + +
+Method Summary
+ BudgetValuegetBudget() + +
+          Get current BudgetValue
+ java.lang.StringgetKey() + +
+          Get the current key
+ + + + + + + +
Methods inherited from class nars.entity.BudgetValue
aboveThreshold, clone, decDurability, decPriority, decQuality, getDurability, getPriority, getQuality, incDurability, incPriority, incQuality, merge, setDurability, setPriority, setQuality, summary, toString, toString2
+ + + + + + + +
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+key

+
+protected java.lang.String key
+
+
The key of the Item, unique in a Bag +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Item

+
+protected Item()
+
+
Default constructor +

+

+
+ +

+Item

+
+protected Item(BudgetValue v)
+
+
Constructor with initial budget +

+

+
Parameters:
v - The initial budget
+
+ + + + + + + + +
+Method Detail
+ +

+getKey

+
+public java.lang.String getKey()
+
+
Get the current key +

+

+ +
Returns:
Current key value
+
+
+
+ +

+getBudget

+
+public BudgetValue getBudget()
+
+
Get current BudgetValue +

+ This method is redundant, just to make the code more readable +

+

+ +
Returns:
Current BudgetValue
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/Judgment.html b/nars-dist/javadoc/nars/entity/Judgment.html new file mode 100644 index 00000000..f990c9da --- /dev/null +++ b/nars-dist/javadoc/nars/entity/Judgment.html @@ -0,0 +1,348 @@ + + + + + + + +Judgment (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class Judgment

+
+java.lang.Object
+  extended by nars.entity.Sentence
+      extended by nars.entity.Judgment
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
Direct Known Subclasses:
Goal
+
+
+
+
public class Judgment
extends Sentence
+ + +

+A Judgment is an piece of new knowledge to be absorbed. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.entity.Sentence
bestSolution, content, input, punctuation, stamp, tense, truth
+  + + + + + + + + + + + + + +
+Constructor Summary
Judgment(Goal g) + +
+          Construct a Judgment to indicate an operation just executed
Judgment(Term term, + char punc, + TemporalRules.Relation s, + TruthValue t, + Stamp b) + +
+          Constructor
+  + + + + + + + + + + + + + + + +
+Method Summary
+(package private)  booleanequivalentTo(Judgment that) + +
+          Check whether the judgment is equivalent to another one
+ floatsolutionQuality(Sentence problem) + +
+          Evaluate the quality of the judgment as a solution to a problem
+ + + + + + + +
Methods inherited from class nars.entity.Sentence
clone, cloneContent, getBestSolution, getContent, getStamp, getTense, getTruth, isInput, isJudgment, make, make, noOverlapping, setBestSolution, setContent, setInput, setTense, toString, toString2
+ + + + + + + +
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Judgment

+
+public Judgment(Term term,
+                char punc,
+                TemporalRules.Relation s,
+                TruthValue t,
+                Stamp b)
+
+
Constructor +

+

+
Parameters:
term - The content
punc - The punctuation
s - The tense
t - The truth value
b - The stamp
+
+
+ +

+Judgment

+
+public Judgment(Goal g)
+
+
Construct a Judgment to indicate an operation just executed +

+

+
Parameters:
g - The goal that trigger the execution
+
+ + + + + + + + +
+Method Detail
+ +

+equivalentTo

+
+boolean equivalentTo(Judgment that)
+
+
Check whether the judgment is equivalent to another one +

+ The two may have different keys +

+

+
Parameters:
that - The other judgment +
Returns:
Whether the two are equivalent
+
+
+
+ +

+solutionQuality

+
+public float solutionQuality(Sentence problem)
+
+
Evaluate the quality of the judgment as a solution to a problem +

+

+
Parameters:
problem - A goal or question +
Returns:
The quality of the judgment as the solution
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/Question.html b/nars-dist/javadoc/nars/entity/Question.html new file mode 100644 index 00000000..7e4c4c8c --- /dev/null +++ b/nars-dist/javadoc/nars/entity/Question.html @@ -0,0 +1,270 @@ + + + + + + + +Question (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class Question

+
+java.lang.Object
+  extended by nars.entity.Sentence
+      extended by nars.entity.Question
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
+
public class Question
extends Sentence
+ + +

+A Question is a sentence without a truth value, and may conain query variables +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.entity.Sentence
bestSolution, content, input, punctuation, stamp, tense, truth
+  + + + + + + + + + + +
+Constructor Summary
Question(Term term, + char punc, + TemporalRules.Relation t, + Stamp s) + +
+          COnstructor
+  + + + + + + + +
+Method Summary
+ + + + + + + +
Methods inherited from class nars.entity.Sentence
clone, cloneContent, getBestSolution, getContent, getStamp, getTense, getTruth, isInput, isJudgment, make, make, noOverlapping, setBestSolution, setContent, setInput, setTense, toString, toString2
+ + + + + + + +
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Question

+
+public Question(Term term,
+                char punc,
+                TemporalRules.Relation t,
+                Stamp s)
+
+
COnstructor +

+

+
Parameters:
term - The content
punc - The punctuation
t - The tense
s - The stamp
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/Sentence.html b/nars-dist/javadoc/nars/entity/Sentence.html new file mode 100644 index 00000000..eac7e982 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/Sentence.html @@ -0,0 +1,891 @@ + + + + + + + +Sentence (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class Sentence

+
+java.lang.Object
+  extended by nars.entity.Sentence
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
Direct Known Subclasses:
Judgment, Question
+
+
+
+
public abstract class Sentence
extends java.lang.Object
implements java.lang.Cloneable
+ + +

+A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp. +

+ It is used as the premises and conclusions of all inference rules. +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+protected  JudgmentbestSolution + +
+          For Question and Goal: best solution found so far
+protected  Termcontent + +
+          The content of a Sentence is a Term
+protected  booleaninput + +
+          Whether it is an input sentence
+protected  charpunctuation + +
+          The punctuation also indicates the type of the Sentence: Judgment, Question, or Goal
+protected  Stampstamp + +
+          Partial record of the derivation path
+protected  TemporalRules.Relationtense + +
+          The tense of a Sentence can be BEFORE(past), WHEN(present), AFTER(future), or NONE
+protected  TruthValuetruth + +
+          The truth value of Judgment or desire value of Goal
+  + + + + + + + + + + +
+Constructor Summary
Sentence() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone the Sentence
+ TermcloneContent() + +
+          Clone the content of the sentence
+ JudgmentgetBestSolution() + +
+          Get the best-so-far solution for a Question or Goal
+ TermgetContent() + +
+          Get the content of the sentence
+ StampgetStamp() + +
+          Get the stamp of the sentence
+ TemporalRules.RelationgetTense() + +
+          Get the tense of the Sentence
+ TruthValuegetTruth() + +
+          Get the truth value of the sentence
+ booleanisInput() + +
+          Check input sentence
+ booleanisJudgment() + +
+          Distinguish Judgment from Goal ("instanceof Judgment" doesn't work)
+static Sentencemake(Sentence oldS, + Term term, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a derived Sentence from a template and some initial values.
+static Sentencemake(Term term, + char punc, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a Sentence from an input String.
+ booleannoOverlapping(Sentence that) + +
+          Check whether one sentence has stamp overlapping with another one, and change the system cash
+ voidsetBestSolution(Judgment judg) + +
+          Set the best-so-far solution for a Question or Goal
+ voidsetContent(Term t) + +
+          Set the content Term of the Sentence
+ voidsetInput() + +
+          The only place to change the default, called in StringParser
+ voidsetTense(TemporalRules.Relation t) + +
+          Set the tense of the Sentence
+private  java.lang.StringtenseToString() + +
+          Get a String representation of the tense of the sentence
+ java.lang.StringtoString() + +
+          Get a String representation of the sentence
+ java.lang.StringtoString2() + +
+          Get a String representation of the sentence, with 2-digit accuracy
+ + + + + + + +
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+content

+
+protected Term content
+
+
The content of a Sentence is a Term +

+

+
+
+
+ +

+punctuation

+
+protected char punctuation
+
+
The punctuation also indicates the type of the Sentence: Judgment, Question, or Goal +

+

+
+
+
+ +

+tense

+
+protected TemporalRules.Relation tense
+
+
The tense of a Sentence can be BEFORE(past), WHEN(present), AFTER(future), or NONE +

+

+
+
+
+ +

+truth

+
+protected TruthValue truth
+
+
The truth value of Judgment or desire value of Goal +

+

+
+
+
+ +

+stamp

+
+protected Stamp stamp
+
+
Partial record of the derivation path +

+

+
+
+
+ +

+input

+
+protected boolean input
+
+
Whether it is an input sentence +

+

+
+
+
+ +

+bestSolution

+
+protected Judgment bestSolution
+
+
For Question and Goal: best solution found so far +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Sentence

+
+public Sentence()
+
+
+ + + + + + + + +
+Method Detail
+ +

+make

+
+public static Sentence make(Term term,
+                            char punc,
+                            TemporalRules.Relation tense,
+                            TruthValue truth,
+                            Stamp stamp)
+
+
Make a Sentence from an input String. Called by StringParser. +

+

+
+
+
+
Parameters:
term - The content of the sentence
punc - The puncuation (and therefore, type) of the sentence
tense - The tense of the sntense
truth - The truth value of the sentence, if it is a Judgment (or Goal)
stamp - The stamp of the truth value (for Judgment or Goal) +
Returns:
the Sentence generated from the arguments
+
+
+
+ +

+make

+
+public static Sentence make(Sentence oldS,
+                            Term term,
+                            TemporalRules.Relation tense,
+                            TruthValue truth,
+                            Stamp stamp)
+
+
Make a derived Sentence from a template and some initial values. Called by Memory. +

+

+
+
+
+
Parameters:
term - The content of the sentence
oldS - A sample sentence providing the type of the new sentence
tense - The tense of the sentence
truth - The truth value of the sentence, if it is a Judgment (or Goal)
stamp - The stamp of the truth value (for Judgment or Goal) +
Returns:
the Sentence generated from the arguments
+
+
+
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone the Sentence +

+

+
Overrides:
clone in class java.lang.Object
+
+
+ +
Returns:
The clone
+
+
+
+ +

+getContent

+
+public Term getContent()
+
+
Get the content of the sentence +

+

+
+
+
+ +
Returns:
The content Term
+
+
+
+ +

+cloneContent

+
+public Term cloneContent()
+
+
Clone the content of the sentence +

+

+
+
+
+ +
Returns:
A clone of the content Term
+
+
+
+ +

+setContent

+
+public void setContent(Term t)
+
+
Set the content Term of the Sentence +

+

+
+
+
+
Parameters:
t - The new content
+
+
+
+ +

+getTense

+
+public TemporalRules.Relation getTense()
+
+
Get the tense of the Sentence +

+

+
+
+
+ +
Returns:
The tense of the Sentence
+
+
+
+ +

+setTense

+
+public void setTense(TemporalRules.Relation t)
+
+
Set the tense of the Sentence +

+

+
+
+
+
Parameters:
t - The new tense of the Sentence
+
+
+
+ +

+getTruth

+
+public TruthValue getTruth()
+
+
Get the truth value of the sentence +

+

+
+
+
+ +
Returns:
Truth value, null for question
+
+
+
+ +

+getStamp

+
+public Stamp getStamp()
+
+
Get the stamp of the sentence +

+

+
+
+
+ +
Returns:
The stamp
+
+
+
+ +

+isJudgment

+
+public boolean isJudgment()
+
+
Distinguish Judgment from Goal ("instanceof Judgment" doesn't work) +

+

+
+
+
+ +
Returns:
Whether the object is a Judgment
+
+
+
+ +

+isInput

+
+public boolean isInput()
+
+
Check input sentence +

+

+
+
+
+ +
Returns:
Whether the
+
+
+
+ +

+setInput

+
+public void setInput()
+
+
The only place to change the default, called in StringParser +

+

+
+
+
+
+
+
+
+ +

+getBestSolution

+
+public Judgment getBestSolution()
+
+
Get the best-so-far solution for a Question or Goal +

+

+
+
+
+ +
Returns:
The stored Judgment or null
+
+
+
+ +

+setBestSolution

+
+public void setBestSolution(Judgment judg)
+
+
Set the best-so-far solution for a Question or Goal +

+

+
+
+
+
Parameters:
judg - The solution to be remembered
+
+
+
+ +

+noOverlapping

+
+public boolean noOverlapping(Sentence that)
+
+
Check whether one sentence has stamp overlapping with another one, and change the system cash +

+

+
+
+
+
Parameters:
that - The sentence to be checked against +
Returns:
Whether the two have overlapping stamps
+
+
+
+ +

+toString

+
+public java.lang.String toString()
+
+
Get a String representation of the sentence +

+

+
Overrides:
toString in class java.lang.Object
+
+
+ +
Returns:
The String
+
+
+
+ +

+toString2

+
+public java.lang.String toString2()
+
+
Get a String representation of the sentence, with 2-digit accuracy +

+

+
+
+
+ +
Returns:
The String
+
+
+
+ +

+tenseToString

+
+private java.lang.String tenseToString()
+
+
Get a String representation of the tense of the sentence +

+

+
+
+
+ +
Returns:
The String
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/ShortFloat.html b/nars-dist/javadoc/nars/entity/ShortFloat.html new file mode 100644 index 00000000..972e6466 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/ShortFloat.html @@ -0,0 +1,459 @@ + + + + + + + +ShortFloat (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class ShortFloat

+
+java.lang.Object
+  extended by nars.entity.ShortFloat
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
+
public class ShortFloat
extends java.lang.Object
implements java.lang.Cloneable
+ + +

+A float value in [0, 1], with 4 digits accuracy. +

+ +

+


+ +

+ + + + + + + + + + + +
+Field Summary
+private  shortvalue + +
+          To save space, the values are stored as short integers (-32768 to 32767, only 0 to 10000 used), + but used as float
+  + + + + + + + + + + +
+Constructor Summary
ShortFloat(float v) + +
+          Constructor
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ booleanequals(java.lang.Object that) + +
+          Compare two ShortFloat values
+(package private)  shortgetShortValue() + +
+          To access the value as short
+ floatgetValue() + +
+          To access the value as float
+ inthashCode() + +
+          The hash code of the ShortFloat
+ voidsetValue(float v) + +
+          Set new value, rounded, with validity checking
+ java.lang.StringtoString() + +
+          Convert the value into a String
+ java.lang.StringtoString2() + +
+          Convert the value into a String
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+value

+
+private short value
+
+
To save space, the values are stored as short integers (-32768 to 32767, only 0 to 10000 used), + but used as float +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+ShortFloat

+
+public ShortFloat(float v)
+
+
Constructor +

+

+
Parameters:
v - The initial value
+
+ + + + + + + + +
+Method Detail
+ +

+getValue

+
+public float getValue()
+
+
To access the value as float +

+

+
+
+
+ +
Returns:
The current value in float
+
+
+
+ +

+getShortValue

+
+short getShortValue()
+
+
To access the value as short +

+

+
+
+
+ +
Returns:
The current value in short
+
+
+
+ +

+setValue

+
+public void setValue(float v)
+
+
Set new value, rounded, with validity checking +

+

+
+
+
+
Parameters:
v - The new value
+
+
+
+ +

+equals

+
+public boolean equals(java.lang.Object that)
+
+
Compare two ShortFloat values +

+

+
Overrides:
equals in class java.lang.Object
+
+
+
Parameters:
that - The other value to be compared +
Returns:
Whether the two have the same value
+
+
+
+ +

+hashCode

+
+public int hashCode()
+
+
The hash code of the ShortFloat +

+

+
Overrides:
hashCode in class java.lang.Object
+
+
+ +
Returns:
The hash code
+
+
+
+ +

+toString

+
+public java.lang.String toString()
+
+
Convert the value into a String +

+

+
Overrides:
toString in class java.lang.Object
+
+
+ +
Returns:
The String representation, with 4 digits accuracy
+
+
+
+ +

+toString2

+
+public java.lang.String toString2()
+
+
Convert the value into a String +

+

+
+
+
+ +
Returns:
The String representation, with 2 digits accuracy
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/Stamp.html b/nars-dist/javadoc/nars/entity/Stamp.html new file mode 100644 index 00000000..d0c6e12b --- /dev/null +++ b/nars-dist/javadoc/nars/entity/Stamp.html @@ -0,0 +1,599 @@ + + + + + + + +Stamp (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class Stamp

+
+java.lang.Object
+  extended by nars.entity.Stamp
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
+
public class Stamp
extends java.lang.Object
implements java.lang.Cloneable
+ + +

+Each Sentence has a get of serial numbers of a constant length attached. + The input sentence gets a unique number. + The derived sentences inherits from its parents, then cut at the length limit. +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + +
+Field Summary
+private static longcurrent + +
+          serial number, for the whole system
+private  intlength + +
+          current stamp length
+private  long[]list + +
+          serial numbers
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+ Stamp() + +
+          Generate a new stamp, with a new serial number, for input sentence
+private Stamp(Stamp first, + Stamp second) + +
+          Generate a new stamp for derived sentence by merging the two from parents + the first one is no shorter than the second
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ booleanequals(java.lang.Object that) + +
+          Check if two stamps contains the same set of numbers
+(package private)  longget(int i) + +
+          Get a number from the list by index, called in this class only
+ inthashCode() + +
+          The hash code of Stamp
+static voidinit() + +
+          Initialize the stamp machenism of the system, called in Center
+ longlatest() + +
+          Get the latest Stamp in the list
+ intlength() + +
+          Return the length of the list
+static Stampmake(Stamp first, + Stamp second) + +
+          Try to merge two Stamps, return null if have overlap
+ TemporalRules.RelationorderWith(Stamp that) + +
+          Compare two Stamps for their temporal order
+(package private)  java.util.TreeSet<java.lang.Long>toSet() + +
+          Convert the list into a set
+ java.lang.StringtoString() + +
+          Get a String form of the Stamp for display
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+list

+
+private long[] list
+
+
serial numbers +

+

+
+
+
+ +

+length

+
+private int length
+
+
current stamp length +

+

+
+
+
+ +

+current

+
+private static long current
+
+
serial number, for the whole system +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Stamp

+
+public Stamp()
+
+
Generate a new stamp, with a new serial number, for input sentence +

+

+
+ +

+Stamp

+
+private Stamp(Stamp first,
+              Stamp second)
+
+
Generate a new stamp for derived sentence by merging the two from parents + the first one is no shorter than the second +

+

+
Parameters:
first - The first Stamp
second - The second Stamp
+
+ + + + + + + + +
+Method Detail
+ +

+make

+
+public static Stamp make(Stamp first,
+                         Stamp second)
+
+
Try to merge two Stamps, return null if have overlap +

+

+
+
+
+
Parameters:
first - The first Stamp
second - The second Stamp +
Returns:
The merged Stamp, or null
+
+
+
+ +

+init

+
+public static void init()
+
+
Initialize the stamp machenism of the system, called in Center +

+

+
+
+
+
+
+
+
+ +

+length

+
+public int length()
+
+
Return the length of the list +

+

+
+
+
+ +
Returns:
Length of the Stamp
+
+
+
+ +

+get

+
+long get(int i)
+
+
Get a number from the list by index, called in this class only +

+

+
+
+
+
Parameters:
i - The index +
Returns:
The number at the index
+
+
+
+ +

+toSet

+
+java.util.TreeSet<java.lang.Long> toSet()
+
+
Convert the list into a set +

+

+
+
+
+
+
+
+
+ +

+equals

+
+public boolean equals(java.lang.Object that)
+
+
Check if two stamps contains the same set of numbers +

+

+
Overrides:
equals in class java.lang.Object
+
+
+
Parameters:
that - The Stamp to be compared +
Returns:
Whether the two have contain the same elements
+
+
+
+ +

+hashCode

+
+public int hashCode()
+
+
The hash code of Stamp +

+

+
Overrides:
hashCode in class java.lang.Object
+
+
+ +
Returns:
The hash code
+
+
+
+ +

+latest

+
+public long latest()
+
+
Get the latest Stamp in the list +

+

+
+
+
+ +
Returns:
The largest number in the stamp
+
+
+
+ +

+orderWith

+
+public TemporalRules.Relation orderWith(Stamp that)
+
+
Compare two Stamps for their temporal order +

+

+
+
+
+
Parameters:
that - The STamp to be compared +
Returns:
The temporal order
+
+
+
+ +

+toString

+
+public java.lang.String toString()
+
+
Get a String form of the Stamp for display +

+

+
Overrides:
toString in class java.lang.Object
+
+
+ +
Returns:
The Stamp as a String
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/Task.html b/nars-dist/javadoc/nars/entity/Task.html new file mode 100644 index 00000000..c01d6c65 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/Task.html @@ -0,0 +1,523 @@ + + + + + + + +Task (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class Task

+
+java.lang.Object
+  extended by nars.entity.BudgetValue
+      extended by nars.entity.Item
+          extended by nars.entity.Task
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
+
public class Task
extends Item
+ + +

+A task to be processed, consists of a Sentence and a BudgetValue +

+ +

+


+ +

+ + + + + + + + + + + + + + + +
+Field Summary
+private  Sentencesentence + +
+          The sentence of the Task
+protected  booleanstructual + +
+          Whether it is derived by a structual rule
+ + + + + + + +
Fields inherited from class nars.entity.Item
key
+ + + + + + + +
Fields inherited from class nars.entity.BudgetValue
durability, priority, quality
+  + + + + + + + + + + +
+Constructor Summary
Task(Sentence s, + BudgetValue b) + +
+          Constructor
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ TermgetContent() + +
+          Directly get the content of the sentence
+ SentencegetSentence() + +
+          Get the sentence
+ TemporalRules.RelationgetTense() + +
+          Directly get the tense of the sentence
+ booleanisStructual() + +
+          Check if a Task is derived by a StructuralRule
+ voidmerge(Item that) + +
+          Merge one Task into another
+ voidsetStructual() + +
+          Record if a Task is derived by a StructuralRule
+ java.lang.StringtoString() + +
+          Get a String representation of the Task
+ java.lang.StringtoString2() + +
+          Get a String representation of the Task, with reduced accuracy
+ + + + + + + +
Methods inherited from class nars.entity.Item
getBudget, getKey
+ + + + + + + +
Methods inherited from class nars.entity.BudgetValue
aboveThreshold, clone, decDurability, decPriority, decQuality, getDurability, getPriority, getQuality, incDurability, incPriority, incQuality, merge, setDurability, setPriority, setQuality, summary
+ + + + + + + +
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+sentence

+
+private Sentence sentence
+
+
The sentence of the Task +

+

+
+
+
+ +

+structual

+
+protected boolean structual
+
+
Whether it is derived by a structual rule +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Task

+
+public Task(Sentence s,
+            BudgetValue b)
+
+
Constructor +

+

+
Parameters:
s - The sentence
b - The budget
+
+ + + + + + + + +
+Method Detail
+ +

+getSentence

+
+public Sentence getSentence()
+
+
Get the sentence +

+

+ +
Returns:
The sentence
+
+
+
+ +

+getContent

+
+public Term getContent()
+
+
Directly get the content of the sentence +

+

+ +
Returns:
The content of the sentence
+
+
+
+ +

+getTense

+
+public TemporalRules.Relation getTense()
+
+
Directly get the tense of the sentence +

+

+ +
Returns:
The tense of the sentence
+
+
+
+ +

+isStructual

+
+public boolean isStructual()
+
+
Check if a Task is derived by a StructuralRule +

+

+ +
Returns:
Whether the Task is derived by a StructuralRule
+
+
+
+ +

+setStructual

+
+public void setStructual()
+
+
Record if a Task is derived by a StructuralRule +

+

+
+
+
+
+ +

+merge

+
+public void merge(Item that)
+
+
Merge one Task into another +

+

+
Parameters:
that - The other Task
+
+
+
+ +

+toString

+
+public java.lang.String toString()
+
+
Get a String representation of the Task +

+

+
Overrides:
toString in class BudgetValue
+
+
+ +
Returns:
The Task as a String
+
+
+
+ +

+toString2

+
+public java.lang.String toString2()
+
+
Get a String representation of the Task, with reduced accuracy +

+

+
Overrides:
toString2 in class BudgetValue
+
+
+ +
Returns:
The Task as a String, with 2-digit accuracy for the values
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/TaskLink.html b/nars-dist/javadoc/nars/entity/TaskLink.html new file mode 100644 index 00000000..3c0d3543 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/TaskLink.html @@ -0,0 +1,460 @@ + + + + + + + +TaskLink (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class TaskLink

+
+java.lang.Object
+  extended by nars.entity.BudgetValue
+      extended by nars.entity.Item
+          extended by nars.entity.TermLink
+              extended by nars.entity.TaskLink
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
+
public class TaskLink
extends TermLink
+ + +

+Reference to a Task. +

+ The reason to separate a Task and a TaskLink is that the same Task can be linked from + multiple Concepts, with different BudgetValue. +

+ +

+


+ +

+ + + + + + + + + + + + + + + +
+Field Summary
+private  java.util.ArrayList<java.lang.String>record + +
+          Remember the TermLinks that has been used recently with this TaskLink
+private  TasktargetTask + +
+          The Task linked.
+ + + + + + + +
Fields inherited from class nars.entity.TermLink
COMPONENT, COMPONENT_CONDITION, COMPONENT_STATEMENT, COMPOUND, COMPOUND_CONDITION, COMPOUND_STATEMENT, index, SELF, TRANSFORM, type
+ + + + + + + +
Fields inherited from class nars.entity.Item
key
+ + + + + + + +
Fields inherited from class nars.entity.BudgetValue
durability, priority, quality
+  + + + + + + + + + + +
+Constructor Summary
TaskLink(Task t, + TermLink template, + BudgetValue v) + +
+          Constructor
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+(package private)  java.util.ArrayList<java.lang.String>getRecord() + +
+          Get the TermLink record
+ TaskgetTargetTask() + +
+          Get the target Task
+ voidmerge(Item that) + +
+          Merge one TaskLink into another
+ booleannovel(TermLink termLink) + +
+          To check whether a TaskLink should use a TermLink, return false if they + interacted recently
+ + + + + + + +
Methods inherited from class nars.entity.TermLink
getIndex, getIndices, getTarget, getType, setKey, toString, toString2
+ + + + + + + +
Methods inherited from class nars.entity.Item
getBudget, getKey
+ + + + + + + +
Methods inherited from class nars.entity.BudgetValue
aboveThreshold, clone, decDurability, decPriority, decQuality, getDurability, getPriority, getQuality, incDurability, incPriority, incQuality, merge, setDurability, setPriority, setQuality, summary
+ + + + + + + +
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+targetTask

+
+private Task targetTask
+
+
The Task linked. The "target" field in TermLink is not used here. +

+

+
+
+
+ +

+record

+
+private java.util.ArrayList<java.lang.String> record
+
+
Remember the TermLinks that has been used recently with this TaskLink +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+TaskLink

+
+public TaskLink(Task t,
+                TermLink template,
+                BudgetValue v)
+
+
Constructor +

+ only called in Memory.continuedProcess +

+

+
Parameters:
t - The target Task
template - The TermLink template
v - The budget
+
+ + + + + + + + +
+Method Detail
+ +

+getTargetTask

+
+public Task getTargetTask()
+
+
Get the target Task +

+

+ +
Returns:
The linked Task
+
+
+
+ +

+getRecord

+
+java.util.ArrayList<java.lang.String> getRecord()
+
+
Get the TermLink record +

+

+ +
Returns:
The list of TermLinks recently used
+
+
+
+ +

+merge

+
+public void merge(Item that)
+
+
Merge one TaskLink into another +

+

+
Parameters:
that - The other TaskLink
+
+
+
+ +

+novel

+
+public boolean novel(TermLink termLink)
+
+
To check whether a TaskLink should use a TermLink, return false if they + interacted recently +

+ called in TermLinkBag only +

+

+
Parameters:
termLink - The TermLink to be checked +
Returns:
Whether they are novel to each other
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/TermLink.html b/nars-dist/javadoc/nars/entity/TermLink.html new file mode 100644 index 00000000..3625e6eb --- /dev/null +++ b/nars-dist/javadoc/nars/entity/TermLink.html @@ -0,0 +1,764 @@ + + + + + + + +TermLink (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class TermLink

+
+java.lang.Object
+  extended by nars.entity.BudgetValue
+      extended by nars.entity.Item
+          extended by nars.entity.TermLink
+
+
+
All Implemented Interfaces:
java.lang.Cloneable
+
+
+
Direct Known Subclasses:
TaskLink
+
+
+
+
public class TermLink
extends Item
+ + +

+A link between a compound term and a component term +

+ A TermLink links the current Term to a target Term, which is + either a component of, or compound made from, the current term. +

+ Neither of the two terms contain variable shared with other terms. +

+ The index value(s) indicates the location of the component in the compound. +

+ This class is mainly used in inference.RuleTable to dispatch premises to inference rules +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+static shortCOMPONENT + +
+          At (&&, A, C), point to C
+static shortCOMPONENT_CONDITION + +
+          At <(&&, C, B) ==> A>, point to C
+static shortCOMPONENT_STATEMENT + +
+          At A>, point to C
+static shortCOMPOUND + +
+          At C, point to (&&, A, C)
+static shortCOMPOUND_CONDITION + +
+          At C, point to <(&&, C, B) ==> A>
+static shortCOMPOUND_STATEMENT + +
+          At C, point to A>
+protected  short[]index + +
+          The index of the component in the component list of the compound, may have up to 4 levels
+static shortSELF + +
+          At C, point to C; TaskLink only
+private  Termtarget + +
+          The linked Term
+static shortTRANSFORM + +
+          At C, point to <(*, C, B) --> A>; TaskLink only
+protected  shorttype + +
+          The type of link, one of the above
+ + + + + + + +
Fields inherited from class nars.entity.Item
key
+ + + + + + + +
Fields inherited from class nars.entity.BudgetValue
durability, priority, quality
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Constructor Summary
+ TermLink() + +
+          Default constructor
+protected TermLink(BudgetValue v) + +
+          Default Constructor need in TaskLink
+ TermLink(Term t, + short p, + int... indices) + +
+          Constructor for TermLink template
+ TermLink(Term t, + TermLink template, + BudgetValue v) + +
+          Constructor to make actual TermLink from a template
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ shortgetIndex(int i) + +
+          Get one index by level
+ short[]getIndices() + +
+          Get all the indices
+ TermgetTarget() + +
+          Get the target of the link
+ shortgetType() + +
+          Get the link type
+protected  voidsetKey() + +
+          Set the key of the link
+ java.lang.StringtoString() + +
+          Get a String representation of the link, with full accuracy
+ java.lang.StringtoString2() + +
+          Get a String representation of the link, with 2-digit accuracy
+ + + + + + + +
Methods inherited from class nars.entity.Item
getBudget, getKey
+ + + + + + + +
Methods inherited from class nars.entity.BudgetValue
aboveThreshold, clone, decDurability, decPriority, decQuality, getDurability, getPriority, getQuality, incDurability, incPriority, incQuality, merge, setDurability, setPriority, setQuality, summary
+ + + + + + + +
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+SELF

+
+public static final short SELF
+
+
At C, point to C; TaskLink only +

+

+
See Also:
Constant Field Values
+
+
+ +

+COMPONENT

+
+public static final short COMPONENT
+
+
At (&&, A, C), point to C +

+

+
See Also:
Constant Field Values
+
+
+ +

+COMPOUND

+
+public static final short COMPOUND
+
+
At C, point to (&&, A, C) +

+

+
See Also:
Constant Field Values
+
+
+ +

+COMPONENT_STATEMENT

+
+public static final short COMPONENT_STATEMENT
+
+
At A>, point to C +

+

+
See Also:
Constant Field Values
+
+
+ +

+COMPOUND_STATEMENT

+
+public static final short COMPOUND_STATEMENT
+
+
At C, point to A> +

+

+
See Also:
Constant Field Values
+
+
+ +

+COMPONENT_CONDITION

+
+public static final short COMPONENT_CONDITION
+
+
At <(&&, C, B) ==> A>, point to C +

+

+
See Also:
Constant Field Values
+
+
+ +

+COMPOUND_CONDITION

+
+public static final short COMPOUND_CONDITION
+
+
At C, point to <(&&, C, B) ==> A> +

+

+
See Also:
Constant Field Values
+
+
+ +

+TRANSFORM

+
+public static final short TRANSFORM
+
+
At C, point to <(*, C, B) --> A>; TaskLink only +

+

+
See Also:
Constant Field Values
+
+
+ +

+target

+
+private Term target
+
+
The linked Term +

+

+
+
+
+ +

+type

+
+protected short type
+
+
The type of link, one of the above +

+

+
+
+
+ +

+index

+
+protected short[] index
+
+
The index of the component in the component list of the compound, may have up to 4 levels +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+TermLink

+
+public TermLink()
+
+
Default constructor +

+

+
+ +

+TermLink

+
+public TermLink(Term t,
+                short p,
+                int... indices)
+
+
Constructor for TermLink template +

+ called in CompoundTerm.prepareComponentLinks only +

+

+
Parameters:
t - Target Term
p - Link type
indices - Component indices in compound, may be 1 to 4
+
+
+ +

+TermLink

+
+protected TermLink(BudgetValue v)
+
+
Default Constructor need in TaskLink +

+

+
Parameters:
v - Budget value of the link
+
+
+ +

+TermLink

+
+public TermLink(Term t,
+                TermLink template,
+                BudgetValue v)
+
+
Constructor to make actual TermLink from a template +

+ called in Concept.buildTermLinks only +

+

+
Parameters:
t - Target Term
template - TermLink template previously prepared
v - Budget value of the link
+
+ + + + + + + + +
+Method Detail
+ +

+setKey

+
+protected void setKey()
+
+
Set the key of the link +

+

+
+
+
+
+ +

+getTarget

+
+public Term getTarget()
+
+
Get the target of the link +

+

+ +
Returns:
The Term pointed by the link
+
+
+
+ +

+getType

+
+public short getType()
+
+
Get the link type +

+

+ +
Returns:
Type of the link
+
+
+
+ +

+getIndices

+
+public short[] getIndices()
+
+
Get all the indices +

+

+ +
Returns:
The index array
+
+
+
+ +

+getIndex

+
+public short getIndex(int i)
+
+
Get one index by level +

+

+
Parameters:
i - The index level +
Returns:
The index value
+
+
+
+ +

+toString

+
+public java.lang.String toString()
+
+
Get a String representation of the link, with full accuracy +

+

+
Overrides:
toString in class BudgetValue
+
+
+ +
Returns:
The String
+
+
+
+ +

+toString2

+
+public java.lang.String toString2()
+
+
Get a String representation of the link, with 2-digit accuracy +

+

+
Overrides:
toString2 in class BudgetValue
+
+
+ +
Returns:
The String
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/TruthValue.html b/nars-dist/javadoc/nars/entity/TruthValue.html new file mode 100644 index 00000000..a71ce599 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/TruthValue.html @@ -0,0 +1,545 @@ + + + + + + + +TruthValue (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.entity +
+Class TruthValue

+
+java.lang.Object
+  extended by nars.entity.TruthValue
+
+
+
+
public class TruthValue
extends java.lang.Object
+ + +

+Frequency and confidence. +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+protected  ShortFloatconfidence + +
+          The confidence factor of the truth value
+private static charDELIMITER + +
+          The charactor that marks the two ends of a truth value
+protected  ShortFloatfrequency + +
+          The frequency factor of the truth value
+private static charSEPARATOR + +
+          The charactor that separates the factors in a truth value
+  + + + + + + + + + + + + + +
+Constructor Summary
TruthValue(float f, + float c) + +
+          Constructor with two ShortFloats
TruthValue(TruthValue v) + +
+          Constructor with a TruthValue to clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ booleanequals(java.lang.Object that) + +
+          Compare two truth values
+ floatgetConfidence() + +
+          Get the confidence value
+ floatgetExpDifAbs(TruthValue t) + +
+          Calculate the absolute difference of the expectation value and that of a given truth value
+ floatgetExpectation() + +
+          Calculate the expectation value of the truth value
+ floatgetFrequency() + +
+          Get the frequency value
+ inthashCode() + +
+          The hash code of a TruthValue
+ java.lang.StringtoString() + +
+          The String representation of a TruthValue
+ java.lang.StringtoString2() + +
+          A simplified String representation of a TruthValue, where each factor is accruate to 1%
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+DELIMITER

+
+private static final char DELIMITER
+
+
The charactor that marks the two ends of a truth value +

+

+
See Also:
Constant Field Values
+
+
+ +

+SEPARATOR

+
+private static final char SEPARATOR
+
+
The charactor that separates the factors in a truth value +

+

+
See Also:
Constant Field Values
+
+
+ +

+frequency

+
+protected ShortFloat frequency
+
+
The frequency factor of the truth value +

+

+
+
+
+ +

+confidence

+
+protected ShortFloat confidence
+
+
The confidence factor of the truth value +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+TruthValue

+
+public TruthValue(float f,
+                  float c)
+
+
Constructor with two ShortFloats +

+

+
Parameters:
f - The frequency value
c - The confidence value
+
+
+ +

+TruthValue

+
+public TruthValue(TruthValue v)
+
+
Constructor with a TruthValue to clone +

+

+
Parameters:
v - The truth value to be cloned
+
+ + + + + + + + +
+Method Detail
+ +

+getFrequency

+
+public float getFrequency()
+
+
Get the frequency value +

+

+ +
Returns:
The frequency value
+
+
+
+ +

+getConfidence

+
+public float getConfidence()
+
+
Get the confidence value +

+

+ +
Returns:
The confidence value
+
+
+
+ +

+getExpectation

+
+public float getExpectation()
+
+
Calculate the expectation value of the truth value +

+

+ +
Returns:
The expectation value
+
+
+
+ +

+getExpDifAbs

+
+public float getExpDifAbs(TruthValue t)
+
+
Calculate the absolute difference of the expectation value and that of a given truth value +

+

+
Parameters:
t - The given value +
Returns:
The absolute difference
+
+
+
+ +

+equals

+
+public boolean equals(java.lang.Object that)
+
+
Compare two truth values +

+

+
Overrides:
equals in class java.lang.Object
+
+
+
Parameters:
that - The other TruthValue +
Returns:
Whether the two are equivalent
+
+
+
+ +

+hashCode

+
+public int hashCode()
+
+
The hash code of a TruthValue +

+

+
Overrides:
hashCode in class java.lang.Object
+
+
+ +
Returns:
The hash code
+
+
+
+ +

+toString

+
+public java.lang.String toString()
+
+
The String representation of a TruthValue +

+

+
Overrides:
toString in class java.lang.Object
+
+
+ +
Returns:
The String
+
+
+
+ +

+toString2

+
+public java.lang.String toString2()
+
+
A simplified String representation of a TruthValue, where each factor is accruate to 1% +

+

+ +
Returns:
The String
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html new file mode 100644 index 00000000..b41ee981 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html @@ -0,0 +1,589 @@ + + + + + + + +Uses of Class nars.entity.BudgetValue (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.BudgetValue

+
+ + + + + + + + + + + + + + + + + + + + + +
+Packages that use BudgetValue
nars.entityData entities that are independently stored 
nars.inferenceThe inference rules and control functions 
nars.ioInput/output management 
nars.mainTop-level classes of the system 
+  +

+ + + + + +
+Uses of BudgetValue in nars.entity
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Subclasses of BudgetValue in nars.entity
+ classConcept + +
+          A concept contains information associated with a term, including directly + and indirectly related tasks and beliefs.
+ classItem + +
+          An item is an object that can be put into a Bag, + to participate in the resource competation of the system.
+ classTask + +
+          A task to be processed, consists of a Sentence and a BudgetValue
+ classTaskLink + +
+          Reference to a Task.
+ classTermLink + +
+          A link between a compound term and a component term
+  +

+ + + + + + + + + +
Methods in nars.entity that return BudgetValue
+ BudgetValueItem.getBudget() + +
+          Get current BudgetValue
+  +

+ + + + + + + + + + + + + +
Methods in nars.entity with parameters of type BudgetValue
+ voidConcept.buildTermLinks(BudgetValue budget) + +
+          Recursively build TermLinks between a compound and its components
+ voidBudgetValue.merge(BudgetValue that) + +
+          Merge one BudgetValue into another
+  +

+ + + + + + + + + + + + + + + + + + + + + + + +
Constructors in nars.entity with parameters of type BudgetValue
BudgetValue(BudgetValue v) + +
+          Cloning constructor
Item(BudgetValue v) + +
+          Constructor with initial budget
Task(Sentence s, + BudgetValue b) + +
+          Constructor
TaskLink(Task t, + TermLink template, + BudgetValue v) + +
+          Constructor
TermLink(BudgetValue v) + +
+          Default Constructor need in TaskLink
TermLink(Term t, + TermLink template, + BudgetValue v) + +
+          Constructor to make actual TermLink from a template
+  +

+ + + + + +
+Uses of BudgetValue in nars.inference
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference that return BudgetValue
+static BudgetValueBudgetFunctions.backward(TruthValue truth) + +
+          Backward inference result and adjustment, stronger case
+static BudgetValueBudgetFunctions.backwardWeak(TruthValue truth) + +
+          Backward inference result and adjustment, weaker case
+private static BudgetValueBudgetFunctions.budgetInference(float qual, + int complexity) + +
+          Common processing for all inference step
+static BudgetValueBudgetFunctions.compoundBackward(Term content) + +
+          Backward inference with CompoundTerm conclusion, stronger case
+static BudgetValueBudgetFunctions.compoundBackwardWeak(Term content) + +
+          Backward inference with CompoundTerm conclusion, weaker case
+static BudgetValueBudgetFunctions.compoundForward(TruthValue truth, + Term content) + +
+          Forward inference with CompoundTerm conclusion
+static BudgetValueBudgetFunctions.distributeAmongLinks(BudgetValue b, + int n) + +
+          Distribute the budget of a task among the links to it
+(package private) static BudgetValueBudgetFunctions.forward(TruthValue truth) + +
+          Forward inference result and adjustment
+(package private) static BudgetValueBudgetFunctions.revise(TruthValue tTruth, + TruthValue bTruth, + TruthValue truth, + Task task, + boolean feedbackToLinks) + +
+          Evaluate the quality of a revision, then de-prioritize the premises
+(package private) static BudgetValueBudgetFunctions.solutionEval(Sentence problem, + Judgment solution, + Task task) + +
+          Evaluate the quality of a belief as a solution to a problem, then reward + the belief and de-prioritize the problem
+static BudgetValueBudgetFunctions.temporalIndCom(BudgetValue b1, + BudgetValue b2, + TruthValue t) + +
+          Special treatment for temporal induction and comparison among recent event, no feedback
+(package private) static BudgetValueBudgetFunctions.update(Task task, + TruthValue bTruth) + +
+          Update a belief
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference with parameters of type BudgetValue
+static voidBudgetFunctions.activate(Concept concept, + BudgetValue budget) + +
+          Activate a concept by an incoming TaskLink
+static BudgetValueBudgetFunctions.distributeAmongLinks(BudgetValue b, + int n) + +
+          Distribute the budget of a task among the links to it
+static voidBudgetFunctions.forget(BudgetValue budget, + float forgetRate, + float relativeThreshold) + +
+          Decrease Priority after an item is used, called in Bag
+static voidBudgetFunctions.merge(BudgetValue baseValue, + BudgetValue adjustValue) + +
+          Merge an item into another one in a bag, when the two are identical except in budget values
+static BudgetValueBudgetFunctions.temporalIndCom(BudgetValue b1, + BudgetValue b2, + TruthValue t) + +
+          Special treatment for temporal induction and comparison among recent event, no feedback
+  +

+ + + + + +
+Uses of BudgetValue in nars.io
+  +

+ + + + + + + + + +
Methods in nars.io that return BudgetValue
+private static BudgetValueStringParser.parseBudget(java.lang.String s, + char punctuation, + TruthValue truth) + +
+          parse the input String into a BudgetValue
+  +

+ + + + + +
+Uses of BudgetValue in nars.main
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.main with parameters of type BudgetValue
+static voidMemory.activateConcept(Concept c, + BudgetValue b) + +
+          Adjust the activation level of a Concept
+static voidMemory.activatedTask(BudgetValue budget, + Sentence sentence, + boolean isInput) + +
+          Activated task coming from MatchingRules.trySolution
+static voidMemory.convertedJudgment(TruthValue truth, + BudgetValue budget) + +
+          Convert jusgment into different relation
+static voidMemory.doublePremiseTask(BudgetValue budget, + Term content, + TruthValue truth) + +
+          Shared final operations by all double-premise rules, called from the rules except StructuralRules
+static voidMemory.singlePremiseTask(BudgetValue budget, + Term content, + TruthValue truth) + +
+          Shared final operations by all single-premise rules, called in StructuralRules
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/Concept.html b/nars-dist/javadoc/nars/entity/class-use/Concept.html new file mode 100644 index 00000000..ee1d720a --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/Concept.html @@ -0,0 +1,287 @@ + + + + + + + +Uses of Class nars.entity.Concept (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.Concept

+
+ + + + + + + + + + + + + + + + + +
+Packages that use Concept
nars.guiGraphical user interface of the system 
nars.inferenceThe inference rules and control functions 
nars.mainTop-level classes of the system 
+  +

+ + + + + +
+Uses of Concept in nars.gui
+  +

+ + + + + + + + + +
Fields in nars.gui declared as Concept
+private  ConceptConceptWindow.concept + +
+          The concept to be displayed
+  +

+ + + + + + + + +
Constructors in nars.gui with parameters of type Concept
ConceptWindow(Concept concept) + +
+          Constructor
+  +

+ + + + + +
+Uses of Concept in nars.inference
+  +

+ + + + + + + + + +
Methods in nars.inference with parameters of type Concept
+static voidBudgetFunctions.activate(Concept concept, + BudgetValue budget) + +
+          Activate a concept by an incoming TaskLink
+  +

+ + + + + +
+Uses of Concept in nars.main
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.main that return Concept
+static ConceptMemory.getConcept(Term term) + +
+          Get the Concept associated to a Term, or create it.
+static ConceptMemory.nameToConcept(java.lang.String name) + +
+          Get an existing Concept for a given name
+static ConceptMemory.termToConcept(Term term) + +
+          Get an existing Concept for a given Term.
+  +

+ + + + + + + + + +
Methods in nars.main with parameters of type Concept
+static voidMemory.activateConcept(Concept c, + BudgetValue b) + +
+          Adjust the activation level of a Concept
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/Goal.html b/nars-dist/javadoc/nars/entity/class-use/Goal.html new file mode 100644 index 00000000..d91dc061 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/Goal.html @@ -0,0 +1,212 @@ + + + + + + + +Uses of Class nars.entity.Goal (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.Goal

+
+ + + + + + + + + +
+Packages that use Goal
nars.entityData entities that are independently stored 
+  +

+ + + + + +
+Uses of Goal in nars.entity
+  +

+ + + + + + + + + +
Fields in nars.entity with type parameters of type Goal
+private  java.util.ArrayList<Goal>Concept.directGoals + +
+          Goals directly requested on the term
+  +

+ + + + + + + + + +
Methods in nars.entity with parameters of type Goal
+private  voidConcept.processGoal(Goal goal, + Task task) + +
+          Direct processing a new goal
+  +

+ + + + + + + + +
Constructors in nars.entity with parameters of type Goal
Judgment(Goal g) + +
+          Construct a Judgment to indicate an operation just executed
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/Item.html b/nars-dist/javadoc/nars/entity/class-use/Item.html new file mode 100644 index 00000000..52201e1e --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/Item.html @@ -0,0 +1,260 @@ + + + + + + + +Uses of Class nars.entity.Item (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.Item

+
+ + + + + + + + + + + + + +
+Packages that use Item
nars.entityData entities that are independently stored 
nars.storageStorage management 
+  +

+ + + + + +
+Uses of Item in nars.entity
+  +

+ + + + + + + + + + + + + + + + + + + + + +
Subclasses of Item in nars.entity
+ classConcept + +
+          A concept contains information associated with a term, including directly + and indirectly related tasks and beliefs.
+ classTask + +
+          A task to be processed, consists of a Sentence and a BudgetValue
+ classTaskLink + +
+          Reference to a Task.
+ classTermLink + +
+          A link between a compound term and a component term
+  +

+ + + + + + + + + + + + + +
Methods in nars.entity with parameters of type Item
+ voidTask.merge(Item that) + +
+          Merge one Task into another
+ voidTaskLink.merge(Item that) + +
+          Merge one TaskLink into another
+  +

+ + + + + +
+Uses of Item in nars.storage
+  +

+ + + + + + + + + +
Classes in nars.storage with type parameters of type Item
+ classBag<Type extends Item> + +
+          A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/Judgment.html b/nars-dist/javadoc/nars/entity/class-use/Judgment.html new file mode 100644 index 00000000..cd869f47 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/Judgment.html @@ -0,0 +1,503 @@ + + + + + + + +Uses of Class nars.entity.Judgment (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.Judgment

+
+ + + + + + + + + + + + + + + + + +
+Packages that use Judgment
nars.entityData entities that are independently stored 
nars.inferenceThe inference rules and control functions 
nars.mainTop-level classes of the system 
+  +

+ + + + + +
+Uses of Judgment in nars.entity
+  +

+ + + + + + + + + +
Subclasses of Judgment in nars.entity
+ classGoal + +
+          A Goal is an event to be realized, and may conain query variables
+  +

+ + + + + + + + + +
Fields in nars.entity declared as Judgment
+protected  JudgmentSentence.bestSolution + +
+          For Question and Goal: best solution found so far
+  +

+ + + + + + + + + +
Fields in nars.entity with type parameters of type Judgment
+private  java.util.ArrayList<Judgment>Concept.directBeliefs + +
+          Judgments directly made about the term
+  +

+ + + + + + + + + + + + + +
Methods in nars.entity that return Judgment
+ JudgmentConcept.getBelief(Task task) + +
+          Select a belief to interact with the given task in inference
+ JudgmentSentence.getBestSolution() + +
+          Get the best-so-far solution for a Question or Goal
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.entity with parameters of type Judgment
+private  voidConcept.addToTable(Judgment newJudgment, + java.util.ArrayList table, + int capacity) + +
+          Add a new belief or goal into the table + Sort the beliefs/goals by rank, and remove redundant or low rank one
+(package private)  booleanJudgment.equivalentTo(Judgment that) + +
+          Check whether the judgment is equivalent to another one
+private  booleanConcept.isUpdate(Judgment newBelief, + Judgment oldBelief) + +
+          Distinguish update from revision [to be refined]
+private  voidConcept.processJudgment(Judgment judg, + Task task) + +
+          To accept a new judgment as belief, and check for revisions and solutions
+private  booleanConcept.reviseTable(Judgment newSentence, + Task task, + java.util.ArrayList table) + +
+          Revise existing beliefs or goals
+ voidSentence.setBestSolution(Judgment judg) + +
+          Set the best-so-far solution for a Question or Goal
+  +

+ + + + + +
+Uses of Judgment in nars.inference
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference with parameters of type Judgment
+(package private) static voidSyllogisticRules.abdIndCom(Term term1, + Term term2, + Sentence taskSentence, + Judgment belief, + int figure) + +
+          { S>, P>} |- { P>,

S>, P>}

+private static voidRuleTables.asymmetricAsymmetric(Sentence sentence, + Judgment belief, + int figure) + +
+          Syllogistic rules whose both premises are on the same asymmetric relation
+private static booleanMatchingRules.betterSolution(Judgment newSol, + Judgment oldSol, + Sentence problem) + +
+          Compare the quality of two solutions
+(package private) static voidCompositionalRules.composeCompound(Sentence taskSentence, + Judgment belief, + int index) + +
+          { M>,

M>} |- {<(S|P) ==> M>, <(S&P) ==> M>, <(S-P) ==> M>, <(P-S) ==> M>}

+(package private) static voidSyllogisticRules.dedExe(Term term1, + Term term2, + Sentence sentence, + Judgment belief) + +
+          { M>, P>} |- { P>,

S>}

+private static voidMatchingRules.inferToAsym(Judgment asym, + Judgment sym, + TemporalRules.Relation order) + +
+          { P>,

S>} |- P> + Produce an Inheritance/Implication from a Similarity/Equivalence and a reversed Inheritance/Implication

+private static voidMatchingRules.inferToSym(Judgment judgment1, + Judgment judgment2) + +
+          { P>,

S} |- p> + Produce Similarity/Equivalence from a pair of reversed Inheritance/Implication

+static voidMatchingRules.match(Task task, + Judgment belief) + +
+          The task and belief have the same content
+static floatBudgetFunctions.rankBelief(Judgment judg) + +
+          Determine the rank of a judgment by its confidence and originality (stamp length)
+(package private) static voidSyllogisticRules.resemblance(Term term1, + Term term2, + Judgment belief, + Sentence sentence, + int figure) + +
+          { M>, P>} |- P>
+static booleanMatchingRules.revision(Task task, + Judgment oldBelief, + boolean feedbackToLinks) + +
+          Belief revision
+(package private) static BudgetValueBudgetFunctions.solutionEval(Sentence problem, + Judgment solution, + Task task) + +
+          Evaluate the quality of a belief as a solution to a problem, then reward + the belief and de-prioritize the problem
+private static voidRuleTables.symmetricSymmetric(Judgment belief, + Sentence taskSentence, + int figure) + +
+          Syllogistic rules whose both premises are on the same symmetric relation
+static voidMatchingRules.trySolution(Sentence problem, + Judgment belief, + Task task) + +
+          Check if a Judgment provide a better answer to a Question
+static voidMatchingRules.update(Task task, + Judgment oldBelief) + +
+          Belief update
+  +

+ + + + + +
+Uses of Judgment in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main declared as Judgment
+static JudgmentMemory.currentBelief + +
+          Shortcut to the selected belief
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/Question.html b/nars-dist/javadoc/nars/entity/class-use/Question.html new file mode 100644 index 00000000..1b089307 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/Question.html @@ -0,0 +1,198 @@ + + + + + + + +Uses of Class nars.entity.Question (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.Question

+
+ + + + + + + + + +
+Packages that use Question
nars.entityData entities that are independently stored 
+  +

+ + + + + +
+Uses of Question in nars.entity
+  +

+ + + + + + + + + +
Fields in nars.entity declared as Question
+private  QuestionConcept.directQuestion + +
+          Question directly asked about the term
+  +

+ + + + + + + + + +
Methods in nars.entity with parameters of type Question
+private  voidConcept.processQuestion(Question ques, + Task task) + +
+          To answer a question by existing beliefs
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/Sentence.html b/nars-dist/javadoc/nars/entity/class-use/Sentence.html new file mode 100644 index 00000000..09f2d891 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/Sentence.html @@ -0,0 +1,527 @@ + + + + + + + +Uses of Class nars.entity.Sentence (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.Sentence

+
+ + + + + + + + + + + + + + + + + +
+Packages that use Sentence
nars.entityData entities that are independently stored 
nars.inferenceThe inference rules and control functions 
nars.mainTop-level classes of the system 
+  +

+ + + + + +
+Uses of Sentence in nars.entity
+  +

+ + + + + + + + + + + + + + + + + +
Subclasses of Sentence in nars.entity
+ classGoal + +
+          A Goal is an event to be realized, and may conain query variables
+ classJudgment + +
+          A Judgment is an piece of new knowledge to be absorbed.
+ classQuestion + +
+          A Question is a sentence without a truth value, and may conain query variables
+  +

+ + + + + + + + + +
Fields in nars.entity declared as Sentence
+private  SentenceTask.sentence + +
+          The sentence of the Task
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.entity that return Sentence
+ SentenceTask.getSentence() + +
+          Get the sentence
+static SentenceSentence.make(Sentence oldS, + Term term, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a derived Sentence from a template and some initial values.
+static SentenceSentence.make(Term term, + char punc, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a Sentence from an input String.
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.entity with parameters of type Sentence
+static SentenceSentence.make(Sentence oldS, + Term term, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a derived Sentence from a template and some initial values.
+ booleanSentence.noOverlapping(Sentence that) + +
+          Check whether one sentence has stamp overlapping with another one, and change the system cash
+ floatJudgment.solutionQuality(Sentence problem) + +
+          Evaluate the quality of the judgment as a solution to a problem
+  +

+ + + + + + + + +
Constructors in nars.entity with parameters of type Sentence
Task(Sentence s, + BudgetValue b) + +
+          Constructor
+  +

+ + + + + +
+Uses of Sentence in nars.inference
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference with parameters of type Sentence
+(package private) static voidSyllogisticRules.abdIndCom(Term term1, + Term term2, + Sentence taskSentence, + Judgment belief, + int figure) + +
+          { S>, P>} |- { P>,

S>, P>}

+(package private) static voidSyllogisticRules.analogy(Term term1, + Term term2, + Sentence asym, + Sentence sym, + int figure) + +
+          { P>, P>} |- P>
+private static voidRuleTables.asymmetricAsymmetric(Sentence sentence, + Judgment belief, + int figure) + +
+          Syllogistic rules whose both premises are on the same asymmetric relation
+private static voidRuleTables.asymmetricSymmetric(Sentence asym, + Sentence sym, + int figure) + +
+          Syllogistic rules whose first premise is on an asymmetric relation, and the + second on a symmetric relation
+private static booleanMatchingRules.betterSolution(Judgment newSol, + Judgment oldSol, + Sentence problem) + +
+          Compare the quality of two solutions
+(package private) static voidCompositionalRules.composeCompound(Sentence taskSentence, + Judgment belief, + int index) + +
+          { M>,

M>} |- {<(S|P) ==> M>, <(S&P) ==> M>, <(S-P) ==> M>, <(P-S) ==> M>}

+(package private) static voidSyllogisticRules.dedExe(Term term1, + Term term2, + Sentence sentence, + Judgment belief) + +
+          { M>, P>} |- { P>,

S>}

+(package private) static voidSyllogisticRules.detachment(Sentence mainSentence, + Sentence subSentence, + int s) + +
+          {< S> ==> P>>, S>} |- P> + {< S> ==> P>>, P>} |- S>
+private static voidRuleTables.detachmentWithVar(Sentence mainSentence, + Sentence subSentence, + int index) + +
+          The detachment rule, with variable unification
+private static StatementSyllogisticRules.introVarInd(Sentence sentence1, + Sentence sentence2, + int figure, + boolean isImplication) + +
+          { S>, P>} |- <<#x --> S> ==> <#x --> P>> + { S>, P>} |- <<#x --> S> <=> <#x --> P>>
+static voidMatchingRules.matchAsymSym(Sentence asym, + Sentence sym, + int figure) + +
+          Inheritance/Implication matches Similarity/Equivalence
+(package private) static voidSyllogisticRules.resemblance(Term term1, + Term term2, + Judgment belief, + Sentence sentence, + int figure) + +
+          { M>, P>} |- P>
+(package private) static BudgetValueBudgetFunctions.solutionEval(Sentence problem, + Judgment solution, + Task task) + +
+          Evaluate the quality of a belief as a solution to a problem, then reward + the belief and de-prioritize the problem
+private static voidRuleTables.symmetricSymmetric(Judgment belief, + Sentence taskSentence, + int figure) + +
+          Syllogistic rules whose both premises are on the same symmetric relation
+static voidMatchingRules.trySolution(Sentence problem, + Judgment belief, + Task task) + +
+          Check if a Judgment provide a better answer to a Question
+  +

+ + + + + +
+Uses of Sentence in nars.main
+  +

+ + + + + + + + + + + + + +
Methods in nars.main with parameters of type Sentence
+static voidMemory.activatedTask(BudgetValue budget, + Sentence sentence, + boolean isInput) + +
+          Activated task coming from MatchingRules.trySolution
+static voidMemory.report(Sentence sentence, + boolean input) + +
+          Display input/output sentence in the MainWindow.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html new file mode 100644 index 00000000..81ce7755 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html @@ -0,0 +1,213 @@ + + + + + + + +Uses of Class nars.entity.ShortFloat (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.ShortFloat

+
+ + + + + + + + + +
+Packages that use ShortFloat
nars.entityData entities that are independently stored 
+  +

+ + + + + +
+Uses of ShortFloat in nars.entity
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Fields in nars.entity declared as ShortFloat
+protected  ShortFloatTruthValue.confidence + +
+          The confidence factor of the truth value
+protected  ShortFloatBudgetValue.durability + +
+          The percent of priority to be kept in a constant period
+protected  ShortFloatTruthValue.frequency + +
+          The frequency factor of the truth value
+protected  ShortFloatBudgetValue.priority + +
+          The relative share of time resource to be allocated
+protected  ShortFloatBudgetValue.quality + +
+          The overall (context-independent) evaluation
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/Stamp.html b/nars-dist/javadoc/nars/entity/class-use/Stamp.html new file mode 100644 index 00000000..920329cd --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/Stamp.html @@ -0,0 +1,328 @@ + + + + + + + +Uses of Class nars.entity.Stamp (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.Stamp

+
+ + + + + + + + + + + + + +
+Packages that use Stamp
nars.entityData entities that are independently stored 
nars.mainTop-level classes of the system 
+  +

+ + + + + +
+Uses of Stamp in nars.entity
+  +

+ + + + + + + + + +
Fields in nars.entity declared as Stamp
+protected  StampSentence.stamp + +
+          Partial record of the derivation path
+  +

+ + + + + + + + + + + + + +
Methods in nars.entity that return Stamp
+ StampSentence.getStamp() + +
+          Get the stamp of the sentence
+static StampStamp.make(Stamp first, + Stamp second) + +
+          Try to merge two Stamps, return null if have overlap
+  +

+ + + + + + + + + + + + + + + + + + + + + +
Methods in nars.entity with parameters of type Stamp
+static SentenceSentence.make(Sentence oldS, + Term term, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a derived Sentence from a template and some initial values.
+static StampStamp.make(Stamp first, + Stamp second) + +
+          Try to merge two Stamps, return null if have overlap
+static SentenceSentence.make(Term term, + char punc, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a Sentence from an input String.
+ TemporalRules.RelationStamp.orderWith(Stamp that) + +
+          Compare two Stamps for their temporal order
+  +

+ + + + + + + + + + + + + + + + + +
Constructors in nars.entity with parameters of type Stamp
Goal(Term term, + char punc, + TruthValue t, + Stamp s) + +
+          Constructor
Judgment(Term term, + char punc, + TemporalRules.Relation s, + TruthValue t, + Stamp b) + +
+          Constructor
Question(Term term, + char punc, + TemporalRules.Relation t, + Stamp s) + +
+          COnstructor
Stamp(Stamp first, + Stamp second) + +
+          Generate a new stamp for derived sentence by merging the two from parents + the first one is no shorter than the second
+  +

+ + + + + +
+Uses of Stamp in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main declared as Stamp
+static StampMemory.currentStamp + +
+          Shortcut to the derived Stamp
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/Task.html b/nars-dist/javadoc/nars/entity/class-use/Task.html new file mode 100644 index 00000000..a66cf1c1 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/Task.html @@ -0,0 +1,627 @@ + + + + + + + +Uses of Class nars.entity.Task (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.Task

+
+ + + + + + + + + + + + + + + + + + + + + +
+Packages that use Task
nars.entityData entities that are independently stored 
nars.inferenceThe inference rules and control functions 
nars.mainTop-level classes of the system 
nars.operationBuilt-in operators 
+  +

+ + + + + +
+Uses of Task in nars.entity
+  +

+ + + + + + + + + +
Fields in nars.entity declared as Task
+private  TaskTaskLink.targetTask + +
+          The Task linked.
+  +

+ + + + + + + + + +
Methods in nars.entity that return Task
+ TaskTaskLink.getTargetTask() + +
+          Get the target Task
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.entity with parameters of type Task
+ voidConcept.directProcess(Task task) + +
+          Directly process a new task.
+ JudgmentConcept.getBelief(Task task) + +
+          Select a belief to interact with the given task in inference
+private  voidConcept.processGoal(Goal goal, + Task task) + +
+          Direct processing a new goal
+private  voidConcept.processJudgment(Judgment judg, + Task task) + +
+          To accept a new judgment as belief, and check for revisions and solutions
+private  voidConcept.processQuestion(Question ques, + Task task) + +
+          To answer a question by existing beliefs
+private  booleanConcept.reviseTable(Judgment newSentence, + Task task, + java.util.ArrayList table) + +
+          Revise existing beliefs or goals
+  +

+ + + + + + + + +
Constructors in nars.entity with parameters of type Task
TaskLink(Task t, + TermLink template, + BudgetValue v) + +
+          Constructor
+  +

+ + + + + +
+Uses of Task in nars.inference
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference with parameters of type Task
+static voidTemporalRules.eventProcessing(Task event1) + +
+          Simple temporal regularity discovery [To be refined]
+static voidMatchingRules.match(Task task, + Judgment belief) + +
+          The task and belief have the same content
+(package private) static BudgetValueBudgetFunctions.revise(TruthValue tTruth, + TruthValue bTruth, + TruthValue truth, + Task task, + boolean feedbackToLinks) + +
+          Evaluate the quality of a revision, then de-prioritize the premises
+static booleanMatchingRules.revision(Task task, + Judgment oldBelief, + boolean feedbackToLinks) + +
+          Belief revision
+(package private) static BudgetValueBudgetFunctions.solutionEval(Sentence problem, + Judgment solution, + Task task) + +
+          Evaluate the quality of a belief as a solution to a problem, then reward + the belief and de-prioritize the problem
+(package private) static voidSyllogisticRules.temporalIndCom(Task task1, + Task task2, + TemporalRules.Relation order) + +
+          { S>, P>} |- { P>,

S>, P>}

+(package private) static voidStructuralRules.transformProductImage(Inheritance inh, + CompoundTerm oldContent, + short[] indices, + Task task) + +
+          Equivalent transformation between products and images + {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> + { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> + { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)>
+static voidRuleTables.transformTask(Task task, + TaskLink tLink) + +
+          The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation
+static voidMatchingRules.trySolution(Sentence problem, + Judgment belief, + Task task) + +
+          Check if a Judgment provide a better answer to a Question
+static voidMatchingRules.update(Task task, + Judgment oldBelief) + +
+          Belief update
+(package private) static BudgetValueBudgetFunctions.update(Task task, + TruthValue bTruth) + +
+          Update a belief
+  +

+ + + + + +
+Uses of Task in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main declared as Task
+static TaskMemory.currentTask + +
+          Shortcut to the selected Task
+  +

+ + + + + + + + + + + + + +
Fields in nars.main with type parameters of type Task
+private static java.util.ArrayList<Task>Memory.newTasks + +
+          List of inference newTasks, to be processed in the next working cycle
+static java.util.ArrayList<Task>Memory.recentEvents + +
+          List of recent events, for temporal learning
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.main with parameters of type Task
+private static voidMemory.continuedProcess(Task task, + Term content) + +
+          Link to a new task from all relevant concepts for continued processing in + the near future for unspecified time.
+private static voidMemory.derivedTask(Task task) + +
+          Derived task comes from the inference rules.
+static voidMemory.executedTask(Task task) + +
+          Reporting executed task, and remember the event
+private static voidMemory.immediateProcess(Task task) + +
+          Imediate processing of a new task, in constant time + Local processing, in one concept only
+static voidMemory.inputTask(Task task) + +
+          Input task processing.
+  +

+ + + + + +
+Uses of Task in nars.operation
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.operation that return types with arguments of type Task
+ java.util.ArrayList<Task>Break.execute(Task task) + +
+           
+ java.util.ArrayList<Task>GoTo.execute(Task task) + +
+           
+ java.util.ArrayList<Task>Open.execute(Task task) + +
+           
+abstract  java.util.ArrayList<Task>Operator.execute(Task task) + +
+          Required method for every operation, specifying the operation
+ java.util.ArrayList<Task>Pick.execute(Task task) + +
+           
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.operation with parameters of type Task
+ voidOperator.call(Task task) + +
+          Execute an operation, then handle feedback
+ java.util.ArrayList<Task>Break.execute(Task task) + +
+           
+ java.util.ArrayList<Task>GoTo.execute(Task task) + +
+           
+ java.util.ArrayList<Task>Open.execute(Task task) + +
+           
+abstract  java.util.ArrayList<Task>Operator.execute(Task task) + +
+          Required method for every operation, specifying the operation
+ java.util.ArrayList<Task>Pick.execute(Task task) + +
+           
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html new file mode 100644 index 00000000..9058717c --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html @@ -0,0 +1,290 @@ + + + + + + + +Uses of Class nars.entity.TaskLink (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.TaskLink

+
+ + + + + + + + + + + + + + + + + + + + + +
+Packages that use TaskLink
nars.entityData entities that are independently stored 
nars.inferenceThe inference rules and control functions 
nars.mainTop-level classes of the system 
nars.storageStorage management 
+  +

+ + + + + +
+Uses of TaskLink in nars.entity
+  +

+ + + + + + + + + +
Methods in nars.entity with parameters of type TaskLink
+ voidConcept.insertTaskLink(TaskLink taskLink) + +
+          Insert a TaskLink into the TaskLink bag
+  +

+ + + + + +
+Uses of TaskLink in nars.inference
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.inference with parameters of type TaskLink
+static voidRuleTables.reason(TaskLink tLink, + TermLink bLink) + +
+          Entry point of the inference engine
+private static voidRuleTables.syllogisms(TaskLink tLink, + TermLink bLink, + Term taskTerm, + Term beliefTerm) + +
+          Meta-table of syllogistic rules, indexed by the content classes of the + taskSentence and the belief
+static voidRuleTables.transformTask(Task task, + TaskLink tLink) + +
+          The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation
+  +

+ + + + + +
+Uses of TaskLink in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main declared as TaskLink
+static TaskLinkMemory.currentTaskLink + +
+          Shortcut to the selected TaskLink
+  +

+ + + + + +
+Uses of TaskLink in nars.storage
+  +

+ + + + + + + + + +
Methods in nars.storage with parameters of type TaskLink
+ TermLinkTermLinkBag.takeOut(TaskLink taskLink) + +
+          Replace defualt to prevent repeated inference, by checking TaskLink
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/TermLink.html b/nars-dist/javadoc/nars/entity/class-use/TermLink.html new file mode 100644 index 00000000..064f94a0 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/TermLink.html @@ -0,0 +1,419 @@ + + + + + + + +Uses of Class nars.entity.TermLink (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.TermLink

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Packages that use TermLink
nars.entityData entities that are independently stored 
nars.inferenceThe inference rules and control functions 
nars.languageTerm hierarchy in Narsese 
nars.mainTop-level classes of the system 
nars.storageStorage management 
+  +

+ + + + + +
+Uses of TermLink in nars.entity
+  +

+ + + + + + + + + +
Subclasses of TermLink in nars.entity
+ classTaskLink + +
+          Reference to a Task.
+  +

+ + + + + + + + + +
Fields in nars.entity with type parameters of type TermLink
+private  java.util.ArrayList<TermLink>Concept.termLinkTemplates + +
+          Link templates of TermLink, only in concepts with CompoundTerm
+  +

+ + + + + + + + + +
Methods in nars.entity that return types with arguments of type TermLink
+ java.util.ArrayList<TermLink>Concept.getTermLinkTemplates() + +
+          Return the templates for TermLinks, only called in Memory.continuedProcess
+  +

+ + + + + + + + + + + + + +
Methods in nars.entity with parameters of type TermLink
+ voidConcept.insertTermLink(TermLink termLink) + +
+          Insert a TermLink into the TermLink bag
+ booleanTaskLink.novel(TermLink termLink) + +
+          To check whether a TaskLink should use a TermLink, return false if they + interacted recently
+  +

+ + + + + + + + + + + +
Constructors in nars.entity with parameters of type TermLink
TaskLink(Task t, + TermLink template, + BudgetValue v) + +
+          Constructor
TermLink(Term t, + TermLink template, + BudgetValue v) + +
+          Constructor to make actual TermLink from a template
+  +

+ + + + + +
+Uses of TermLink in nars.inference
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.inference with parameters of type TermLink
+private static intRuleTables.indexToFigure(TermLink link1, + TermLink link2) + +
+          Decide the figure of syllogism according to the locations of the common + term in the premises
+static voidRuleTables.reason(TaskLink tLink, + TermLink bLink) + +
+          Entry point of the inference engine
+private static voidRuleTables.syllogisms(TaskLink tLink, + TermLink bLink, + Term taskTerm, + Term beliefTerm) + +
+          Meta-table of syllogistic rules, indexed by the content classes of the + taskSentence and the belief
+  +

+ + + + + +
+Uses of TermLink in nars.language
+  +

+ + + + + + + + + +
Methods in nars.language that return types with arguments of type TermLink
+ java.util.ArrayList<TermLink>CompoundTerm.prepareComponentLinks() + +
+          Build TermLink templates to constant components and subcomponents
+  +

+ + + + + + + + + +
Method parameters in nars.language with type arguments of type TermLink
+private  voidCompoundTerm.prepareComponentLinks(java.util.ArrayList<TermLink> componentLinks, + short type, + CompoundTerm term) + +
+          Collect TermLink templates into a list, go down one level except in special cases
+  +

+ + + + + +
+Uses of TermLink in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main declared as TermLink
+static TermLinkMemory.currentBeliefLink + +
+          Shortcut to the selected TermLink
+  +

+ + + + + +
+Uses of TermLink in nars.storage
+  +

+ + + + + + + + + +
Methods in nars.storage that return TermLink
+ TermLinkTermLinkBag.takeOut(TaskLink taskLink) + +
+          Replace defualt to prevent repeated inference, by checking TaskLink
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html new file mode 100644 index 00000000..312d888b --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html @@ -0,0 +1,944 @@ + + + + + + + +Uses of Class nars.entity.TruthValue (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.entity.TruthValue

+
+ + + + + + + + + + + + + + + + + + + + + +
+Packages that use TruthValue
nars.entityData entities that are independently stored 
nars.inferenceThe inference rules and control functions 
nars.ioInput/output management 
nars.mainTop-level classes of the system 
+  +

+ + + + + +
+Uses of TruthValue in nars.entity
+  +

+ + + + + + + + + +
Fields in nars.entity declared as TruthValue
+protected  TruthValueSentence.truth + +
+          The truth value of Judgment or desire value of Goal
+  +

+ + + + + + + + + +
Methods in nars.entity that return TruthValue
+ TruthValueSentence.getTruth() + +
+          Get the truth value of the sentence
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.entity with parameters of type TruthValue
+ floatTruthValue.getExpDifAbs(TruthValue t) + +
+          Calculate the absolute difference of the expectation value and that of a given truth value
+static SentenceSentence.make(Sentence oldS, + Term term, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a derived Sentence from a template and some initial values.
+static SentenceSentence.make(Term term, + char punc, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a Sentence from an input String.
+  +

+ + + + + + + + + + + + + + +
Constructors in nars.entity with parameters of type TruthValue
Goal(Term term, + char punc, + TruthValue t, + Stamp s) + +
+          Constructor
Judgment(Term term, + char punc, + TemporalRules.Relation s, + TruthValue t, + Stamp b) + +
+          Constructor
TruthValue(TruthValue v) + +
+          Constructor with a TruthValue to clone
+  +

+ + + + + +
+Uses of TruthValue in nars.inference
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference that return TruthValue
+(package private) static TruthValueTruthFunctions.abduction(TruthValue v1, + TruthValue v2) + +
+          { M>,

M>} |- P>

+(package private) static TruthValueTruthFunctions.analogy(TruthValue v1, + TruthValue v2) + +
+          { M>, P>} |- P>
+(package private) static TruthValueTruthFunctions.comparison(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- P>
+(package private) static TruthValueTruthFunctions.contraposition(TruthValue v1) + +
+          { B>} |- <(--, B) ==> (--, A)>
+(package private) static TruthValueTruthFunctions.conversion(TruthValue v1) + +
+          { B>} |- A>
+(package private) static TruthValueTruthFunctions.deduction(TruthValue v1, + TruthValue v2) + +
+          { M>, P>} |- P>
+(package private) static TruthValueTruthFunctions.desireDed(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValueTruthFunctions.desireInd(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValueTruthFunctions.desireStrong(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValueTruthFunctions.desireWeak(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValueTruthFunctions.difference(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- (S-P)>
+(package private) static TruthValueTruthFunctions.exemplification(TruthValue v1, + TruthValue v2) + +
+          { S>,

M>} |- P>

+(package private) static TruthValueTruthFunctions.existAnalogy(TruthValue v1, + TruthValue v2) + +
+          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P>
+(package private) static TruthValueTruthFunctions.implied(TruthValue v1) + +
+          { B>, B} |- A
+(package private) static TruthValueTruthFunctions.implying(TruthValue v1) + +
+          { B>, A} |- B
+(package private) static TruthValueTruthFunctions.induction(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- P>
+(package private) static TruthValueTruthFunctions.intersection(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- (S&P)>
+(package private) static TruthValueTruthFunctions.negation(TruthValue v1) + +
+          {A} |- (--A)
+(package private) static TruthValueTruthFunctions.negImply(TruthValue v1) + +
+          { (--, B)>, A} |- B
+(package private) static TruthValueTruthFunctions.reduceConjunction(TruthValue v1, + TruthValue v2) + +
+          {(--, (&&, A, B)), B} |- (--, A)
+(package private) static TruthValueTruthFunctions.reduceConjunctionNeg(TruthValue v1, + TruthValue v2) + +
+          {(--, (&&, A, (--, B))), (--, B)} |- (--, A)
+(package private) static TruthValueTruthFunctions.reduceDisjunction(TruthValue v1, + TruthValue v2) + +
+          {(||, A, B), (--, B)} |- A
+(package private) static TruthValueTruthFunctions.resemblance(TruthValue v1, + TruthValue v2) + +
+          { M>, P>} |- P>
+(package private) static TruthValueTruthFunctions.revision(TruthValue v1, + TruthValue v2) + +
+          { P>, P>} |- P>
+(package private) static TruthValueTruthFunctions.temporalInduction(TruthValue v1) + +
+          Make temporal hypothesis
+(package private) static TruthValueTruthFunctions.union(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- (S|P)>
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference with parameters of type TruthValue
+(package private) static TruthValueTruthFunctions.abduction(TruthValue v1, + TruthValue v2) + +
+          { M>,

M>} |- P>

+(package private) static TruthValueTruthFunctions.analogy(TruthValue v1, + TruthValue v2) + +
+          { M>, P>} |- P>
+static BudgetValueBudgetFunctions.backward(TruthValue truth) + +
+          Backward inference result and adjustment, stronger case
+static BudgetValueBudgetFunctions.backwardWeak(TruthValue truth) + +
+          Backward inference result and adjustment, weaker case
+(package private) static TruthValueTruthFunctions.comparison(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- P>
+static BudgetValueBudgetFunctions.compoundForward(TruthValue truth, + Term content) + +
+          Forward inference with CompoundTerm conclusion
+(package private) static TruthValueTruthFunctions.contraposition(TruthValue v1) + +
+          { B>} |- <(--, B) ==> (--, A)>
+(package private) static TruthValueTruthFunctions.conversion(TruthValue v1) + +
+          { B>} |- A>
+(package private) static TruthValueTruthFunctions.deduction(TruthValue v1, + TruthValue v2) + +
+          { M>, P>} |- P>
+(package private) static TruthValueTruthFunctions.desireDed(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValueTruthFunctions.desireInd(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValueTruthFunctions.desireStrong(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValueTruthFunctions.desireWeak(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValueTruthFunctions.difference(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- (S-P)>
+(package private) static TruthValueTruthFunctions.exemplification(TruthValue v1, + TruthValue v2) + +
+          { S>,

M>} |- P>

+(package private) static TruthValueTruthFunctions.existAnalogy(TruthValue v1, + TruthValue v2) + +
+          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P>
+(package private) static BudgetValueBudgetFunctions.forward(TruthValue truth) + +
+          Forward inference result and adjustment
+(package private) static TruthValueTruthFunctions.implied(TruthValue v1) + +
+          { B>, B} |- A
+(package private) static TruthValueTruthFunctions.implying(TruthValue v1) + +
+          { B>, A} |- B
+(package private) static TruthValueTruthFunctions.induction(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- P>
+(package private) static TruthValueTruthFunctions.intersection(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- (S&P)>
+(package private) static TruthValueTruthFunctions.negation(TruthValue v1) + +
+          {A} |- (--A)
+(package private) static TruthValueTruthFunctions.negImply(TruthValue v1) + +
+          { (--, B)>, A} |- B
+private static voidCompositionalRules.processComposed(Statement statement, + Term subject, + Term predicate, + TruthValue truth) + +
+          Finish composing compound term
+(package private) static TruthValueTruthFunctions.reduceConjunction(TruthValue v1, + TruthValue v2) + +
+          {(--, (&&, A, B)), B} |- (--, A)
+(package private) static TruthValueTruthFunctions.reduceConjunctionNeg(TruthValue v1, + TruthValue v2) + +
+          {(--, (&&, A, (--, B))), (--, B)} |- (--, A)
+(package private) static TruthValueTruthFunctions.reduceDisjunction(TruthValue v1, + TruthValue v2) + +
+          {(||, A, B), (--, B)} |- A
+(package private) static TruthValueTruthFunctions.resemblance(TruthValue v1, + TruthValue v2) + +
+          { M>, P>} |- P>
+(package private) static BudgetValueBudgetFunctions.revise(TruthValue tTruth, + TruthValue bTruth, + TruthValue truth, + Task task, + boolean feedbackToLinks) + +
+          Evaluate the quality of a revision, then de-prioritize the premises
+(package private) static TruthValueTruthFunctions.revision(TruthValue v1, + TruthValue v2) + +
+          { P>, P>} |- P>
+private static voidStructuralRules.structuralStatement(Term subject, + Term predicate, + TruthValue truth) + +
+          Common final operations of the above two methods
+static BudgetValueBudgetFunctions.temporalIndCom(BudgetValue b1, + BudgetValue b2, + TruthValue t) + +
+          Special treatment for temporal induction and comparison among recent event, no feedback
+(package private) static TruthValueTruthFunctions.temporalInduction(TruthValue v1) + +
+          Make temporal hypothesis
+static floatBudgetFunctions.truthToQuality(TruthValue t) + +
+          Determine the quality of a judgment by its truth value alone
+(package private) static TruthValueTruthFunctions.union(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- (S|P)>
+(package private) static BudgetValueBudgetFunctions.update(Task task, + TruthValue bTruth) + +
+          Update a belief
+  +

+ + + + + +
+Uses of TruthValue in nars.io
+  +

+ + + + + + + + + +
Methods in nars.io that return TruthValue
+private static TruthValueStringParser.parseTruth(java.lang.String s, + char type) + +
+          parse the input String into a TruthValue (or DesireValue)
+  +

+ + + + + + + + + +
Methods in nars.io with parameters of type TruthValue
+private static BudgetValueStringParser.parseBudget(java.lang.String s, + char punctuation, + TruthValue truth) + +
+          parse the input String into a BudgetValue
+  +

+ + + + + +
+Uses of TruthValue in nars.main
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.main with parameters of type TruthValue
+static voidMemory.convertedJudgment(TruthValue truth, + BudgetValue budget) + +
+          Convert jusgment into different relation
+static voidMemory.doublePremiseTask(BudgetValue budget, + Term content, + TruthValue truth) + +
+          Shared final operations by all double-premise rules, called from the rules except StructuralRules
+static voidMemory.singlePremiseTask(BudgetValue budget, + Term content, + TruthValue truth) + +
+          Shared final operations by all single-premise rules, called in StructuralRules
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/package-frame.html b/nars-dist/javadoc/nars/entity/package-frame.html new file mode 100644 index 00000000..9e44dd82 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/package-frame.html @@ -0,0 +1,57 @@ + + + + + + + +nars.entity (NARS Document) + + + + + + + + + + + +nars.entity + + + + +
+Classes  + +
+BudgetValue +
+Concept +
+Goal +
+Item +
+Judgment +
+Question +
+Sentence +
+ShortFloat +
+Stamp +
+Task +
+TaskLink +
+TermLink +
+TruthValue
+ + + + diff --git a/nars-dist/javadoc/nars/entity/package-summary.html b/nars-dist/javadoc/nars/entity/package-summary.html new file mode 100644 index 00000000..1e464916 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/package-summary.html @@ -0,0 +1,245 @@ + + + + + + + +nars.entity (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package nars.entity +

+Data entities that are independently stored +

+See: +
+          Description +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class Summary
BudgetValueA triple of priority (current), durability (decay), and quality (long-term average).
ConceptA concept contains information associated with a term, including directly + and indirectly related tasks and beliefs.
GoalA Goal is an event to be realized, and may conain query variables
ItemAn item is an object that can be put into a Bag, + to participate in the resource competation of the system.
JudgmentA Judgment is an piece of new knowledge to be absorbed.
QuestionA Question is a sentence without a truth value, and may conain query variables
SentenceA Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
ShortFloatA float value in [0, 1], with 4 digits accuracy.
StampEach Sentence has a get of serial numbers of a constant length attached.
TaskA task to be processed, consists of a Sentence and a BudgetValue
TaskLinkReference to a Task.
TermLinkA link between a compound term and a component term
TruthValueFrequency and confidence.
+  + +

+

+Package nars.entity Description +

+ +

+Data entities that are independently stored + +

Package Specification

+ +
    +
  • ShortFloats: BudgetValue (priority/durability/quality) and TruthValue (frequency/confidence)
  • +
  • Stamp: serial numbers associated to TruthVallue
  • +
  • Sentence: a Term, a TruthValue, and a Stamp. A Sentence can be a Judgment, a Goal, or a Question.
  • +
  • Task: a Sentence to be processed.
  • +
  • TermLink: built in pair between a compound term and a component term.
  • +
  • TaskLink: special TermLink refering to a Task, whose Term equals or contains the current Term.
  • +
  • Concept: labeled by a Term, contains a TaskLink bag and a TermLink bag for indirect tasks/beliefs, as well as beliefs/questions/goals directly on the Term.
  • +
  • Item: Concept, Task, or TermLink
  • +
+ +in NARS, each task is processed in two stages: +
    +
  1. Direct processing by matching, in the concept corresponding to the content, in one step. It happens when the task is inserted into memory.
  2. +
  3. Indirect processing by reasoning, in related concepts and unlimited steps. It happens in each inference cycle.
  4. +
+The transmission from (1) to (2) corresponds to "decision making". +

+Inference between premises with no shared term can only happen among new events, as temporal induction/comparison. +

+ +

+

+
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/package-tree.html b/nars-dist/javadoc/nars/entity/package-tree.html new file mode 100644 index 00000000..db991681 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/package-tree.html @@ -0,0 +1,168 @@ + + + + + + + +nars.entity Class Hierarchy (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package nars.entity +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/entity/package-use.html b/nars-dist/javadoc/nars/entity/package-use.html new file mode 100644 index 00000000..b9510daf --- /dev/null +++ b/nars-dist/javadoc/nars/entity/package-use.html @@ -0,0 +1,483 @@ + + + + + + + +Uses of Package nars.entity (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Package
nars.entity

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Packages that use nars.entity
nars.entityData entities that are independently stored 
nars.guiGraphical user interface of the system 
nars.inferenceThe inference rules and control functions 
nars.ioInput/output management 
nars.languageTerm hierarchy in Narsese 
nars.mainTop-level classes of the system 
nars.operationBuilt-in operators 
nars.storageStorage management 
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Classes in nars.entity used by nars.entity
BudgetValue + +
+          A triple of priority (current), durability (decay), and quality (long-term average).
Goal + +
+          A Goal is an event to be realized, and may conain query variables
Item + +
+          An item is an object that can be put into a Bag, + to participate in the resource competation of the system.
Judgment + +
+          A Judgment is an piece of new knowledge to be absorbed.
Question + +
+          A Question is a sentence without a truth value, and may conain query variables
Sentence + +
+          A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
ShortFloat + +
+          A float value in [0, 1], with 4 digits accuracy.
Stamp + +
+          Each Sentence has a get of serial numbers of a constant length attached.
Task + +
+          A task to be processed, consists of a Sentence and a BudgetValue
TaskLink + +
+          Reference to a Task.
TermLink + +
+          A link between a compound term and a component term
TruthValue + +
+          Frequency and confidence.
+  +

+ + + + + + + + +
+Classes in nars.entity used by nars.gui
Concept + +
+          A concept contains information associated with a term, including directly + and indirectly related tasks and beliefs.
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Classes in nars.entity used by nars.inference
BudgetValue + +
+          A triple of priority (current), durability (decay), and quality (long-term average).
Concept + +
+          A concept contains information associated with a term, including directly + and indirectly related tasks and beliefs.
Judgment + +
+          A Judgment is an piece of new knowledge to be absorbed.
Sentence + +
+          A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
Task + +
+          A task to be processed, consists of a Sentence and a BudgetValue
TaskLink + +
+          Reference to a Task.
TermLink + +
+          A link between a compound term and a component term
TruthValue + +
+          Frequency and confidence.
+  +

+ + + + + + + + + + + +
+Classes in nars.entity used by nars.io
BudgetValue + +
+          A triple of priority (current), durability (decay), and quality (long-term average).
TruthValue + +
+          Frequency and confidence.
+  +

+ + + + + + + + +
+Classes in nars.entity used by nars.language
TermLink + +
+          A link between a compound term and a component term
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Classes in nars.entity used by nars.main
BudgetValue + +
+          A triple of priority (current), durability (decay), and quality (long-term average).
Concept + +
+          A concept contains information associated with a term, including directly + and indirectly related tasks and beliefs.
Judgment + +
+          A Judgment is an piece of new knowledge to be absorbed.
Sentence + +
+          A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
Stamp + +
+          Each Sentence has a get of serial numbers of a constant length attached.
Task + +
+          A task to be processed, consists of a Sentence and a BudgetValue
TaskLink + +
+          Reference to a Task.
TermLink + +
+          A link between a compound term and a component term
TruthValue + +
+          Frequency and confidence.
+  +

+ + + + + + + + +
+Classes in nars.entity used by nars.operation
Task + +
+          A task to be processed, consists of a Sentence and a BudgetValue
+  +

+ + + + + + + + + + + + + + +
+Classes in nars.entity used by nars.storage
Item + +
+          An item is an object that can be put into a Bag, + to participate in the resource competation of the system.
TaskLink + +
+          Reference to a Task.
TermLink + +
+          A link between a compound term and a component term
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/BagWindow.html b/nars-dist/javadoc/nars/gui/BagWindow.html new file mode 100644 index 00000000..cb8ea9cf --- /dev/null +++ b/nars-dist/javadoc/nars/gui/BagWindow.html @@ -0,0 +1,679 @@ + + + + + + + +BagWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.gui +
+Class BagWindow

+
+java.lang.Object
+  extended by java.awt.Component
+      extended by java.awt.Container
+          extended by java.awt.Window
+              extended by java.awt.Frame
+                  extended by nars.gui.NarsFrame
+                      extended by nars.gui.BagWindow
+
+
+
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.event.AdjustmentListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
+
+
+
+
public class BagWindow
extends NarsFrame
implements java.awt.event.ActionListener, java.awt.event.AdjustmentListener
+ + +

+Window display the priority distribution of items within a given bag +

+ +

+

+
See Also:
Serialized Form
+
+ +

+ + + + + + + +
+Nested Class Summary
+ + + + + + + +
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+private  Bagbag + +
+          The bag to be displayed
+private  java.awt.ButtoncloseButton + +
+          Control buttons
+private static intcounter + +
+          The location of the display area, shifted according to the number of windows openned
+private  java.awt.ButtonplayButton + +
+          Control buttons
+private  intshowLevel + +
+          The lowest level displayed
+private  java.awt.ButtonstopButton + +
+          Control buttons
+private  java.awt.TextAreatext + +
+          Display area
+private  java.awt.ScrollbarvalueBar + +
+          Adjustable display level
+private  java.awt.LabelvalueLabel + +
+          Display label
+ + + + + + + +
Fields inherited from class nars.gui.NarsFrame
DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
+ + + + + + + +
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
+ + + + + + + +
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
+ + + + + + + +
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
+  + + + + + + + + + + +
+Constructor Summary
BagWindow(Bag b, + java.lang.String title) + +
+          Constructor
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ voidactionPerformed(java.awt.event.ActionEvent e) + +
+          Handling button click
+ voidadjustmentValueChanged(java.awt.event.AdjustmentEvent e) + +
+          Handling scrollbar movement
+ voidpost(java.lang.String str) + +
+          Post the bag content
+ intshowLevel() + +
+          The lowest display level
+ + + + + + + +
Methods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
+ + + + + + + +
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
+ + + + + + + +
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
+ + + + + + + +
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+ + + + + + + +
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
+  +

+ + + + + + + + +
+Field Detail
+ +

+bag

+
+private Bag bag
+
+
The bag to be displayed +

+

+
+
+
+ +

+showLevel

+
+private int showLevel
+
+
The lowest level displayed +

+

+
+
+
+ +

+playButton

+
+private java.awt.Button playButton
+
+
Control buttons +

+

+
+
+
+ +

+stopButton

+
+private java.awt.Button stopButton
+
+
Control buttons +

+

+
+
+
+ +

+closeButton

+
+private java.awt.Button closeButton
+
+
Control buttons +

+

+
+
+
+ +

+text

+
+private java.awt.TextArea text
+
+
Display area +

+

+
+
+
+ +

+valueLabel

+
+private java.awt.Label valueLabel
+
+
Display label +

+

+
+
+
+ +

+valueBar

+
+private java.awt.Scrollbar valueBar
+
+
Adjustable display level +

+

+
+
+
+ +

+counter

+
+private static int counter
+
+
The location of the display area, shifted according to the number of windows openned +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+BagWindow

+
+public BagWindow(Bag b,
+                 java.lang.String title)
+
+
Constructor +

+

+
Parameters:
b - The bag to be displayed
title - The title of the window
+
+ + + + + + + + +
+Method Detail
+ +

+post

+
+public void post(java.lang.String str)
+
+
Post the bag content +

+

+
+
+
+
Parameters:
str - The text
+
+
+
+ +

+showLevel

+
+public int showLevel()
+
+
The lowest display level +

+

+
+
+
+ +
Returns:
The level
+
+
+
+ +

+actionPerformed

+
+public void actionPerformed(java.awt.event.ActionEvent e)
+
+
Handling button click +

+

+
Specified by:
actionPerformed in interface java.awt.event.ActionListener
+
+
+
Parameters:
e - The ActionEvent
+
+
+
+ +

+adjustmentValueChanged

+
+public void adjustmentValueChanged(java.awt.event.AdjustmentEvent e)
+
+
Handling scrollbar movement +

+

+
Specified by:
adjustmentValueChanged in interface java.awt.event.AdjustmentListener
+
+
+
Parameters:
e - The AdjustmentEvent
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/ConceptWindow.html b/nars-dist/javadoc/nars/gui/ConceptWindow.html new file mode 100644 index 00000000..4d1298c8 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/ConceptWindow.html @@ -0,0 +1,548 @@ + + + + + + + +ConceptWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.gui +
+Class ConceptWindow

+
+java.lang.Object
+  extended by java.awt.Component
+      extended by java.awt.Container
+          extended by java.awt.Window
+              extended by java.awt.Frame
+                  extended by nars.gui.NarsFrame
+                      extended by nars.gui.ConceptWindow
+
+
+
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
+
+
+
+
public class ConceptWindow
extends NarsFrame
implements java.awt.event.ActionListener
+ + +

+Window displaying the content of a Concept, such as beliefs, goals, and questions +

+ +

+

+
See Also:
Serialized Form
+
+ +

+ + + + + + + +
+Nested Class Summary
+ + + + + + + +
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+private  java.awt.ButtoncloseButton + +
+          Control buttons
+private  Conceptconcept + +
+          The concept to be displayed
+private  java.awt.ButtonplayButton + +
+          Control buttons
+private  java.awt.ButtonstopButton + +
+          Control buttons
+private  java.awt.TextAreatext + +
+          Display area
+ + + + + + + +
Fields inherited from class nars.gui.NarsFrame
DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
+ + + + + + + +
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
+ + + + + + + +
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
+ + + + + + + +
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
+  + + + + + + + + + + +
+Constructor Summary
ConceptWindow(Concept concept) + +
+          Constructor
+  + + + + + + + + + + + + + + + +
+Method Summary
+ voidactionPerformed(java.awt.event.ActionEvent e) + +
+          Handling button click
+ voidpost(java.lang.String str) + +
+          Display the content of the concept
+ + + + + + + +
Methods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
+ + + + + + + +
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
+ + + + + + + +
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
+ + + + + + + +
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+ + + + + + + +
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
+  +

+ + + + + + + + +
+Field Detail
+ +

+playButton

+
+private java.awt.Button playButton
+
+
Control buttons +

+

+
+
+
+ +

+stopButton

+
+private java.awt.Button stopButton
+
+
Control buttons +

+

+
+
+
+ +

+closeButton

+
+private java.awt.Button closeButton
+
+
Control buttons +

+

+
+
+
+ +

+text

+
+private java.awt.TextArea text
+
+
Display area +

+

+
+
+
+ +

+concept

+
+private Concept concept
+
+
The concept to be displayed +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+ConceptWindow

+
+public ConceptWindow(Concept concept)
+
+
Constructor +

+

+
Parameters:
concept - The concept to be displayed
+
+ + + + + + + + +
+Method Detail
+ +

+post

+
+public void post(java.lang.String str)
+
+
Display the content of the concept +

+

+
+
+
+
Parameters:
str - The text to be displayed
+
+
+
+ +

+actionPerformed

+
+public void actionPerformed(java.awt.event.ActionEvent e)
+
+
Handling button click +

+

+
Specified by:
actionPerformed in interface java.awt.event.ActionListener
+
+
+
Parameters:
e - The ActionEvent
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/InferenceWindow.html b/nars-dist/javadoc/nars/gui/InferenceWindow.html new file mode 100644 index 00000000..95063236 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/InferenceWindow.html @@ -0,0 +1,598 @@ + + + + + + + +InferenceWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.gui +
+Class InferenceWindow

+
+java.lang.Object
+  extended by java.awt.Component
+      extended by java.awt.Container
+          extended by java.awt.Window
+              extended by java.awt.Frame
+                  extended by nars.gui.NarsFrame
+                      extended by nars.gui.InferenceWindow
+
+
+
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
+
+
+
+
public class InferenceWindow
extends NarsFrame
implements java.awt.event.ActionListener
+ + +

+Window displying inference log +

+ +

+

+
See Also:
Serialized Form
+
+ +

+ + + + + + + +
+Nested Class Summary
+ + + + + + + +
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+private  java.awt.ButtonhideButton + +
+          Control buttons
+private  java.awt.ButtonplayButton + +
+          Control buttons
+private  java.awt.ButtonstopButton + +
+          Control buttons
+private  java.awt.TextAreatext + +
+          Display area
+ + + + + + + +
Fields inherited from class nars.gui.NarsFrame
DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
+ + + + + + + +
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
+ + + + + + + +
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
+ + + + + + + +
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
+  + + + + + + + + + + +
+Constructor Summary
InferenceWindow() + +
+          Constructor
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ voidactionPerformed(java.awt.event.ActionEvent e) + +
+          Handling button click
+ voidappend(java.lang.String str) + +
+          Append a new line to display
+ voidclear() + +
+          Clear display
+ voidresetBackground() + +
+          Reset background color after file saving
+ voidswitchBackground() + +
+          Change background color to remind the on-going file saving
+ + + + + + + +
Methods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
+ + + + + + + +
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
+ + + + + + + +
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
+ + + + + + + +
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+ + + + + + + +
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
+  +

+ + + + + + + + +
+Field Detail
+ +

+playButton

+
+private java.awt.Button playButton
+
+
Control buttons +

+

+
+
+
+ +

+stopButton

+
+private java.awt.Button stopButton
+
+
Control buttons +

+

+
+
+
+ +

+hideButton

+
+private java.awt.Button hideButton
+
+
Control buttons +

+

+
+
+
+ +

+text

+
+private java.awt.TextArea text
+
+
Display area +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+InferenceWindow

+
+public InferenceWindow()
+
+
Constructor +

+

+ + + + + + + + +
+Method Detail
+ +

+clear

+
+public void clear()
+
+
Clear display +

+

+
+
+
+
+
+
+
+ +

+append

+
+public void append(java.lang.String str)
+
+
Append a new line to display +

+

+
+
+
+
Parameters:
str - Text to be added into display
+
+
+
+ +

+actionPerformed

+
+public void actionPerformed(java.awt.event.ActionEvent e)
+
+
Handling button click +

+

+
Specified by:
actionPerformed in interface java.awt.event.ActionListener
+
+
+
Parameters:
e - The ActionEvent
+
+
+
+ +

+switchBackground

+
+public void switchBackground()
+
+
Change background color to remind the on-going file saving +

+

+
+
+
+
+
+
+
+ +

+resetBackground

+
+public void resetBackground()
+
+
Reset background color after file saving +

+

+
+
+
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/InputWindow.html b/nars-dist/javadoc/nars/gui/InputWindow.html new file mode 100644 index 00000000..a2dfd874 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/InputWindow.html @@ -0,0 +1,616 @@ + + + + + + + +InputWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.gui +
+Class InputWindow

+
+java.lang.Object
+  extended by java.awt.Component
+      extended by java.awt.Container
+          extended by java.awt.Window
+              extended by java.awt.Frame
+                  extended by nars.gui.NarsFrame
+                      extended by nars.gui.InputWindow
+
+
+
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
+
+
+
+
public class InputWindow
extends NarsFrame
implements java.awt.event.ActionListener
+ + +

+Input window, accepting user tasks +

+ +

+

+
See Also:
Serialized Form
+
+ +

+ + + + + + + +
+Nested Class Summary
+ + + + + + + +
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+private  java.awt.ButtonclearButton + +
+          Control buttons
+private  java.awt.ButtoncloseButton + +
+          Control buttons
+private  java.awt.ButtonholdButton + +
+          Control buttons
+private  java.awt.TextAreainputText + +
+          Input area
+private  java.awt.ButtonokButton + +
+          Control buttons
+private  booleanready + +
+          Whether the window is ready to accept new input
+ + + + + + + +
Fields inherited from class nars.gui.NarsFrame
DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
+ + + + + + + +
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
+ + + + + + + +
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
+ + + + + + + +
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
+  + + + + + + + + + + +
+Constructor Summary
InputWindow() + +
+          Constructor
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ voidactionPerformed(java.awt.event.ActionEvent e) + +
+          Handling button click
+ longgetInput() + +
+          Get input lines, and send them to Memory
+ java.lang.StringgetLine() + +
+          Get one input lines
+ voidinit() + +
+          Initialize the window
+ + + + + + + +
Methods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
+ + + + + + + +
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
+ + + + + + + +
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
+ + + + + + + +
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+ + + + + + + +
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
+  +

+ + + + + + + + +
+Field Detail
+ +

+okButton

+
+private java.awt.Button okButton
+
+
Control buttons +

+

+
+
+
+ +

+holdButton

+
+private java.awt.Button holdButton
+
+
Control buttons +

+

+
+
+
+ +

+clearButton

+
+private java.awt.Button clearButton
+
+
Control buttons +

+

+
+
+
+ +

+closeButton

+
+private java.awt.Button closeButton
+
+
Control buttons +

+

+
+
+
+ +

+inputText

+
+private java.awt.TextArea inputText
+
+
Input area +

+

+
+
+
+ +

+ready

+
+private boolean ready
+
+
Whether the window is ready to accept new input +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+InputWindow

+
+public InputWindow()
+
+
Constructor +

+

+ + + + + + + + +
+Method Detail
+ +

+init

+
+public void init()
+
+
Initialize the window +

+

+
+
+
+
+
+
+
+ +

+actionPerformed

+
+public void actionPerformed(java.awt.event.ActionEvent e)
+
+
Handling button click +

+

+
Specified by:
actionPerformed in interface java.awt.event.ActionListener
+
+
+
Parameters:
e - The ActionEvent
+
+
+
+ +

+getLine

+
+public java.lang.String getLine()
+
+
Get one input lines +

+

+
+
+
+ +
Returns:
The top line in the input window
+
+
+
+ +

+getInput

+
+public long getInput()
+
+
Get input lines, and send them to Memory +

+

+
+
+
+ +
Returns:
Nember of running steps, if any
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/MainWindow.html b/nars-dist/javadoc/nars/gui/MainWindow.html new file mode 100644 index 00000000..c45d7fef --- /dev/null +++ b/nars-dist/javadoc/nars/gui/MainWindow.html @@ -0,0 +1,818 @@ + + + + + + + +MainWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.gui +
+Class MainWindow

+
+java.lang.Object
+  extended by java.awt.Component
+      extended by java.awt.Container
+          extended by java.awt.Window
+              extended by java.awt.Frame
+                  extended by nars.gui.NarsFrame
+                      extended by nars.gui.MainWindow
+
+
+
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
+
+
+
+
public class MainWindow
extends NarsFrame
implements java.awt.event.ActionListener
+ + +

+Main window of NARS GUI +

+ +

+

+
See Also:
Serialized Form
+
+ +

+ + + + + + + +
+Nested Class Summary
+ + + + + + + +
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+static TermWindowconceptWin + +
+          Window to accept a Term to be looked into
+private  java.awt.ButtonexitButton + +
+          Control buttons
+static ParameterWindowforgetBW + +
+          Windows for run-time parameter adjustment
+static ParameterWindowforgetCW + +
+          Windows for run-time parameter adjustment
+static ParameterWindowforgetTW + +
+          Windows for run-time parameter adjustment
+static InputWindowinputWindow + +
+          Input experience window
+private  java.awt.TextAreaioText + +
+          Experience display area
+private  java.awt.ButtonrunButton + +
+          Control buttons
+private  booleansavingExp + +
+          Whether the experience is saving into a file
+static ParameterWindowsilentW + +
+          Windows for run-time parameter adjustment
+private  java.awt.ButtonstopButton + +
+          Control buttons
+private  longtimer + +
+          System clock
+private  java.awt.LabeltimerLabel + +
+          Label of the clock
+private  java.awt.TextFieldtimerText + +
+          Clock display field
+private  java.awt.ButtonwalkButton + +
+          Control buttons
+ + + + + + + +
Fields inherited from class nars.gui.NarsFrame
DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
+ + + + + + + +
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
+ + + + + + + +
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
+ + + + + + + +
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
+  + + + + + + + + + + +
+Constructor Summary
MainWindow() + +
+          Constructor
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ voidactionPerformed(java.awt.event.ActionEvent e) + +
+          Handling button click
+ voidinit() + +
+          Initialize the system for a new run
+private  voidinitTimer() + +
+          Reset timer and its display
+ voidpost(java.lang.String line) + +
+          Add new line to the display, plus the time interval
+ voidtickTimer() + +
+          Update timer and its display
+ + + + + + + +
Methods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
+ + + + + + + +
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
+ + + + + + + +
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
+ + + + + + + +
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+ + + + + + + +
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
+  +

+ + + + + + + + +
+Field Detail
+ +

+ioText

+
+private java.awt.TextArea ioText
+
+
Experience display area +

+

+
+
+
+ +

+stopButton

+
+private java.awt.Button stopButton
+
+
Control buttons +

+

+
+
+
+ +

+walkButton

+
+private java.awt.Button walkButton
+
+
Control buttons +

+

+
+
+
+ +

+runButton

+
+private java.awt.Button runButton
+
+
Control buttons +

+

+
+
+
+ +

+exitButton

+
+private java.awt.Button exitButton
+
+
Control buttons +

+

+
+
+
+ +

+timerText

+
+private java.awt.TextField timerText
+
+
Clock display field +

+

+
+
+
+ +

+timerLabel

+
+private java.awt.Label timerLabel
+
+
Label of the clock +

+

+
+
+
+ +

+timer

+
+private long timer
+
+
System clock +

+

+
+
+
+ +

+savingExp

+
+private boolean savingExp
+
+
Whether the experience is saving into a file +

+

+
+
+
+ +

+inputWindow

+
+public static InputWindow inputWindow
+
+
Input experience window +

+

+
+
+
+ +

+conceptWin

+
+public static TermWindow conceptWin
+
+
Window to accept a Term to be looked into +

+

+
+
+
+ +

+forgetTW

+
+public static ParameterWindow forgetTW
+
+
Windows for run-time parameter adjustment +

+

+
+
+
+ +

+forgetBW

+
+public static ParameterWindow forgetBW
+
+
Windows for run-time parameter adjustment +

+

+
+
+
+ +

+forgetCW

+
+public static ParameterWindow forgetCW
+
+
Windows for run-time parameter adjustment +

+

+
+
+
+ +

+silentW

+
+public static ParameterWindow silentW
+
+
Windows for run-time parameter adjustment +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+MainWindow

+
+public MainWindow()
+
+
Constructor +

+

+ + + + + + + + +
+Method Detail
+ +

+init

+
+public void init()
+
+
Initialize the system for a new run +

+

+
+
+
+
+
+
+
+ +

+initTimer

+
+private void initTimer()
+
+
Reset timer and its display +

+

+
+
+
+
+
+
+
+ +

+tickTimer

+
+public void tickTimer()
+
+
Update timer and its display +

+

+
+
+
+
+
+
+
+ +

+post

+
+public void post(java.lang.String line)
+
+
Add new line to the display, plus the time interval +

+

+
+
+
+
Parameters:
line - The text to be displayed
+
+
+
+ +

+actionPerformed

+
+public void actionPerformed(java.awt.event.ActionEvent e)
+
+
Handling button click +

+

+
Specified by:
actionPerformed in interface java.awt.event.ActionListener
+
+
+
Parameters:
e - The ActionEvent
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/MessageDialog.html b/nars-dist/javadoc/nars/gui/MessageDialog.html new file mode 100644 index 00000000..3ea37006 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/MessageDialog.html @@ -0,0 +1,443 @@ + + + + + + + +MessageDialog (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.gui +
+Class MessageDialog

+
+java.lang.Object
+  extended by java.awt.Component
+      extended by java.awt.Container
+          extended by java.awt.Window
+              extended by java.awt.Dialog
+                  extended by nars.gui.MessageDialog
+
+
+
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
+
+
+
+
public class MessageDialog
extends java.awt.Dialog
implements java.awt.event.ActionListener
+ + +

+Pop-up message for the user to accept +

+ +

+

+
See Also:
Serialized Form
+
+ +

+ + + + + + + +
+Nested Class Summary
+ + + + + + + +
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
+  + + + + + + + + + + + + + + + +
+Field Summary
+protected  java.awt.Buttonbutton + +
+           
+protected  java.awt.TextAreatext + +
+           
+ + + + + + + +
Fields inherited from class java.awt.Dialog
DEFAULT_MODALITY_TYPE
+ + + + + + + +
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
+ + + + + + + +
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
+  + + + + + + + + + + +
+Constructor Summary
MessageDialog(java.awt.Frame parent, + java.lang.String message) + +
+          Constructor
+  + + + + + + + + + + + +
+Method Summary
+ voidactionPerformed(java.awt.event.ActionEvent e) + +
+          Handling button click
+ + + + + + + +
Methods inherited from class java.awt.Dialog
addNotify, getAccessibleContext, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, paramString, setModal, setModalityType, setResizable, setTitle, setUndecorated, setVisible, show, toBack
+ + + + + + + +
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, toFront
+ + + + + + + +
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
+ + + + + + + +
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+button

+
+protected java.awt.Button button
+
+
+
+
+
+ +

+text

+
+protected java.awt.TextArea text
+
+
+
+
+ + + + + + + + +
+Constructor Detail
+ +

+MessageDialog

+
+public MessageDialog(java.awt.Frame parent,
+                     java.lang.String message)
+
+
Constructor +

+

+
Parameters:
parent - The parent Frame
message - The text to be displayed
+
+ + + + + + + + +
+Method Detail
+ +

+actionPerformed

+
+public void actionPerformed(java.awt.event.ActionEvent e)
+
+
Handling button click +

+

+
Specified by:
actionPerformed in interface java.awt.event.ActionListener
+
+
+
Parameters:
e - The ActionEvent
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/NarsFrame.html b/nars-dist/javadoc/nars/gui/NarsFrame.html new file mode 100644 index 00000000..88e52575 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/NarsFrame.html @@ -0,0 +1,540 @@ + + + + + + + +NarsFrame (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.gui +
+Class NarsFrame

+
+java.lang.Object
+  extended by java.awt.Component
+      extended by java.awt.Container
+          extended by java.awt.Window
+              extended by java.awt.Frame
+                  extended by nars.gui.NarsFrame
+
+
+
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible
+
+
+
Direct Known Subclasses:
BagWindow, ConceptWindow, InferenceWindow, InputWindow, MainWindow, ParameterWindow, TermWindow
+
+
+
+
public abstract class NarsFrame
extends java.awt.Frame
+ + +

+Specify shared properties of NARS windows +

+ +

+

+
See Also:
Serialized Form
+
+ +

+ + + + + + + +
+Nested Class Summary
+ + + + + + + +
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+(package private) static java.awt.ColorDISPLAY_BACKGROUND_COLOR + +
+          Color for the background of the text components that are read-only
+(package private) static java.awt.ColorMAIN_WINDOW_COLOR + +
+          Color for the background of the main window
+(package private) static java.awt.ColorMULTIPLE_WINDOW_COLOR + +
+          Color for the background of the windows with multiple instantiations
+(package private) static java.awt.FontNarsFont + +
+          Font for NARS GUI
+(package private) static java.awt.ColorSAVING_BACKGROUND_COLOR + +
+          Color for the background of the text components that are being saved into a file
+(package private) static java.awt.ColorSINGLE_WINDOW_COLOR + +
+          Color for the background of the windows with unique instantiation
+(package private) static java.lang.StringUNAVAILABLE + +
+          Message for unimplemented functions
+ + + + + + + +
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
+ + + + + + + +
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
+ + + + + + + +
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
+  + + + + + + + + + + + + + +
+Constructor Summary
NarsFrame() + +
+          Default constructor
NarsFrame(java.lang.String title) + +
+          Constructor with title and font setting
+  + + + + + + + +
+Method Summary
+ + + + + + + +
Methods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
+ + + + + + + +
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
+ + + + + + + +
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
+ + + + + + + +
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+ + + + + + + +
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
+  +

+ + + + + + + + +
+Field Detail
+ +

+MAIN_WINDOW_COLOR

+
+static final java.awt.Color MAIN_WINDOW_COLOR
+
+
Color for the background of the main window +

+

+
+
+
+ +

+SINGLE_WINDOW_COLOR

+
+static final java.awt.Color SINGLE_WINDOW_COLOR
+
+
Color for the background of the windows with unique instantiation +

+

+
+
+
+ +

+MULTIPLE_WINDOW_COLOR

+
+static final java.awt.Color MULTIPLE_WINDOW_COLOR
+
+
Color for the background of the windows with multiple instantiations +

+

+
+
+
+ +

+DISPLAY_BACKGROUND_COLOR

+
+static final java.awt.Color DISPLAY_BACKGROUND_COLOR
+
+
Color for the background of the text components that are read-only +

+

+
+
+
+ +

+SAVING_BACKGROUND_COLOR

+
+static final java.awt.Color SAVING_BACKGROUND_COLOR
+
+
Color for the background of the text components that are being saved into a file +

+

+
+
+
+ +

+NarsFont

+
+static final java.awt.Font NarsFont
+
+
Font for NARS GUI +

+

+
+
+
+ +

+UNAVAILABLE

+
+static final java.lang.String UNAVAILABLE
+
+
Message for unimplemented functions +

+

+
See Also:
Constant Field Values
+
+ + + + + + + + +
+Constructor Detail
+ +

+NarsFrame

+
+NarsFrame()
+
+
Default constructor +

+

+
+ +

+NarsFrame

+
+NarsFrame(java.lang.String title)
+
+
Constructor with title and font setting +

+

+
Parameters:
title - The title displayed by the window
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/ParameterWindow.html b/nars-dist/javadoc/nars/gui/ParameterWindow.html new file mode 100644 index 00000000..8783e45b --- /dev/null +++ b/nars-dist/javadoc/nars/gui/ParameterWindow.html @@ -0,0 +1,635 @@ + + + + + + + +ParameterWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.gui +
+Class ParameterWindow

+
+java.lang.Object
+  extended by java.awt.Component
+      extended by java.awt.Container
+          extended by java.awt.Window
+              extended by java.awt.Frame
+                  extended by nars.gui.NarsFrame
+                      extended by nars.gui.ParameterWindow
+
+
+
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.event.AdjustmentListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
+
+
+
+
public class ParameterWindow
extends NarsFrame
implements java.awt.event.ActionListener, java.awt.event.AdjustmentListener
+ + +

+Window displaying a system parameter that can be adjusted in run time +

+ +

+

+
See Also:
Serialized Form
+
+ +

+ + + + + + + +
+Nested Class Summary
+ + + + + + + +
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+private  intcurrentValue + +
+          parameter values
+private  java.awt.ButtondefaultButton + +
+          Control buttons
+private  intdefaultValue + +
+          parameter values
+private  java.awt.ButtonhideButton + +
+          Control buttons
+private  intpreviousValue + +
+          parameter values
+private  java.awt.ButtonundoButton + +
+          Control buttons
+private  java.awt.ScrollbarvalueBar + +
+          Adjusting bar
+private  java.awt.LabelvalueLabel + +
+          Display label
+ + + + + + + +
Fields inherited from class nars.gui.NarsFrame
DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
+ + + + + + + +
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
+ + + + + + + +
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
+ + + + + + + +
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
+  + + + + + + + + + + +
+Constructor Summary
ParameterWindow(java.lang.String title, + int dft) + +
+          Constructor
+  + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ voidactionPerformed(java.awt.event.ActionEvent e) + +
+          Handling button click
+ voidadjustmentValueChanged(java.awt.event.AdjustmentEvent e) + +
+          Handling scrollbar movement
+ intvalue() + +
+          Get the value of the parameter
+ + + + + + + +
Methods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
+ + + + + + + +
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
+ + + + + + + +
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
+ + + + + + + +
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+ + + + + + + +
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
+  +

+ + + + + + + + +
+Field Detail
+ +

+valueLabel

+
+private java.awt.Label valueLabel
+
+
Display label +

+

+
+
+
+ +

+hideButton

+
+private java.awt.Button hideButton
+
+
Control buttons +

+

+
+
+
+ +

+undoButton

+
+private java.awt.Button undoButton
+
+
Control buttons +

+

+
+
+
+ +

+defaultButton

+
+private java.awt.Button defaultButton
+
+
Control buttons +

+

+
+
+
+ +

+valueBar

+
+private java.awt.Scrollbar valueBar
+
+
Adjusting bar +

+

+
+
+
+ +

+defaultValue

+
+private int defaultValue
+
+
parameter values +

+

+
+
+
+ +

+previousValue

+
+private int previousValue
+
+
parameter values +

+

+
+
+
+ +

+currentValue

+
+private int currentValue
+
+
parameter values +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+ParameterWindow

+
+ParameterWindow(java.lang.String title,
+                int dft)
+
+
Constructor +

+

+
Parameters:
title - Parameter name
dft - The default value of the parameter
+
+ + + + + + + + +
+Method Detail
+ +

+value

+
+public int value()
+
+
Get the value of the parameter +

+

+
+
+
+ +
Returns:
The current value
+
+
+
+ +

+actionPerformed

+
+public void actionPerformed(java.awt.event.ActionEvent e)
+
+
Handling button click +

+

+
Specified by:
actionPerformed in interface java.awt.event.ActionListener
+
+
+
Parameters:
e - The ActionEvent
+
+
+
+ +

+adjustmentValueChanged

+
+public void adjustmentValueChanged(java.awt.event.AdjustmentEvent e)
+
+
Handling scrollbar movement +

+

+
Specified by:
adjustmentValueChanged in interface java.awt.event.AdjustmentListener
+
+
+
Parameters:
e - The AdjustmentEvent
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/TermWindow.html b/nars-dist/javadoc/nars/gui/TermWindow.html new file mode 100644 index 00000000..9522cf7a --- /dev/null +++ b/nars-dist/javadoc/nars/gui/TermWindow.html @@ -0,0 +1,502 @@ + + + + + + + +TermWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.gui +
+Class TermWindow

+
+java.lang.Object
+  extended by java.awt.Component
+      extended by java.awt.Container
+          extended by java.awt.Window
+              extended by java.awt.Frame
+                  extended by nars.gui.NarsFrame
+                      extended by nars.gui.TermWindow
+
+
+
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
+
+
+
+
public class TermWindow
extends NarsFrame
implements java.awt.event.ActionListener
+ + +

+Window accept a Term, then display the content of the corresponding Concept +

+ +

+

+
See Also:
Serialized Form
+
+ +

+ + + + + + + +
+Nested Class Summary
+ + + + + + + +
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+private  java.awt.ButtonhideButton + +
+          Control buttons
+private  java.awt.ButtonplayButton + +
+          Control buttons
+private  java.awt.TextFieldtermField + +
+          Input field for term name
+private  java.awt.LabeltermLabel + +
+          Display label
+ + + + + + + +
Fields inherited from class nars.gui.NarsFrame
DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
+ + + + + + + +
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
+ + + + + + + +
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
+ + + + + + + +
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
+  + + + + + + + + + + +
+Constructor Summary
TermWindow() + +
+          Constructor
+  + + + + + + + + + + + +
+Method Summary
+ voidactionPerformed(java.awt.event.ActionEvent e) + +
+          Handling button click
+ + + + + + + +
Methods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
+ + + + + + + +
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
+ + + + + + + +
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
+ + + + + + + +
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+ + + + + + + +
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
+  +

+ + + + + + + + +
+Field Detail
+ +

+termLabel

+
+private java.awt.Label termLabel
+
+
Display label +

+

+
+
+
+ +

+termField

+
+private java.awt.TextField termField
+
+
Input field for term name +

+

+
+
+
+ +

+playButton

+
+private java.awt.Button playButton
+
+
Control buttons +

+

+
+
+
+ +

+hideButton

+
+private java.awt.Button hideButton
+
+
Control buttons +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+TermWindow

+
+TermWindow()
+
+
Constructor +

+

+ + + + + + + + +
+Method Detail
+ +

+actionPerformed

+
+public void actionPerformed(java.awt.event.ActionEvent e)
+
+
Handling button click +

+

+
Specified by:
actionPerformed in interface java.awt.event.ActionListener
+
+
+
Parameters:
e - The ActionEvent
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html new file mode 100644 index 00000000..5d36796c --- /dev/null +++ b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.gui.BagWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.gui.BagWindow

+
+ + + + + + + + + +
+Packages that use BagWindow
nars.storageStorage management 
+  +

+ + + + + +
+Uses of BagWindow in nars.storage
+  +

+ + + + + + + + + +
Fields in nars.storage declared as BagWindow
+protected  BagWindowBag.window + +
+          display window
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html new file mode 100644 index 00000000..907dfd7a --- /dev/null +++ b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.gui.ConceptWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.gui.ConceptWindow

+
+ + + + + + + + + +
+Packages that use ConceptWindow
nars.entityData entities that are independently stored 
+  +

+ + + + + +
+Uses of ConceptWindow in nars.entity
+  +

+ + + + + + + + + +
Fields in nars.entity declared as ConceptWindow
+private  ConceptWindowConcept.window + +
+          The display window
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html new file mode 100644 index 00000000..2053073d --- /dev/null +++ b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.gui.InferenceWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.gui.InferenceWindow

+
+ + + + + + + + + +
+Packages that use InferenceWindow
nars.ioInput/output management 
+  +

+ + + + + +
+Uses of InferenceWindow in nars.io
+  +

+ + + + + + + + + +
Fields in nars.io declared as InferenceWindow
+private static InferenceWindowRecord.window + +
+          the display window
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html new file mode 100644 index 00000000..a817df8e --- /dev/null +++ b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html @@ -0,0 +1,210 @@ + + + + + + + +Uses of Class nars.gui.InputWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.gui.InputWindow

+
+ + + + + + + + + + + + + +
+Packages that use InputWindow
nars.guiGraphical user interface of the system 
nars.ioInput/output management 
+  +

+ + + + + +
+Uses of InputWindow in nars.gui
+  +

+ + + + + + + + + +
Fields in nars.gui declared as InputWindow
+static InputWindowMainWindow.inputWindow + +
+          Input experience window
+  +

+ + + + + +
+Uses of InputWindow in nars.io
+  +

+ + + + + + + + + +
Fields in nars.io declared as InputWindow
+private  InputWindowExperienceIO.inputWindow + +
+          Input experience from a window
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html new file mode 100644 index 00000000..78903858 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.gui.MainWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.gui.MainWindow

+
+ + + + + + + + + +
+Packages that use MainWindow
nars.mainTop-level classes of the system 
+  +

+ + + + + +
+Uses of MainWindow in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main declared as MainWindow
+static MainWindowCenter.mainWindow + +
+          The unique main window
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html new file mode 100644 index 00000000..e2bc26e6 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.gui.MessageDialog (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.gui.MessageDialog

+
+No usage of nars.gui.MessageDialog +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html new file mode 100644 index 00000000..ed407eea --- /dev/null +++ b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html @@ -0,0 +1,229 @@ + + + + + + + +Uses of Class nars.gui.NarsFrame (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.gui.NarsFrame

+
+ + + + + + + + + +
+Packages that use NarsFrame
nars.guiGraphical user interface of the system 
+  +

+ + + + + +
+Uses of NarsFrame in nars.gui
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Subclasses of NarsFrame in nars.gui
+ classBagWindow + +
+          Window display the priority distribution of items within a given bag
+ classConceptWindow + +
+          Window displaying the content of a Concept, such as beliefs, goals, and questions
+ classInferenceWindow + +
+          Window displying inference log
+ classInputWindow + +
+          Input window, accepting user tasks
+ classMainWindow + +
+          Main window of NARS GUI
+ classParameterWindow + +
+          Window displaying a system parameter that can be adjusted in run time
+ classTermWindow + +
+          Window accept a Term, then display the content of the corresponding Concept
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html new file mode 100644 index 00000000..c5a1c873 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html @@ -0,0 +1,205 @@ + + + + + + + +Uses of Class nars.gui.ParameterWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.gui.ParameterWindow

+
+ + + + + + + + + +
+Packages that use ParameterWindow
nars.guiGraphical user interface of the system 
+  +

+ + + + + +
+Uses of ParameterWindow in nars.gui
+  +

+ + + + + + + + + + + + + + + + + + + + + +
Fields in nars.gui declared as ParameterWindow
+static ParameterWindowMainWindow.forgetBW + +
+          Windows for run-time parameter adjustment
+static ParameterWindowMainWindow.forgetCW + +
+          Windows for run-time parameter adjustment
+static ParameterWindowMainWindow.forgetTW + +
+          Windows for run-time parameter adjustment
+static ParameterWindowMainWindow.silentW + +
+          Windows for run-time parameter adjustment
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html new file mode 100644 index 00000000..f1be6f88 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.gui.TermWindow (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.gui.TermWindow

+
+ + + + + + + + + +
+Packages that use TermWindow
nars.guiGraphical user interface of the system 
+  +

+ + + + + +
+Uses of TermWindow in nars.gui
+  +

+ + + + + + + + + +
Fields in nars.gui declared as TermWindow
+static TermWindowMainWindow.conceptWin + +
+          Window to accept a Term to be looked into
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/package-frame.html b/nars-dist/javadoc/nars/gui/package-frame.html new file mode 100644 index 00000000..f95a6a52 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/package-frame.html @@ -0,0 +1,49 @@ + + + + + + + +nars.gui (NARS Document) + + + + + + + + + + + +nars.gui + + + + +
+Classes  + +
+BagWindow +
+ConceptWindow +
+InferenceWindow +
+InputWindow +
+MainWindow +
+MessageDialog +
+NarsFrame +
+ParameterWindow +
+TermWindow
+ + + + diff --git a/nars-dist/javadoc/nars/gui/package-summary.html b/nars-dist/javadoc/nars/gui/package-summary.html new file mode 100644 index 00000000..5a38b7bf --- /dev/null +++ b/nars-dist/javadoc/nars/gui/package-summary.html @@ -0,0 +1,209 @@ + + + + + + + +nars.gui (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package nars.gui +

+Graphical user interface of the system +

+See: +
+          Description +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class Summary
BagWindowWindow display the priority distribution of items within a given bag
ConceptWindowWindow displaying the content of a Concept, such as beliefs, goals, and questions
InferenceWindowWindow displying inference log
InputWindowInput window, accepting user tasks
MainWindowMain window of NARS GUI
MessageDialogPop-up message for the user to accept
NarsFrameSpecify shared properties of NARS windows
ParameterWindowWindow displaying a system parameter that can be adjusted in run time
TermWindowWindow accept a Term, then display the content of the corresponding Concept
+  + +

+

+Package nars.gui Description +

+ +

+Graphical user interface of the system + +

Package Specification

+ +All windows extend NarsFrame, with MessageDialog as the only exception. +

+ +

+

+
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/package-tree.html b/nars-dist/javadoc/nars/gui/package-tree.html new file mode 100644 index 00000000..0877de98 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/package-tree.html @@ -0,0 +1,177 @@ + + + + + + + +nars.gui Class Hierarchy (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package nars.gui +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+
    +
  • java.lang.Object
      +
    • java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable) +
        +
      • java.awt.Container
          +
        • java.awt.Window (implements javax.accessibility.Accessible) +
            +
          • java.awt.Dialog
              +
            • nars.gui.MessageDialog (implements java.awt.event.ActionListener) +
            +
          • java.awt.Frame (implements java.awt.MenuContainer) +
              +
            • nars.gui.NarsFrame
                +
              • nars.gui.BagWindow (implements java.awt.event.ActionListener, java.awt.event.AdjustmentListener) +
              • nars.gui.ConceptWindow (implements java.awt.event.ActionListener) +
              • nars.gui.InferenceWindow (implements java.awt.event.ActionListener) +
              • nars.gui.InputWindow (implements java.awt.event.ActionListener) +
              • nars.gui.MainWindow (implements java.awt.event.ActionListener) +
              • nars.gui.ParameterWindow (implements java.awt.event.ActionListener, java.awt.event.AdjustmentListener) +
              • nars.gui.TermWindow (implements java.awt.event.ActionListener) +
              +
            +
          +
        +
      +
    +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/gui/package-use.html b/nars-dist/javadoc/nars/gui/package-use.html new file mode 100644 index 00000000..5c85dea0 --- /dev/null +++ b/nars-dist/javadoc/nars/gui/package-use.html @@ -0,0 +1,271 @@ + + + + + + + +Uses of Package nars.gui (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Package
nars.gui

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Packages that use nars.gui
nars.entityData entities that are independently stored 
nars.guiGraphical user interface of the system 
nars.ioInput/output management 
nars.mainTop-level classes of the system 
nars.storageStorage management 
+  +

+ + + + + + + + +
+Classes in nars.gui used by nars.entity
ConceptWindow + +
+          Window displaying the content of a Concept, such as beliefs, goals, and questions
+  +

+ + + + + + + + + + + + + + + + + +
+Classes in nars.gui used by nars.gui
InputWindow + +
+          Input window, accepting user tasks
NarsFrame + +
+          Specify shared properties of NARS windows
ParameterWindow + +
+          Window displaying a system parameter that can be adjusted in run time
TermWindow + +
+          Window accept a Term, then display the content of the corresponding Concept
+  +

+ + + + + + + + + + + +
+Classes in nars.gui used by nars.io
InferenceWindow + +
+          Window displying inference log
InputWindow + +
+          Input window, accepting user tasks
+  +

+ + + + + + + + +
+Classes in nars.gui used by nars.main
MainWindow + +
+          Main window of NARS GUI
+  +

+ + + + + + + + +
+Classes in nars.gui used by nars.storage
BagWindow + +
+          Window display the priority distribution of items within a given bag
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/BudgetFunctions.html new file mode 100644 index 00000000..f43f1c47 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/BudgetFunctions.html @@ -0,0 +1,660 @@ + + + + + + + +BudgetFunctions (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.inference +
+Class BudgetFunctions

+
+java.lang.Object
+  extended by nars.inference.UtilityFunctions
+      extended by nars.inference.BudgetFunctions
+
+
+
+
public final class BudgetFunctions
extends UtilityFunctions
+ + +

+Budget functions for resources allocation +

+ +

+


+ +

+ + + + + + + + + + + +
+Constructor Summary
BudgetFunctions() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+static voidactivate(Concept concept, + BudgetValue budget) + +
+          Activate a concept by an incoming TaskLink
+static BudgetValuebackward(TruthValue truth) + +
+          Backward inference result and adjustment, stronger case
+static BudgetValuebackwardWeak(TruthValue truth) + +
+          Backward inference result and adjustment, weaker case
+private static BudgetValuebudgetInference(float qual, + int complexity) + +
+          Common processing for all inference step
+static BudgetValuecompoundBackward(Term content) + +
+          Backward inference with CompoundTerm conclusion, stronger case
+static BudgetValuecompoundBackwardWeak(Term content) + +
+          Backward inference with CompoundTerm conclusion, weaker case
+static BudgetValuecompoundForward(TruthValue truth, + Term content) + +
+          Forward inference with CompoundTerm conclusion
+static BudgetValuedistributeAmongLinks(BudgetValue b, + int n) + +
+          Distribute the budget of a task among the links to it
+static voidforget(BudgetValue budget, + float forgetRate, + float relativeThreshold) + +
+          Decrease Priority after an item is used, called in Bag
+(package private) static BudgetValueforward(TruthValue truth) + +
+          Forward inference result and adjustment
+static voidmerge(BudgetValue baseValue, + BudgetValue adjustValue) + +
+          Merge an item into another one in a bag, when the two are identical except in budget values
+static floatrankBelief(Judgment judg) + +
+          Determine the rank of a judgment by its confidence and originality (stamp length)
+(package private) static BudgetValuerevise(TruthValue tTruth, + TruthValue bTruth, + TruthValue truth, + Task task, + boolean feedbackToLinks) + +
+          Evaluate the quality of a revision, then de-prioritize the premises
+(package private) static BudgetValuesolutionEval(Sentence problem, + Judgment solution, + Task task) + +
+          Evaluate the quality of a belief as a solution to a problem, then reward + the belief and de-prioritize the problem
+static BudgetValuetemporalIndCom(BudgetValue b1, + BudgetValue b2, + TruthValue t) + +
+          Special treatment for temporal induction and comparison among recent event, no feedback
+static floattruthToQuality(TruthValue t) + +
+          Determine the quality of a judgment by its truth value alone
+(package private) static BudgetValueupdate(Task task, + TruthValue bTruth) + +
+          Update a belief
+ + + + + + + +
Methods inherited from class nars.inference.UtilityFunctions
and, aveAri, aveGeo, or, w2c
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+BudgetFunctions

+
+public BudgetFunctions()
+
+
+ + + + + + + + +
+Method Detail
+ +

+truthToQuality

+
+public static float truthToQuality(TruthValue t)
+
+
Determine the quality of a judgment by its truth value alone +

+ Mainly decided by confidence, though binary judgment is also preferred +

+

+
Parameters:
t - The truth value of a judgment +
Returns:
The quality of the judgment, according to truth value only
+
+
+
+ +

+rankBelief

+
+public static float rankBelief(Judgment judg)
+
+
Determine the rank of a judgment by its confidence and originality (stamp length) +

+

+
Parameters:
judg - The judgment to be ranked +
Returns:
The rank of the judgment, according to truth value only
+
+
+
+ +

+solutionEval

+
+static BudgetValue solutionEval(Sentence problem,
+                                Judgment solution,
+                                Task task)
+
+
Evaluate the quality of a belief as a solution to a problem, then reward + the belief and de-prioritize the problem +

+

+
Parameters:
problem - The problem (question or goal) to be solved
solution - The belief as solution
task - The task to be immediatedly processed, or null for continued process +
Returns:
The budget for the new task which is the belief activated, if necessary
+
+
+
+ +

+revise

+
+static BudgetValue revise(TruthValue tTruth,
+                          TruthValue bTruth,
+                          TruthValue truth,
+                          Task task,
+                          boolean feedbackToLinks)
+
+
Evaluate the quality of a revision, then de-prioritize the premises +

+

+
Parameters:
tTruth - The truth value of the judgment in the task
bTruth - The truth value of the belief
truth - The truth value of the conclusion of revision
task - The task to be immediatedly or continuely processed +
Returns:
The budget for the new task
+
+
+
+ +

+update

+
+static BudgetValue update(Task task,
+                          TruthValue bTruth)
+
+
Update a belief +

+

+
Parameters:
task - The task containing new belief
bTruth - Truth value of the previous belief +
Returns:
Budget value of the updating task
+
+
+
+ +

+distributeAmongLinks

+
+public static BudgetValue distributeAmongLinks(BudgetValue b,
+                                               int n)
+
+
Distribute the budget of a task among the links to it +

+

+
Parameters:
b - The original budget
n - Number of links +
Returns:
Budget value for each link
+
+
+
+ +

+activate

+
+public static void activate(Concept concept,
+                            BudgetValue budget)
+
+
Activate a concept by an incoming TaskLink +

+

+
Parameters:
concept - The concept
budget - The budget for the new item
+
+
+
+ +

+forget

+
+public static void forget(BudgetValue budget,
+                          float forgetRate,
+                          float relativeThreshold)
+
+
Decrease Priority after an item is used, called in Bag +

+ After a constant time, p should become d*p. Since in this period, the item is accessed c*p times, + each time p-q should multiple d^(1/(c*p)). + The intuitive meaning of the parameter "forgetRate" is: after this number of times of access, + priority 1 will become d, it is a system parameter adjustable in run time. +

+

+
Parameters:
budget - The previous budget value
forgetRate - The budget for the new item
relativeThreshold - The relative threshold of the bag
+
+
+
+ +

+merge

+
+public static void merge(BudgetValue baseValue,
+                         BudgetValue adjustValue)
+
+
Merge an item into another one in a bag, when the two are identical except in budget values +

+

+
Parameters:
baseValue - The budget value to be modified
adjustValue - The budget doing the adjusting
+
+
+
+ +

+forward

+
+static BudgetValue forward(TruthValue truth)
+
+
Forward inference result and adjustment +

+

+
Parameters:
truth - The truth value of the conclusion +
Returns:
The budget value of the conclusion
+
+
+
+ +

+backward

+
+public static BudgetValue backward(TruthValue truth)
+
+
Backward inference result and adjustment, stronger case +

+

+
Parameters:
truth - The truth value of the belief deriving the conclusion +
Returns:
The budget value of the conclusion
+
+
+
+ +

+backwardWeak

+
+public static BudgetValue backwardWeak(TruthValue truth)
+
+
Backward inference result and adjustment, weaker case +

+

+
Parameters:
truth - The truth value of the belief deriving the conclusion +
Returns:
The budget value of the conclusion
+
+
+
+ +

+compoundForward

+
+public static BudgetValue compoundForward(TruthValue truth,
+                                          Term content)
+
+
Forward inference with CompoundTerm conclusion +

+

+
Parameters:
truth - The truth value of the conclusion
content - The content of the conclusion +
Returns:
The budget of the conclusion
+
+
+
+ +

+compoundBackward

+
+public static BudgetValue compoundBackward(Term content)
+
+
Backward inference with CompoundTerm conclusion, stronger case +

+

+
Parameters:
content - The content of the conclusion +
Returns:
The budget of the conclusion
+
+
+
+ +

+compoundBackwardWeak

+
+public static BudgetValue compoundBackwardWeak(Term content)
+
+
Backward inference with CompoundTerm conclusion, weaker case +

+

+
Parameters:
content - The content of the conclusion +
Returns:
The budget of the conclusion
+
+
+
+ +

+budgetInference

+
+private static BudgetValue budgetInference(float qual,
+                                           int complexity)
+
+
Common processing for all inference step +

+

+
Parameters:
qual - Quality of the inference
complexity - Syntactic complexity of the conclusion +
Returns:
Budget of the conclusion task
+
+
+
+ +

+temporalIndCom

+
+public static BudgetValue temporalIndCom(BudgetValue b1,
+                                         BudgetValue b2,
+                                         TruthValue t)
+
+
Special treatment for temporal induction and comparison among recent event, no feedback +

+

+
Parameters:
b1 - Budget value of the first premise
b2 - Budget value of the second premise
t - Truth value of the conclusion +
Returns:
Budget value of the conclusion task
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/CompositionalRules.html b/nars-dist/javadoc/nars/inference/CompositionalRules.html new file mode 100644 index 00000000..0fad263c --- /dev/null +++ b/nars-dist/javadoc/nars/inference/CompositionalRules.html @@ -0,0 +1,449 @@ + + + + + + + +CompositionalRules (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.inference +
+Class CompositionalRules

+
+java.lang.Object
+  extended by nars.inference.CompositionalRules
+
+
+
+
public final class CompositionalRules
extends java.lang.Object
+ + +

+Compound term composition and decomposition rules, with two premises. +

+ Forward inference only, except the last group (dependent variable introduction) + can also be used backward. +

+ +

+


+ +

+ + + + + + + + + + + +
+Constructor Summary
CompositionalRules() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+(package private) static voidabdVarDepOuter(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S>
+(package private) static voidcomposeCompound(Sentence taskSentence, + Judgment belief, + int index) + +
+          { M>,

M>} |- {<(S|P) ==> M>, <(S&P) ==> M>, <(S-P) ==> M>, <(P-S) ==> M>}

+private static voiddecomposeCompound(CompoundTerm compound, + Term component, + Term term1, + int index, + boolean compoundTask) + +
+          {<(S|P) ==> M>,

M>} |- M>

+(package private) static voiddecomposeStatement(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          {(||, S, P), P} |- S + {(&&, S, P), P} |- S
+private static ConjunctionintroVarDep(Statement premise1, + Statement premise2, + int index) + +
+          { S>, P>} |- (&&, <#x() --> S>, <#x() --> P>>
+(package private) static voidintroVarDepInner(CompoundTerm compound, + Term component, + Term premise) + +
+          Introduce a dependent variable in an inner-layer conjunction
+private static voidintroVarDepOuter(Statement premise1, + Statement premise2, + int index) + +
+          Introduce a dependent variable in an outer-layer conjunction
+private static voidprocessComposed(Statement statement, + Term subject, + Term predicate, + TruthValue truth) + +
+          Finish composing compound term
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+CompositionalRules

+
+public CompositionalRules()
+
+
+ + + + + + + + +
+Method Detail
+ +

+composeCompound

+
+static void composeCompound(Sentence taskSentence,
+                            Judgment belief,
+                            int index)
+
+
{ M>,

M>} |- {<(S|P) ==> M>, <(S&P) ==> M>, <(S-P) ==> M>, <(P-S) ==> M>} +

+

+
Parameters:
taskSentence - The first premise
belief - The second premise
index - The location of the shared term
+
+
+
+ +

+processComposed

+
+private static void processComposed(Statement statement,
+                                    Term subject,
+                                    Term predicate,
+                                    TruthValue truth)
+
+
Finish composing compound term +

+

+
Parameters:
statement - Type of the content
subject - Subject of content
predicate - Predicate of content
truth - TruthValue of the content
+
+
+
+ +

+decomposeCompound

+
+private static void decomposeCompound(CompoundTerm compound,
+                                      Term component,
+                                      Term term1,
+                                      int index,
+                                      boolean compoundTask)
+
+
{<(S|P) ==> M>,

M>} |- M> +

+

+
Parameters:
compound - The compound term to be decomposed
component - The part of the compound to be removed
term1 - The other term in the content
index - The location of the shared term: 0 for subject, 1 for predicate
compoundTask - Whether the compound comes from the task
+
+
+
+ +

+decomposeStatement

+
+static void decomposeStatement(CompoundTerm compound,
+                               Term component,
+                               boolean compoundTask)
+
+
{(||, S, P), P} |- S + {(&&, S, P), P} |- S +

+

+
Parameters:
compound - The compound term to be decomposed
component - The part of the compound to be removed
compoundTask - Whether the compound comes from the task
+
+
+
+ +

+introVarDep

+
+private static Conjunction introVarDep(Statement premise1,
+                                       Statement premise2,
+                                       int index)
+
+
{ S>, P>} |- (&&, <#x() --> S>, <#x() --> P>> +

+

+
Parameters:
premise1 - The first premise P>
premise2 - The second premise P>
index - The location of the shared term: 0 for subject, 1 for predicate
+
+
+
+ +

+introVarDepOuter

+
+private static void introVarDepOuter(Statement premise1,
+                                     Statement premise2,
+                                     int index)
+
+
Introduce a dependent variable in an outer-layer conjunction +

+

+
Parameters:
premise1 - The first premise S>
premise2 - The second premise P>
index - The location of the shared term: 0 for subject, 1 for predicate
+
+
+
+ +

+introVarDepInner

+
+static void introVarDepInner(CompoundTerm compound,
+                             Term component,
+                             Term premise)
+
+
Introduce a dependent variable in an inner-layer conjunction +

+

+
Parameters:
compound - The compound containing the first premise
component - The first premise S>
premise - The second premise P>
+
+
+
+ +

+abdVarDepOuter

+
+static void abdVarDepOuter(CompoundTerm compound,
+                           Term component,
+                           boolean compoundTask)
+
+
{(&&, <#x() --> S>, <#x() --> P>>, P>} |- S> +

+

+
Parameters:
compound - The compound term to be decomposed
component - The part of the compound to be removed
compoundTask - Whether the compound comes from the task
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/MatchingRules.html b/nars-dist/javadoc/nars/inference/MatchingRules.html new file mode 100644 index 00000000..763ba52e --- /dev/null +++ b/nars-dist/javadoc/nars/inference/MatchingRules.html @@ -0,0 +1,520 @@ + + + + + + + +MatchingRules (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.inference +
+Class MatchingRules

+
+java.lang.Object
+  extended by nars.inference.MatchingRules
+
+
+
+
public final class MatchingRules
extends java.lang.Object
+ + +

+Directly process a task by a oldBelief, with only two Terms in both. + In matching, the new task is compared with all existing direct Tasks in that Concept, to carry out: +

+ revision: between judgments on non-overlapping evidence; + update: between judgments; + satisfy: between a Judgment and a Question/Goal; + merge: between items of the same type and stamp; + conversion: between different inheritance relations. +

+ +

+


+ +

+ + + + + + + + + + + +
+Constructor Summary
MatchingRules() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+private static booleanbetterSolution(Judgment newSol, + Judgment oldSol, + Sentence problem) + +
+          Compare the quality of two solutions
+private static voidconversion() + +
+          {

S>} |- P> + Produce an Inheritance/Implication from a reversed Inheritance/Implication

+private static voidconvertRelation() + +
+          { P>} |- P> + { P>} |- P> + Switch between Inheritance/Implication and Similarity/Equivalence
+private static voidinferToAsym(Judgment asym, + Judgment sym, + TemporalRules.Relation order) + +
+          { P>,

S>} |- P> + Produce an Inheritance/Implication from a Similarity/Equivalence and a reversed Inheritance/Implication

+private static voidinferToSym(Judgment judgment1, + Judgment judgment2) + +
+          { P>,

S} |- p> + Produce Similarity/Equivalence from a pair of reversed Inheritance/Implication

+static voidmatch(Task task, + Judgment belief) + +
+          The task and belief have the same content
+static voidmatchAsymSym(Sentence asym, + Sentence sym, + int figure) + +
+          Inheritance/Implication matches Similarity/Equivalence
+static voidmatchReverse() + +
+          The task and belief match reversely
+static booleanrevision(Task task, + Judgment oldBelief, + boolean feedbackToLinks) + +
+          Belief revision
+static voidtrySolution(Sentence problem, + Judgment belief, + Task task) + +
+          Check if a Judgment provide a better answer to a Question
+static voidupdate(Task task, + Judgment oldBelief) + +
+          Belief update
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+MatchingRules

+
+public MatchingRules()
+
+
+ + + + + + + + +
+Method Detail
+ +

+match

+
+public static void match(Task task,
+                         Judgment belief)
+
+
The task and belief have the same content +

+ called in RuleTables.reason +

+

+
Parameters:
task - The task
belief - The belief
+
+
+
+ +

+update

+
+public static void update(Task task,
+                          Judgment oldBelief)
+
+
Belief update +

+ called from oncept.reviseTable +

+

+
Parameters:
task - The task containing new belief
oldBelief - The previous belief with the same content
+
+
+
+ +

+revision

+
+public static boolean revision(Task task,
+                               Judgment oldBelief,
+                               boolean feedbackToLinks)
+
+
Belief revision +

+ called from Concept.reviseTable and match +

+

+
Parameters:
task - The task containing new belief
oldBelief - The previous belief with the same content
feedbackToLinks - Whether to send feedback to the links +
Returns:
Whether revision happened
+
+
+
+ +

+trySolution

+
+public static void trySolution(Sentence problem,
+                               Judgment belief,
+                               Task task)
+
+
Check if a Judgment provide a better answer to a Question +

+

+
Parameters:
problem - The Goal or Question to be answered
belief - The proposed answer
task - The task to be processed
+
+
+
+ +

+betterSolution

+
+private static boolean betterSolution(Judgment newSol,
+                                      Judgment oldSol,
+                                      Sentence problem)
+
+
Compare the quality of two solutions +

+

+
Parameters:
newSol - A new solution
oldSol - A old solution
problem - The problem +
Returns:
Whether the new one is better
+
+
+
+ +

+matchReverse

+
+public static void matchReverse()
+
+
The task and belief match reversely +

+

+
+
+
+
+ +

+matchAsymSym

+
+public static void matchAsymSym(Sentence asym,
+                                Sentence sym,
+                                int figure)
+
+
Inheritance/Implication matches Similarity/Equivalence +

+

+
Parameters:
asym - A Inheritance/Implication sentence
sym - A Similarity/Equivalence sentence
figure - location of the shared term
+
+
+
+ +

+inferToSym

+
+private static void inferToSym(Judgment judgment1,
+                               Judgment judgment2)
+
+
{ P>,

S} |- p> + Produce Similarity/Equivalence from a pair of reversed Inheritance/Implication +

+

+
Parameters:
judgment1 - The first premise
judgment2 - The second premise
+
+
+
+ +

+inferToAsym

+
+private static void inferToAsym(Judgment asym,
+                                Judgment sym,
+                                TemporalRules.Relation order)
+
+
{ P>,

S>} |- P> + Produce an Inheritance/Implication from a Similarity/Equivalence and a reversed Inheritance/Implication +

+

+
Parameters:
asym - The asymmetric premise
sym - The symmetric premise
+
+
+
+ +

+conversion

+
+private static void conversion()
+
+
{

S>} |- P> + Produce an Inheritance/Implication from a reversed Inheritance/Implication +

+

+
+
+
+
+ +

+convertRelation

+
+private static void convertRelation()
+
+
{ P>} |- P> + { P>} |- P> + Switch between Inheritance/Implication and Similarity/Equivalence +

+

+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/RuleTables.html b/nars-dist/javadoc/nars/inference/RuleTables.html new file mode 100644 index 00000000..3c46cc74 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/RuleTables.html @@ -0,0 +1,574 @@ + + + + + + + +RuleTables (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.inference +
+Class RuleTables

+
+java.lang.Object
+  extended by nars.inference.RuleTables
+
+
+
+
public final class RuleTables
extends java.lang.Object
+ + +

+Table of inference rules, indexed by the TermLinks for the task and the belief. + Used in indirective processing of a task, to dispatch inference cases to the + relevant inference rules. +

+ +

+


+ +

+ + + + + + + + + + + +
+Constructor Summary
RuleTables() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+private static voidasymmetricAsymmetric(Sentence sentence, + Judgment belief, + int figure) + +
+          Syllogistic rules whose both premises are on the same asymmetric relation
+private static voidasymmetricSymmetric(Sentence asym, + Sentence sym, + int figure) + +
+          Syllogistic rules whose first premise is on an asymmetric relation, and the + second on a symmetric relation
+private static voidcomponentAndStatement(CompoundTerm compound, + short index, + Statement statement, + short side) + +
+          Inference between a component term (of the current term) and a statement
+private static voidcompoundAndCompound(CompoundTerm taskTerm, + CompoundTerm beliefTerm) + +
+          Inference between two compound terms
+private static voidcompoundAndSelf(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          Inference between a compound term and a component of it
+private static voidcompoundAndStatement(CompoundTerm compound, + short index, + Statement statement, + short side, + Term beliefTerm) + +
+          Inference between a compound term and a statement
+private static voidconditionalDedIndWithVar(Implication conditional, + short index, + Statement statement, + short side) + +
+          Conditional deduction or induction, with variable unification
+private static voiddetachmentWithVar(Sentence mainSentence, + Sentence subSentence, + int index) + +
+          The detachment rule, with variable unification
+private static intindexToFigure(TermLink link1, + TermLink link2) + +
+          Decide the figure of syllogism according to the locations of the common + term in the premises
+static voidreason(TaskLink tLink, + TermLink bLink) + +
+          Entry point of the inference engine
+private static voidsyllogisms(TaskLink tLink, + TermLink bLink, + Term taskTerm, + Term beliefTerm) + +
+          Meta-table of syllogistic rules, indexed by the content classes of the + taskSentence and the belief
+private static voidsymmetricSymmetric(Judgment belief, + Sentence taskSentence, + int figure) + +
+          Syllogistic rules whose both premises are on the same symmetric relation
+static voidtransformTask(Task task, + TaskLink tLink) + +
+          The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+RuleTables

+
+public RuleTables()
+
+
+ + + + + + + + +
+Method Detail
+ +

+reason

+
+public static void reason(TaskLink tLink,
+                          TermLink bLink)
+
+
Entry point of the inference engine +

+

+
Parameters:
tLink - The selected TaskLink, which will provide a task
bLink - The selected TermLink, which may provide a belief
+
+
+
+ +

+syllogisms

+
+private static void syllogisms(TaskLink tLink,
+                               TermLink bLink,
+                               Term taskTerm,
+                               Term beliefTerm)
+
+
Meta-table of syllogistic rules, indexed by the content classes of the + taskSentence and the belief +

+

+
Parameters:
tLink - The link to task
bLink - The link to belief
taskTerm - The content of task
beliefTerm - The content of belief
+
+
+
+ +

+indexToFigure

+
+private static int indexToFigure(TermLink link1,
+                                 TermLink link2)
+
+
Decide the figure of syllogism according to the locations of the common + term in the premises +

+

+
Parameters:
link1 - The link to the first premise
link2 - The link to the second premise +
Returns:
The figure of the syllogism, one of the four: 11, 12, 21, or 22
+
+
+
+ +

+asymmetricAsymmetric

+
+private static void asymmetricAsymmetric(Sentence sentence,
+                                         Judgment belief,
+                                         int figure)
+
+
Syllogistic rules whose both premises are on the same asymmetric relation +

+

+
Parameters:
sentence - The taskSentence in the task
belief - The judgment in the belief
figure - The location of the shared term
+
+
+
+ +

+asymmetricSymmetric

+
+private static void asymmetricSymmetric(Sentence asym,
+                                        Sentence sym,
+                                        int figure)
+
+
Syllogistic rules whose first premise is on an asymmetric relation, and the + second on a symmetric relation +

+

+
Parameters:
asym - The asymmetric premise
sym - The symmetric premise
figure - The location of the shared term
+
+
+
+ +

+symmetricSymmetric

+
+private static void symmetricSymmetric(Judgment belief,
+                                       Sentence taskSentence,
+                                       int figure)
+
+
Syllogistic rules whose both premises are on the same symmetric relation +

+

+
Parameters:
belief - The premise that comes from a belief
taskSentence - The premise that comes from a task
figure - The location of the shared term
+
+
+
+ +

+detachmentWithVar

+
+private static void detachmentWithVar(Sentence mainSentence,
+                                      Sentence subSentence,
+                                      int index)
+
+
The detachment rule, with variable unification +

+

+
Parameters:
mainSentence - The premise that is an Implication or Equivalence
subSentence - The premise that is the subject or predicate of the first one
index - The location of the second premise in the first
+
+
+
+ +

+conditionalDedIndWithVar

+
+private static void conditionalDedIndWithVar(Implication conditional,
+                                             short index,
+                                             Statement statement,
+                                             short side)
+
+
Conditional deduction or induction, with variable unification +

+

+
Parameters:
conditional - The premise that is an Implication with a Conjunction as condition
index - The location of the shared term in the condition
statement - The second premise that is a statement
side - The location of the shared term in the statement
+
+
+
+ +

+compoundAndSelf

+
+private static void compoundAndSelf(CompoundTerm compound,
+                                    Term component,
+                                    boolean compoundTask)
+
+
Inference between a compound term and a component of it +

+

+
Parameters:
compound - The compound term
component - The component term
compoundTask - Whether the compound comes from the task
+
+
+
+ +

+compoundAndCompound

+
+private static void compoundAndCompound(CompoundTerm taskTerm,
+                                        CompoundTerm beliefTerm)
+
+
Inference between two compound terms +

+

+
Parameters:
taskTerm - The compound from the task
beliefTerm - The compound from the belief
+
+
+
+ +

+compoundAndStatement

+
+private static void compoundAndStatement(CompoundTerm compound,
+                                         short index,
+                                         Statement statement,
+                                         short side,
+                                         Term beliefTerm)
+
+
Inference between a compound term and a statement +

+

+
Parameters:
compound - The compound term
index - The location of the current term in the compound
statement - The statement
side - The location of the current term in the statement
beliefTerm - The content of the belief
+
+
+
+ +

+componentAndStatement

+
+private static void componentAndStatement(CompoundTerm compound,
+                                          short index,
+                                          Statement statement,
+                                          short side)
+
+
Inference between a component term (of the current term) and a statement +

+

+
Parameters:
compound - The compound term
index - The location of the current term in the compound
statement - The statement
side - The location of the current term in the statement
+
+
+
+ +

+transformTask

+
+public static void transformTask(Task task,
+                                 TaskLink tLink)
+
+
The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation +

+

+
Parameters:
task - The task
tLink - The task link
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/StructuralRules.html b/nars-dist/javadoc/nars/inference/StructuralRules.html new file mode 100644 index 00000000..eb7d7340 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/StructuralRules.html @@ -0,0 +1,515 @@ + + + + + + + +StructuralRules (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.inference +
+Class StructuralRules

+
+java.lang.Object
+  extended by nars.inference.StructuralRules
+
+
+
+
public final class StructuralRules
extends java.lang.Object
+ + +

+Single-premise inference rules involving compound terms. + Input are one sentence (the premise) and one TermLink (indicating a component) +

+ +

+


+ +

+ + + + + + + + + + + +
+Constructor Summary
StructuralRules() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+(package private) static voidcontraposition(Statement statement) + +
+          { B>, A@(--, A)} |- <(--, B) ==> (--, A)>
+(package private) static voidstructuralCompose1(CompoundTerm compound, + short index, + Statement statement) + +
+          { P>, P@(P&Q)} |- (P&Q)>
+(package private) static voidstructuralCompose2(CompoundTerm compound, + short index, + Statement statement, + short side) + +
+          { P>, S@(S&T)} |- <(S&T) --> (P&T)> + { P>, S@(M-S)} |- <(M-P) --> (M-S)>
+(package private) static voidstructuralCompound(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          {(&&, A, B), A@(&&, A, B)} |- A + {(||, A, B), A@(||, A, B)} |- A
+(package private) static voidstructuralDecompose1(CompoundTerm compound, + short index, + Statement statement) + +
+          {<(S&T) --> P>, S@(S&T)} |- P>
+(package private) static voidstructuralDecompose2(Statement statement) + +
+          {<(S&T) --> (P&T)>, S@(S&T)} |- P>
+private static voidstructuralStatement(Term subject, + Term predicate, + TruthValue truth) + +
+          Common final operations of the above two methods
+private static booleanswitchOrder(CompoundTerm compound, + short index) + +
+          List the cases where the direction of inheritance is revised in conclusion
+(package private) static voidtransformNegation(Term content) + +
+          {A, A@(--, A)} |- (--, A)
+(package private) static voidtransformProductImage(Inheritance inh, + CompoundTerm oldContent, + short[] indices, + Task task) + +
+          Equivalent transformation between products and images + {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> + { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> + { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)>
+(package private) static voidtransformSetRelation(CompoundTerm compound, + Statement statement, + short side) + +
+          { {P}>} |- {P}>
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+StructuralRules

+
+public StructuralRules()
+
+
+ + + + + + + + +
+Method Detail
+ +

+structuralCompose2

+
+static void structuralCompose2(CompoundTerm compound,
+                               short index,
+                               Statement statement,
+                               short side)
+
+
{ P>, S@(S&T)} |- <(S&T) --> (P&T)> + { P>, S@(M-S)} |- <(M-P) --> (M-S)> +

+

+
Parameters:
compound - The compound term
index - The location of the indicated term in the compound
statement - The premise
side - The location of the indicated term in the premise
+
+
+
+ +

+structuralDecompose2

+
+static void structuralDecompose2(Statement statement)
+
+
{<(S&T) --> (P&T)>, S@(S&T)} |- P> +

+

+
Parameters:
statement - The premise
+
+
+
+ +

+switchOrder

+
+private static boolean switchOrder(CompoundTerm compound,
+                                   short index)
+
+
List the cases where the direction of inheritance is revised in conclusion +

+

+
Parameters:
compound - The compound term
index - The location of focus in the compound +
Returns:
Whether the direction of inheritance should be revised
+
+
+
+ +

+structuralCompose1

+
+static void structuralCompose1(CompoundTerm compound,
+                               short index,
+                               Statement statement)
+
+
{ P>, P@(P&Q)} |- (P&Q)> +

+

+
Parameters:
compound - The compound term
index - The location of the indicated term in the compound
statement - The premise
+
+
+
+ +

+structuralDecompose1

+
+static void structuralDecompose1(CompoundTerm compound,
+                                 short index,
+                                 Statement statement)
+
+
{<(S&T) --> P>, S@(S&T)} |- P> +

+

+
Parameters:
compound - The compound term
index - The location of the indicated term in the compound
statement - The premise
+
+
+
+ +

+structuralStatement

+
+private static void structuralStatement(Term subject,
+                                        Term predicate,
+                                        TruthValue truth)
+
+
Common final operations of the above two methods +

+

+
Parameters:
subject - The subject of the new task
predicate - The predicate of the new task
truth - The truth value of the new task
+
+
+
+ +

+transformSetRelation

+
+static void transformSetRelation(CompoundTerm compound,
+                                 Statement statement,
+                                 short side)
+
+
{ {P}>} |- {P}> +

+

+
Parameters:
compound - The set compound
statement - The premise
side - The location of the indicated term in the premise
+
+
+
+ +

+transformProductImage

+
+static void transformProductImage(Inheritance inh,
+                                  CompoundTerm oldContent,
+                                  short[] indices,
+                                  Task task)
+
+
Equivalent transformation between products and images + {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> + { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> + { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)> +

+

+
Parameters:
inh - An Inheritance statement
oldContent - The whole content
indices - The indices of the TaskLink
task - The task
+
+
+
+ +

+structuralCompound

+
+static void structuralCompound(CompoundTerm compound,
+                               Term component,
+                               boolean compoundTask)
+
+
{(&&, A, B), A@(&&, A, B)} |- A + {(||, A, B), A@(||, A, B)} |- A +

+

+
Parameters:
compound - The premise
component - The recognized component in the premise
compoundTask - Whether the compound comes from the task
+
+
+
+ +

+transformNegation

+
+static void transformNegation(Term content)
+
+
{A, A@(--, A)} |- (--, A) +

+

+
Parameters:
content - The premise
+
+
+
+ +

+contraposition

+
+static void contraposition(Statement statement)
+
+
{ B>, A@(--, A)} |- <(--, B) ==> (--, A)> +

+

+
Parameters:
statement - The premise
+
+
+ +
+ + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/SyllogisticRules.html new file mode 100644 index 00000000..48351046 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/SyllogisticRules.html @@ -0,0 +1,519 @@ + + + + + + + +SyllogisticRules (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.inference +
+Class SyllogisticRules

+
+java.lang.Object
+  extended by nars.inference.SyllogisticRules
+
+
+
+
public final class SyllogisticRules
extends java.lang.Object
+ + +

+Syllogisms: Inference rules based on the transitivity of the relation. +

+ +

+


+ +

+ + + + + + + + + + + +
+Constructor Summary
SyllogisticRules() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+(package private) static voidabdIndCom(Term term1, + Term term2, + Sentence taskSentence, + Judgment belief, + int figure) + +
+          { S>, P>} |- { P>,

S>, P>}

+(package private) static voidanalogy(Term term1, + Term term2, + Sentence asym, + Sentence sym, + int figure) + +
+          { P>, P>} |- P>
+(package private) static booleanconditionalAbd(Term cond1, + Term cond2, + Statement st1, + Statement st2) + +
+          {<(&&, S2, S3) ==> P>, <(&&, S1, S3) ==> P>} |- S2>
+(package private) static voidconditionalDedInd(Implication premise1, + short index, + Term premise2, + int side) + +
+          {<(&&, S1, S2, S3) ==> P>, S1} |- <(&&, S2, S3) ==> P> + {<(&&, S2, S3) ==> P>, S2>} |- <(&&, S1, S3) ==> P> + {<(&&, S1, S3) ==> P>, S2>} |- <(&&, S2, S3) ==> P>
+(package private) static voiddedExe(Term term1, + Term term2, + Sentence sentence, + Judgment belief) + +
+          { M>, P>} |- { P>,

S>}

+(package private) static voiddetachment(Sentence mainSentence, + Sentence subSentence, + int s) + +
+          {< S> ==> P>>, S>} |- P> + {< S> ==> P>>, P>} |- S>
+private static StatementintroVarInd(Sentence sentence1, + Sentence sentence2, + int figure, + boolean isImplication) + +
+          { S>, P>} |- <<#x --> S> ==> <#x --> P>> + { S>, P>} |- <<#x --> S> <=> <#x --> P>>
+(package private) static voidintroVarIndInner(Statement premise1, + Statement premise2, + CompoundTerm oldCompound) + +
+          { S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> + { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>)
+(package private) static voidresemblance(Term term1, + Term term2, + Judgment belief, + Sentence sentence, + int figure) + +
+          { M>, P>} |- P>
+(package private) static voidtemporalIndCom(Task task1, + Task task2, + TemporalRules.Relation order) + +
+          { S>, P>} |- { P>,

S>, P>}

+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+SyllogisticRules

+
+public SyllogisticRules()
+
+
+ + + + + + + + +
+Method Detail
+ +

+dedExe

+
+static void dedExe(Term term1,
+                   Term term2,
+                   Sentence sentence,
+                   Judgment belief)
+
+
{ M>, P>} |- { P>,

S>} +

+

+
Parameters:
term1 - Subject of the first new task
term2 - Predicate of the first new task
sentence - The first premise
belief - The second premise
+
+
+
+ +

+abdIndCom

+
+static void abdIndCom(Term term1,
+                      Term term2,
+                      Sentence taskSentence,
+                      Judgment belief,
+                      int figure)
+
+
{ S>, P>} |- { P>,

S>, P>} +

+

+
Parameters:
term1 - Subject of the first new task
term2 - Predicate of the first new task
taskSentence - The first premise
belief - The second premise
figure - Locations of the shared term in premises
+
+
+
+ +

+analogy

+
+static void analogy(Term term1,
+                    Term term2,
+                    Sentence asym,
+                    Sentence sym,
+                    int figure)
+
+
{ P>, P>} |- P> +

+

+
Parameters:
term1 - Subject of the new task
term2 - Predicate of the new task
asym - The asymmetric premise
sym - The symmetric premise
figure - Locations of the shared term in premises
+
+
+
+ +

+resemblance

+
+static void resemblance(Term term1,
+                        Term term2,
+                        Judgment belief,
+                        Sentence sentence,
+                        int figure)
+
+
{ M>, P>} |- P> +

+

+
Parameters:
term1 - Subject of the new task
term2 - Predicate of the new task
belief - The first premise
sentence - The second premise
figure - Locations of the shared term in premises
+
+
+
+ +

+detachment

+
+static void detachment(Sentence mainSentence,
+                       Sentence subSentence,
+                       int s)
+
+
{< S> ==> P>>, S>} |- P> + {< S> ==> P>>, P>} |- S> +

+

+
Parameters:
mainSentence - The implication/equivalence premise
subSentence - The premise on part of s1
s - The location of s2 in s1
+
+
+
+ +

+conditionalDedInd

+
+static void conditionalDedInd(Implication premise1,
+                              short index,
+                              Term premise2,
+                              int side)
+
+
{<(&&, S1, S2, S3) ==> P>, S1} |- <(&&, S2, S3) ==> P> + {<(&&, S2, S3) ==> P>, S2>} |- <(&&, S1, S3) ==> P> + {<(&&, S1, S3) ==> P>, S2>} |- <(&&, S2, S3) ==> P> +

+

+
Parameters:
premise1 - The conditional premise
index - The location of the shared term in the condition of premise1
premise2 - The premise which, or part of which, appears in the condition of premise1
side - The location of the shared term in premise2: 0 for subject, 1 for predicate, -1 for the whole term
+
+
+
+ +

+conditionalAbd

+
+static boolean conditionalAbd(Term cond1,
+                              Term cond2,
+                              Statement st1,
+                              Statement st2)
+
+
{<(&&, S2, S3) ==> P>, <(&&, S1, S3) ==> P>} |- S2> +

+

+
Parameters:
cond1 - The condition of the first premise
cond2 - The condition of the second premise
st1 - The first premise
st2 - The second premise +
Returns:
Whether there are derived tasks
+
+
+
+ +

+introVarInd

+
+private static Statement introVarInd(Sentence sentence1,
+                                     Sentence sentence2,
+                                     int figure,
+                                     boolean isImplication)
+
+
{ S>, P>} |- <<#x --> S> ==> <#x --> P>> + { S>, P>} |- <<#x --> S> <=> <#x --> P>> +

+

+
Parameters:
sentence1 - The first premise S>
sentence2 - The second premise P>
figure - The figure indicating the location of the shared term
isImplication - The conclusion is Implication, not Equivalence
+
+
+
+ +

+introVarIndInner

+
+static void introVarIndInner(Statement premise1,
+                             Statement premise2,
+                             CompoundTerm oldCompound)
+
+
{ S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> + { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>) +

+

+
Parameters:
premise1 - The first premise directly used in internal induction, S>
premise2 - The component to be used as a premise in internal induction, P>
oldCompound - The whole content of the first premise, Implication or Conjunction
+
+
+
+ +

+temporalIndCom

+
+static void temporalIndCom(Task task1,
+                           Task task2,
+                           TemporalRules.Relation order)
+
+
{ S>, P>} |- { P>,

S>, P>} +

+

+
Parameters:
task1 - The first premise
task2 - The second premise
order - Temporal order of the premises
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/TemporalRules.Relation.html b/nars-dist/javadoc/nars/inference/TemporalRules.Relation.html new file mode 100644 index 00000000..cb8b6a80 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/TemporalRules.Relation.html @@ -0,0 +1,362 @@ + + + + + + + +TemporalRules.Relation (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.inference +
+Enum TemporalRules.Relation

+
+java.lang.Object
+  extended by java.lang.Enum<TemporalRules.Relation>
+      extended by nars.inference.TemporalRules.Relation
+
+
+
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable<TemporalRules.Relation>
+
+
+
Enclosing class:
TemporalRules
+
+
+
+
public static enum TemporalRules.Relation
extends java.lang.Enum<TemporalRules.Relation>
+ + +

+Temporal relations: a default and three specific +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + +
+Enum Constant Summary
AFTER + +
+           
BEFORE + +
+           
NONE + +
+           
WHEN + +
+           
+  + + + + + + + + + + + + + + + +
+Method Summary
+static TemporalRules.RelationvalueOf(java.lang.String name) + +
+          Returns the enum constant of this type with the specified name.
+static TemporalRules.Relation[]values() + +
+          Returns an array containing the constants of this enum type, in +the order they are declared.
+ + + + + + + +
Methods inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
+ + + + + + + +
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Enum Constant Detail
+ +

+NONE

+
+public static final TemporalRules.Relation NONE
+
+
+
+
+
+ +

+BEFORE

+
+public static final TemporalRules.Relation BEFORE
+
+
+
+
+
+ +

+WHEN

+
+public static final TemporalRules.Relation WHEN
+
+
+
+
+
+ +

+AFTER

+
+public static final TemporalRules.Relation AFTER
+
+
+
+
+ + + + + + + + +
+Method Detail
+ +

+values

+
+public static TemporalRules.Relation[] values()
+
+
Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: +
+for (TemporalRules.Relation c : TemporalRules.Relation.values())
+    System.out.println(c);
+
+

+

+ +
Returns:
an array containing the constants of this enum type, in +the order they are declared
+
+
+
+ +

+valueOf

+
+public static TemporalRules.Relation valueOf(java.lang.String name)
+
+
Returns the enum constant of this type with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this type. (Extraneous whitespace characters are +not permitted.) +

+

+
Parameters:
name - the name of the enum constant to be returned. +
Returns:
the enum constant with the specified name +
Throws: +
java.lang.IllegalArgumentException - if this enum type has no constant +with the specified name +
java.lang.NullPointerException - if the argument is null
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/TemporalRules.html b/nars-dist/javadoc/nars/inference/TemporalRules.html new file mode 100644 index 00000000..cf39d301 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/TemporalRules.html @@ -0,0 +1,373 @@ + + + + + + + +TemporalRules (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.inference +
+Class TemporalRules

+
+java.lang.Object
+  extended by nars.inference.TemporalRules
+
+
+
+
public class TemporalRules
extends java.lang.Object
+ + +

+Temporal inference rules +

+ These rules are independent of the semantic and symtactic inference rules. +

+ +

+


+ +

+ + + + + + + + + + + +
+Nested Class Summary
+static classTemporalRules.Relation + +
+          Temporal relations: a default and three specific
+  + + + + + + + + + + +
+Constructor Summary
TemporalRules() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+static voideventProcessing(Task event1) + +
+          Simple temporal regularity discovery [To be refined]
+static TemporalRules.Relationreverse(TemporalRules.Relation t1) + +
+           
+static TemporalRules.RelationtemporalInference(TemporalRules.Relation r12, + TemporalRules.Relation r23) + +
+          Temporal relationships among three terms
+static TemporalRules.RelationtemporalSyllogism(TemporalRules.Relation r1, + TemporalRules.Relation r2, + int figure) + +
+          Temporal inference in syllogism
+static TemporalRules.RelationtenseInference(TemporalRules.Relation tense1, + TemporalRules.Relation tense2) + +
+          The temporal inference on tenses
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+TemporalRules

+
+public TemporalRules()
+
+
+ + + + + + + + +
+Method Detail
+ +

+temporalInference

+
+public static TemporalRules.Relation temporalInference(TemporalRules.Relation r12,
+                                                       TemporalRules.Relation r23)
+
+
Temporal relationships among three terms +

+

+
Parameters:
r12 - Temporal relationship from term1 to term2
r23 - Temporal relationship from term2 to term3 +
Returns:
Temporal relationship from term1 to term3
+
+
+
+ +

+reverse

+
+public static TemporalRules.Relation reverse(TemporalRules.Relation t1)
+
+
+
+
+
+
+ +

+temporalSyllogism

+
+public static TemporalRules.Relation temporalSyllogism(TemporalRules.Relation r1,
+                                                       TemporalRules.Relation r2,
+                                                       int figure)
+
+
Temporal inference in syllogism +

+

+
Parameters:
r1 - The first premise
r2 - The second premise
figure - The location of the shared term +
Returns:
The temporal order in the conclusion
+
+
+
+ +

+tenseInference

+
+public static TemporalRules.Relation tenseInference(TemporalRules.Relation tense1,
+                                                    TemporalRules.Relation tense2)
+
+
The temporal inference on tenses +

+

+
Parameters:
tense1 - The tense of the first premise
tense2 - The tense of the second premise +
Returns:
The tense of the conclusion
+
+
+
+ +

+eventProcessing

+
+public static void eventProcessing(Task event1)
+
+
Simple temporal regularity discovery [To be refined] +

+ called in Memory.immediateProcess +

+

+
Parameters:
event1 - A new event
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/TruthFunctions.html b/nars-dist/javadoc/nars/inference/TruthFunctions.html new file mode 100644 index 00000000..149c7cd4 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/TruthFunctions.html @@ -0,0 +1,858 @@ + + + + + + + +TruthFunctions (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.inference +
+Class TruthFunctions

+
+java.lang.Object
+  extended by nars.inference.UtilityFunctions
+      extended by nars.inference.TruthFunctions
+
+
+
+
public final class TruthFunctions
extends UtilityFunctions
+ + +

+All truth-value (and desire-value) functions used in inference rules +

+ +

+


+ +

+ + + + + + + + + + + +
+Constructor Summary
TruthFunctions() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+(package private) static TruthValueabduction(TruthValue v1, + TruthValue v2) + +
+          { M>,

M>} |- P>

+(package private) static TruthValueanalogy(TruthValue v1, + TruthValue v2) + +
+          { M>, P>} |- P>
+(package private) static TruthValuecomparison(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- P>
+(package private) static TruthValuecontraposition(TruthValue v1) + +
+          { B>} |- <(--, B) ==> (--, A)>
+(package private) static TruthValueconversion(TruthValue v1) + +
+          { B>} |- A>
+(package private) static TruthValuededuction(TruthValue v1, + TruthValue v2) + +
+          { M>, P>} |- P>
+(package private) static TruthValuedesireDed(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValuedesireInd(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValuedesireStrong(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValuedesireWeak(TruthValue v1, + TruthValue v2) + +
+          A function specially designed for desire value [To be refined]
+(package private) static TruthValuedifference(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- (S-P)>
+(package private) static TruthValueexemplification(TruthValue v1, + TruthValue v2) + +
+          { S>,

M>} |- P>

+(package private) static TruthValueexistAnalogy(TruthValue v1, + TruthValue v2) + +
+          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P>
+(package private) static TruthValueimplied(TruthValue v1) + +
+          { B>, B} |- A
+(package private) static TruthValueimplying(TruthValue v1) + +
+          { B>, A} |- B
+(package private) static TruthValueinduction(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- P>
+(package private) static TruthValueintersection(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- (S&P)>
+(package private) static TruthValuenegation(TruthValue v1) + +
+          {A} |- (--A)
+(package private) static TruthValuenegImply(TruthValue v1) + +
+          { (--, B)>, A} |- B
+(package private) static TruthValuereduceConjunction(TruthValue v1, + TruthValue v2) + +
+          {(--, (&&, A, B)), B} |- (--, A)
+(package private) static TruthValuereduceConjunctionNeg(TruthValue v1, + TruthValue v2) + +
+          {(--, (&&, A, (--, B))), (--, B)} |- (--, A)
+(package private) static TruthValuereduceDisjunction(TruthValue v1, + TruthValue v2) + +
+          {(||, A, B), (--, B)} |- A
+(package private) static TruthValueresemblance(TruthValue v1, + TruthValue v2) + +
+          { M>, P>} |- P>
+(package private) static TruthValuerevision(TruthValue v1, + TruthValue v2) + +
+          { P>, P>} |- P>
+(package private) static TruthValuetemporalInduction(TruthValue v1) + +
+          Make temporal hypothesis
+(package private) static TruthValueunion(TruthValue v1, + TruthValue v2) + +
+          { S>, P>} |- (S|P)>
+ + + + + + + +
Methods inherited from class nars.inference.UtilityFunctions
and, aveAri, aveGeo, or, w2c
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+TruthFunctions

+
+public TruthFunctions()
+
+
+ + + + + + + + +
+Method Detail
+ +

+conversion

+
+static TruthValue conversion(TruthValue v1)
+
+
{ B>} |- A> +

+

+
Parameters:
v1 - Truth value of the premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+negation

+
+static TruthValue negation(TruthValue v1)
+
+
{A} |- (--A) +

+

+
Parameters:
v1 - Truth value of the premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+contraposition

+
+static TruthValue contraposition(TruthValue v1)
+
+
{ B>} |- <(--, B) ==> (--, A)> +

+

+
Parameters:
v1 - Truth value of the premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+implying

+
+static TruthValue implying(TruthValue v1)
+
+
{ B>, A} |- B +

+

+
Parameters:
v1 - Truth value of the premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+implied

+
+static TruthValue implied(TruthValue v1)
+
+
{ B>, B} |- A +

+

+
Parameters:
v1 - Truth value of the premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+negImply

+
+static TruthValue negImply(TruthValue v1)
+
+
{ (--, B)>, A} |- B +

+

+
Parameters:
v1 - Truth value of the premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+temporalInduction

+
+static TruthValue temporalInduction(TruthValue v1)
+
+
Make temporal hypothesis +

+

+
Parameters:
v1 - Truth value of the premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+revision

+
+static TruthValue revision(TruthValue v1,
+                           TruthValue v2)
+
+
{ P>, P>} |- P> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+deduction

+
+static TruthValue deduction(TruthValue v1,
+                            TruthValue v2)
+
+
{ M>, P>} |- P> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+abduction

+
+static TruthValue abduction(TruthValue v1,
+                            TruthValue v2)
+
+
{ M>,

M>} |- P> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+induction

+
+static TruthValue induction(TruthValue v1,
+                            TruthValue v2)
+
+
{ S>, P>} |- P> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+exemplification

+
+static TruthValue exemplification(TruthValue v1,
+                                  TruthValue v2)
+
+
{ S>,

M>} |- P> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+comparison

+
+static TruthValue comparison(TruthValue v1,
+                             TruthValue v2)
+
+
{ S>, P>} |- P> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+analogy

+
+static TruthValue analogy(TruthValue v1,
+                          TruthValue v2)
+
+
{ M>, P>} |- P> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+resemblance

+
+static TruthValue resemblance(TruthValue v1,
+                              TruthValue v2)
+
+
{ M>, P>} |- P> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+desireStrong

+
+static TruthValue desireStrong(TruthValue v1,
+                               TruthValue v2)
+
+
A function specially designed for desire value [To be refined] +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+desireWeak

+
+static TruthValue desireWeak(TruthValue v1,
+                             TruthValue v2)
+
+
A function specially designed for desire value [To be refined] +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+desireDed

+
+static TruthValue desireDed(TruthValue v1,
+                            TruthValue v2)
+
+
A function specially designed for desire value [To be refined] +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+desireInd

+
+static TruthValue desireInd(TruthValue v1,
+                            TruthValue v2)
+
+
A function specially designed for desire value [To be refined] +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+union

+
+static TruthValue union(TruthValue v1,
+                        TruthValue v2)
+
+
{ S>, P>} |- (S|P)> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+intersection

+
+static TruthValue intersection(TruthValue v1,
+                               TruthValue v2)
+
+
{ S>, P>} |- (S&P)> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+difference

+
+static TruthValue difference(TruthValue v1,
+                             TruthValue v2)
+
+
{ S>, P>} |- (S-P)> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+reduceDisjunction

+
+static TruthValue reduceDisjunction(TruthValue v1,
+                                    TruthValue v2)
+
+
{(||, A, B), (--, B)} |- A +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+reduceConjunction

+
+static TruthValue reduceConjunction(TruthValue v1,
+                                    TruthValue v2)
+
+
{(--, (&&, A, B)), B} |- (--, A) +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+reduceConjunctionNeg

+
+static TruthValue reduceConjunctionNeg(TruthValue v1,
+                                       TruthValue v2)
+
+
{(--, (&&, A, (--, B))), (--, B)} |- (--, A) +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+
+ +

+existAnalogy

+
+static TruthValue existAnalogy(TruthValue v1,
+                               TruthValue v2)
+
+
{(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P> +

+

+
Parameters:
v1 - Truth value of the first premise
v2 - Truth value of the second premise +
Returns:
Truth value of the conclusion
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/UtilityFunctions.html new file mode 100644 index 00000000..d9a8190f --- /dev/null +++ b/nars-dist/javadoc/nars/inference/UtilityFunctions.html @@ -0,0 +1,351 @@ + + + + + + + +UtilityFunctions (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.inference +
+Class UtilityFunctions

+
+java.lang.Object
+  extended by nars.inference.UtilityFunctions
+
+
+
Direct Known Subclasses:
BudgetFunctions, TruthFunctions
+
+
+
+
public class UtilityFunctions
extends java.lang.Object
+ + +

+Common functions on real numbers, mostly in [0,1]. +

+ +

+


+ +

+ + + + + + + + + + + +
+Constructor Summary
UtilityFunctions() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+static floatand(float... arr) + +
+          A function where the output is conjunctively determined by the inputs
+static floataveAri(float... arr) + +
+          A function where the output is the arithmetic average the inputs
+static floataveGeo(float... arr) + +
+          A function where the output is the geometric average the inputs
+static floator(float... arr) + +
+          A function where the output is disjunctively determined by the inputs
+static floatw2c(float w) + +
+          A function to convert weight to confidence
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+UtilityFunctions

+
+public UtilityFunctions()
+
+
+ + + + + + + + +
+Method Detail
+ +

+and

+
+public static float and(float... arr)
+
+
A function where the output is conjunctively determined by the inputs +

+

+
Parameters:
arr - The inputs, each in [0, 1] +
Returns:
The output that is no larger than each input
+
+
+
+ +

+or

+
+public static float or(float... arr)
+
+
A function where the output is disjunctively determined by the inputs +

+

+
Parameters:
arr - The inputs, each in [0, 1] +
Returns:
The output that is no smaller than each input
+
+
+
+ +

+aveAri

+
+public static float aveAri(float... arr)
+
+
A function where the output is the arithmetic average the inputs +

+

+
Parameters:
arr - The inputs, each in [0, 1] +
Returns:
The arithmetic average the inputs
+
+
+
+ +

+aveGeo

+
+public static float aveGeo(float... arr)
+
+
A function where the output is the geometric average the inputs +

+

+
Parameters:
arr - The inputs, each in [0, 1] +
Returns:
The geometric average the inputs
+
+
+
+ +

+w2c

+
+public static float w2c(float w)
+
+
A function to convert weight to confidence +

+

+
Parameters:
w - Weight of evidence, a non-negative real number +
Returns:
The corresponding confidence, in [0, 1)
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html new file mode 100644 index 00000000..1ad2cbb4 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.inference.BudgetFunctions (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.inference.BudgetFunctions

+
+No usage of nars.inference.BudgetFunctions +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html new file mode 100644 index 00000000..3e4ca22c --- /dev/null +++ b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.inference.CompositionalRules (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.inference.CompositionalRules

+
+No usage of nars.inference.CompositionalRules +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html new file mode 100644 index 00000000..618b7927 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.inference.MatchingRules (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.inference.MatchingRules

+
+No usage of nars.inference.MatchingRules +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html new file mode 100644 index 00000000..9073d394 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.inference.RuleTables (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.inference.RuleTables

+
+No usage of nars.inference.RuleTables +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html new file mode 100644 index 00000000..16bb9fd4 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.inference.StructuralRules (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.inference.StructuralRules

+
+No usage of nars.inference.StructuralRules +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html new file mode 100644 index 00000000..410b376c --- /dev/null +++ b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.inference.SyllogisticRules (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.inference.SyllogisticRules

+
+No usage of nars.inference.SyllogisticRules +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/class-use/TemporalRules.Relation.html b/nars-dist/javadoc/nars/inference/class-use/TemporalRules.Relation.html new file mode 100644 index 00000000..7954f45e --- /dev/null +++ b/nars-dist/javadoc/nars/inference/class-use/TemporalRules.Relation.html @@ -0,0 +1,612 @@ + + + + + + + +Uses of Class nars.inference.TemporalRules.Relation (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.inference.TemporalRules.Relation

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Packages that use TemporalRules.Relation
nars.entityData entities that are independently stored 
nars.inferenceThe inference rules and control functions 
nars.ioInput/output management 
nars.languageTerm hierarchy in Narsese 
nars.mainTop-level classes of the system 
+  +

+ + + + + +
+Uses of TemporalRules.Relation in nars.entity
+  +

+ + + + + + + + + +
Fields in nars.entity declared as TemporalRules.Relation
+protected  TemporalRules.RelationSentence.tense + +
+          The tense of a Sentence can be BEFORE(past), WHEN(present), AFTER(future), or NONE
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.entity that return TemporalRules.Relation
+ TemporalRules.RelationSentence.getTense() + +
+          Get the tense of the Sentence
+ TemporalRules.RelationTask.getTense() + +
+          Directly get the tense of the sentence
+ TemporalRules.RelationStamp.orderWith(Stamp that) + +
+          Compare two Stamps for their temporal order
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.entity with parameters of type TemporalRules.Relation
+static SentenceSentence.make(Sentence oldS, + Term term, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a derived Sentence from a template and some initial values.
+static SentenceSentence.make(Term term, + char punc, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a Sentence from an input String.
+ voidSentence.setTense(TemporalRules.Relation t) + +
+          Set the tense of the Sentence
+  +

+ + + + + + + + + + + +
Constructors in nars.entity with parameters of type TemporalRules.Relation
Judgment(Term term, + char punc, + TemporalRules.Relation s, + TruthValue t, + Stamp b) + +
+          Constructor
Question(Term term, + char punc, + TemporalRules.Relation t, + Stamp s) + +
+          COnstructor
+  +

+ + + + + +
+Uses of TemporalRules.Relation in nars.inference
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference that return TemporalRules.Relation
+static TemporalRules.RelationTemporalRules.reverse(TemporalRules.Relation t1) + +
+           
+static TemporalRules.RelationTemporalRules.temporalInference(TemporalRules.Relation r12, + TemporalRules.Relation r23) + +
+          Temporal relationships among three terms
+static TemporalRules.RelationTemporalRules.temporalSyllogism(TemporalRules.Relation r1, + TemporalRules.Relation r2, + int figure) + +
+          Temporal inference in syllogism
+static TemporalRules.RelationTemporalRules.tenseInference(TemporalRules.Relation tense1, + TemporalRules.Relation tense2) + +
+          The temporal inference on tenses
+static TemporalRules.RelationTemporalRules.Relation.valueOf(java.lang.String name) + +
+          Returns the enum constant of this type with the specified name.
+static TemporalRules.Relation[]TemporalRules.Relation.values() + +
+          Returns an array containing the constants of this enum type, in +the order they are declared.
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference with parameters of type TemporalRules.Relation
+private static voidMatchingRules.inferToAsym(Judgment asym, + Judgment sym, + TemporalRules.Relation order) + +
+          { P>,

S>} |- P> + Produce an Inheritance/Implication from a Similarity/Equivalence and a reversed Inheritance/Implication

+static TemporalRules.RelationTemporalRules.reverse(TemporalRules.Relation t1) + +
+           
+(package private) static voidSyllogisticRules.temporalIndCom(Task task1, + Task task2, + TemporalRules.Relation order) + +
+          { S>, P>} |- { P>,

S>, P>}

+static TemporalRules.RelationTemporalRules.temporalInference(TemporalRules.Relation r12, + TemporalRules.Relation r23) + +
+          Temporal relationships among three terms
+static TemporalRules.RelationTemporalRules.temporalSyllogism(TemporalRules.Relation r1, + TemporalRules.Relation r2, + int figure) + +
+          Temporal inference in syllogism
+static TemporalRules.RelationTemporalRules.tenseInference(TemporalRules.Relation tense1, + TemporalRules.Relation tense2) + +
+          The temporal inference on tenses
+  +

+ + + + + +
+Uses of TemporalRules.Relation in nars.io
+  +

+ + + + + + + + + +
Methods in nars.io that return TemporalRules.Relation
+private static TemporalRules.RelationStringParser.parseTense(java.lang.StringBuffer s) + +
+          Recognize the tense of an input sentence
+  +

+ + + + + +
+Uses of TemporalRules.Relation in nars.language
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.language that return TemporalRules.Relation
+ TemporalRules.RelationConjunctionParallel.getTemporalOrder() + +
+          The components are concurrent
+ TemporalRules.RelationConjunctionSequence.getTemporalOrder() + +
+          The components are temporally sorted
+ TemporalRules.RelationEquivalenceAfter.getTemporalOrder() + +
+          Get the temporal order of the class
+ TemporalRules.RelationEquivalenceWhen.getTemporalOrder() + +
+          Get the temporal order of the class
+ TemporalRules.RelationImplicationAfter.getTemporalOrder() + +
+          The relation is predictive
+ TemporalRules.RelationImplicationBefore.getTemporalOrder() + +
+          The relation is retrospective
+ TemporalRules.RelationImplicationWhen.getTemporalOrder() + +
+          The relation is concurrent
+ TemporalRules.RelationTerm.getTemporalOrder() + +
+          Get the temporal order in a term, which is NONE by default
+  +

+ + + + + + + + + + + + + + + + + + + + + +
Methods in nars.language with parameters of type TemporalRules.Relation
+static StatementStatement.make(Statement statement, + Term subj, + Term pred, + TemporalRules.Relation order) + +
+          Make a Statement from given components and temporal information, called by the rules
+static EquivalenceEquivalence.make(Term subject, + Term predicate, + TemporalRules.Relation temporalOrder) + +
+           
+static ImplicationImplication.make(Term subject, + Term predicate, + TemporalRules.Relation temporalOrder) + +
+           
+static StatementStatement.makeSym(Statement statement, + Term subj, + Term pred, + TemporalRules.Relation order) + +
+          Make a symmetric Statement from given components and temporal information, called by the rules
+  +

+ + + + + +
+Uses of TemporalRules.Relation in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main declared as TemporalRules.Relation
+static TemporalRules.RelationMemory.currentTense + +
+          Shortcut to the derived tense
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/class-use/TemporalRules.html b/nars-dist/javadoc/nars/inference/class-use/TemporalRules.html new file mode 100644 index 00000000..69a401a2 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/class-use/TemporalRules.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.inference.TemporalRules (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.inference.TemporalRules

+
+No usage of nars.inference.TemporalRules +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html new file mode 100644 index 00000000..471996b3 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.inference.TruthFunctions (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.inference.TruthFunctions

+
+No usage of nars.inference.TruthFunctions +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html new file mode 100644 index 00000000..38842174 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html @@ -0,0 +1,189 @@ + + + + + + + +Uses of Class nars.inference.UtilityFunctions (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.inference.UtilityFunctions

+
+ + + + + + + + + +
+Packages that use UtilityFunctions
nars.inferenceThe inference rules and control functions 
+  +

+ + + + + +
+Uses of UtilityFunctions in nars.inference
+  +

+ + + + + + + + + + + + + +
Subclasses of UtilityFunctions in nars.inference
+ classBudgetFunctions + +
+          Budget functions for resources allocation
+ classTruthFunctions + +
+          All truth-value (and desire-value) functions used in inference rules
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/package-frame.html b/nars-dist/javadoc/nars/inference/package-frame.html new file mode 100644 index 00000000..b37af5d2 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/package-frame.html @@ -0,0 +1,60 @@ + + + + + + + +nars.inference (NARS Document) + + + + + + + + + + + +nars.inference + + + + +
+Classes  + +
+BudgetFunctions +
+CompositionalRules +
+MatchingRules +
+RuleTables +
+StructuralRules +
+SyllogisticRules +
+TemporalRules +
+TruthFunctions +
+UtilityFunctions
+ + + + + + +
+Enums  + +
+TemporalRules.Relation
+ + + + diff --git a/nars-dist/javadoc/nars/inference/package-summary.html b/nars-dist/javadoc/nars/inference/package-summary.html new file mode 100644 index 00000000..5c4e7fd7 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/package-summary.html @@ -0,0 +1,261 @@ + + + + + + + +nars.inference (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package nars.inference +

+The inference rules and control functions +

+See: +
+          Description +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class Summary
BudgetFunctionsBudget functions for resources allocation
CompositionalRulesCompound term composition and decomposition rules, with two premises.
MatchingRulesDirectly process a task by a oldBelief, with only two Terms in both.
RuleTablesTable of inference rules, indexed by the TermLinks for the task and the belief.
StructuralRulesSingle-premise inference rules involving compound terms.
SyllogisticRulesSyllogisms: Inference rules based on the transitivity of the relation.
TemporalRulesTemporal inference rules
TruthFunctionsAll truth-value (and desire-value) functions used in inference rules
UtilityFunctionsCommon functions on real numbers, mostly in [0,1].
+  + +

+ + + + + + + + + +
+Enum Summary
TemporalRules.RelationTemporal relations: a default and three specific
+  + +

+

+Package nars.inference Description +

+ +

+The inference rules and control functions + +

Package Specification

+ +The entry point of the package is RuleTables, which dispatch the premises +(a task, and maybe also a belief) to various rules, according to their type combination. +

+There are four major groups of inference rules: +

    +
  1. MatchingRules, where the task and belief contains the same pair + of terms, and the rules provide direct solutions to problems, revise beliefs, + and derive some conclusions;
  2. +
  3. SyllogisticRules, where the task and belief share one common term, + and the rules derive conclusions between the other two terms;
  4. +
  5. CompositionalRules, where the rules derive conclusions by compose or + decompose the terms in premises, so as to form new terms that are not in the two premises;
  6. +
  7. StructuralRules, where the task derives conclusions all by itself, + while the other "premise" serves by indicating a certain syntactic structure in a compound term.
  8. +
+In addition to the above rules, which handles the semantic and syntactic information +in the premises, the TemporalRules handle the temporal information, and decides the +temporal aspect of the conclusions. +

+In the system, forward inference (the task is a Judgment) and backward inference +(the task is a Question or Goal) are mostly isomorphic to each other, so that the +inference rules produce clonclusions with the same content for different types of tasks. +However, there are exceptions. For example, backward inference does not generate compound terms. +

+There are three files containing numerical functions: +

    +
  1. TruthFunctions: the functions that calculate the truth value + of the derived judgments and the desire value (a variant of truth value) of the + derived goals;
  2. +
  3. BudgetFunctions: the functions that calculate the budget value of + the derived tasks, as well as adjust the budget value of the involved items + (concept, task, and links);
  4. +
  5. UtilityFunctions: the common basic functions used by the others.
  6. +
+In each case, there may be multiple applicable rules, which will be applied in parallel. +For each rule, each conclusion is formed in three stages, to determine (1) the content +(as a Term) and tense, (2) the truth-value or desire-value, and (3) the budget-value, +roughly in that order. +

+

+ +

+

+
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/package-tree.html b/nars-dist/javadoc/nars/inference/package-tree.html new file mode 100644 index 00000000..11f2e159 --- /dev/null +++ b/nars-dist/javadoc/nars/inference/package-tree.html @@ -0,0 +1,166 @@ + + + + + + + +nars.inference Class Hierarchy (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package nars.inference +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+ +

+Enum Hierarchy +

+
    +
  • java.lang.Object
      +
    • java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable) + +
    +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/inference/package-use.html b/nars-dist/javadoc/nars/inference/package-use.html new file mode 100644 index 00000000..051af9fe --- /dev/null +++ b/nars-dist/javadoc/nars/inference/package-use.html @@ -0,0 +1,253 @@ + + + + + + + +Uses of Package nars.inference (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Package
nars.inference

+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Packages that use nars.inference
nars.entityData entities that are independently stored 
nars.inferenceThe inference rules and control functions 
nars.ioInput/output management 
nars.languageTerm hierarchy in Narsese 
nars.mainTop-level classes of the system 
+  +

+ + + + + + + + +
+Classes in nars.inference used by nars.entity
TemporalRules.Relation + +
+          Temporal relations: a default and three specific
+  +

+ + + + + + + + + + + +
+Classes in nars.inference used by nars.inference
TemporalRules.Relation + +
+          Temporal relations: a default and three specific
UtilityFunctions + +
+          Common functions on real numbers, mostly in [0,1].
+  +

+ + + + + + + + +
+Classes in nars.inference used by nars.io
TemporalRules.Relation + +
+          Temporal relations: a default and three specific
+  +

+ + + + + + + + +
+Classes in nars.inference used by nars.language
TemporalRules.Relation + +
+          Temporal relations: a default and three specific
+  +

+ + + + + + + + +
+Classes in nars.inference used by nars.main
TemporalRules.Relation + +
+          Temporal relations: a default and three specific
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/ExperienceIO.html b/nars-dist/javadoc/nars/io/ExperienceIO.html new file mode 100644 index 00000000..0ed606a7 --- /dev/null +++ b/nars-dist/javadoc/nars/io/ExperienceIO.html @@ -0,0 +1,445 @@ + + + + + + + +ExperienceIO (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.io +
+Class ExperienceIO

+
+java.lang.Object
+  extended by nars.io.ExperienceIO
+
+
+
+
public class ExperienceIO
extends java.lang.Object
+ + +

+To read and write experience as Task streams +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + +
+Field Summary
+private  java.io.BufferedReaderinExp + +
+          Input experience from a file
+private  InputWindowinputWindow + +
+          Input experience from a window
+private  java.io.PrintWriteroutExp + +
+          Output experience into a file
+  + + + + + + + + + + +
+Constructor Summary
ExperienceIO() + +
+          Default constructor
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ voidcloseLoadFile() + +
+          Close an input experience file
+ voidcloseSaveFile() + +
+          Close an output experience file
+ longloadLine() + +
+          Read a line from input, and send running instruction to Memory
+ voidopenLoadFile() + +
+          Open an input experience file
+ voidopenSaveFile() + +
+          Open an output experience file
+ voidsaveLine(java.lang.String line) + +
+          Write a line into the output experience file
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+inputWindow

+
+private InputWindow inputWindow
+
+
Input experience from a window +

+

+
+
+
+ +

+inExp

+
+private java.io.BufferedReader inExp
+
+
Input experience from a file +

+

+
+
+
+ +

+outExp

+
+private java.io.PrintWriter outExp
+
+
Output experience into a file +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+ExperienceIO

+
+public ExperienceIO()
+
+
Default constructor +

+

+ + + + + + + + +
+Method Detail
+ +

+openLoadFile

+
+public void openLoadFile()
+
+
Open an input experience file +

+

+
+
+
+
+ +

+openSaveFile

+
+public void openSaveFile()
+
+
Open an output experience file +

+

+
+
+
+
+ +

+loadLine

+
+public long loadLine()
+
+
Read a line from input, and send running instruction to Memory +

+

+ +
Returns:
Nember of running steps, if any
+
+
+
+ +

+saveLine

+
+public void saveLine(java.lang.String line)
+
+
Write a line into the output experience file +

+

+
Parameters:
line - The output line
+
+
+
+ +

+closeLoadFile

+
+public void closeLoadFile()
+
+
Close an input experience file +

+

+
+
+
+
+ +

+closeSaveFile

+
+public void closeSaveFile()
+
+
Close an output experience file +

+

+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/Record.html b/nars-dist/javadoc/nars/io/Record.html new file mode 100644 index 00000000..67344f51 --- /dev/null +++ b/nars-dist/javadoc/nars/io/Record.html @@ -0,0 +1,485 @@ + + + + + + + +Record (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.io +
+Class Record

+
+java.lang.Object
+  extended by nars.io.Record
+
+
+
+
public class Record
extends java.lang.Object
+ + +

+Inference log, which record input/output of each inference step +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + +
+Field Summary
+private static booleanisReporting + +
+          whether to display
+private static java.io.PrintWriterlogFile + +
+          the log file
+private static InferenceWindowwindow + +
+          the display window
+  + + + + + + + + + + +
+Constructor Summary
Record() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+static voidappend(java.lang.String s) + +
+          Add new text to display
+static voidcloseLogFile() + +
+          Close the log file
+static voidinit() + +
+          Initialize the window and the file
+static booleanisLogging() + +
+          Check file logging
+static voidopenLogFile() + +
+          Open the log file
+static voidplay() + +
+          Begin the display
+static voidshow() + +
+          Show the window
+static voidstop() + +
+          Stop the display
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+window

+
+private static InferenceWindow window
+
+
the display window +

+

+
+
+
+ +

+isReporting

+
+private static boolean isReporting
+
+
whether to display +

+

+
+
+
+ +

+logFile

+
+private static java.io.PrintWriter logFile
+
+
the log file +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Record

+
+public Record()
+
+
+ + + + + + + + +
+Method Detail
+ +

+init

+
+public static void init()
+
+
Initialize the window and the file +

+

+
+
+
+
+ +

+show

+
+public static void show()
+
+
Show the window +

+

+
+
+
+
+ +

+play

+
+public static void play()
+
+
Begin the display +

+

+
+
+
+
+ +

+stop

+
+public static void stop()
+
+
Stop the display +

+

+
+
+
+
+ +

+append

+
+public static void append(java.lang.String s)
+
+
Add new text to display +

+

+
Parameters:
s - The line to be displayed
+
+
+
+ +

+openLogFile

+
+public static void openLogFile()
+
+
Open the log file +

+

+
+
+
+
+ +

+closeLogFile

+
+public static void closeLogFile()
+
+
Close the log file +

+

+
+
+
+
+ +

+isLogging

+
+public static boolean isLogging()
+
+
Check file logging +

+

+ +
Returns:
If the file logging is going on
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html new file mode 100644 index 00000000..610125f4 --- /dev/null +++ b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html @@ -0,0 +1,250 @@ + + + + + + + +StringParser.InvalidInputException (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.io +
+Class StringParser.InvalidInputException

+
+java.lang.Object
+  extended by java.lang.Throwable
+      extended by java.lang.Exception
+          extended by nars.io.StringParser.InvalidInputException
+
+
+
All Implemented Interfaces:
java.io.Serializable
+
+
+
Enclosing class:
StringParser
+
+
+
+
private static class StringParser.InvalidInputException
extends java.lang.Exception
+ + +

+All kinds of invalid input lines +

+ +

+


+ +

+ + + + + + + + + + + +
+Constructor Summary
StringParser.InvalidInputException(java.lang.String s) + +
+          An invalid input line.
+  + + + + + + + +
+Method Summary
+ + + + + + + +
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+StringParser.InvalidInputException

+
+public StringParser.InvalidInputException(java.lang.String s)
+
+
An invalid input line. +

+

+
Parameters:
s - type of error
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/StringParser.html b/nars-dist/javadoc/nars/io/StringParser.html new file mode 100644 index 00000000..af300c0e --- /dev/null +++ b/nars-dist/javadoc/nars/io/StringParser.html @@ -0,0 +1,671 @@ + + + + + + + +StringParser (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.io +
+Class StringParser

+
+java.lang.Object
+  extended by nars.io.Symbols
+      extended by nars.io.StringParser
+
+
+
+
public abstract class StringParser
extends Symbols
+ + +

+Parse input String into Task. +

+ +

+


+ +

+ + + + + + + + + + + +
+Nested Class Summary
+private static classStringParser.InvalidInputException + +
+          All kinds of invalid input lines
+ + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.io.Symbols
ARGUMENT_SEPARATOR, BUDGET_VALUE_MARK, COMPOUND_TERM_CLOSER, COMPOUND_TERM_OPENER, CONJUNCTION_OPERATOR, DIFFERENCE_EXT_OPERATOR, DIFFERENCE_INT_OPERATOR, DISJUNCTION_OPERATOR, EQUIVALENCE_AFTER_RELATION, EQUIVALENCE_RELATION, EQUIVALENCE_WHEN_RELATION, GOAL_MARK, IMAGE_EXT_OPERATOR, IMAGE_INT_OPERATOR, IMAGE_PLACE_HOLDER, IMPLICATION_AFTER_RELATION, IMPLICATION_BEFORE_RELATION, IMPLICATION_RELATION, IMPLICATION_WHEN_RELATION, INHERITANCE_RELATION, INSTANCE_PROPERTY_RELATION, INSTANCE_RELATION, INTERSECTION_EXT_OPERATOR, INTERSECTION_INT_OPERATOR, JUDGMENT_MARK, NEGATION_OPERATOR, OPERATOR_TAG, PARALLEL_OPERATOR, PRODUCT_OPERATOR, PROPERTY_RELATION, QUERY_VARIABLE_TAG, QUESTION_MARK, SEQUENCE_OPERATOR, SET_EXT_CLOSER, SET_EXT_OPENER, SET_INT_CLOSER, SET_INT_OPENER, SIMILARITY_RELATION, STAMP_CLOSER, STAMP_OPENER, STAMP_SEPARATOR, STAMP_STARTER, STATEMENT_CLOSER, STATEMENT_OPENER, TENSE_FUTURE, TENSE_MARK, TENSE_PAST, TENSE_PRESENT, TO_COMPONENT_1, TO_COMPONENT_2, TO_COMPOUND_1, TO_COMPOUND_2, TRUTH_VALUE_MARK, VALUE_SEPARATOR, VARIABLE_TAG
+  + + + + + + + + + + +
+Constructor Summary
StringParser() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+private static java.lang.StringgetBudgetString(java.lang.StringBuffer s) + +
+          Return the prefex of a task string that contains a BudgetValue
+private static java.lang.StringgetTruthString(java.lang.StringBuffer s) + +
+          Return the postfix of a task string that contains a TruthValue
+private static booleanisCloser(java.lang.String s, + int i) + +
+          Check CompoundTerm closer symbol
+private static booleanisOpener(java.lang.String s, + int i) + +
+          Check CompoundTerm opener symbol
+private static intnextSeparator(java.lang.String s, + int first) + +
+          Locate the first top-level separator in a CompoundTerm
+private static java.util.ArrayList<Term>parseArguments(java.lang.String s0) + +
+          Parse a String into the argument get of a CompoundTerm.
+private static BudgetValueparseBudget(java.lang.String s, + char punctuation, + TruthValue truth) + +
+          parse the input String into a BudgetValue
+private static TermparseCompoundTerm(java.lang.String s0) + +
+          Parse a String to create a CompoundTerm.
+static voidparseExperience(java.lang.StringBuffer buffer) + +
+          Parse a line of input experience
+private static TermparseSimpleTerm(java.lang.String s0) + +
+          Parse a Term that has no internal structure.
+private static StatementparseStatement(java.lang.String s0) + +
+          Parse a String to create a Statement.
+static voidparseTask(java.lang.String s) + +
+          The only public (static) method of the class, called from InputWindow or locally.
+private static TemporalRules.RelationparseTense(java.lang.StringBuffer s) + +
+          Recognize the tense of an input sentence
+private static TermparseTerm(java.lang.String s0) + +
+          Top-level method that parse a Term in general, which may recursively call itself.
+private static TruthValueparseTruth(java.lang.String s, + char type) + +
+          parse the input String into a TruthValue (or DesireValue)
+private static inttopRelation(java.lang.String s) + +
+          locate the top-level relation in a statement
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+StringParser

+
+public StringParser()
+
+
+ + + + + + + + +
+Method Detail
+ +

+parseExperience

+
+public static void parseExperience(java.lang.StringBuffer buffer)
+
+
Parse a line of input experience +

+ called from ExperienceIO.loadLine +

+

+
Parameters:
buffer - The line to be parsed
+
+
+
+ +

+parseTask

+
+public static void parseTask(java.lang.String s)
+
+
The only public (static) method of the class, called from InputWindow or locally. +

+

+
Parameters:
s - the single-line input String
+
+
+
+ +

+getBudgetString

+
+private static java.lang.String getBudgetString(java.lang.StringBuffer s)
+                                         throws StringParser.InvalidInputException
+
+
Return the prefex of a task string that contains a BudgetValue +

+

+
Parameters:
s - the input in a StringBuffer +
Returns:
a String containing a BudgetValue +
Throws: +
StringParser.InvalidInputException - if the input cannot be parsed into a BudgetValue
+
+
+
+ +

+parseTense

+
+private static TemporalRules.Relation parseTense(java.lang.StringBuffer s)
+
+
Recognize the tense of an input sentence +

+

+
Parameters:
s - the input in a StringBuffer +
Returns:
a tense value
+
+
+
+ +

+getTruthString

+
+private static java.lang.String getTruthString(java.lang.StringBuffer s)
+                                        throws StringParser.InvalidInputException
+
+
Return the postfix of a task string that contains a TruthValue +

+

+
Parameters:
s - the input in a StringBuffer +
Returns:
a String containing a TruthValue +
Throws: +
StringParser.InvalidInputException - if the input cannot be parsed into a TruthValue
+
+
+
+ +

+parseTruth

+
+private static TruthValue parseTruth(java.lang.String s,
+                                     char type)
+
+
parse the input String into a TruthValue (or DesireValue) +

+

+
Parameters:
s - input String
type - Task type +
Returns:
the input TruthValue
+
+
+
+ +

+parseBudget

+
+private static BudgetValue parseBudget(java.lang.String s,
+                                       char punctuation,
+                                       TruthValue truth)
+                                throws StringParser.InvalidInputException
+
+
parse the input String into a BudgetValue +

+

+
Parameters:
truth - the TruthValue of the task
s - input String
punctuation - Task punctuation +
Returns:
the input BudgetValue +
Throws: +
StringParser.InvalidInputException - If the String cannot be parsed into a BudgetValue
+
+
+
+ +

+parseTerm

+
+private static Term parseTerm(java.lang.String s0)
+                       throws StringParser.InvalidInputException
+
+
Top-level method that parse a Term in general, which may recursively call itself. +

+ There are 5 valid cases: + 1. (Op, A1, ..., An) is a CompoundTerm if Op is a built-in operator + 2. {A1, ..., An} is an SetExt; + 3. [A1, ..., An] is an SetInt; + 4. is a Statement (including higher-order Statement); + 5. otherwise it is a simple term. +

+

+
Parameters:
s0 - the String to be parsed +
Returns:
the Term generated from the String +
Throws: +
StringParser.InvalidInputException - the String cannot be parsed into a Term
+
+
+
+ +

+parseSimpleTerm

+
+private static Term parseSimpleTerm(java.lang.String s0)
+                             throws StringParser.InvalidInputException
+
+
Parse a Term that has no internal structure. +

+ The Term can be a constant or a variable. +

+

+
Parameters:
s0 - the String to be parsed +
Returns:
the Term generated from the String +
Throws: +
StringParser.InvalidInputException - the String cannot be parsed into a Term
+
+
+
+ +

+parseStatement

+
+private static Statement parseStatement(java.lang.String s0)
+                                 throws StringParser.InvalidInputException
+
+
Parse a String to create a Statement. +

+

+
Parameters:
s0 - The input String to be parsed +
Returns:
the Statement generated from the String +
Throws: +
StringParser.InvalidInputException - the String cannot be parsed into a Term
+
+
+
+ +

+parseCompoundTerm

+
+private static Term parseCompoundTerm(java.lang.String s0)
+                               throws StringParser.InvalidInputException
+
+
Parse a String to create a CompoundTerm. +

+

+
Parameters:
s0 - The String to be parsed +
Returns:
the Term generated from the String +
Throws: +
StringParser.InvalidInputException - the String cannot be parsed into a Term
+
+
+
+ +

+parseArguments

+
+private static java.util.ArrayList<Term> parseArguments(java.lang.String s0)
+                                                 throws StringParser.InvalidInputException
+
+
Parse a String into the argument get of a CompoundTerm. +

+

+
Parameters:
s0 - The String to be parsed +
Returns:
the arguments in an ArrayList +
Throws: +
StringParser.InvalidInputException - the String cannot be parsed into an argument get
+
+
+
+ +

+nextSeparator

+
+private static int nextSeparator(java.lang.String s,
+                                 int first)
+
+
Locate the first top-level separator in a CompoundTerm +

+

+
Parameters:
s - The String to be parsed
first - The starting index +
Returns:
the index of the next seperator in a String
+
+
+
+ +

+topRelation

+
+private static int topRelation(java.lang.String s)
+
+
locate the top-level relation in a statement +

+

+
Parameters:
s - The String to be parsed +
Returns:
the index of the top-level relation
+
+
+
+ +

+isOpener

+
+private static boolean isOpener(java.lang.String s,
+                                int i)
+
+
Check CompoundTerm opener symbol +

+

+
Parameters:
s - The String to be checked
i - The starting index +
Returns:
if the given String is an opener symbol
+
+
+
+ +

+isCloser

+
+private static boolean isCloser(java.lang.String s,
+                                int i)
+
+
Check CompoundTerm closer symbol +

+

+
Parameters:
s - The String to be checked
i - The starting index +
Returns:
if the given String is a closer symbol
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/Symbols.html b/nars-dist/javadoc/nars/io/Symbols.html new file mode 100644 index 00000000..4fab2e0d --- /dev/null +++ b/nars-dist/javadoc/nars/io/Symbols.html @@ -0,0 +1,1240 @@ + + + + + + + +Symbols (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.io +
+Class Symbols

+
+java.lang.Object
+  extended by nars.io.Symbols
+
+
+
Direct Known Subclasses:
StringParser
+
+
+
+
public class Symbols
extends java.lang.Object
+ + +

+The ASCII symbols used in I/O. +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+static charARGUMENT_SEPARATOR + +
+           
+static charBUDGET_VALUE_MARK + +
+           
+static charCOMPOUND_TERM_CLOSER + +
+           
+static charCOMPOUND_TERM_OPENER + +
+           
+static java.lang.StringCONJUNCTION_OPERATOR + +
+           
+static java.lang.StringDIFFERENCE_EXT_OPERATOR + +
+           
+static java.lang.StringDIFFERENCE_INT_OPERATOR + +
+           
+static java.lang.StringDISJUNCTION_OPERATOR + +
+           
+static java.lang.StringEQUIVALENCE_AFTER_RELATION + +
+           
+static java.lang.StringEQUIVALENCE_RELATION + +
+           
+static java.lang.StringEQUIVALENCE_WHEN_RELATION + +
+           
+static charGOAL_MARK + +
+           
+static java.lang.StringIMAGE_EXT_OPERATOR + +
+           
+static java.lang.StringIMAGE_INT_OPERATOR + +
+           
+static charIMAGE_PLACE_HOLDER + +
+           
+static java.lang.StringIMPLICATION_AFTER_RELATION + +
+           
+static java.lang.StringIMPLICATION_BEFORE_RELATION + +
+           
+static java.lang.StringIMPLICATION_RELATION + +
+           
+static java.lang.StringIMPLICATION_WHEN_RELATION + +
+           
+static java.lang.StringINHERITANCE_RELATION + +
+           
+static java.lang.StringINSTANCE_PROPERTY_RELATION + +
+           
+static java.lang.StringINSTANCE_RELATION + +
+           
+static java.lang.StringINTERSECTION_EXT_OPERATOR + +
+           
+static java.lang.StringINTERSECTION_INT_OPERATOR + +
+           
+static charJUDGMENT_MARK + +
+           
+static java.lang.StringNEGATION_OPERATOR + +
+           
+static charOPERATOR_TAG + +
+           
+static java.lang.StringPARALLEL_OPERATOR + +
+           
+static java.lang.StringPRODUCT_OPERATOR + +
+           
+static java.lang.StringPROPERTY_RELATION + +
+           
+static charQUERY_VARIABLE_TAG + +
+           
+static charQUESTION_MARK + +
+           
+static java.lang.StringSEQUENCE_OPERATOR + +
+           
+static charSET_EXT_CLOSER + +
+           
+static charSET_EXT_OPENER + +
+           
+static charSET_INT_CLOSER + +
+           
+static charSET_INT_OPENER + +
+           
+static java.lang.StringSIMILARITY_RELATION + +
+           
+static java.lang.StringSTAMP_CLOSER + +
+           
+static java.lang.StringSTAMP_OPENER + +
+           
+static java.lang.StringSTAMP_SEPARATOR + +
+           
+static java.lang.StringSTAMP_STARTER + +
+           
+static charSTATEMENT_CLOSER + +
+           
+static charSTATEMENT_OPENER + +
+           
+static java.lang.StringTENSE_FUTURE + +
+           
+static java.lang.StringTENSE_MARK + +
+           
+static java.lang.StringTENSE_PAST + +
+           
+static java.lang.StringTENSE_PRESENT + +
+           
+static java.lang.StringTO_COMPONENT_1 + +
+           
+static java.lang.StringTO_COMPONENT_2 + +
+           
+static java.lang.StringTO_COMPOUND_1 + +
+           
+static java.lang.StringTO_COMPOUND_2 + +
+           
+static charTRUTH_VALUE_MARK + +
+           
+static charVALUE_SEPARATOR + +
+           
+static charVARIABLE_TAG + +
+           
+  + + + + + + + + + + +
+Constructor Summary
Symbols() + +
+           
+  + + + + + + + +
+Method Summary
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+JUDGMENT_MARK

+
+public static final char JUDGMENT_MARK
+
+
+
See Also:
Constant Field Values
+
+
+ +

+QUESTION_MARK

+
+public static final char QUESTION_MARK
+
+
+
See Also:
Constant Field Values
+
+
+ +

+GOAL_MARK

+
+public static final char GOAL_MARK
+
+
+
See Also:
Constant Field Values
+
+
+ +

+TENSE_MARK

+
+public static final java.lang.String TENSE_MARK
+
+
+
See Also:
Constant Field Values
+
+
+ +

+TENSE_PAST

+
+public static final java.lang.String TENSE_PAST
+
+
+
See Also:
Constant Field Values
+
+
+ +

+TENSE_PRESENT

+
+public static final java.lang.String TENSE_PRESENT
+
+
+
See Also:
Constant Field Values
+
+
+ +

+TENSE_FUTURE

+
+public static final java.lang.String TENSE_FUTURE
+
+
+
See Also:
Constant Field Values
+
+
+ +

+BUDGET_VALUE_MARK

+
+public static final char BUDGET_VALUE_MARK
+
+
+
See Also:
Constant Field Values
+
+
+ +

+TRUTH_VALUE_MARK

+
+public static final char TRUTH_VALUE_MARK
+
+
+
See Also:
Constant Field Values
+
+
+ +

+VALUE_SEPARATOR

+
+public static final char VALUE_SEPARATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+COMPOUND_TERM_OPENER

+
+public static final char COMPOUND_TERM_OPENER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+COMPOUND_TERM_CLOSER

+
+public static final char COMPOUND_TERM_CLOSER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+STATEMENT_OPENER

+
+public static final char STATEMENT_OPENER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+STATEMENT_CLOSER

+
+public static final char STATEMENT_CLOSER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+SET_EXT_OPENER

+
+public static final char SET_EXT_OPENER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+SET_EXT_CLOSER

+
+public static final char SET_EXT_CLOSER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+SET_INT_OPENER

+
+public static final char SET_INT_OPENER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+SET_INT_CLOSER

+
+public static final char SET_INT_CLOSER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+ARGUMENT_SEPARATOR

+
+public static final char ARGUMENT_SEPARATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+IMAGE_PLACE_HOLDER

+
+public static final char IMAGE_PLACE_HOLDER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+INTERSECTION_EXT_OPERATOR

+
+public static final java.lang.String INTERSECTION_EXT_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+INTERSECTION_INT_OPERATOR

+
+public static final java.lang.String INTERSECTION_INT_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+DIFFERENCE_EXT_OPERATOR

+
+public static final java.lang.String DIFFERENCE_EXT_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+DIFFERENCE_INT_OPERATOR

+
+public static final java.lang.String DIFFERENCE_INT_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+PRODUCT_OPERATOR

+
+public static final java.lang.String PRODUCT_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+IMAGE_EXT_OPERATOR

+
+public static final java.lang.String IMAGE_EXT_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+IMAGE_INT_OPERATOR

+
+public static final java.lang.String IMAGE_INT_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+NEGATION_OPERATOR

+
+public static final java.lang.String NEGATION_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+DISJUNCTION_OPERATOR

+
+public static final java.lang.String DISJUNCTION_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+CONJUNCTION_OPERATOR

+
+public static final java.lang.String CONJUNCTION_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+SEQUENCE_OPERATOR

+
+public static final java.lang.String SEQUENCE_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+PARALLEL_OPERATOR

+
+public static final java.lang.String PARALLEL_OPERATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+INHERITANCE_RELATION

+
+public static final java.lang.String INHERITANCE_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+SIMILARITY_RELATION

+
+public static final java.lang.String SIMILARITY_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+INSTANCE_RELATION

+
+public static final java.lang.String INSTANCE_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+PROPERTY_RELATION

+
+public static final java.lang.String PROPERTY_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+INSTANCE_PROPERTY_RELATION

+
+public static final java.lang.String INSTANCE_PROPERTY_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+IMPLICATION_RELATION

+
+public static final java.lang.String IMPLICATION_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+EQUIVALENCE_RELATION

+
+public static final java.lang.String EQUIVALENCE_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+IMPLICATION_AFTER_RELATION

+
+public static final java.lang.String IMPLICATION_AFTER_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+IMPLICATION_BEFORE_RELATION

+
+public static final java.lang.String IMPLICATION_BEFORE_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+IMPLICATION_WHEN_RELATION

+
+public static final java.lang.String IMPLICATION_WHEN_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+EQUIVALENCE_AFTER_RELATION

+
+public static final java.lang.String EQUIVALENCE_AFTER_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+EQUIVALENCE_WHEN_RELATION

+
+public static final java.lang.String EQUIVALENCE_WHEN_RELATION
+
+
+
See Also:
Constant Field Values
+
+
+ +

+VARIABLE_TAG

+
+public static final char VARIABLE_TAG
+
+
+
See Also:
Constant Field Values
+
+
+ +

+QUERY_VARIABLE_TAG

+
+public static final char QUERY_VARIABLE_TAG
+
+
+
See Also:
Constant Field Values
+
+
+ +

+OPERATOR_TAG

+
+public static final char OPERATOR_TAG
+
+
+
See Also:
Constant Field Values
+
+
+ +

+STAMP_OPENER

+
+public static final java.lang.String STAMP_OPENER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+STAMP_CLOSER

+
+public static final java.lang.String STAMP_CLOSER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+STAMP_SEPARATOR

+
+public static final java.lang.String STAMP_SEPARATOR
+
+
+
See Also:
Constant Field Values
+
+
+ +

+STAMP_STARTER

+
+public static final java.lang.String STAMP_STARTER
+
+
+
See Also:
Constant Field Values
+
+
+ +

+TO_COMPONENT_1

+
+public static final java.lang.String TO_COMPONENT_1
+
+
+
See Also:
Constant Field Values
+
+
+ +

+TO_COMPONENT_2

+
+public static final java.lang.String TO_COMPONENT_2
+
+
+
See Also:
Constant Field Values
+
+
+ +

+TO_COMPOUND_1

+
+public static final java.lang.String TO_COMPOUND_1
+
+
+
See Also:
Constant Field Values
+
+
+ +

+TO_COMPOUND_2

+
+public static final java.lang.String TO_COMPOUND_2
+
+
+
See Also:
Constant Field Values
+
+ + + + + + + + +
+Constructor Detail
+ +

+Symbols

+
+public Symbols()
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html new file mode 100644 index 00000000..976c2e5c --- /dev/null +++ b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.io.ExperienceIO (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.io.ExperienceIO

+
+ + + + + + + + + +
+Packages that use ExperienceIO
nars.mainTop-level classes of the system 
+  +

+ + + + + +
+Uses of ExperienceIO in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main declared as ExperienceIO
+static ExperienceIOCenter.experienceIO + +
+          The unique input channel
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/class-use/Record.html b/nars-dist/javadoc/nars/io/class-use/Record.html new file mode 100644 index 00000000..769a1405 --- /dev/null +++ b/nars-dist/javadoc/nars/io/class-use/Record.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.io.Record (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.io.Record

+
+No usage of nars.io.Record +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html new file mode 100644 index 00000000..38930bdb --- /dev/null +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html @@ -0,0 +1,239 @@ + + + + + + + +Uses of Class nars.io.StringParser.InvalidInputException (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.io.StringParser.InvalidInputException

+
+ + + + + + + + + +
+Packages that use StringParser.InvalidInputException
nars.ioInput/output management 
+  +

+ + + + + +
+Uses of StringParser.InvalidInputException in nars.io
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.io that throw StringParser.InvalidInputException
+private static java.lang.StringStringParser.getBudgetString(java.lang.StringBuffer s) + +
+          Return the prefex of a task string that contains a BudgetValue
+private static java.lang.StringStringParser.getTruthString(java.lang.StringBuffer s) + +
+          Return the postfix of a task string that contains a TruthValue
+private static java.util.ArrayList<Term>StringParser.parseArguments(java.lang.String s0) + +
+          Parse a String into the argument get of a CompoundTerm.
+private static BudgetValueStringParser.parseBudget(java.lang.String s, + char punctuation, + TruthValue truth) + +
+          parse the input String into a BudgetValue
+private static TermStringParser.parseCompoundTerm(java.lang.String s0) + +
+          Parse a String to create a CompoundTerm.
+private static TermStringParser.parseSimpleTerm(java.lang.String s0) + +
+          Parse a Term that has no internal structure.
+private static StatementStringParser.parseStatement(java.lang.String s0) + +
+          Parse a String to create a Statement.
+private static TermStringParser.parseTerm(java.lang.String s0) + +
+          Top-level method that parse a Term in general, which may recursively call itself.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.html b/nars-dist/javadoc/nars/io/class-use/StringParser.html new file mode 100644 index 00000000..99521a60 --- /dev/null +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.io.StringParser (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.io.StringParser

+
+No usage of nars.io.StringParser +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/class-use/Symbols.html b/nars-dist/javadoc/nars/io/class-use/Symbols.html new file mode 100644 index 00000000..3c4c2c7c --- /dev/null +++ b/nars-dist/javadoc/nars/io/class-use/Symbols.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.io.Symbols (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.io.Symbols

+
+ + + + + + + + + +
+Packages that use Symbols
nars.ioInput/output management 
+  +

+ + + + + +
+Uses of Symbols in nars.io
+  +

+ + + + + + + + + +
Subclasses of Symbols in nars.io
+ classStringParser + +
+          Parse input String into Task.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/package-frame.html b/nars-dist/javadoc/nars/io/package-frame.html new file mode 100644 index 00000000..ae1dc0bc --- /dev/null +++ b/nars-dist/javadoc/nars/io/package-frame.html @@ -0,0 +1,50 @@ + + + + + + + +nars.io (NARS Document) + + + + + + + + + + + +nars.io + + + + +
+Classes  + +
+ExperienceIO +
+Record +
+StringParser +
+Symbols
+ + + + + + +
+Exceptions  + +
+StringParser.InvalidInputException
+ + + + diff --git a/nars-dist/javadoc/nars/io/package-summary.html b/nars-dist/javadoc/nars/io/package-summary.html new file mode 100644 index 00000000..c41975d2 --- /dev/null +++ b/nars-dist/javadoc/nars/io/package-summary.html @@ -0,0 +1,203 @@ + + + + + + + +nars.io (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package nars.io +

+Input/output management +

+See: +
+          Description +

+ + + + + + + + + + + + + + + + + + + + + +
+Class Summary
ExperienceIOTo read and write experience as Task streams
RecordInference log, which record input/output of each inference step
StringParserParse input String into Task.
SymbolsThe ASCII symbols used in I/O.
+  + +

+ + + + + + + + + +
+Exception Summary
StringParser.InvalidInputExceptionAll kinds of invalid input lines
+  + +

+

+Package nars.io Description +

+ +

+Input/output management + +

Package Specification

+ +All Narsese-based input/output interfaces of the system are defined in this package. +

+ +

+

+
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/package-tree.html b/nars-dist/javadoc/nars/io/package-tree.html new file mode 100644 index 00000000..968abd05 --- /dev/null +++ b/nars-dist/javadoc/nars/io/package-tree.html @@ -0,0 +1,161 @@ + + + + + + + +nars.io Class Hierarchy (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package nars.io +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/io/package-use.html b/nars-dist/javadoc/nars/io/package-use.html new file mode 100644 index 00000000..ed35270c --- /dev/null +++ b/nars-dist/javadoc/nars/io/package-use.html @@ -0,0 +1,196 @@ + + + + + + + +Uses of Package nars.io (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Package
nars.io

+
+ + + + + + + + + + + + + +
+Packages that use nars.io
nars.ioInput/output management 
nars.mainTop-level classes of the system 
+  +

+ + + + + + + + + + + +
+Classes in nars.io used by nars.io
StringParser.InvalidInputException + +
+          All kinds of invalid input lines
Symbols + +
+          The ASCII symbols used in I/O.
+  +

+ + + + + + + + +
+Classes in nars.io used by nars.main
ExperienceIO + +
+          To read and write experience as Task streams
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/CompoundTerm.html b/nars-dist/javadoc/nars/language/CompoundTerm.html new file mode 100644 index 00000000..df36dfa6 --- /dev/null +++ b/nars-dist/javadoc/nars/language/CompoundTerm.html @@ -0,0 +1,1228 @@ + + + + + + + +CompoundTerm (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class CompoundTerm

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
Direct Known Subclasses:
Conjunction, DifferenceExt, DifferenceInt, Disjunction, ImageExt, ImageInt, IntersectionExt, IntersectionInt, Negation, Product, SetExt, SetInt, Statement
+
+
+
+
public abstract class CompoundTerm
extends Term
+ + +

+A CompoundTerm is a Term with internal (syntactic) structure +

+ A CompoundTerm consists of a term operator with one or more component Terms. +

+ This abstract class contains default methods for all CompoundTerms. +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + +
+Field Summary
+protected  shortcomplexity + +
+          syntactic complexity of the compound, the sum of those of its components plus 1
+protected  java.util.ArrayList<Term>components + +
+          list of (direct) components
+protected  java.util.ArrayList<Variable>openVariables + +
+          list of open variables in the compound
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + + + + + +
+Constructor Summary
+protected CompoundTerm() + +
+          Default constructor
+protected CompoundTerm(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor called from subclasses constructors to initialize the fields
+protected CompoundTerm(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor called from subclasses constructors to clone the fields
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+static TermaddComponents(CompoundTerm t1, + Term t2) + +
+          Try to add a component into a compound
+protected static java.util.ArrayList<Term>argumentsToList(Term t1, + Term t2) + +
+          build a component list from two terms
+private  voidcalcComplexity() + +
+          The complexity of the term is the sum of those of the components plus 1
+abstract  java.lang.Objectclone() + +
+          Abstract clone method
+ java.util.ArrayList<Term>cloneComponents() + +
+          Clone the component list
+static java.util.ArrayListcloneList(java.util.ArrayList original) + +
+          Deep clone an array list of terms
+ TermcomponentAt(int i) + +
+          get a component by index
+ booleancontainAllComponents(Term t) + +
+          Check whether the compound contains all components of another term, or that term as a whole
+ booleancontainComponent(Term t) + +
+          Check whether the compound contains a certain component
+ intgetComplexity() + +
+          report the term's syntactic complexity
+ java.util.ArrayList<Term>getComponents() + +
+          Get the component list
+ java.lang.StringgetConstantName() + +
+          skip all variable names to produce stable sorting order among components, not for display
+ java.util.ArrayList<Variable>getOpenVariables() + +
+          get the OpenVariables list
+private static booleanisBuiltInOperator(java.lang.String s) + +
+          Check built-in operator name
+ booleanisCommutative() + +
+          Check if the order of the components matters
+ booleanisConstant() + +
+          check if the term contains free variable
+static booleanisOperator(java.lang.String s) + +
+          Check CompoundTerm operator symbol
+static Termmake(CompoundTerm compound, + java.util.ArrayList<Term> components) + +
+          Try to make a compound term from a template and a list of components
+static Termmake(java.lang.String op, + java.util.ArrayList<Term> arg) + +
+          Try to make a compound term from an operator and a list of components
+protected static java.lang.StringmakeCompoundName(java.lang.String op, + java.util.ArrayList<Term> arg) + +
+          default method to make the name of a compound term from given fields
+protected static java.lang.StringmakeImageName(java.lang.String op, + java.util.ArrayList<Term> arg, + int relationIndex) + +
+          default method to make the name of an image term from given fields
+protected  java.lang.StringmakeName() + +
+          default method to make the name of the current term from existing fields
+protected static java.lang.StringmakeSetName(char opener, + java.util.ArrayList<Term> arg, + char closer) + +
+          make the name of an ExtensionSet or IntensionSet
+private  java.lang.StringmakeVarName(int size, + Variable v) + +
+          Sequentially generate new variable names
+private  voidmarkVariables() + +
+          Register open and closed variables in a CompoundTerm
+abstract  java.lang.Stringoperator() + +
+          Abstract method to get the operator of the compound
+ java.util.ArrayList<TermLink>prepareComponentLinks() + +
+          Build TermLink templates to constant components and subcomponents
+private  voidprepareComponentLinks(java.util.ArrayList<TermLink> componentLinks, + short type, + CompoundTerm term) + +
+          Collect TermLink templates into a list, go down one level except in special cases
+static TermreduceComponents(CompoundTerm t1, + Term t2) + +
+          Try to remove a component from a compound
+ voidrenameVariables() + +
+          Rename variables in input sentence
+protected  voidrenameVariables(java.util.HashMap<java.lang.String,java.lang.String> varMap) + +
+          Recursively rename variables by their appearing order in the CompoundTerm
+static TermreplaceComponent(CompoundTerm compound, + int index, + Term t) + +
+          Try to replace a component in a compound at a given index by another one
+static TermreplaceComponent(CompoundTerm compound, + Term oldComponent, + Term newComponent) + +
+          Try to replace a given component in a compound by another one
+ intsize() + +
+          get the number of components
+ voidsubstituteComponent(java.util.HashMap<java.lang.String,Term> subs, + boolean first) + +
+          Substitute a variable component according to a given substitution
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+components

+
+protected java.util.ArrayList<Term> components
+
+
list of (direct) components +

+

+
+
+
+ +

+openVariables

+
+protected java.util.ArrayList<Variable> openVariables
+
+
list of open variables in the compound +

+

+
+
+
+ +

+complexity

+
+protected short complexity
+
+
syntactic complexity of the compound, the sum of those of its components plus 1 +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+CompoundTerm

+
+protected CompoundTerm()
+
+
Default constructor +

+

+
+ +

+CompoundTerm

+
+protected CompoundTerm(java.lang.String n,
+                       java.util.ArrayList<Term> cs,
+                       java.util.ArrayList<Variable> open,
+                       short i)
+
+
Constructor called from subclasses constructors to clone the fields +

+

+
Parameters:
n - Name
cs - Component list
open - Open variable list
i - Complexity
+
+
+ +

+CompoundTerm

+
+protected CompoundTerm(java.lang.String n,
+                       java.util.ArrayList<Term> arg)
+
+
Constructor called from subclasses constructors to initialize the fields +

+

+
Parameters:
n - Name, to be re-built
arg - Component list
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public abstract java.lang.Object clone()
+
+
Abstract clone method +

+

+
Overrides:
clone in class Term
+
+
+ +
Returns:
A clone of the compound term
+
+
+
+ +

+operator

+
+public abstract java.lang.String operator()
+
+
Abstract method to get the operator of the compound +

+

+ +
Returns:
The operator in a String
+
+
+
+ +

+calcComplexity

+
+private void calcComplexity()
+
+
The complexity of the term is the sum of those of the components plus 1 +

+

+
+
+
+
+ +

+make

+
+public static Term make(CompoundTerm compound,
+                        java.util.ArrayList<Term> components)
+
+
Try to make a compound term from a template and a list of components +

+

+
Parameters:
compound - The template
components - The components +
Returns:
A compound term or null
+
+
+
+ +

+make

+
+public static Term make(java.lang.String op,
+                        java.util.ArrayList<Term> arg)
+
+
Try to make a compound term from an operator and a list of components +

+ Called from StringParser +

+

+
Parameters:
op - Term operator
arg - Component list +
Returns:
A compound term or null
+
+
+
+ +

+isBuiltInOperator

+
+private static boolean isBuiltInOperator(java.lang.String s)
+
+
Check built-in operator name +

+

+
Parameters:
s - The String to be checked +
Returns:
if the given String is an operator name
+
+
+
+ +

+isOperator

+
+public static boolean isOperator(java.lang.String s)
+
+
Check CompoundTerm operator symbol +

+

+
Parameters:
s - The String to be checked +
Returns:
if the given String is an operator symbol
+
+
+
+ +

+argumentsToList

+
+protected static java.util.ArrayList<Term> argumentsToList(Term t1,
+                                                           Term t2)
+
+
build a component list from two terms +

+

+
Parameters:
t1 - the first component
t2 - the second component +
Returns:
the component list
+
+
+
+ +

+makeName

+
+protected java.lang.String makeName()
+
+
default method to make the name of the current term from existing fields +

+

+ +
Returns:
the name of the term
+
+
+
+ +

+makeCompoundName

+
+protected static java.lang.String makeCompoundName(java.lang.String op,
+                                                   java.util.ArrayList<Term> arg)
+
+
default method to make the name of a compound term from given fields +

+

+
Parameters:
op - the term operator
arg - the list of components +
Returns:
the name of the term
+
+
+
+ +

+makeSetName

+
+protected static java.lang.String makeSetName(char opener,
+                                              java.util.ArrayList<Term> arg,
+                                              char closer)
+
+
make the name of an ExtensionSet or IntensionSet +

+

+
Parameters:
opener - the set opener
closer - the set closer
arg - the list of components +
Returns:
the name of the term
+
+
+
+ +

+makeImageName

+
+protected static java.lang.String makeImageName(java.lang.String op,
+                                                java.util.ArrayList<Term> arg,
+                                                int relationIndex)
+
+
default method to make the name of an image term from given fields +

+

+
Parameters:
op - the term operator
arg - the list of components
relationIndex - the location of the place holder +
Returns:
the name of the term
+
+
+
+ +

+getConstantName

+
+public java.lang.String getConstantName()
+
+
skip all variable names to produce stable sorting order among components, not for display +

+

+
Overrides:
getConstantName in class Term
+
+
+ +
Returns:
the constant part of the term name
+
+
+
+ +

+getComplexity

+
+public int getComplexity()
+
+
report the term's syntactic complexity +

+

+
Overrides:
getComplexity in class Term
+
+
+ +
Returns:
the comlexity value
+
+
+
+ +

+isConstant

+
+public boolean isConstant()
+
+
check if the term contains free variable +

+

+
Overrides:
isConstant in class Term
+
+
+ +
Returns:
if the term is a constant
+
+
+
+ +

+isCommutative

+
+public boolean isCommutative()
+
+
Check if the order of the components matters +

+ commutative CompoundTerms: Sets, Intersections; + communative Statements: Similarity, Equivalence, EquivalenceWhen; + communative CompoundStatements: Disjunction, Conjunction, ConjunctionParallel +

+

+ +
Returns:
The default value is false
+
+
+
+ +

+size

+
+public int size()
+
+
get the number of components +

+

+ +
Returns:
the size of the component list
+
+
+
+ +

+componentAt

+
+public Term componentAt(int i)
+
+
get a component by index +

+

+
Parameters:
i - index of the component +
Returns:
the component
+
+
+
+ +

+getComponents

+
+public java.util.ArrayList<Term> getComponents()
+
+
Get the component list +

+

+ +
Returns:
The component list
+
+
+
+ +

+cloneComponents

+
+public java.util.ArrayList<Term> cloneComponents()
+
+
Clone the component list +

+

+ +
Returns:
The cloned component list
+
+
+
+ +

+cloneList

+
+public static java.util.ArrayList cloneList(java.util.ArrayList original)
+
+
Deep clone an array list of terms +

+

+
Parameters:
original - The original component list +
Returns:
an identical and separate copy of the list
+
+
+
+ +

+containComponent

+
+public boolean containComponent(Term t)
+
+
Check whether the compound contains a certain component +

+

+
Parameters:
t - The component to be checked +
Returns:
Whether the component is in the compound
+
+
+
+ +

+containAllComponents

+
+public boolean containAllComponents(Term t)
+
+
Check whether the compound contains all components of another term, or that term as a whole +

+

+
Parameters:
t - The other term +
Returns:
Whether the components are all in the compound
+
+
+
+ +

+addComponents

+
+public static Term addComponents(CompoundTerm t1,
+                                 Term t2)
+
+
Try to add a component into a compound +

+

+
Parameters:
t1 - The compound
t2 - The component +
Returns:
The new compound
+
+
+
+ +

+reduceComponents

+
+public static Term reduceComponents(CompoundTerm t1,
+                                    Term t2)
+
+
Try to remove a component from a compound +

+

+
Parameters:
t1 - The compound
t2 - The component +
Returns:
The new compound
+
+
+
+ +

+replaceComponent

+
+public static Term replaceComponent(CompoundTerm compound,
+                                    int index,
+                                    Term t)
+
+
Try to replace a component in a compound at a given index by another one +

+

+
Parameters:
compound - The compound
index - The location of replacement
t - The new component +
Returns:
The new compound
+
+
+
+ +

+replaceComponent

+
+public static Term replaceComponent(CompoundTerm compound,
+                                    Term oldComponent,
+                                    Term newComponent)
+
+
Try to replace a given component in a compound by another one +

+

+
Parameters:
compound - The compound
oldComponent - The component to remove
newComponent - The component to add +
Returns:
The new compound
+
+
+
+ +

+getOpenVariables

+
+public java.util.ArrayList<Variable> getOpenVariables()
+
+
get the OpenVariables list +

+

+ +
Returns:
the open variables list
+
+
+
+ +

+markVariables

+
+private void markVariables()
+
+
Register open and closed variables in a CompoundTerm +

+ An open variable only appears in one components, while a closed variable + appears in multiple components +

+ May need further testing and revising on various situations +

+

+
+
+
+
+ +

+renameVariables

+
+public void renameVariables()
+
+
Rename variables in input sentence +

+ only called from Sentence +

+

+
+
+
+
+ +

+renameVariables

+
+protected void renameVariables(java.util.HashMap<java.lang.String,java.lang.String> varMap)
+
+
Recursively rename variables by their appearing order in the CompoundTerm +

+ Since each occurance of a variable is processed exactly once, there will + be no confusion between new names and old names. +

+

+
Parameters:
varMap - the mapping built so far
+
+
+
+ +

+makeVarName

+
+private java.lang.String makeVarName(int size,
+                                     Variable v)
+
+
Sequentially generate new variable names +

+

+
Parameters:
size - The current size of the variable list
v - The variable to be renamed +
Returns:
A new variable name
+
+
+
+ +

+substituteComponent

+
+public void substituteComponent(java.util.HashMap<java.lang.String,Term> subs,
+                                boolean first)
+
+
Substitute a variable component according to a given substitution +

+

+
Parameters:
subs - The substitution
first - Whether it is the first term in the mapping
+
+
+
+ +

+prepareComponentLinks

+
+public java.util.ArrayList<TermLink> prepareComponentLinks()
+
+
Build TermLink templates to constant components and subcomponents +

+ The compound type determines the link type; the component type determines whether to build the link. +

+

+ +
Returns:
A list of TermLink templates
+
+
+
+ +

+prepareComponentLinks

+
+private void prepareComponentLinks(java.util.ArrayList<TermLink> componentLinks,
+                                   short type,
+                                   CompoundTerm term)
+
+
Collect TermLink templates into a list, go down one level except in special cases +

+

+

+
Parameters:
componentLinks - The list of TermLink templates built so far
type - The type of TermLink to be built
term - The CompoundTerm for which the links are built
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Conjunction.html b/nars-dist/javadoc/nars/language/Conjunction.html new file mode 100644 index 00000000..acacc519 --- /dev/null +++ b/nars-dist/javadoc/nars/language/Conjunction.html @@ -0,0 +1,468 @@ + + + + + + + +Conjunction (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Conjunction

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Conjunction
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
Direct Known Subclasses:
ConjunctionParallel, ConjunctionSequence
+
+
+
+
public class Conjunction
extends CompoundTerm
+ + +

+Conjunction of statements +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+protected Conjunction(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+protected Conjunction(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ booleanisCommutative() + +
+          Check if the compound is communitative.
+static Termmake(java.util.ArrayList<Term> argList) + +
+          Try to make a new compound from a list of components.
+static Termmake(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static Termmake(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Conjunction

+
+protected Conjunction(java.lang.String n,
+                      java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+Conjunction

+
+protected Conjunction(java.lang.String n,
+                      java.util.ArrayList<Term> cs,
+                      java.util.ArrayList<Variable> open,
+                      short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static Term make(Term term1,
+                        Term term2)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
Parameters:
term1 - The first compoment
term2 - The second compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argList)
+
+
Try to make a new compound from a list of components. Called by StringParser. +

+

+
Parameters:
argList - the list of arguments +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(java.util.TreeSet<Term> set)
+
+
Try to make a new compound from a set of components. Called by the public make methods. +

+

+
Parameters:
set - a set of Term as compoments +
Returns:
the Term generated from the arguments
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+isCommutative

+
+public boolean isCommutative()
+
+
Check if the compound is communitative. +

+

+
Overrides:
isCommutative in class CompoundTerm
+
+
+ +
Returns:
true for communitative
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/ConjunctionParallel.html b/nars-dist/javadoc/nars/language/ConjunctionParallel.html new file mode 100644 index 00000000..8daee4cd --- /dev/null +++ b/nars-dist/javadoc/nars/language/ConjunctionParallel.html @@ -0,0 +1,484 @@ + + + + + + + +ConjunctionParallel (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class ConjunctionParallel

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Conjunction
+              extended by nars.language.ConjunctionParallel
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>, Temporal
+
+
+
+
public class ConjunctionParallel
extends Conjunction
implements Temporal
+ + +

+A parallel conjunction of Statements. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+protected ConjunctionParallel(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private ConjunctionParallel(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ TemporalRules.RelationgetTemporalOrder() + +
+          The components are concurrent
+static Termmake(java.util.ArrayList<Term> argList) + +
+          Try to make a new compound from a list of components.
+static Termmake(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static Termmake(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.Conjunction
isCommutative
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+ConjunctionParallel

+
+protected ConjunctionParallel(java.lang.String n,
+                              java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+ConjunctionParallel

+
+private ConjunctionParallel(java.lang.String n,
+                            java.util.ArrayList<Term> cs,
+                            java.util.ArrayList<Variable> open,
+                            short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Overrides:
clone in class Conjunction
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static Term make(Term term1,
+                        Term term2)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
+
+
+
Parameters:
term1 - The first compoment
term2 - The second compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argList)
+
+
Try to make a new compound from a list of components. Called by StringParser. +

+

+
+
+
+
Parameters:
argList - the list of arguments +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(java.util.TreeSet<Term> set)
+
+
Try to make a new compound from a set of components. Called by the public make methods. +

+

+
+
+
+
Parameters:
set - a set of Term as compoments +
Returns:
the Term generated from the arguments
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Overrides:
operator in class Conjunction
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+getTemporalOrder

+
+public TemporalRules.Relation getTemporalOrder()
+
+
The components are concurrent +

+

+
Overrides:
getTemporalOrder in class Term
+
+
+ +
Returns:
WHEN means the components happen altogether
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/ConjunctionSequence.html b/nars-dist/javadoc/nars/language/ConjunctionSequence.html new file mode 100644 index 00000000..663c30f2 --- /dev/null +++ b/nars-dist/javadoc/nars/language/ConjunctionSequence.html @@ -0,0 +1,481 @@ + + + + + + + +ConjunctionSequence (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class ConjunctionSequence

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Conjunction
+              extended by nars.language.ConjunctionSequence
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>, Temporal
+
+
+
+
public class ConjunctionSequence
extends Conjunction
implements Temporal
+ + +

+A sequential conjunction of Statements. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private ConjunctionSequence(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          constructor with partial values, called by make
+private ConjunctionSequence(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ TemporalRules.RelationgetTemporalOrder() + +
+          The components are temporally sorted
+ booleanisCommutative() + +
+          Check if the compound is communitative.
+static Termmake(java.util.ArrayList<Term> argument) + +
+          Try to make a new compound from a list of components.
+static Termmake(Term term1, + Term term2) + +
+           
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.Conjunction
make
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+ConjunctionSequence

+
+private ConjunctionSequence(java.lang.String n,
+                            java.util.ArrayList<Term> arg)
+
+
constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+ConjunctionSequence

+
+private ConjunctionSequence(java.lang.String n,
+                            java.util.ArrayList<Term> cs,
+                            java.util.ArrayList<Variable> open,
+                            short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Overrides:
clone in class Conjunction
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argument)
+
+
Try to make a new compound from a list of components. Called by StringParser. +

+

+
+
+
+
Parameters:
argument - the list of arguments +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(Term term1,
+                        Term term2)
+
+
+
+
+
+
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Overrides:
operator in class Conjunction
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+isCommutative

+
+public boolean isCommutative()
+
+
Check if the compound is communitative. +

+

+
Overrides:
isCommutative in class Conjunction
+
+
+ +
Returns:
true for communitative
+
+
+
+ +

+getTemporalOrder

+
+public TemporalRules.Relation getTemporalOrder()
+
+
The components are temporally sorted +

+

+
Overrides:
getTemporalOrder in class Term
+
+
+ +
Returns:
AFTER means the components happen in that order
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/DifferenceExt.html b/nars-dist/javadoc/nars/language/DifferenceExt.html new file mode 100644 index 00000000..ca3650b6 --- /dev/null +++ b/nars-dist/javadoc/nars/language/DifferenceExt.html @@ -0,0 +1,418 @@ + + + + + + + +DifferenceExt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class DifferenceExt

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.DifferenceExt
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class DifferenceExt
extends CompoundTerm
+ + +

+A compound term whose extension is the difference of the extensions of its components +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private DifferenceExt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private DifferenceExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+static Termmake(java.util.ArrayList<Term> argList) + +
+          Try to make a new DifferenceExt.
+static Termmake(Term t1, + Term t2) + +
+          Try to make a new compound from two components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+DifferenceExt

+
+private DifferenceExt(java.lang.String n,
+                      java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+DifferenceExt

+
+private DifferenceExt(java.lang.String n,
+                      java.util.ArrayList<Term> cs,
+                      java.util.ArrayList<Variable> open,
+                      short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object, to be casted into a DifferenceExt
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argList)
+
+
Try to make a new DifferenceExt. Called by StringParser. +

+

+
Parameters:
argList - The list of components +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(Term t1,
+                        Term t2)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
Parameters:
t1 - The first compoment
t2 - The second compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/DifferenceInt.html b/nars-dist/javadoc/nars/language/DifferenceInt.html new file mode 100644 index 00000000..778268ca --- /dev/null +++ b/nars-dist/javadoc/nars/language/DifferenceInt.html @@ -0,0 +1,418 @@ + + + + + + + +DifferenceInt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class DifferenceInt

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.DifferenceInt
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class DifferenceInt
extends CompoundTerm
+ + +

+A compound term whose extension is the difference of the intensions of its components +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private DifferenceInt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private DifferenceInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+static Termmake(java.util.ArrayList<Term> argList) + +
+          Try to make a new DifferenceExt.
+static Termmake(Term t1, + Term t2) + +
+          Try to make a new compound from two components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+DifferenceInt

+
+private DifferenceInt(java.lang.String n,
+                      java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+DifferenceInt

+
+private DifferenceInt(java.lang.String n,
+                      java.util.ArrayList<Term> cs,
+                      java.util.ArrayList<Variable> open,
+                      short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object, to be casted into a DifferenceInt
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argList)
+
+
Try to make a new DifferenceExt. Called by StringParser. +

+

+
Parameters:
argList - The list of components +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(Term t1,
+                        Term t2)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
Parameters:
t1 - The first compoment
t2 - The second compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Disjunction.html b/nars-dist/javadoc/nars/language/Disjunction.html new file mode 100644 index 00000000..1a6abab9 --- /dev/null +++ b/nars-dist/javadoc/nars/language/Disjunction.html @@ -0,0 +1,465 @@ + + + + + + + +Disjunction (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Disjunction

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Disjunction
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class Disjunction
extends CompoundTerm
+ + +

+A disjunction of Statements. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private Disjunction(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private Disjunction(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ booleanisCommutative() + +
+          Disjunction is communitative.
+static Termmake(java.util.ArrayList<Term> argList) + +
+          Try to make a new IntersectionExt.
+static Termmake(Term term1, + Term term2) + +
+          Try to make a new Disjunction from two components.
+static Termmake(java.util.TreeSet<Term> set) + +
+          Try to make a new Disjunction from a set of components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Disjunction

+
+private Disjunction(java.lang.String n,
+                    java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+Disjunction

+
+private Disjunction(java.lang.String n,
+                    java.util.ArrayList<Term> cs,
+                    java.util.ArrayList<Variable> open,
+                    short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static Term make(Term term1,
+                        Term term2)
+
+
Try to make a new Disjunction from two components. Called by the inference rules. +

+

+
Parameters:
term1 - The first compoment
term2 - The first compoment +
Returns:
A Disjunction generated or a Term it reduced to
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argList)
+
+
Try to make a new IntersectionExt. Called by StringParser. +

+

+
Parameters:
argList - a list of Term as compoments +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(java.util.TreeSet<Term> set)
+
+
Try to make a new Disjunction from a set of components. Called by the public make methods. +

+

+
Parameters:
set - a set of Term as compoments +
Returns:
the Term generated from the arguments
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+isCommutative

+
+public boolean isCommutative()
+
+
Disjunction is communitative. +

+

+
Overrides:
isCommutative in class CompoundTerm
+
+
+ +
Returns:
true for communitative
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Equivalence.html b/nars-dist/javadoc/nars/language/Equivalence.html new file mode 100644 index 00000000..669d2138 --- /dev/null +++ b/nars-dist/javadoc/nars/language/Equivalence.html @@ -0,0 +1,457 @@ + + + + + + + +Equivalence (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Equivalence

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.Equivalence
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
Direct Known Subclasses:
EquivalenceAfter, EquivalenceWhen
+
+
+
+
public class Equivalence
extends Statement
+ + +

+A Statement about an Equivalence relation. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+protected Equivalence(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+protected Equivalence(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ booleanisCommutative() + +
+          Check if the compound is communitative.
+static Equivalencemake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static Equivalencemake(Term subject, + Term predicate, + TemporalRules.Relation temporalOrder) + +
+           
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Equivalence

+
+protected Equivalence(java.lang.String n,
+                      java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+Equivalence

+
+protected Equivalence(java.lang.String n,
+                      java.util.ArrayList<Term> cs,
+                      java.util.ArrayList<Variable> open,
+                      short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static Equivalence make(Term subject,
+                               Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or null
+
+
+
+ +

+make

+
+public static Equivalence make(Term subject,
+                               Term predicate,
+                               TemporalRules.Relation temporalOrder)
+
+
+
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+isCommutative

+
+public boolean isCommutative()
+
+
Check if the compound is communitative. +

+

+
Overrides:
isCommutative in class CompoundTerm
+
+
+ +
Returns:
true for communitative
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/EquivalenceAfter.html b/nars-dist/javadoc/nars/language/EquivalenceAfter.html new file mode 100644 index 00000000..6727df4c --- /dev/null +++ b/nars-dist/javadoc/nars/language/EquivalenceAfter.html @@ -0,0 +1,469 @@ + + + + + + + +EquivalenceAfter (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class EquivalenceAfter

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.Equivalence
+                  extended by nars.language.EquivalenceAfter
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>, Temporal
+
+
+
+
public class EquivalenceAfter
extends Equivalence
implements Temporal
+ + +

+Temporal Implication relation, predicate after subject. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+ EquivalenceAfter(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          constructor with partial values, called by make
+private EquivalenceAfter(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ TemporalRules.RelationgetTemporalOrder() + +
+          Get the temporal order of the class
+ booleanisCommutative() + +
+          Check if the compound is communitative.
+static EquivalenceAftermake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.Equivalence
make
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+EquivalenceAfter

+
+public EquivalenceAfter(java.lang.String n,
+                        java.util.ArrayList<Term> arg)
+
+
constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+EquivalenceAfter

+
+private EquivalenceAfter(java.lang.String n,
+                         java.util.ArrayList<Term> cs,
+                         java.util.ArrayList<Variable> open,
+                         short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Overrides:
clone in class Equivalence
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static EquivalenceAfter make(Term subject,
+                                    Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
+
+
+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or null
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Overrides:
operator in class Equivalence
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+isCommutative

+
+public boolean isCommutative()
+
+
Check if the compound is communitative. +

+

+
Overrides:
isCommutative in class Equivalence
+
+
+ +
Returns:
The components are temporally ordered
+
+
+
+ +

+getTemporalOrder

+
+public TemporalRules.Relation getTemporalOrder()
+
+
Get the temporal order of the class +

+

+
Overrides:
getTemporalOrder in class Term
+
+
+ +
Returns:
AFTER since the components are temporally ordered
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/EquivalenceWhen.html b/nars-dist/javadoc/nars/language/EquivalenceWhen.html new file mode 100644 index 00000000..cc3cd6ef --- /dev/null +++ b/nars-dist/javadoc/nars/language/EquivalenceWhen.html @@ -0,0 +1,444 @@ + + + + + + + +EquivalenceWhen (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class EquivalenceWhen

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.Equivalence
+                  extended by nars.language.EquivalenceWhen
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>, Temporal
+
+
+
+
public class EquivalenceWhen
extends Equivalence
implements Temporal
+ + +

+Temporal Equivalence relation, concurrent. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+ EquivalenceWhen(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private EquivalenceWhen(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ TemporalRules.RelationgetTemporalOrder() + +
+          Get the temporal order of the class
+static EquivalenceWhenmake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.Equivalence
isCommutative, make
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+EquivalenceWhen

+
+public EquivalenceWhen(java.lang.String n,
+                       java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+EquivalenceWhen

+
+private EquivalenceWhen(java.lang.String n,
+                        java.util.ArrayList<Term> cs,
+                        java.util.ArrayList<Variable> open,
+                        short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Overrides:
clone in class Equivalence
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static EquivalenceWhen make(Term subject,
+                                   Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
+
+
+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or null
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Overrides:
operator in class Equivalence
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+getTemporalOrder

+
+public TemporalRules.Relation getTemporalOrder()
+
+
Get the temporal order of the class +

+

+
Overrides:
getTemporalOrder in class Term
+
+
+ +
Returns:
WHEN since the components are concurrent
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/ImageExt.html b/nars-dist/javadoc/nars/language/ImageExt.html new file mode 100644 index 00000000..f5d93e67 --- /dev/null +++ b/nars-dist/javadoc/nars/language/ImageExt.html @@ -0,0 +1,554 @@ + + + + + + + +ImageExt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class ImageExt

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.ImageExt
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class ImageExt
extends CompoundTerm
+ + +

+An extension image. +

+ B --> (/,P,A,_)) iff (*,A,B) --> P +

+ Internally, it is actually (/,A,P)_1, with an index. +

+ +

+


+ +

+ + + + + + + + + + + +
+Field Summary
+private  shortrelationIndex + +
+          The index of relation in the component list
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private ImageExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short complexity, + short index) + +
+          Constructor with full values, called by clone
+private ImageExt(java.lang.String n, + java.util.ArrayList<Term> arg, + short index) + +
+          Constructor with partial values, called by make
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ shortgetRelationIndex() + +
+          get the index of the relation in the component list
+static Termmake(java.util.ArrayList<Term> argList) + +
+          Try to make a new ImageExt.
+static Termmake(java.util.ArrayList<Term> argument, + short index) + +
+          Try to make a new compound from a set of components.
+static Termmake(ImageExt oldImage, + Term component, + short index) + +
+          Try to make an Image from an existing Image and a component.
+static Termmake(Product product, + Term relation, + short index) + +
+          Try to make an Image from a Product and a relation.
+ java.lang.StringmakeName() + +
+          override the default in making the name of the current term from existing fields
+ java.lang.Stringoperator() + +
+          get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+relationIndex

+
+private short relationIndex
+
+
The index of relation in the component list +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+ImageExt

+
+private ImageExt(java.lang.String n,
+                 java.util.ArrayList<Term> arg,
+                 short index)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
index - The index of relation in the component list
+
+
+ +

+ImageExt

+
+private ImageExt(java.lang.String n,
+                 java.util.ArrayList<Term> cs,
+                 java.util.ArrayList<Variable> open,
+                 short complexity,
+                 short index)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
complexity - Syntactic complexity of the compound
index - The index of relation in the component list
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object, to be casted into an ImageExt
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argList)
+
+
Try to make a new ImageExt. Called by StringParser. +

+

+
Parameters:
argList - The list of components +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(Product product,
+                        Term relation,
+                        short index)
+
+
Try to make an Image from a Product and a relation. Called by the inference rules. +

+

+
Parameters:
product - The product
relation - The relation
index - The index of the place-holder +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Term make(ImageExt oldImage,
+                        Term component,
+                        short index)
+
+
Try to make an Image from an existing Image and a component. Called by the inference rules. +

+

+
Parameters:
oldImage - The existing Image
component - The component to be added into the component list
index - The index of the place-holder in the new Image +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argument,
+                        short index)
+
+
Try to make a new compound from a set of components. Called by the public make methods. +

+

+
Parameters:
argument - The argument list
index - The index of the place-holder in the new Image +
Returns:
the Term generated from the arguments
+
+
+
+ +

+getRelationIndex

+
+public short getRelationIndex()
+
+
get the index of the relation in the component list +

+

+ +
Returns:
the index of relation
+
+
+
+ +

+makeName

+
+public java.lang.String makeName()
+
+
override the default in making the name of the current term from existing fields +

+

+
Overrides:
makeName in class CompoundTerm
+
+
+ +
Returns:
the name of the term
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/ImageInt.html b/nars-dist/javadoc/nars/language/ImageInt.html new file mode 100644 index 00000000..d124efbe --- /dev/null +++ b/nars-dist/javadoc/nars/language/ImageInt.html @@ -0,0 +1,554 @@ + + + + + + + +ImageInt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class ImageInt

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.ImageInt
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class ImageInt
extends CompoundTerm
+ + +

+An intension image. +

+ (\,P,A,_)) --> B iff P --> (*,A,B) +

+ Internally, it is actually (\,A,P)_1, with an index. +

+ +

+


+ +

+ + + + + + + + + + + +
+Field Summary
+private  shortrelationIndex + +
+          The index of relation in the component list
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private ImageInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short complexity, + short index) + +
+          Constructor with full values, called by clone
+private ImageInt(java.lang.String n, + java.util.ArrayList<Term> arg, + short index) + +
+          constructor with partial values, called by make
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ shortgetRelationIndex() + +
+          get the index of the relation in the component list
+static Termmake(java.util.ArrayList<Term> argList) + +
+          Try to make a new ImageExt.
+static Termmake(java.util.ArrayList<Term> argument, + short index) + +
+          Try to make a new compound from a set of components.
+static Termmake(ImageInt oldImage, + Term component, + short index) + +
+          Try to make an Image from an existing Image and a component.
+static Termmake(Product product, + Term relation, + short index) + +
+          Try to make an Image from a Product and a relation.
+ java.lang.StringmakeName() + +
+          Override the default in making the name of the current term from existing fields
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+relationIndex

+
+private short relationIndex
+
+
The index of relation in the component list +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+ImageInt

+
+private ImageInt(java.lang.String n,
+                 java.util.ArrayList<Term> arg,
+                 short index)
+
+
constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
index - The index of relation in the component list
+
+
+ +

+ImageInt

+
+private ImageInt(java.lang.String n,
+                 java.util.ArrayList<Term> cs,
+                 java.util.ArrayList<Variable> open,
+                 short complexity,
+                 short index)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
complexity - Syntactic complexity of the compound
index - The index of relation in the component list
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object, to be casted into an ImageInt
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argList)
+
+
Try to make a new ImageExt. Called by StringParser. +

+

+
Parameters:
argList - The list of components +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(Product product,
+                        Term relation,
+                        short index)
+
+
Try to make an Image from a Product and a relation. Called by the inference rules. +

+

+
Parameters:
product - The product
relation - The relation
index - The index of the place-holder +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Term make(ImageInt oldImage,
+                        Term component,
+                        short index)
+
+
Try to make an Image from an existing Image and a component. Called by the inference rules. +

+

+
Parameters:
oldImage - The existing Image
component - The component to be added into the component list
index - The index of the place-holder in the new Image +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argument,
+                        short index)
+
+
Try to make a new compound from a set of components. Called by the public make methods. +

+

+
Parameters:
argument - The argument list
index - The index of the place-holder in the new Image +
Returns:
the Term generated from the arguments
+
+
+
+ +

+getRelationIndex

+
+public short getRelationIndex()
+
+
get the index of the relation in the component list +

+

+ +
Returns:
the index of relation
+
+
+
+ +

+makeName

+
+public java.lang.String makeName()
+
+
Override the default in making the name of the current term from existing fields +

+

+
Overrides:
makeName in class CompoundTerm
+
+
+ +
Returns:
the name of the term
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Implication.html b/nars-dist/javadoc/nars/language/Implication.html new file mode 100644 index 00000000..35042d2f --- /dev/null +++ b/nars-dist/javadoc/nars/language/Implication.html @@ -0,0 +1,432 @@ + + + + + + + +Implication (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Implication

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.Implication
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
Direct Known Subclasses:
ImplicationAfter, ImplicationBefore, ImplicationWhen
+
+
+
+
public class Implication
extends Statement
+ + +

+A Statement about an Inheritance relation. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+protected Implication(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+protected Implication(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+static Implicationmake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static Implicationmake(Term subject, + Term predicate, + TemporalRules.Relation temporalOrder) + +
+           
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Implication

+
+protected Implication(java.lang.String n,
+                      java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+Implication

+
+protected Implication(java.lang.String n,
+                      java.util.ArrayList<Term> cs,
+                      java.util.ArrayList<Variable> open,
+                      short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static Implication make(Term subject,
+                               Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Implication make(Term subject,
+                               Term predicate,
+                               TemporalRules.Relation temporalOrder)
+
+
+
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/ImplicationAfter.html b/nars-dist/javadoc/nars/language/ImplicationAfter.html new file mode 100644 index 00000000..3eac8717 --- /dev/null +++ b/nars-dist/javadoc/nars/language/ImplicationAfter.html @@ -0,0 +1,444 @@ + + + + + + + +ImplicationAfter (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class ImplicationAfter

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.Implication
+                  extended by nars.language.ImplicationAfter
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>, Temporal
+
+
+
+
public class ImplicationAfter
extends Implication
implements Temporal
+ + +

+Temporal Implication relation, predicate after subject. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private ImplicationAfter(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          constructor with partial values, called by make
+private ImplicationAfter(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ TemporalRules.RelationgetTemporalOrder() + +
+          The relation is predictive
+static ImplicationAftermake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.Implication
make
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+ImplicationAfter

+
+private ImplicationAfter(java.lang.String n,
+                         java.util.ArrayList<Term> arg)
+
+
constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+ImplicationAfter

+
+private ImplicationAfter(java.lang.String n,
+                         java.util.ArrayList<Term> cs,
+                         java.util.ArrayList<Variable> open,
+                         short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Overrides:
clone in class Implication
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static ImplicationAfter make(Term subject,
+                                    Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
+
+
+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Overrides:
operator in class Implication
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+getTemporalOrder

+
+public TemporalRules.Relation getTemporalOrder()
+
+
The relation is predictive +

+

+
Overrides:
getTemporalOrder in class Term
+
+
+ +
Returns:
AFTER means the condition is pre-condition
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/ImplicationBefore.html b/nars-dist/javadoc/nars/language/ImplicationBefore.html new file mode 100644 index 00000000..f982a95d --- /dev/null +++ b/nars-dist/javadoc/nars/language/ImplicationBefore.html @@ -0,0 +1,444 @@ + + + + + + + +ImplicationBefore (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class ImplicationBefore

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.Implication
+                  extended by nars.language.ImplicationBefore
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>, Temporal
+
+
+
+
public class ImplicationBefore
extends Implication
implements Temporal
+ + +

+Temporal Implication relation, predicate before subject. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private ImplicationBefore(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private ImplicationBefore(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ TemporalRules.RelationgetTemporalOrder() + +
+          The relation is retrospective
+static ImplicationBeforemake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.Implication
make
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+ImplicationBefore

+
+private ImplicationBefore(java.lang.String n,
+                          java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+ImplicationBefore

+
+private ImplicationBefore(java.lang.String n,
+                          java.util.ArrayList<Term> cs,
+                          java.util.ArrayList<Variable> open,
+                          short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Overrides:
clone in class Implication
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static ImplicationBefore make(Term subject,
+                                     Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
+
+
+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Overrides:
operator in class Implication
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+getTemporalOrder

+
+public TemporalRules.Relation getTemporalOrder()
+
+
The relation is retrospective +

+

+
Overrides:
getTemporalOrder in class Term
+
+
+ +
Returns:
BEFORE means the condition is post-condition
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/ImplicationWhen.html b/nars-dist/javadoc/nars/language/ImplicationWhen.html new file mode 100644 index 00000000..3e54b4ee --- /dev/null +++ b/nars-dist/javadoc/nars/language/ImplicationWhen.html @@ -0,0 +1,444 @@ + + + + + + + +ImplicationWhen (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class ImplicationWhen

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.Implication
+                  extended by nars.language.ImplicationWhen
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>, Temporal
+
+
+
+
public class ImplicationWhen
extends Implication
implements Temporal
+ + +

+Temporal Implication relation, concurrent. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+protected ImplicationWhen(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private ImplicationWhen(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ TemporalRules.RelationgetTemporalOrder() + +
+          The relation is concurrent
+static ImplicationWhenmake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.Implication
make
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+ImplicationWhen

+
+protected ImplicationWhen(java.lang.String n,
+                          java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+ImplicationWhen

+
+private ImplicationWhen(java.lang.String n,
+                        java.util.ArrayList<Term> cs,
+                        java.util.ArrayList<Variable> open,
+                        short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Overrides:
clone in class Implication
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static ImplicationWhen make(Term subject,
+                                   Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
+
+
+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Overrides:
operator in class Implication
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+getTemporalOrder

+
+public TemporalRules.Relation getTemporalOrder()
+
+
The relation is concurrent +

+

+
Overrides:
getTemporalOrder in class Term
+
+
+ +
Returns:
WHEN means the condition is co-condition
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Inheritance.html b/nars-dist/javadoc/nars/language/Inheritance.html new file mode 100644 index 00000000..1dadd05a --- /dev/null +++ b/nars-dist/javadoc/nars/language/Inheritance.html @@ -0,0 +1,406 @@ + + + + + + + +Inheritance (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Inheritance

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.Inheritance
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class Inheritance
extends Statement
+ + +

+A Statement about an Inheritance relation. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private Inheritance(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private Inheritance(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+static Inheritancemake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Inheritance

+
+private Inheritance(java.lang.String n,
+                    java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+Inheritance

+
+private Inheritance(java.lang.String n,
+                    java.util.ArrayList<Term> cs,
+                    java.util.ArrayList<Variable> open,
+                    short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object, to be casted into a SetExt
+
+
+
+ +

+make

+
+public static Inheritance make(Term subject,
+                               Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or null
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Instance.html b/nars-dist/javadoc/nars/language/Instance.html new file mode 100644 index 00000000..013bdcff --- /dev/null +++ b/nars-dist/javadoc/nars/language/Instance.html @@ -0,0 +1,325 @@ + + + + + + + +Instance (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Instance

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.Instance
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public abstract class Instance
extends Statement
+ + +

+A Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + +
+Constructor Summary
Instance() + +
+           
+  + + + + + + + + + + + +
+Method Summary
+static Statementmake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Instance

+
+public Instance()
+
+
+ + + + + + + + +
+Method Detail
+ +

+make

+
+public static Statement make(Term subject,
+                             Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+ A {-- B becomes {A} --> B +

+

+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or null
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/InstanceProperty.html b/nars-dist/javadoc/nars/language/InstanceProperty.html new file mode 100644 index 00000000..faeb30a7 --- /dev/null +++ b/nars-dist/javadoc/nars/language/InstanceProperty.html @@ -0,0 +1,325 @@ + + + + + + + +InstanceProperty (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class InstanceProperty

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.InstanceProperty
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public abstract class InstanceProperty
extends Statement
+ + +

+A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + +
+Constructor Summary
InstanceProperty() + +
+           
+  + + + + + + + + + + + +
+Method Summary
+static Statementmake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+InstanceProperty

+
+public InstanceProperty()
+
+
+ + + + + + + + +
+Method Detail
+ +

+make

+
+public static Statement make(Term subject,
+                             Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+ A {-] B becomes {A} --> [B] +

+

+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or null
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/IntersectionExt.html b/nars-dist/javadoc/nars/language/IntersectionExt.html new file mode 100644 index 00000000..8045aae0 --- /dev/null +++ b/nars-dist/javadoc/nars/language/IntersectionExt.html @@ -0,0 +1,465 @@ + + + + + + + +IntersectionExt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class IntersectionExt

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.IntersectionExt
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class IntersectionExt
extends CompoundTerm
+ + +

+A compound term whose extension is the intersection of the extensions of its components +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private IntersectionExt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private IntersectionExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ booleanisCommutative() + +
+          Check if the compound is communitative.
+static Termmake(java.util.ArrayList<Term> argList) + +
+          Try to make a new IntersectionExt.
+static Termmake(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static Termmake(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+IntersectionExt

+
+private IntersectionExt(java.lang.String n,
+                        java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+IntersectionExt

+
+private IntersectionExt(java.lang.String n,
+                        java.util.ArrayList<Term> cs,
+                        java.util.ArrayList<Variable> open,
+                        short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object, to be casted into a IntersectionExt
+
+
+
+ +

+make

+
+public static Term make(Term term1,
+                        Term term2)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
Parameters:
term1 - The first compoment
term2 - The first compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argList)
+
+
Try to make a new IntersectionExt. Called by StringParser. +

+

+
Parameters:
argList - The list of components +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(java.util.TreeSet<Term> set)
+
+
Try to make a new compound from a set of components. Called by the public make methods. +

+

+
Parameters:
set - a set of Term as compoments +
Returns:
the Term generated from the arguments
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+isCommutative

+
+public boolean isCommutative()
+
+
Check if the compound is communitative. +

+

+
Overrides:
isCommutative in class CompoundTerm
+
+
+ +
Returns:
true for communitative
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/IntersectionInt.html b/nars-dist/javadoc/nars/language/IntersectionInt.html new file mode 100644 index 00000000..0f0986f5 --- /dev/null +++ b/nars-dist/javadoc/nars/language/IntersectionInt.html @@ -0,0 +1,465 @@ + + + + + + + +IntersectionInt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class IntersectionInt

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.IntersectionInt
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class IntersectionInt
extends CompoundTerm
+ + +

+A compound term whose intension is the intersection of the extensions of its components +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private IntersectionInt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private IntersectionInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ booleanisCommutative() + +
+          Check if the compound is communitative.
+static Termmake(java.util.ArrayList<Term> argList) + +
+          Try to make a new IntersectionExt.
+static Termmake(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static Termmake(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+IntersectionInt

+
+private IntersectionInt(java.lang.String n,
+                        java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+IntersectionInt

+
+private IntersectionInt(java.lang.String n,
+                        java.util.ArrayList<Term> cs,
+                        java.util.ArrayList<Variable> open,
+                        short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object, to be casted into a Conjunction
+
+
+
+ +

+make

+
+public static Term make(Term term1,
+                        Term term2)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
Parameters:
term1 - The first compoment
term2 - The first compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argList)
+
+
Try to make a new IntersectionExt. Called by StringParser. +

+

+
Parameters:
argList - The list of components +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(java.util.TreeSet<Term> set)
+
+
Try to make a new compound from a set of components. Called by the public make methods. +

+

+
Parameters:
set - a set of Term as compoments +
Returns:
the Term generated from the arguments
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+isCommutative

+
+public boolean isCommutative()
+
+
Check if the compound is communitative. +

+

+
Overrides:
isCommutative in class CompoundTerm
+
+
+ +
Returns:
true for communitative
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Negation.html b/nars-dist/javadoc/nars/language/Negation.html new file mode 100644 index 00000000..ec98438c --- /dev/null +++ b/nars-dist/javadoc/nars/language/Negation.html @@ -0,0 +1,416 @@ + + + + + + + +Negation (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Negation

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Negation
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class Negation
extends CompoundTerm
+ + +

+A negation of a Statement. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private Negation(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private Negation(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+static Termmake(java.util.ArrayList<Term> argument) + +
+          Try to make a new SetExt.
+static Termmake(Term t) + +
+          Try to make a Negation of one component.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Negation

+
+private Negation(java.lang.String n,
+                 java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+Negation

+
+private Negation(java.lang.String n,
+                 java.util.ArrayList<Term> cs,
+                 java.util.ArrayList<Variable> open,
+                 short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object
+
+
+
+ +

+make

+
+public static Term make(Term t)
+
+
Try to make a Negation of one component. Called by the inference rules. +

+

+
Parameters:
t - The compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argument)
+
+
Try to make a new SetExt. Called by StringParser. +

+

+
Parameters:
argument - The list of components +
Returns:
the Term generated from the arguments
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Product.html b/nars-dist/javadoc/nars/language/Product.html new file mode 100644 index 00000000..42d85fe8 --- /dev/null +++ b/nars-dist/javadoc/nars/language/Product.html @@ -0,0 +1,420 @@ + + + + + + + +Product (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Product

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Product
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class Product
extends CompoundTerm
+ + +

+A Product is a sequence of terms. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private Product(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private Product(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short complexity) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone a Product
+static Termmake(java.util.ArrayList<Term> argument) + +
+          Try to make a new compound.
+static Termmake(CompoundTerm image, + Term component, + int index) + +
+          Try to make a Product from an ImageExt/ImageInt and a component.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Product

+
+private Product(java.lang.String n,
+                java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+Product

+
+private Product(java.lang.String n,
+                java.util.ArrayList<Term> cs,
+                java.util.ArrayList<Variable> open,
+                short complexity)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
complexity - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone a Product +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object, to be casted into an ImageExt
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argument)
+
+
Try to make a new compound. Called by StringParser. +

+

+
Parameters:
argument - The list of components +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(CompoundTerm image,
+                        Term component,
+                        int index)
+
+
Try to make a Product from an ImageExt/ImageInt and a component. Called by the inference rules. +

+

+
Parameters:
image - The existing Image
component - The component to be added into the component list
index - The index of the place-holder in the new Image -- optional parameter +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Property.html b/nars-dist/javadoc/nars/language/Property.html new file mode 100644 index 00000000..74c95a8b --- /dev/null +++ b/nars-dist/javadoc/nars/language/Property.html @@ -0,0 +1,325 @@ + + + + + + + +Property (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Property

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.Property
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public abstract class Property
extends Statement
+ + +

+A Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + +
+Constructor Summary
Property() + +
+           
+  + + + + + + + + + + + +
+Method Summary
+static Statementmake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Property

+
+public Property()
+
+
+ + + + + + + + +
+Method Detail
+ +

+make

+
+public static Statement make(Term subject,
+                             Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+ A --] B becomes A --> [B] +

+

+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or null
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/SetExt.html b/nars-dist/javadoc/nars/language/SetExt.html new file mode 100644 index 00000000..ed94fd6b --- /dev/null +++ b/nars-dist/javadoc/nars/language/SetExt.html @@ -0,0 +1,488 @@ + + + + + + + +SetExt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class SetExt

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.SetExt
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class SetExt
extends CompoundTerm
+ + +

+An extensionally defined set, which contains one or more instances. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private SetExt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private SetExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone a SetExt
+ booleanisCommutative() + +
+          Check if the compound is communitative.
+static Termmake(java.util.ArrayList<Term> argList) + +
+          Try to make a new SetExt.
+static Termmake(Term t) + +
+          Try to make a new set from one component.
+static Termmake(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+ java.lang.StringmakeName() + +
+          Make a String representation of the set, override the default.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+SetExt

+
+private SetExt(java.lang.String n,
+               java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+SetExt

+
+private SetExt(java.lang.String n,
+               java.util.ArrayList<Term> cs,
+               java.util.ArrayList<Variable> open,
+               short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone a SetExt +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object, to be casted into a SetExt
+
+
+
+ +

+make

+
+public static Term make(Term t)
+
+
Try to make a new set from one component. Called by the inference rules. +

+

+
Parameters:
t - The compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argList)
+
+
Try to make a new SetExt. Called by StringParser. +

+

+
Parameters:
argList - The list of components +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(java.util.TreeSet<Term> set)
+
+
Try to make a new compound from a set of components. Called by the public make methods. +

+

+
Parameters:
set - a set of Term as compoments +
Returns:
the Term generated from the arguments
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+isCommutative

+
+public boolean isCommutative()
+
+
Check if the compound is communitative. +

+

+
Overrides:
isCommutative in class CompoundTerm
+
+
+ +
Returns:
true for communitative
+
+
+
+ +

+makeName

+
+public java.lang.String makeName()
+
+
Make a String representation of the set, override the default. +

+

+
Overrides:
makeName in class CompoundTerm
+
+
+ +
Returns:
true for communitative
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/SetInt.html b/nars-dist/javadoc/nars/language/SetInt.html new file mode 100644 index 00000000..d3c18c15 --- /dev/null +++ b/nars-dist/javadoc/nars/language/SetInt.html @@ -0,0 +1,488 @@ + + + + + + + +SetInt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class SetInt

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.SetInt
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class SetInt
extends CompoundTerm
+ + +

+An intensionally defined set, which contains one or more instances defining the Term. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private SetInt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private SetInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone a SetInt
+ booleanisCommutative() + +
+          Check if the compound is communitative.
+static Termmake(java.util.ArrayList<Term> argList) + +
+          Try to make a new SetExt.
+static Termmake(Term t) + +
+          Try to make a new set from one component.
+static Termmake(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+ java.lang.StringmakeName() + +
+          Make a String representation of the set, override the default.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+SetInt

+
+private SetInt(java.lang.String n,
+               java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+SetInt

+
+private SetInt(java.lang.String n,
+               java.util.ArrayList<Term> cs,
+               java.util.ArrayList<Variable> open,
+               short i)
+
+
constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone a SetInt +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object, to be casted into a SetInt
+
+
+
+ +

+make

+
+public static Term make(Term t)
+
+
Try to make a new set from one component. Called by the inference rules. +

+

+
Parameters:
t - The compoment +
Returns:
A compound generated or a term it reduced to
+
+
+
+ +

+make

+
+public static Term make(java.util.ArrayList<Term> argList)
+
+
Try to make a new SetExt. Called by StringParser. +

+

+
Parameters:
argList - The list of components +
Returns:
the Term generated from the arguments
+
+
+
+ +

+make

+
+public static Term make(java.util.TreeSet<Term> set)
+
+
Try to make a new compound from a set of components. Called by the public make methods. +

+

+
Parameters:
set - a set of Term as compoments +
Returns:
the Term generated from the arguments
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+isCommutative

+
+public boolean isCommutative()
+
+
Check if the compound is communitative. +

+

+
Overrides:
isCommutative in class CompoundTerm
+
+
+ +
Returns:
true for communitative
+
+
+
+ +

+makeName

+
+public java.lang.String makeName()
+
+
Make a String representation of the set, override the default. +

+

+
Overrides:
makeName in class CompoundTerm
+
+
+ +
Returns:
true for communitative
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Similarity.html b/nars-dist/javadoc/nars/language/Similarity.html new file mode 100644 index 00000000..a0faf342 --- /dev/null +++ b/nars-dist/javadoc/nars/language/Similarity.html @@ -0,0 +1,431 @@ + + + + + + + +Similarity (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Similarity

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+              extended by nars.language.Similarity
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class Similarity
extends Statement
+ + +

+A Statement about a Similarity relation. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+private Similarity(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+private Similarity(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone an object
+ booleanisCommutative() + +
+          Check if the compound is communitative.
+static Similaritymake(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+ java.lang.Stringoperator() + +
+          Get the operator of the term.
+ + + + + + + +
Methods inherited from class nars.language.Statement
getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Similarity

+
+private Similarity(java.lang.String n,
+                   java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+Similarity

+
+private Similarity(java.lang.String n,
+                   java.util.ArrayList<Term> cs,
+                   java.util.ArrayList<Variable> open,
+                   short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone an object +

+

+
Specified by:
clone in class CompoundTerm
+
+
+ +
Returns:
A new object, to be casted into a Similarity
+
+
+
+ +

+make

+
+public static Similarity make(Term subject,
+                              Term predicate)
+
+
Try to make a new compound from two components. Called by the inference rules. +

+

+
Parameters:
subject - The first compoment
predicate - The second compoment +
Returns:
A compound generated or null
+
+
+
+ +

+operator

+
+public java.lang.String operator()
+
+
Get the operator of the term. +

+

+
Specified by:
operator in class CompoundTerm
+
+
+ +
Returns:
the operator of the term
+
+
+
+ +

+isCommutative

+
+public boolean isCommutative()
+
+
Check if the compound is communitative. +

+

+
Overrides:
isCommutative in class CompoundTerm
+
+
+ +
Returns:
true for communitative
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Statement.html b/nars-dist/javadoc/nars/language/Statement.html new file mode 100644 index 00000000..3585d4bc --- /dev/null +++ b/nars-dist/javadoc/nars/language/Statement.html @@ -0,0 +1,595 @@ + + + + + + + +Statement (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Statement

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.CompoundTerm
+          extended by nars.language.Statement
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
Direct Known Subclasses:
Equivalence, Implication, Inheritance, Instance, InstanceProperty, Property, Similarity
+
+
+
+
public abstract class Statement
extends CompoundTerm
+ + +

+A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between. It can be of either first-order or higher-order. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.CompoundTerm
complexity, components, openVariables
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + + + + + +
+Constructor Summary
+protected Statement() + +
+          Default constructor
+protected Statement(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
+protected Statement(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ TermgetPredicate() + +
+          Return the second component of the statement
+ TermgetSubject() + +
+          Return the first component of the statement
+static booleaninvalidStatement(Term subject, + Term predicate) + +
+          Check the validity of a potential Statement.
+static booleanisRelation(java.lang.String s0) + +
+          Check Statement relation symbol, called in StringPaser
+static Statementmake(Statement statement, + Term subj, + Term pred) + +
+          Make a Statement from given components, called by the rules
+static Statementmake(Statement statement, + Term subj, + Term pred, + TemporalRules.Relation order) + +
+          Make a Statement from given components and temporal information, called by the rules
+static Statementmake(java.lang.String relation, + Term subject, + Term predicate) + +
+          Make a Statement from String, called by StringParser
+protected  java.lang.StringmakeName() + +
+          Override the default in making the name of the current term from existing fields
+protected static java.lang.StringmakeStatementName(Term subject, + java.lang.String relation, + Term predicate) + +
+          Default method to make the name of an image term from given fields
+static StatementmakeSym(Statement statement, + Term subj, + Term pred, + TemporalRules.Relation order) + +
+          Make a symmetric Statement from given components and temporal information, called by the rules
+ + + + + + + +
Methods inherited from class nars.language.CompoundTerm
addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, equals, getName, getTemporalOrder, hashCode, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Statement

+
+protected Statement()
+
+
Default constructor +

+

+
+ +

+Statement

+
+protected Statement(java.lang.String n,
+                    java.util.ArrayList<Term> arg)
+
+
Constructor with partial values, called by make +

+

+
Parameters:
n - The name of the term
arg - The component list of the term
+
+
+ +

+Statement

+
+protected Statement(java.lang.String n,
+                    java.util.ArrayList<Term> cs,
+                    java.util.ArrayList<Variable> open,
+                    short i)
+
+
Constructor with full values, called by clone +

+

+
Parameters:
n - The name of the term
cs - Component list
open - Open variable list
i - Syntactic complexity of the compound
+
+ + + + + + + + +
+Method Detail
+ +

+make

+
+public static Statement make(java.lang.String relation,
+                             Term subject,
+                             Term predicate)
+
+
Make a Statement from String, called by StringParser +

+

+
Parameters:
relation - The relation String
subject - The first component
predicate - The second component +
Returns:
The Statement built
+
+
+
+ +

+make

+
+public static Statement make(Statement statement,
+                             Term subj,
+                             Term pred)
+
+
Make a Statement from given components, called by the rules +

+

+
Parameters:
subj - The first component
pred - The second component
statement - A sample statement providing the class type +
Returns:
The Statement built
+
+
+
+ +

+make

+
+public static Statement make(Statement statement,
+                             Term subj,
+                             Term pred,
+                             TemporalRules.Relation order)
+
+
Make a Statement from given components and temporal information, called by the rules +

+

+
Parameters:
statement - A sample statement providing the class type
subj - The first component
pred - The second component
order - The temporal order of the statement +
Returns:
The Statement built
+
+
+
+ +

+makeSym

+
+public static Statement makeSym(Statement statement,
+                                Term subj,
+                                Term pred,
+                                TemporalRules.Relation order)
+
+
Make a symmetric Statement from given components and temporal information, called by the rules +

+

+
Parameters:
statement - A sample asymmetric statement providing the class type
subj - The first component
pred - The second component
order - The temporal order of the statement +
Returns:
The Statement built
+
+
+
+ +

+isRelation

+
+public static boolean isRelation(java.lang.String s0)
+
+
Check Statement relation symbol, called in StringPaser +

+

+
Parameters:
s0 - The String to be checked +
Returns:
if the given String is a relation symbol
+
+
+
+ +

+makeName

+
+protected java.lang.String makeName()
+
+
Override the default in making the name of the current term from existing fields +

+

+
Overrides:
makeName in class CompoundTerm
+
+
+ +
Returns:
the name of the term
+
+
+
+ +

+makeStatementName

+
+protected static java.lang.String makeStatementName(Term subject,
+                                                    java.lang.String relation,
+                                                    Term predicate)
+
+
Default method to make the name of an image term from given fields +

+

+
Parameters:
subject - The first component
predicate - The second component
relation - The relation operator +
Returns:
The name of the term
+
+
+
+ +

+invalidStatement

+
+public static boolean invalidStatement(Term subject,
+                                       Term predicate)
+
+
Check the validity of a potential Statement. [To be refined] +

+ Minimum requirement: the two terms cannot be the same, or containing each other as component +

+

+
Parameters:
subject - The first component
predicate - The second component +
Returns:
Whether The Statement is invalid
+
+
+
+ +

+getSubject

+
+public Term getSubject()
+
+
Return the first component of the statement +

+

+ +
Returns:
The first component
+
+
+
+ +

+getPredicate

+
+public Term getPredicate()
+
+
Return the second component of the statement +

+

+ +
Returns:
The second component
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Temporal.html b/nars-dist/javadoc/nars/language/Temporal.html new file mode 100644 index 00000000..abadc744 --- /dev/null +++ b/nars-dist/javadoc/nars/language/Temporal.html @@ -0,0 +1,176 @@ + + + + + + + +Temporal (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Interface Temporal

+
+
All Known Implementing Classes:
ConjunctionParallel, ConjunctionSequence, EquivalenceAfter, EquivalenceWhen, ImplicationAfter, ImplicationBefore, ImplicationWhen
+
+
+
+
public interface Temporal
+ + +

+An interface for compound terms with temporal information in it +

+ +

+


+ +

+ +

+ +


+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Term.html b/nars-dist/javadoc/nars/language/Term.html new file mode 100644 index 00000000..e055847d --- /dev/null +++ b/nars-dist/javadoc/nars/language/Term.html @@ -0,0 +1,563 @@ + + + + + + + +Term (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Term

+
+java.lang.Object
+  extended by nars.language.Term
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
Direct Known Subclasses:
CompoundTerm, Operator, Variable
+
+
+
+
public class Term
extends java.lang.Object
implements java.lang.Cloneable, java.lang.Comparable<Term>
+ + +

+Term is the basic component of Narsese, and the object of processing in NARS. +

+ A Term may have an associated Concept containing relations with other Terms. It + is not linked in the Term, because a Concept may be forgot, while the Term exists. +

+ +

+


+ +

+ + + + + + + + + + + +
+Field Summary
+protected  java.lang.Stringname + +
+          A Term is identified uniquely by its name, a sequence of characters in a + given alphabet (ASCII or Unicode)
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+protected Term() + +
+          Default constructor
+ Term(java.lang.String name) + +
+          Constructor with a given name
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Make a new Term with the same name.
+ intcompareTo(Term that) + +
+          Check the relative order of two Terms.
+ booleanequals(java.lang.Object that) + +
+          Equal terms have identical name, though not necessarily the same reference.
+ intgetComplexity() + +
+          The syntactic complexity, for constant automic Term, is 1.
+ java.lang.StringgetConstantName() + +
+          Default, to be overrided in variable Terms.
+ java.lang.StringgetName() + +
+          Reporting the name of the current Term.
+ TemporalRules.RelationgetTemporalOrder() + +
+          Get the temporal order in a term, which is NONE by default
+ inthashCode() + +
+          Produce a hash code for the term
+ booleanisConstant() + +
+          Check whether the current Term can name a Concept.
+ java.lang.StringtoString() + +
+          The same as getName, used in display.
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+name

+
+protected java.lang.String name
+
+
A Term is identified uniquely by its name, a sequence of characters in a + given alphabet (ASCII or Unicode) +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Term

+
+protected Term()
+
+
Default constructor +

+

+
+ +

+Term

+
+public Term(java.lang.String name)
+
+
Constructor with a given name +

+

+
Parameters:
name - A String as the name of the Term
+
+ + + + + + + + +
+Method Detail
+ +

+toString

+
+public final java.lang.String toString()
+
+
The same as getName, used in display. +

+

+
Overrides:
toString in class java.lang.Object
+
+
+ +
Returns:
The name of the term as a String
+
+
+
+ +

+getName

+
+public java.lang.String getName()
+
+
Reporting the name of the current Term. +

+

+
+
+
+ +
Returns:
The name of the term as a String
+
+
+
+ +

+getConstantName

+
+public java.lang.String getConstantName()
+
+
Default, to be overrided in variable Terms. +

+

+
+
+
+ +
Returns:
The name of the term as a String
+
+
+
+ +

+clone

+
+public java.lang.Object clone()
+
+
Make a new Term with the same name. +

+

+
Overrides:
clone in class java.lang.Object
+
+
+ +
Returns:
The new Term
+
+
+
+ +

+equals

+
+public boolean equals(java.lang.Object that)
+
+
Equal terms have identical name, though not necessarily the same reference. +

+

+
Overrides:
equals in class java.lang.Object
+
+
+
Parameters:
that - The Term to be compared with the current Term +
Returns:
Whether the two Terms are equal
+
+
+
+ +

+hashCode

+
+public int hashCode()
+
+
Produce a hash code for the term +

+

+
Overrides:
hashCode in class java.lang.Object
+
+
+ +
Returns:
An integer hash code
+
+
+
+ +

+getComplexity

+
+public int getComplexity()
+
+
The syntactic complexity, for constant automic Term, is 1. +

+

+
+
+
+ +
Returns:
The conplexity of the term, an integer
+
+
+
+ +

+compareTo

+
+public final int compareTo(Term that)
+
+
Check the relative order of two Terms. +

+ based on the constant part first +

+

+
Specified by:
compareTo in interface java.lang.Comparable<Term>
+
+
+
Parameters:
that - The Term to be compared with the current Term +
Returns:
The same as compareTo as defined on Strings when the constant parts are compared
+
+
+
+ +

+isConstant

+
+public boolean isConstant()
+
+
Check whether the current Term can name a Concept. +

+

+
+
+
+ +
Returns:
A Term is constant by default
+
+
+
+ +

+getTemporalOrder

+
+public TemporalRules.Relation getTemporalOrder()
+
+
Get the temporal order in a term, which is NONE by default +

+

+
+
+
+ +
Returns:
The default temporal order
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Variable.VarType.html b/nars-dist/javadoc/nars/language/Variable.VarType.html new file mode 100644 index 00000000..fe4c027d --- /dev/null +++ b/nars-dist/javadoc/nars/language/Variable.VarType.html @@ -0,0 +1,378 @@ + + + + + + + +Variable.VarType (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Enum Variable.VarType

+
+java.lang.Object
+  extended by java.lang.Enum<Variable.VarType>
+      extended by nars.language.Variable.VarType
+
+
+
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable<Variable.VarType>
+
+
+
Enclosing class:
Variable
+
+
+
+
public static enum Variable.VarType
extends java.lang.Enum<Variable.VarType>
+ + +

+Four variable types plus a wild card +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + +
+Enum Constant Summary
ALL + +
+           
ANONYMOUS + +
+           
DEPENDENT + +
+           
INDEPENDENT + +
+           
QUERY + +
+           
+  + + + + + + + + + + + + + + + +
+Method Summary
+static Variable.VarTypevalueOf(java.lang.String name) + +
+          Returns the enum constant of this type with the specified name.
+static Variable.VarType[]values() + +
+          Returns an array containing the constants of this enum type, in +the order they are declared.
+ + + + + + + +
Methods inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
+ + + + + + + +
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Enum Constant Detail
+ +

+INDEPENDENT

+
+public static final Variable.VarType INDEPENDENT
+
+
+
+
+
+ +

+DEPENDENT

+
+public static final Variable.VarType DEPENDENT
+
+
+
+
+
+ +

+ANONYMOUS

+
+public static final Variable.VarType ANONYMOUS
+
+
+
+
+
+ +

+QUERY

+
+public static final Variable.VarType QUERY
+
+
+
+
+
+ +

+ALL

+
+public static final Variable.VarType ALL
+
+
+
+
+ + + + + + + + +
+Method Detail
+ +

+values

+
+public static Variable.VarType[] values()
+
+
Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: +
+for (Variable.VarType c : Variable.VarType.values())
+    System.out.println(c);
+
+

+

+ +
Returns:
an array containing the constants of this enum type, in +the order they are declared
+
+
+
+ +

+valueOf

+
+public static Variable.VarType valueOf(java.lang.String name)
+
+
Returns the enum constant of this type with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this type. (Extraneous whitespace characters are +not permitted.) +

+

+
Parameters:
name - the name of the enum constant to be returned. +
Returns:
the enum constant with the specified name +
Throws: +
java.lang.IllegalArgumentException - if this enum type has no constant +with the specified name +
java.lang.NullPointerException - if the argument is null
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/Variable.html b/nars-dist/javadoc/nars/language/Variable.html new file mode 100644 index 00000000..a7770ffd --- /dev/null +++ b/nars-dist/javadoc/nars/language/Variable.html @@ -0,0 +1,761 @@ + + + + + + + +Variable (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.language +
+Class Variable

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.language.Variable
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class Variable
extends Term
+ + +

+A variable term, which does not correspond to a concept +

+ +

+


+ +

+ + + + + + + + + + + +
+Nested Class Summary
+static classVariable.VarType + +
+          Four variable types plus a wild card
+ + + + + + + + + + + + + + +
+Field Summary
+private  CompoundTermscope + +
+          The minimum CompoundTerm what contains all occurences of this variable
+private  Variable.VarTypetype + +
+          Type of the variable
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + + + + + + +
+Constructor Summary
+ Variable(java.lang.String s) + +
+          Constructor, from a given variable name
+private Variable(java.lang.String n, + Variable.VarType t, + CompoundTerm s) + +
+          Constructor, with all fields
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.Objectclone() + +
+          Clone a Variable
+ booleanequals(java.lang.Object that) + +
+          Whether this variable equals another one
+static java.util.HashMap<java.lang.String,Term>findSubstitute(Variable.VarType type, + Term term1, + Term term2) + +
+          To find a substitution that can unify two Terms without changing them
+private static java.util.HashMap<java.lang.String,Term>findSubstitute(Variable.VarType type, + Term term1, + Term term2, + java.util.HashMap<java.lang.String,Term> subs) + +
+          To recursively find a substitution that can unify two Terms without changing them
+private static java.util.HashMap<java.lang.String,Term>findSubstituteVar(Variable.VarType type, + Variable var, + Term term, + java.util.HashMap<java.lang.String,Term> subs, + boolean first) + +
+          To find a substitution that can unify a Vriable and a Term
+ java.lang.StringgetConstantName() + +
+          Variable name is omitted in sorting
+ java.lang.StringgetName() + +
+          Get variable name with dependency list (if any)
+ java.lang.StringgetStoredName() + +
+          Get variable name without dependency list (if any)
+ Variable.VarTypegetType() + +
+          Get the type of the variable
+ java.lang.StringgetVarName(boolean first) + +
+          Rename a variable temporally to distinguish it from variables in other Terms
+ inthashCode() + +
+          Get a hash code for the variable
+ booleanisConstant() + +
+          A variable is constant
+static booleanmatch(Variable.VarType type1, + Variable.VarType type2) + +
+          Whether two variable types can match each other in unification
+ voidsetName(java.lang.String n) + +
+          Rename the variable
+ voidsetScope(CompoundTerm t) + +
+          Set the scope of the variable
+static booleanunify(Variable.VarType type, + Term t1, + Term t2, + Term compound1, + Term compound2) + +
+          To unify two Terms, then apply the substitution to the two compounds
+ + + + + + + +
Methods inherited from class nars.language.Term
compareTo, getComplexity, getTemporalOrder, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+type

+
+private Variable.VarType type
+
+
Type of the variable +

+

+
+
+
+ +

+scope

+
+private CompoundTerm scope
+
+
The minimum CompoundTerm what contains all occurences of this variable +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Variable

+
+public Variable(java.lang.String s)
+
+
Constructor, from a given variable name +

+

+
Parameters:
s - A String read from input
+
+
+ +

+Variable

+
+private Variable(java.lang.String n,
+                 Variable.VarType t,
+                 CompoundTerm s)
+
+
Constructor, with all fields +

+

+
Parameters:
n - Variable name
s - Variable scope
t - Variable type
+
+ + + + + + + + +
+Method Detail
+ +

+clone

+
+public java.lang.Object clone()
+
+
Clone a Variable +

+

+
Overrides:
clone in class Term
+
+
+ +
Returns:
The cloned Variable
+
+
+
+ +

+getConstantName

+
+public java.lang.String getConstantName()
+
+
Variable name is omitted in sorting +

+

+
Overrides:
getConstantName in class Term
+
+
+ +
Returns:
The Variable prefix
+
+
+
+ +

+getVarName

+
+public java.lang.String getVarName(boolean first)
+
+
Rename a variable temporally to distinguish it from variables in other Terms +

+

+
Parameters:
first - Whether it is the first term +
Returns:
The new name
+
+
+
+ +

+setName

+
+public void setName(java.lang.String n)
+
+
Rename the variable +

+

+
Parameters:
n - The new name
+
+
+
+ +

+getType

+
+public Variable.VarType getType()
+
+
Get the type of the variable +

+

+ +
Returns:
The variable type
+
+
+
+ +

+setScope

+
+public void setScope(CompoundTerm t)
+
+
Set the scope of the variable +

+

+
Parameters:
t - The new scope
+
+
+
+ +

+equals

+
+public boolean equals(java.lang.Object that)
+
+
Whether this variable equals another one +

+

+
Overrides:
equals in class Term
+
+
+
Parameters:
that - The other variable +
Returns:
Whether the two are equal
+
+
+
+ +

+hashCode

+
+public int hashCode()
+
+
Get a hash code for the variable +

+

+
Overrides:
hashCode in class Term
+
+
+ +
Returns:
The hash code
+
+
+
+ +

+getStoredName

+
+public java.lang.String getStoredName()
+
+
Get variable name without dependency list (if any) +

+

+ +
Returns:
The stored name
+
+
+
+ +

+getName

+
+public java.lang.String getName()
+
+
Get variable name with dependency list (if any) +

+

+
Overrides:
getName in class Term
+
+
+ +
Returns:
The generated name
+
+
+
+ +

+isConstant

+
+public boolean isConstant()
+
+
A variable is constant +

+

+
Overrides:
isConstant in class Term
+
+
+ +
Returns:
false
+
+
+
+ +

+match

+
+public static boolean match(Variable.VarType type1,
+                            Variable.VarType type2)
+
+
Whether two variable types can match each other in unification +

+

+
Parameters:
type1 - Type of the first variable
type2 - Type of the second variable +
Returns:
The matching result
+
+
+
+ +

+unify

+
+public static boolean unify(Variable.VarType type,
+                            Term t1,
+                            Term t2,
+                            Term compound1,
+                            Term compound2)
+
+
To unify two Terms, then apply the substitution to the two compounds +

+

+
Parameters:
type - The type of Variable to be unified
t1 - The first Term to be unified
t2 - The second Term to be unified
compound1 - The first compound to be substituted
compound2 - The second compound to be substituted +
Returns:
Whether a unification has been succeeded
+
+
+
+ +

+findSubstitute

+
+public static java.util.HashMap<java.lang.String,Term> findSubstitute(Variable.VarType type,
+                                                                      Term term1,
+                                                                      Term term2)
+
+
To find a substitution that can unify two Terms without changing them +

+

+
Parameters:
type - The type of Variable to be substituted
term1 - The first Term to be unified
term2 - The second Term to be unified +
Returns:
The substitution that unifies the two Terms
+
+
+
+ +

+findSubstitute

+
+private static java.util.HashMap<java.lang.String,Term> findSubstitute(Variable.VarType type,
+                                                                       Term term1,
+                                                                       Term term2,
+                                                                       java.util.HashMap<java.lang.String,Term> subs)
+
+
To recursively find a substitution that can unify two Terms without changing them +

+

+
Parameters:
type - The type of Variable to be substituted
term1 - The first Term to be unified
term2 - The second Term to be unified
subs - The substitution formed so far +
Returns:
The substitution that unifies the two Terms
+
+
+
+ +

+findSubstituteVar

+
+private static java.util.HashMap<java.lang.String,Term> findSubstituteVar(Variable.VarType type,
+                                                                          Variable var,
+                                                                          Term term,
+                                                                          java.util.HashMap<java.lang.String,Term> subs,
+                                                                          boolean first)
+
+
To find a substitution that can unify a Vriable and a Term +

+

+
Parameters:
type - The type of Variable to be substituted
var - The Variable to be unified
term - The Term to be unified
subs - The substitution formed so far
first - If it is the first Term in unify +
Returns:
The substitution that unifies the two Terms, as "name-term" pairs
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html new file mode 100644 index 00000000..2150f05b --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html @@ -0,0 +1,701 @@ + + + + + + + +Uses of Class nars.language.CompoundTerm (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.CompoundTerm

+
+ + + + + + + + + + + + + +
+Packages that use CompoundTerm
nars.inferenceThe inference rules and control functions 
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of CompoundTerm in nars.inference
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference with parameters of type CompoundTerm
+(package private) static voidCompositionalRules.abdVarDepOuter(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S>
+private static voidRuleTables.componentAndStatement(CompoundTerm compound, + short index, + Statement statement, + short side) + +
+          Inference between a component term (of the current term) and a statement
+private static voidRuleTables.compoundAndCompound(CompoundTerm taskTerm, + CompoundTerm beliefTerm) + +
+          Inference between two compound terms
+private static voidRuleTables.compoundAndSelf(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          Inference between a compound term and a component of it
+private static voidRuleTables.compoundAndStatement(CompoundTerm compound, + short index, + Statement statement, + short side, + Term beliefTerm) + +
+          Inference between a compound term and a statement
+private static voidCompositionalRules.decomposeCompound(CompoundTerm compound, + Term component, + Term term1, + int index, + boolean compoundTask) + +
+          {<(S|P) ==> M>,

M>} |- M>

+(package private) static voidCompositionalRules.decomposeStatement(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          {(||, S, P), P} |- S + {(&&, S, P), P} |- S
+(package private) static voidCompositionalRules.introVarDepInner(CompoundTerm compound, + Term component, + Term premise) + +
+          Introduce a dependent variable in an inner-layer conjunction
+(package private) static voidSyllogisticRules.introVarIndInner(Statement premise1, + Statement premise2, + CompoundTerm oldCompound) + +
+          { S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> + { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>)
+(package private) static voidStructuralRules.structuralCompose1(CompoundTerm compound, + short index, + Statement statement) + +
+          { P>, P@(P&Q)} |- (P&Q)>
+(package private) static voidStructuralRules.structuralCompose2(CompoundTerm compound, + short index, + Statement statement, + short side) + +
+          { P>, S@(S&T)} |- <(S&T) --> (P&T)> + { P>, S@(M-S)} |- <(M-P) --> (M-S)>
+(package private) static voidStructuralRules.structuralCompound(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          {(&&, A, B), A@(&&, A, B)} |- A + {(||, A, B), A@(||, A, B)} |- A
+(package private) static voidStructuralRules.structuralDecompose1(CompoundTerm compound, + short index, + Statement statement) + +
+          {<(S&T) --> P>, S@(S&T)} |- P>
+private static booleanStructuralRules.switchOrder(CompoundTerm compound, + short index) + +
+          List the cases where the direction of inheritance is revised in conclusion
+(package private) static voidStructuralRules.transformProductImage(Inheritance inh, + CompoundTerm oldContent, + short[] indices, + Task task) + +
+          Equivalent transformation between products and images + {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> + { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> + { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)>
+(package private) static voidStructuralRules.transformSetRelation(CompoundTerm compound, + Statement statement, + short side) + +
+          { {P}>} |- {P}>
+  +

+ + + + + +
+Uses of CompoundTerm in nars.language
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Subclasses of CompoundTerm in nars.language
+ classConjunction + +
+          Conjunction of statements
+ classConjunctionParallel + +
+          A parallel conjunction of Statements.
+ classConjunctionSequence + +
+          A sequential conjunction of Statements.
+ classDifferenceExt + +
+          A compound term whose extension is the difference of the extensions of its components
+ classDifferenceInt + +
+          A compound term whose extension is the difference of the intensions of its components
+ classDisjunction + +
+          A disjunction of Statements.
+ classEquivalence + +
+          A Statement about an Equivalence relation.
+ classEquivalenceAfter + +
+          Temporal Implication relation, predicate after subject.
+ classEquivalenceWhen + +
+          Temporal Equivalence relation, concurrent.
+ classImageExt + +
+          An extension image.
+ classImageInt + +
+          An intension image.
+ classImplication + +
+          A Statement about an Inheritance relation.
+ classImplicationAfter + +
+          Temporal Implication relation, predicate after subject.
+ classImplicationBefore + +
+          Temporal Implication relation, predicate before subject.
+ classImplicationWhen + +
+          Temporal Implication relation, concurrent.
+ classInheritance + +
+          A Statement about an Inheritance relation.
+ classInstance + +
+          A Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
+ classInstanceProperty + +
+          A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
+ classIntersectionExt + +
+          A compound term whose extension is the intersection of the extensions of its components
+ classIntersectionInt + +
+          A compound term whose intension is the intersection of the extensions of its components
+ classNegation + +
+          A negation of a Statement.
+ classProduct + +
+          A Product is a sequence of terms.
+ classProperty + +
+          A Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
+ classSetExt + +
+          An extensionally defined set, which contains one or more instances.
+ classSetInt + +
+          An intensionally defined set, which contains one or more instances defining the Term.
+ classSimilarity + +
+          A Statement about a Similarity relation.
+ classStatement + +
+          A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
+  +

+ + + + + + + + + +
Fields in nars.language declared as CompoundTerm
+private  CompoundTermVariable.scope + +
+          The minimum CompoundTerm what contains all occurences of this variable
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.language with parameters of type CompoundTerm
+static TermCompoundTerm.addComponents(CompoundTerm t1, + Term t2) + +
+          Try to add a component into a compound
+static TermCompoundTerm.make(CompoundTerm compound, + java.util.ArrayList<Term> components) + +
+          Try to make a compound term from a template and a list of components
+static TermProduct.make(CompoundTerm image, + Term component, + int index) + +
+          Try to make a Product from an ImageExt/ImageInt and a component.
+private  voidCompoundTerm.prepareComponentLinks(java.util.ArrayList<TermLink> componentLinks, + short type, + CompoundTerm term) + +
+          Collect TermLink templates into a list, go down one level except in special cases
+static TermCompoundTerm.reduceComponents(CompoundTerm t1, + Term t2) + +
+          Try to remove a component from a compound
+static TermCompoundTerm.replaceComponent(CompoundTerm compound, + int index, + Term t) + +
+          Try to replace a component in a compound at a given index by another one
+static TermCompoundTerm.replaceComponent(CompoundTerm compound, + Term oldComponent, + Term newComponent) + +
+          Try to replace a given component in a compound by another one
+ voidVariable.setScope(CompoundTerm t) + +
+          Set the scope of the variable
+  +

+ + + + + + + + +
Constructors in nars.language with parameters of type CompoundTerm
Variable(java.lang.String n, + Variable.VarType t, + CompoundTerm s) + +
+          Constructor, with all fields
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Conjunction.html b/nars-dist/javadoc/nars/language/class-use/Conjunction.html new file mode 100644 index 00000000..798792b9 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Conjunction.html @@ -0,0 +1,220 @@ + + + + + + + +Uses of Class nars.language.Conjunction (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Conjunction

+
+ + + + + + + + + + + + + +
+Packages that use Conjunction
nars.inferenceThe inference rules and control functions 
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of Conjunction in nars.inference
+  +

+ + + + + + + + + +
Methods in nars.inference that return Conjunction
+private static ConjunctionCompositionalRules.introVarDep(Statement premise1, + Statement premise2, + int index) + +
+          { S>, P>} |- (&&, <#x() --> S>, <#x() --> P>>
+  +

+ + + + + +
+Uses of Conjunction in nars.language
+  +

+ + + + + + + + + + + + + +
Subclasses of Conjunction in nars.language
+ classConjunctionParallel + +
+          A parallel conjunction of Statements.
+ classConjunctionSequence + +
+          A sequential conjunction of Statements.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/ConjunctionParallel.html b/nars-dist/javadoc/nars/language/class-use/ConjunctionParallel.html new file mode 100644 index 00000000..c3dce9d2 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/ConjunctionParallel.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.ConjunctionParallel (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.ConjunctionParallel

+
+No usage of nars.language.ConjunctionParallel +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/ConjunctionSequence.html b/nars-dist/javadoc/nars/language/class-use/ConjunctionSequence.html new file mode 100644 index 00000000..50de4654 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/ConjunctionSequence.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.ConjunctionSequence (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.ConjunctionSequence

+
+No usage of nars.language.ConjunctionSequence +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html new file mode 100644 index 00000000..2bcd69c8 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.DifferenceExt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.DifferenceExt

+
+No usage of nars.language.DifferenceExt +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html new file mode 100644 index 00000000..2139724f --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.DifferenceInt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.DifferenceInt

+
+No usage of nars.language.DifferenceInt +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Disjunction.html b/nars-dist/javadoc/nars/language/class-use/Disjunction.html new file mode 100644 index 00000000..2fb59696 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Disjunction.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.Disjunction (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Disjunction

+
+No usage of nars.language.Disjunction +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Equivalence.html b/nars-dist/javadoc/nars/language/class-use/Equivalence.html new file mode 100644 index 00000000..b090da59 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Equivalence.html @@ -0,0 +1,216 @@ + + + + + + + +Uses of Class nars.language.Equivalence (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Equivalence

+
+ + + + + + + + + +
+Packages that use Equivalence
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of Equivalence in nars.language
+  +

+ + + + + + + + + + + + + +
Subclasses of Equivalence in nars.language
+ classEquivalenceAfter + +
+          Temporal Implication relation, predicate after subject.
+ classEquivalenceWhen + +
+          Temporal Equivalence relation, concurrent.
+  +

+ + + + + + + + + + + + + +
Methods in nars.language that return Equivalence
+static EquivalenceEquivalence.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static EquivalenceEquivalence.make(Term subject, + Term predicate, + TemporalRules.Relation temporalOrder) + +
+           
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/EquivalenceAfter.html b/nars-dist/javadoc/nars/language/class-use/EquivalenceAfter.html new file mode 100644 index 00000000..abbce136 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/EquivalenceAfter.html @@ -0,0 +1,182 @@ + + + + + + + +Uses of Class nars.language.EquivalenceAfter (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.EquivalenceAfter

+
+ + + + + + + + + +
+Packages that use EquivalenceAfter
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of EquivalenceAfter in nars.language
+  +

+ + + + + + + + + +
Methods in nars.language that return EquivalenceAfter
+static EquivalenceAfterEquivalenceAfter.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/EquivalenceWhen.html b/nars-dist/javadoc/nars/language/class-use/EquivalenceWhen.html new file mode 100644 index 00000000..e2415296 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/EquivalenceWhen.html @@ -0,0 +1,182 @@ + + + + + + + +Uses of Class nars.language.EquivalenceWhen (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.EquivalenceWhen

+
+ + + + + + + + + +
+Packages that use EquivalenceWhen
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of EquivalenceWhen in nars.language
+  +

+ + + + + + + + + +
Methods in nars.language that return EquivalenceWhen
+static EquivalenceWhenEquivalenceWhen.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/ImageExt.html b/nars-dist/javadoc/nars/language/class-use/ImageExt.html new file mode 100644 index 00000000..5f3e5889 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/ImageExt.html @@ -0,0 +1,183 @@ + + + + + + + +Uses of Class nars.language.ImageExt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.ImageExt

+
+ + + + + + + + + +
+Packages that use ImageExt
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of ImageExt in nars.language
+  +

+ + + + + + + + + +
Methods in nars.language with parameters of type ImageExt
+static TermImageExt.make(ImageExt oldImage, + Term component, + short index) + +
+          Try to make an Image from an existing Image and a component.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/ImageInt.html b/nars-dist/javadoc/nars/language/class-use/ImageInt.html new file mode 100644 index 00000000..e05b3ae0 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/ImageInt.html @@ -0,0 +1,183 @@ + + + + + + + +Uses of Class nars.language.ImageInt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.ImageInt

+
+ + + + + + + + + +
+Packages that use ImageInt
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of ImageInt in nars.language
+  +

+ + + + + + + + + +
Methods in nars.language with parameters of type ImageInt
+static TermImageInt.make(ImageInt oldImage, + Term component, + short index) + +
+          Try to make an Image from an existing Image and a component.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Implication.html b/nars-dist/javadoc/nars/language/class-use/Implication.html new file mode 100644 index 00000000..5a705003 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Implication.html @@ -0,0 +1,269 @@ + + + + + + + +Uses of Class nars.language.Implication (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Implication

+
+ + + + + + + + + + + + + +
+Packages that use Implication
nars.inferenceThe inference rules and control functions 
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of Implication in nars.inference
+  +

+ + + + + + + + + + + + + +
Methods in nars.inference with parameters of type Implication
+(package private) static voidSyllogisticRules.conditionalDedInd(Implication premise1, + short index, + Term premise2, + int side) + +
+          {<(&&, S1, S2, S3) ==> P>, S1} |- <(&&, S2, S3) ==> P> + {<(&&, S2, S3) ==> P>, S2>} |- <(&&, S1, S3) ==> P> + {<(&&, S1, S3) ==> P>, S2>} |- <(&&, S2, S3) ==> P>
+private static voidRuleTables.conditionalDedIndWithVar(Implication conditional, + short index, + Statement statement, + short side) + +
+          Conditional deduction or induction, with variable unification
+  +

+ + + + + +
+Uses of Implication in nars.language
+  +

+ + + + + + + + + + + + + + + + + +
Subclasses of Implication in nars.language
+ classImplicationAfter + +
+          Temporal Implication relation, predicate after subject.
+ classImplicationBefore + +
+          Temporal Implication relation, predicate before subject.
+ classImplicationWhen + +
+          Temporal Implication relation, concurrent.
+  +

+ + + + + + + + + + + + + +
Methods in nars.language that return Implication
+static ImplicationImplication.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static ImplicationImplication.make(Term subject, + Term predicate, + TemporalRules.Relation temporalOrder) + +
+           
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/ImplicationAfter.html b/nars-dist/javadoc/nars/language/class-use/ImplicationAfter.html new file mode 100644 index 00000000..78ca0aa7 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/ImplicationAfter.html @@ -0,0 +1,182 @@ + + + + + + + +Uses of Class nars.language.ImplicationAfter (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.ImplicationAfter

+
+ + + + + + + + + +
+Packages that use ImplicationAfter
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of ImplicationAfter in nars.language
+  +

+ + + + + + + + + +
Methods in nars.language that return ImplicationAfter
+static ImplicationAfterImplicationAfter.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/ImplicationBefore.html b/nars-dist/javadoc/nars/language/class-use/ImplicationBefore.html new file mode 100644 index 00000000..9b9e1817 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/ImplicationBefore.html @@ -0,0 +1,182 @@ + + + + + + + +Uses of Class nars.language.ImplicationBefore (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.ImplicationBefore

+
+ + + + + + + + + +
+Packages that use ImplicationBefore
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of ImplicationBefore in nars.language
+  +

+ + + + + + + + + +
Methods in nars.language that return ImplicationBefore
+static ImplicationBeforeImplicationBefore.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/ImplicationWhen.html b/nars-dist/javadoc/nars/language/class-use/ImplicationWhen.html new file mode 100644 index 00000000..c9d520d7 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/ImplicationWhen.html @@ -0,0 +1,182 @@ + + + + + + + +Uses of Class nars.language.ImplicationWhen (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.ImplicationWhen

+
+ + + + + + + + + +
+Packages that use ImplicationWhen
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of ImplicationWhen in nars.language
+  +

+ + + + + + + + + +
Methods in nars.language that return ImplicationWhen
+static ImplicationWhenImplicationWhen.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Inheritance.html b/nars-dist/javadoc/nars/language/class-use/Inheritance.html new file mode 100644 index 00000000..483e6915 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Inheritance.html @@ -0,0 +1,217 @@ + + + + + + + +Uses of Class nars.language.Inheritance (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Inheritance

+
+ + + + + + + + + + + + + +
+Packages that use Inheritance
nars.inferenceThe inference rules and control functions 
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of Inheritance in nars.inference
+  +

+ + + + + + + + + +
Methods in nars.inference with parameters of type Inheritance
+(package private) static voidStructuralRules.transformProductImage(Inheritance inh, + CompoundTerm oldContent, + short[] indices, + Task task) + +
+          Equivalent transformation between products and images + {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> + { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> + { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)>
+  +

+ + + + + +
+Uses of Inheritance in nars.language
+  +

+ + + + + + + + + +
Methods in nars.language that return Inheritance
+static InheritanceInheritance.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Instance.html b/nars-dist/javadoc/nars/language/class-use/Instance.html new file mode 100644 index 00000000..21c4eb00 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Instance.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.Instance (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Instance

+
+No usage of nars.language.Instance +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html new file mode 100644 index 00000000..ac6e71ae --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.InstanceProperty (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.InstanceProperty

+
+No usage of nars.language.InstanceProperty +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html new file mode 100644 index 00000000..df01cd2d --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.IntersectionExt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.IntersectionExt

+
+No usage of nars.language.IntersectionExt +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html new file mode 100644 index 00000000..04fc1d17 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.IntersectionInt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.IntersectionInt

+
+No usage of nars.language.IntersectionInt +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Negation.html b/nars-dist/javadoc/nars/language/class-use/Negation.html new file mode 100644 index 00000000..f0aa30de --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Negation.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.Negation (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Negation

+
+No usage of nars.language.Negation +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Product.html b/nars-dist/javadoc/nars/language/class-use/Product.html new file mode 100644 index 00000000..18a35f3d --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Product.html @@ -0,0 +1,193 @@ + + + + + + + +Uses of Class nars.language.Product (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Product

+
+ + + + + + + + + +
+Packages that use Product
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of Product in nars.language
+  +

+ + + + + + + + + + + + + +
Methods in nars.language with parameters of type Product
+static TermImageExt.make(Product product, + Term relation, + short index) + +
+          Try to make an Image from a Product and a relation.
+static TermImageInt.make(Product product, + Term relation, + short index) + +
+          Try to make an Image from a Product and a relation.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Property.html b/nars-dist/javadoc/nars/language/class-use/Property.html new file mode 100644 index 00000000..c9199c08 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Property.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.Property (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Property

+
+No usage of nars.language.Property +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/SetExt.html b/nars-dist/javadoc/nars/language/class-use/SetExt.html new file mode 100644 index 00000000..32e3a202 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/SetExt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.SetExt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.SetExt

+
+No usage of nars.language.SetExt +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/SetInt.html b/nars-dist/javadoc/nars/language/class-use/SetInt.html new file mode 100644 index 00000000..16e87906 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/SetInt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.language.SetInt (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.SetInt

+
+No usage of nars.language.SetInt +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Similarity.html b/nars-dist/javadoc/nars/language/class-use/Similarity.html new file mode 100644 index 00000000..baff7cd0 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Similarity.html @@ -0,0 +1,182 @@ + + + + + + + +Uses of Class nars.language.Similarity (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Similarity

+
+ + + + + + + + + +
+Packages that use Similarity
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of Similarity in nars.language
+  +

+ + + + + + + + + +
Methods in nars.language that return Similarity
+static SimilaritySimilarity.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Statement.html b/nars-dist/javadoc/nars/language/class-use/Statement.html new file mode 100644 index 00000000..090577b0 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Statement.html @@ -0,0 +1,633 @@ + + + + + + + +Uses of Class nars.language.Statement (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Statement

+
+ + + + + + + + + + + + + + + + + + + + + +
+Packages that use Statement
nars.inferenceThe inference rules and control functions 
nars.ioInput/output management 
nars.languageTerm hierarchy in Narsese 
nars.operationBuilt-in operators 
+  +

+ + + + + +
+Uses of Statement in nars.inference
+  +

+ + + + + + + + + +
Methods in nars.inference that return Statement
+private static StatementSyllogisticRules.introVarInd(Sentence sentence1, + Sentence sentence2, + int figure, + boolean isImplication) + +
+          { S>, P>} |- <<#x --> S> ==> <#x --> P>> + { S>, P>} |- <<#x --> S> <=> <#x --> P>>
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference with parameters of type Statement
+private static voidRuleTables.componentAndStatement(CompoundTerm compound, + short index, + Statement statement, + short side) + +
+          Inference between a component term (of the current term) and a statement
+private static voidRuleTables.compoundAndStatement(CompoundTerm compound, + short index, + Statement statement, + short side, + Term beliefTerm) + +
+          Inference between a compound term and a statement
+(package private) static booleanSyllogisticRules.conditionalAbd(Term cond1, + Term cond2, + Statement st1, + Statement st2) + +
+          {<(&&, S2, S3) ==> P>, <(&&, S1, S3) ==> P>} |- S2>
+private static voidRuleTables.conditionalDedIndWithVar(Implication conditional, + short index, + Statement statement, + short side) + +
+          Conditional deduction or induction, with variable unification
+(package private) static voidStructuralRules.contraposition(Statement statement) + +
+          { B>, A@(--, A)} |- <(--, B) ==> (--, A)>
+private static ConjunctionCompositionalRules.introVarDep(Statement premise1, + Statement premise2, + int index) + +
+          { S>, P>} |- (&&, <#x() --> S>, <#x() --> P>>
+private static voidCompositionalRules.introVarDepOuter(Statement premise1, + Statement premise2, + int index) + +
+          Introduce a dependent variable in an outer-layer conjunction
+(package private) static voidSyllogisticRules.introVarIndInner(Statement premise1, + Statement premise2, + CompoundTerm oldCompound) + +
+          { S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> + { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>)
+private static voidCompositionalRules.processComposed(Statement statement, + Term subject, + Term predicate, + TruthValue truth) + +
+          Finish composing compound term
+(package private) static voidStructuralRules.structuralCompose1(CompoundTerm compound, + short index, + Statement statement) + +
+          { P>, P@(P&Q)} |- (P&Q)>
+(package private) static voidStructuralRules.structuralCompose2(CompoundTerm compound, + short index, + Statement statement, + short side) + +
+          { P>, S@(S&T)} |- <(S&T) --> (P&T)> + { P>, S@(M-S)} |- <(M-P) --> (M-S)>
+(package private) static voidStructuralRules.structuralDecompose1(CompoundTerm compound, + short index, + Statement statement) + +
+          {<(S&T) --> P>, S@(S&T)} |- P>
+(package private) static voidStructuralRules.structuralDecompose2(Statement statement) + +
+          {<(S&T) --> (P&T)>, S@(S&T)} |- P>
+(package private) static voidStructuralRules.transformSetRelation(CompoundTerm compound, + Statement statement, + short side) + +
+          { {P}>} |- {P}>
+  +

+ + + + + +
+Uses of Statement in nars.io
+  +

+ + + + + + + + + +
Methods in nars.io that return Statement
+private static StatementStringParser.parseStatement(java.lang.String s0) + +
+          Parse a String to create a Statement.
+  +

+ + + + + +
+Uses of Statement in nars.language
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Subclasses of Statement in nars.language
+ classEquivalence + +
+          A Statement about an Equivalence relation.
+ classEquivalenceAfter + +
+          Temporal Implication relation, predicate after subject.
+ classEquivalenceWhen + +
+          Temporal Equivalence relation, concurrent.
+ classImplication + +
+          A Statement about an Inheritance relation.
+ classImplicationAfter + +
+          Temporal Implication relation, predicate after subject.
+ classImplicationBefore + +
+          Temporal Implication relation, predicate before subject.
+ classImplicationWhen + +
+          Temporal Implication relation, concurrent.
+ classInheritance + +
+          A Statement about an Inheritance relation.
+ classInstance + +
+          A Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
+ classInstanceProperty + +
+          A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
+ classProperty + +
+          A Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
+ classSimilarity + +
+          A Statement about a Similarity relation.
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.language that return Statement
+static StatementStatement.make(Statement statement, + Term subj, + Term pred) + +
+          Make a Statement from given components, called by the rules
+static StatementStatement.make(Statement statement, + Term subj, + Term pred, + TemporalRules.Relation order) + +
+          Make a Statement from given components and temporal information, called by the rules
+static StatementStatement.make(java.lang.String relation, + Term subject, + Term predicate) + +
+          Make a Statement from String, called by StringParser
+static StatementInstance.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static StatementInstanceProperty.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static StatementProperty.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static StatementStatement.makeSym(Statement statement, + Term subj, + Term pred, + TemporalRules.Relation order) + +
+          Make a symmetric Statement from given components and temporal information, called by the rules
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.language with parameters of type Statement
+static StatementStatement.make(Statement statement, + Term subj, + Term pred) + +
+          Make a Statement from given components, called by the rules
+static StatementStatement.make(Statement statement, + Term subj, + Term pred, + TemporalRules.Relation order) + +
+          Make a Statement from given components and temporal information, called by the rules
+static StatementStatement.makeSym(Statement statement, + Term subj, + Term pred, + TemporalRules.Relation order) + +
+          Make a symmetric Statement from given components and temporal information, called by the rules
+  +

+ + + + + +
+Uses of Statement in nars.operation
+  +

+ + + + + + + + + +
Methods in nars.operation with parameters of type Statement
+private  voidOperator.showExecution(Statement operation) + +
+          Display a message in the output stream to indicate the execution of an operation
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Temporal.html b/nars-dist/javadoc/nars/language/class-use/Temporal.html new file mode 100644 index 00000000..21d3b3dc --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Temporal.html @@ -0,0 +1,229 @@ + + + + + + + +Uses of Interface nars.language.Temporal (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Interface
nars.language.Temporal

+
+ + + + + + + + + +
+Packages that use Temporal
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of Temporal in nars.language
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Classes in nars.language that implement Temporal
+ classConjunctionParallel + +
+          A parallel conjunction of Statements.
+ classConjunctionSequence + +
+          A sequential conjunction of Statements.
+ classEquivalenceAfter + +
+          Temporal Implication relation, predicate after subject.
+ classEquivalenceWhen + +
+          Temporal Equivalence relation, concurrent.
+ classImplicationAfter + +
+          Temporal Implication relation, predicate after subject.
+ classImplicationBefore + +
+          Temporal Implication relation, predicate before subject.
+ classImplicationWhen + +
+          Temporal Implication relation, concurrent.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Term.html b/nars-dist/javadoc/nars/language/class-use/Term.html new file mode 100644 index 00000000..f7c0d4ff --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Term.html @@ -0,0 +1,2702 @@ + + + + + + + +Uses of Class nars.language.Term (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Term

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Packages that use Term
nars.entityData entities that are independently stored 
nars.inferenceThe inference rules and control functions 
nars.ioInput/output management 
nars.languageTerm hierarchy in Narsese 
nars.mainTop-level classes of the system 
nars.operationBuilt-in operators 
+  +

+ + + + + +
+Uses of Term in nars.entity
+  +

+ + + + + + + + + + + + + + + + + +
Fields in nars.entity declared as Term
+protected  TermSentence.content + +
+          The content of a Sentence is a Term
+private  TermTermLink.target + +
+          The linked Term
+private  TermConcept.term + +
+          The term is the unique ID of the concept
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.entity that return Term
+ TermSentence.cloneContent() + +
+          Clone the content of the sentence
+ TermSentence.getContent() + +
+          Get the content of the sentence
+ TermTask.getContent() + +
+          Directly get the content of the sentence
+ TermTermLink.getTarget() + +
+          Get the target of the link
+ TermConcept.getTerm() + +
+          Return the assocated term, called from Memory only
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.entity with parameters of type Term
+static SentenceSentence.make(Sentence oldS, + Term term, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a derived Sentence from a template and some initial values.
+static SentenceSentence.make(Term term, + char punc, + TemporalRules.Relation tense, + TruthValue truth, + Stamp stamp) + +
+          Make a Sentence from an input String.
+ voidSentence.setContent(Term t) + +
+          Set the content Term of the Sentence
+  +

+ + + + + + + + + + + + + + + + + + + + + + + +
Constructors in nars.entity with parameters of type Term
Concept(Term tm) + +
+          Constructor, called in Memory.getConcept only
Goal(Term term, + char punc, + TruthValue t, + Stamp s) + +
+          Constructor
Judgment(Term term, + char punc, + TemporalRules.Relation s, + TruthValue t, + Stamp b) + +
+          Constructor
Question(Term term, + char punc, + TemporalRules.Relation t, + Stamp s) + +
+          COnstructor
TermLink(Term t, + short p, + int... indices) + +
+          Constructor for TermLink template
TermLink(Term t, + TermLink template, + BudgetValue v) + +
+          Constructor to make actual TermLink from a template
+  +

+ + + + + +
+Uses of Term in nars.inference
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.inference with parameters of type Term
+(package private) static voidSyllogisticRules.abdIndCom(Term term1, + Term term2, + Sentence taskSentence, + Judgment belief, + int figure) + +
+          { S>, P>} |- { P>,

S>, P>}

+(package private) static voidCompositionalRules.abdVarDepOuter(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S>
+(package private) static voidSyllogisticRules.analogy(Term term1, + Term term2, + Sentence asym, + Sentence sym, + int figure) + +
+          { P>, P>} |- P>
+private static voidRuleTables.compoundAndSelf(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          Inference between a compound term and a component of it
+private static voidRuleTables.compoundAndStatement(CompoundTerm compound, + short index, + Statement statement, + short side, + Term beliefTerm) + +
+          Inference between a compound term and a statement
+static BudgetValueBudgetFunctions.compoundBackward(Term content) + +
+          Backward inference with CompoundTerm conclusion, stronger case
+static BudgetValueBudgetFunctions.compoundBackwardWeak(Term content) + +
+          Backward inference with CompoundTerm conclusion, weaker case
+static BudgetValueBudgetFunctions.compoundForward(TruthValue truth, + Term content) + +
+          Forward inference with CompoundTerm conclusion
+(package private) static booleanSyllogisticRules.conditionalAbd(Term cond1, + Term cond2, + Statement st1, + Statement st2) + +
+          {<(&&, S2, S3) ==> P>, <(&&, S1, S3) ==> P>} |- S2>
+(package private) static voidSyllogisticRules.conditionalDedInd(Implication premise1, + short index, + Term premise2, + int side) + +
+          {<(&&, S1, S2, S3) ==> P>, S1} |- <(&&, S2, S3) ==> P> + {<(&&, S2, S3) ==> P>, S2>} |- <(&&, S1, S3) ==> P> + {<(&&, S1, S3) ==> P>, S2>} |- <(&&, S2, S3) ==> P>
+private static voidCompositionalRules.decomposeCompound(CompoundTerm compound, + Term component, + Term term1, + int index, + boolean compoundTask) + +
+          {<(S|P) ==> M>,

M>} |- M>

+(package private) static voidCompositionalRules.decomposeStatement(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          {(||, S, P), P} |- S + {(&&, S, P), P} |- S
+(package private) static voidSyllogisticRules.dedExe(Term term1, + Term term2, + Sentence sentence, + Judgment belief) + +
+          { M>, P>} |- { P>,

S>}

+(package private) static voidCompositionalRules.introVarDepInner(CompoundTerm compound, + Term component, + Term premise) + +
+          Introduce a dependent variable in an inner-layer conjunction
+private static voidCompositionalRules.processComposed(Statement statement, + Term subject, + Term predicate, + TruthValue truth) + +
+          Finish composing compound term
+(package private) static voidSyllogisticRules.resemblance(Term term1, + Term term2, + Judgment belief, + Sentence sentence, + int figure) + +
+          { M>, P>} |- P>
+(package private) static voidStructuralRules.structuralCompound(CompoundTerm compound, + Term component, + boolean compoundTask) + +
+          {(&&, A, B), A@(&&, A, B)} |- A + {(||, A, B), A@(||, A, B)} |- A
+private static voidStructuralRules.structuralStatement(Term subject, + Term predicate, + TruthValue truth) + +
+          Common final operations of the above two methods
+private static voidRuleTables.syllogisms(TaskLink tLink, + TermLink bLink, + Term taskTerm, + Term beliefTerm) + +
+          Meta-table of syllogistic rules, indexed by the content classes of the + taskSentence and the belief
+(package private) static voidStructuralRules.transformNegation(Term content) + +
+          {A, A@(--, A)} |- (--, A)
+  +

+ + + + + +
+Uses of Term in nars.io
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.io that return Term
+private static TermStringParser.parseCompoundTerm(java.lang.String s0) + +
+          Parse a String to create a CompoundTerm.
+private static TermStringParser.parseSimpleTerm(java.lang.String s0) + +
+          Parse a Term that has no internal structure.
+private static TermStringParser.parseTerm(java.lang.String s0) + +
+          Top-level method that parse a Term in general, which may recursively call itself.
+  +

+ + + + + + + + + +
Methods in nars.io that return types with arguments of type Term
+private static java.util.ArrayList<Term>StringParser.parseArguments(java.lang.String s0) + +
+          Parse a String into the argument get of a CompoundTerm.
+  +

+ + + + + +
+Uses of Term in nars.language
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Subclasses of Term in nars.language
+ classCompoundTerm + +
+          A CompoundTerm is a Term with internal (syntactic) structure
+ classConjunction + +
+          Conjunction of statements
+ classConjunctionParallel + +
+          A parallel conjunction of Statements.
+ classConjunctionSequence + +
+          A sequential conjunction of Statements.
+ classDifferenceExt + +
+          A compound term whose extension is the difference of the extensions of its components
+ classDifferenceInt + +
+          A compound term whose extension is the difference of the intensions of its components
+ classDisjunction + +
+          A disjunction of Statements.
+ classEquivalence + +
+          A Statement about an Equivalence relation.
+ classEquivalenceAfter + +
+          Temporal Implication relation, predicate after subject.
+ classEquivalenceWhen + +
+          Temporal Equivalence relation, concurrent.
+ classImageExt + +
+          An extension image.
+ classImageInt + +
+          An intension image.
+ classImplication + +
+          A Statement about an Inheritance relation.
+ classImplicationAfter + +
+          Temporal Implication relation, predicate after subject.
+ classImplicationBefore + +
+          Temporal Implication relation, predicate before subject.
+ classImplicationWhen + +
+          Temporal Implication relation, concurrent.
+ classInheritance + +
+          A Statement about an Inheritance relation.
+ classInstance + +
+          A Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
+ classInstanceProperty + +
+          A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
+ classIntersectionExt + +
+          A compound term whose extension is the intersection of the extensions of its components
+ classIntersectionInt + +
+          A compound term whose intension is the intersection of the extensions of its components
+ classNegation + +
+          A negation of a Statement.
+ classProduct + +
+          A Product is a sequence of terms.
+ classProperty + +
+          A Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
+ classSetExt + +
+          An extensionally defined set, which contains one or more instances.
+ classSetInt + +
+          An intensionally defined set, which contains one or more instances defining the Term.
+ classSimilarity + +
+          A Statement about a Similarity relation.
+ classStatement + +
+          A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
+ classVariable + +
+          A variable term, which does not correspond to a concept
+  +

+ + + + + + + + + +
Fields in nars.language with type parameters of type Term
+protected  java.util.ArrayList<Term>CompoundTerm.components + +
+          list of (direct) components
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.language that return Term
+static TermCompoundTerm.addComponents(CompoundTerm t1, + Term t2) + +
+          Try to add a component into a compound
+ TermCompoundTerm.componentAt(int i) + +
+          get a component by index
+ TermStatement.getPredicate() + +
+          Return the second component of the statement
+ TermStatement.getSubject() + +
+          Return the first component of the statement
+static TermConjunction.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new compound from a list of components.
+static TermConjunctionParallel.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new compound from a list of components.
+static TermConjunctionSequence.make(java.util.ArrayList<Term> argument) + +
+          Try to make a new compound from a list of components.
+static TermDifferenceExt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new DifferenceExt.
+static TermDifferenceInt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new DifferenceExt.
+static TermDisjunction.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new IntersectionExt.
+static TermImageExt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new ImageExt.
+static TermImageInt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new ImageExt.
+static TermIntersectionExt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new IntersectionExt.
+static TermIntersectionInt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new IntersectionExt.
+static TermNegation.make(java.util.ArrayList<Term> argument) + +
+          Try to make a new SetExt.
+static TermProduct.make(java.util.ArrayList<Term> argument) + +
+          Try to make a new compound.
+static TermSetExt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new SetExt.
+static TermSetInt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new SetExt.
+static TermImageExt.make(java.util.ArrayList<Term> argument, + short index) + +
+          Try to make a new compound from a set of components.
+static TermImageInt.make(java.util.ArrayList<Term> argument, + short index) + +
+          Try to make a new compound from a set of components.
+static TermCompoundTerm.make(CompoundTerm compound, + java.util.ArrayList<Term> components) + +
+          Try to make a compound term from a template and a list of components
+static TermProduct.make(CompoundTerm image, + Term component, + int index) + +
+          Try to make a Product from an ImageExt/ImageInt and a component.
+static TermImageExt.make(ImageExt oldImage, + Term component, + short index) + +
+          Try to make an Image from an existing Image and a component.
+static TermImageInt.make(ImageInt oldImage, + Term component, + short index) + +
+          Try to make an Image from an existing Image and a component.
+static TermImageExt.make(Product product, + Term relation, + short index) + +
+          Try to make an Image from a Product and a relation.
+static TermImageInt.make(Product product, + Term relation, + short index) + +
+          Try to make an Image from a Product and a relation.
+static TermCompoundTerm.make(java.lang.String op, + java.util.ArrayList<Term> arg) + +
+          Try to make a compound term from an operator and a list of components
+static TermNegation.make(Term t) + +
+          Try to make a Negation of one component.
+static TermSetExt.make(Term t) + +
+          Try to make a new set from one component.
+static TermSetInt.make(Term t) + +
+          Try to make a new set from one component.
+static TermConjunction.make(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static TermConjunctionParallel.make(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static TermConjunctionSequence.make(Term term1, + Term term2) + +
+           
+static TermDifferenceExt.make(Term t1, + Term t2) + +
+          Try to make a new compound from two components.
+static TermDifferenceInt.make(Term t1, + Term t2) + +
+          Try to make a new compound from two components.
+static TermDisjunction.make(Term term1, + Term term2) + +
+          Try to make a new Disjunction from two components.
+static TermIntersectionExt.make(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static TermIntersectionInt.make(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static TermConjunction.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+static TermConjunctionParallel.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+static TermDisjunction.make(java.util.TreeSet<Term> set) + +
+          Try to make a new Disjunction from a set of components.
+static TermIntersectionExt.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+static TermIntersectionInt.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+static TermSetExt.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+static TermSetInt.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+static TermCompoundTerm.reduceComponents(CompoundTerm t1, + Term t2) + +
+          Try to remove a component from a compound
+static TermCompoundTerm.replaceComponent(CompoundTerm compound, + int index, + Term t) + +
+          Try to replace a component in a compound at a given index by another one
+static TermCompoundTerm.replaceComponent(CompoundTerm compound, + Term oldComponent, + Term newComponent) + +
+          Try to replace a given component in a compound by another one
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.language that return types with arguments of type Term
+protected static java.util.ArrayList<Term>CompoundTerm.argumentsToList(Term t1, + Term t2) + +
+          build a component list from two terms
+ java.util.ArrayList<Term>CompoundTerm.cloneComponents() + +
+          Clone the component list
+static java.util.HashMap<java.lang.String,Term>Variable.findSubstitute(Variable.VarType type, + Term term1, + Term term2) + +
+          To find a substitution that can unify two Terms without changing them
+private static java.util.HashMap<java.lang.String,Term>Variable.findSubstitute(Variable.VarType type, + Term term1, + Term term2, + java.util.HashMap<java.lang.String,Term> subs) + +
+          To recursively find a substitution that can unify two Terms without changing them
+private static java.util.HashMap<java.lang.String,Term>Variable.findSubstituteVar(Variable.VarType type, + Variable var, + Term term, + java.util.HashMap<java.lang.String,Term> subs, + boolean first) + +
+          To find a substitution that can unify a Vriable and a Term
+ java.util.ArrayList<Term>CompoundTerm.getComponents() + +
+          Get the component list
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.language with parameters of type Term
+static TermCompoundTerm.addComponents(CompoundTerm t1, + Term t2) + +
+          Try to add a component into a compound
+protected static java.util.ArrayList<Term>CompoundTerm.argumentsToList(Term t1, + Term t2) + +
+          build a component list from two terms
+ intTerm.compareTo(Term that) + +
+          Check the relative order of two Terms.
+ booleanCompoundTerm.containAllComponents(Term t) + +
+          Check whether the compound contains all components of another term, or that term as a whole
+ booleanCompoundTerm.containComponent(Term t) + +
+          Check whether the compound contains a certain component
+static java.util.HashMap<java.lang.String,Term>Variable.findSubstitute(Variable.VarType type, + Term term1, + Term term2) + +
+          To find a substitution that can unify two Terms without changing them
+private static java.util.HashMap<java.lang.String,Term>Variable.findSubstitute(Variable.VarType type, + Term term1, + Term term2, + java.util.HashMap<java.lang.String,Term> subs) + +
+          To recursively find a substitution that can unify two Terms without changing them
+private static java.util.HashMap<java.lang.String,Term>Variable.findSubstituteVar(Variable.VarType type, + Variable var, + Term term, + java.util.HashMap<java.lang.String,Term> subs, + boolean first) + +
+          To find a substitution that can unify a Vriable and a Term
+static booleanStatement.invalidStatement(Term subject, + Term predicate) + +
+          Check the validity of a potential Statement.
+static TermProduct.make(CompoundTerm image, + Term component, + int index) + +
+          Try to make a Product from an ImageExt/ImageInt and a component.
+static TermImageExt.make(ImageExt oldImage, + Term component, + short index) + +
+          Try to make an Image from an existing Image and a component.
+static TermImageInt.make(ImageInt oldImage, + Term component, + short index) + +
+          Try to make an Image from an existing Image and a component.
+static TermImageExt.make(Product product, + Term relation, + short index) + +
+          Try to make an Image from a Product and a relation.
+static TermImageInt.make(Product product, + Term relation, + short index) + +
+          Try to make an Image from a Product and a relation.
+static StatementStatement.make(Statement statement, + Term subj, + Term pred) + +
+          Make a Statement from given components, called by the rules
+static StatementStatement.make(Statement statement, + Term subj, + Term pred, + TemporalRules.Relation order) + +
+          Make a Statement from given components and temporal information, called by the rules
+static StatementStatement.make(java.lang.String relation, + Term subject, + Term predicate) + +
+          Make a Statement from String, called by StringParser
+static TermNegation.make(Term t) + +
+          Try to make a Negation of one component.
+static TermSetExt.make(Term t) + +
+          Try to make a new set from one component.
+static TermSetInt.make(Term t) + +
+          Try to make a new set from one component.
+static TermConjunction.make(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static TermConjunctionParallel.make(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static TermConjunctionSequence.make(Term term1, + Term term2) + +
+           
+static TermDifferenceExt.make(Term t1, + Term t2) + +
+          Try to make a new compound from two components.
+static TermDifferenceInt.make(Term t1, + Term t2) + +
+          Try to make a new compound from two components.
+static TermDisjunction.make(Term term1, + Term term2) + +
+          Try to make a new Disjunction from two components.
+static EquivalenceEquivalence.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static EquivalenceAfterEquivalenceAfter.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static EquivalenceWhenEquivalenceWhen.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static ImplicationImplication.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static ImplicationAfterImplicationAfter.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static ImplicationBeforeImplicationBefore.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static ImplicationWhenImplicationWhen.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static InheritanceInheritance.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static StatementInstance.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static StatementInstanceProperty.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static TermIntersectionExt.make(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static TermIntersectionInt.make(Term term1, + Term term2) + +
+          Try to make a new compound from two components.
+static StatementProperty.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static SimilaritySimilarity.make(Term subject, + Term predicate) + +
+          Try to make a new compound from two components.
+static EquivalenceEquivalence.make(Term subject, + Term predicate, + TemporalRules.Relation temporalOrder) + +
+           
+static ImplicationImplication.make(Term subject, + Term predicate, + TemporalRules.Relation temporalOrder) + +
+           
+protected static java.lang.StringStatement.makeStatementName(Term subject, + java.lang.String relation, + Term predicate) + +
+          Default method to make the name of an image term from given fields
+static StatementStatement.makeSym(Statement statement, + Term subj, + Term pred, + TemporalRules.Relation order) + +
+          Make a symmetric Statement from given components and temporal information, called by the rules
+static TermCompoundTerm.reduceComponents(CompoundTerm t1, + Term t2) + +
+          Try to remove a component from a compound
+static TermCompoundTerm.replaceComponent(CompoundTerm compound, + int index, + Term t) + +
+          Try to replace a component in a compound at a given index by another one
+static TermCompoundTerm.replaceComponent(CompoundTerm compound, + Term oldComponent, + Term newComponent) + +
+          Try to replace a given component in a compound by another one
+static booleanVariable.unify(Variable.VarType type, + Term t1, + Term t2, + Term compound1, + Term compound2) + +
+          To unify two Terms, then apply the substitution to the two compounds
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Method parameters in nars.language with type arguments of type Term
+private static java.util.HashMap<java.lang.String,Term>Variable.findSubstitute(Variable.VarType type, + Term term1, + Term term2, + java.util.HashMap<java.lang.String,Term> subs) + +
+          To recursively find a substitution that can unify two Terms without changing them
+private static java.util.HashMap<java.lang.String,Term>Variable.findSubstituteVar(Variable.VarType type, + Variable var, + Term term, + java.util.HashMap<java.lang.String,Term> subs, + boolean first) + +
+          To find a substitution that can unify a Vriable and a Term
+static TermConjunction.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new compound from a list of components.
+static TermConjunctionParallel.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new compound from a list of components.
+static TermConjunctionSequence.make(java.util.ArrayList<Term> argument) + +
+          Try to make a new compound from a list of components.
+static TermDifferenceExt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new DifferenceExt.
+static TermDifferenceInt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new DifferenceExt.
+static TermDisjunction.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new IntersectionExt.
+static TermImageExt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new ImageExt.
+static TermImageInt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new ImageExt.
+static TermIntersectionExt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new IntersectionExt.
+static TermIntersectionInt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new IntersectionExt.
+static TermNegation.make(java.util.ArrayList<Term> argument) + +
+          Try to make a new SetExt.
+static TermProduct.make(java.util.ArrayList<Term> argument) + +
+          Try to make a new compound.
+static TermSetExt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new SetExt.
+static TermSetInt.make(java.util.ArrayList<Term> argList) + +
+          Try to make a new SetExt.
+static TermImageExt.make(java.util.ArrayList<Term> argument, + short index) + +
+          Try to make a new compound from a set of components.
+static TermImageInt.make(java.util.ArrayList<Term> argument, + short index) + +
+          Try to make a new compound from a set of components.
+static TermCompoundTerm.make(CompoundTerm compound, + java.util.ArrayList<Term> components) + +
+          Try to make a compound term from a template and a list of components
+static TermCompoundTerm.make(java.lang.String op, + java.util.ArrayList<Term> arg) + +
+          Try to make a compound term from an operator and a list of components
+static TermConjunction.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+static TermConjunctionParallel.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+static TermDisjunction.make(java.util.TreeSet<Term> set) + +
+          Try to make a new Disjunction from a set of components.
+static TermIntersectionExt.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+static TermIntersectionInt.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+static TermSetExt.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+static TermSetInt.make(java.util.TreeSet<Term> set) + +
+          Try to make a new compound from a set of components.
+protected static java.lang.StringCompoundTerm.makeCompoundName(java.lang.String op, + java.util.ArrayList<Term> arg) + +
+          default method to make the name of a compound term from given fields
+protected static java.lang.StringCompoundTerm.makeImageName(java.lang.String op, + java.util.ArrayList<Term> arg, + int relationIndex) + +
+          default method to make the name of an image term from given fields
+protected static java.lang.StringCompoundTerm.makeSetName(char opener, + java.util.ArrayList<Term> arg, + char closer) + +
+          make the name of an ExtensionSet or IntensionSet
+ voidCompoundTerm.substituteComponent(java.util.HashMap<java.lang.String,Term> subs, + boolean first) + +
+          Substitute a variable component according to a given substitution
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Constructor parameters in nars.language with type arguments of type Term
CompoundTerm(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor called from subclasses constructors to initialize the fields
CompoundTerm(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor called from subclasses constructors to clone the fields
Conjunction(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
Conjunction(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ConjunctionParallel(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
ConjunctionParallel(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ConjunctionSequence(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          constructor with partial values, called by make
ConjunctionSequence(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
DifferenceExt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
DifferenceExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
DifferenceInt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
DifferenceInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Disjunction(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
Disjunction(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Equivalence(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
Equivalence(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
EquivalenceAfter(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          constructor with partial values, called by make
EquivalenceAfter(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
EquivalenceWhen(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
EquivalenceWhen(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ImageExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short complexity, + short index) + +
+          Constructor with full values, called by clone
ImageExt(java.lang.String n, + java.util.ArrayList<Term> arg, + short index) + +
+          Constructor with partial values, called by make
ImageInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short complexity, + short index) + +
+          Constructor with full values, called by clone
ImageInt(java.lang.String n, + java.util.ArrayList<Term> arg, + short index) + +
+          constructor with partial values, called by make
Implication(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
Implication(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ImplicationAfter(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          constructor with partial values, called by make
ImplicationAfter(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ImplicationBefore(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
ImplicationBefore(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ImplicationWhen(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
ImplicationWhen(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Inheritance(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
Inheritance(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
IntersectionExt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
IntersectionExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
IntersectionInt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
IntersectionInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Negation(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
Negation(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Product(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
Product(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short complexity) + +
+          Constructor with full values, called by clone
SetExt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
SetExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
SetInt(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
SetInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          constructor with full values, called by clone
Similarity(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
Similarity(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Statement(java.lang.String n, + java.util.ArrayList<Term> arg) + +
+          Constructor with partial values, called by make
Statement(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  +

+ + + + + +
+Uses of Term in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main declared as Term
+static TermMemory.currentTerm + +
+          Shortcut to the selected Term
+  +

+ + + + + + + + + +
Methods in nars.main that return Term
+static TermMemory.nameToListedTerm(java.lang.String name) + +
+          Get a Term for a given name of a Concept or Operator
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.main with parameters of type Term
+private static voidMemory.continuedProcess(Task task, + Term content) + +
+          Link to a new task from all relevant concepts for continued processing in + the near future for unspecified time.
+static voidMemory.doublePremiseTask(BudgetValue budget, + Term content, + TruthValue truth) + +
+          Shared final operations by all double-premise rules, called from the rules except StructuralRules
+static ConceptMemory.getConcept(Term term) + +
+          Get the Concept associated to a Term, or create it.
+static voidMemory.singlePremiseTask(BudgetValue budget, + Term content, + TruthValue truth) + +
+          Shared final operations by all single-premise rules, called in StructuralRules
+static ConceptMemory.termToConcept(Term term) + +
+          Get an existing Concept for a given Term.
+  +

+ + + + + +
+Uses of Term in nars.operation
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Subclasses of Term in nars.operation
+ classBreak + +
+          A class used in testing only.
+ classGoTo + +
+          A class used in testing only.
+ classOpen + +
+          A class used in testing only.
+ classOperator + +
+          An individual operator that can be execute by the system, though implemented + outside NARS.
+ classPick + +
+          A class used in testing only.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html new file mode 100644 index 00000000..9ef7c040 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html @@ -0,0 +1,292 @@ + + + + + + + +Uses of Class nars.language.Variable.VarType (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Variable.VarType

+
+ + + + + + + + + +
+Packages that use Variable.VarType
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of Variable.VarType in nars.language
+  +

+ + + + + + + + + +
Fields in nars.language declared as Variable.VarType
+private  Variable.VarTypeVariable.type + +
+          Type of the variable
+  +

+ + + + + + + + + + + + + + + + + +
Methods in nars.language that return Variable.VarType
+ Variable.VarTypeVariable.getType() + +
+          Get the type of the variable
+static Variable.VarTypeVariable.VarType.valueOf(java.lang.String name) + +
+          Returns the enum constant of this type with the specified name.
+static Variable.VarType[]Variable.VarType.values() + +
+          Returns an array containing the constants of this enum type, in +the order they are declared.
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Methods in nars.language with parameters of type Variable.VarType
+static java.util.HashMap<java.lang.String,Term>Variable.findSubstitute(Variable.VarType type, + Term term1, + Term term2) + +
+          To find a substitution that can unify two Terms without changing them
+private static java.util.HashMap<java.lang.String,Term>Variable.findSubstitute(Variable.VarType type, + Term term1, + Term term2, + java.util.HashMap<java.lang.String,Term> subs) + +
+          To recursively find a substitution that can unify two Terms without changing them
+private static java.util.HashMap<java.lang.String,Term>Variable.findSubstituteVar(Variable.VarType type, + Variable var, + Term term, + java.util.HashMap<java.lang.String,Term> subs, + boolean first) + +
+          To find a substitution that can unify a Vriable and a Term
+static booleanVariable.match(Variable.VarType type1, + Variable.VarType type2) + +
+          Whether two variable types can match each other in unification
+static booleanVariable.unify(Variable.VarType type, + Term t1, + Term t2, + Term compound1, + Term compound2) + +
+          To unify two Terms, then apply the substitution to the two compounds
+  +

+ + + + + + + + +
Constructors in nars.language with parameters of type Variable.VarType
Variable(java.lang.String n, + Variable.VarType t, + CompoundTerm s) + +
+          Constructor, with all fields
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.html b/nars-dist/javadoc/nars/language/class-use/Variable.html new file mode 100644 index 00000000..525b1f93 --- /dev/null +++ b/nars-dist/javadoc/nars/language/class-use/Variable.html @@ -0,0 +1,461 @@ + + + + + + + +Uses of Class nars.language.Variable (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.language.Variable

+
+ + + + + + + + + +
+Packages that use Variable
nars.languageTerm hierarchy in Narsese 
+  +

+ + + + + +
+Uses of Variable in nars.language
+  +

+ + + + + + + + + +
Fields in nars.language with type parameters of type Variable
+protected  java.util.ArrayList<Variable>CompoundTerm.openVariables + +
+          list of open variables in the compound
+  +

+ + + + + + + + + +
Methods in nars.language that return types with arguments of type Variable
+ java.util.ArrayList<Variable>CompoundTerm.getOpenVariables() + +
+          get the OpenVariables list
+  +

+ + + + + + + + + + + + + +
Methods in nars.language with parameters of type Variable
+private static java.util.HashMap<java.lang.String,Term>Variable.findSubstituteVar(Variable.VarType type, + Variable var, + Term term, + java.util.HashMap<java.lang.String,Term> subs, + boolean first) + +
+          To find a substitution that can unify a Vriable and a Term
+private  java.lang.StringCompoundTerm.makeVarName(int size, + Variable v) + +
+          Sequentially generate new variable names
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Constructor parameters in nars.language with type arguments of type Variable
CompoundTerm(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor called from subclasses constructors to clone the fields
Conjunction(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ConjunctionParallel(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ConjunctionSequence(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
DifferenceExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
DifferenceInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Disjunction(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Equivalence(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
EquivalenceAfter(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
EquivalenceWhen(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ImageExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short complexity, + short index) + +
+          Constructor with full values, called by clone
ImageInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short complexity, + short index) + +
+          Constructor with full values, called by clone
Implication(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ImplicationAfter(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ImplicationBefore(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
ImplicationWhen(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Inheritance(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
IntersectionExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
IntersectionInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Negation(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Product(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short complexity) + +
+          Constructor with full values, called by clone
SetExt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
SetInt(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          constructor with full values, called by clone
Similarity(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
Statement(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
+          Constructor with full values, called by clone
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/package-frame.html b/nars-dist/javadoc/nars/language/package-frame.html new file mode 100644 index 00000000..a5bdccf7 --- /dev/null +++ b/nars-dist/javadoc/nars/language/package-frame.html @@ -0,0 +1,113 @@ + + + + + + + +nars.language (NARS Document) + + + + + + + + + + + +nars.language + + + + +
+Interfaces  + +
+Temporal
+ + + + + + +
+Classes  + +
+CompoundTerm +
+Conjunction +
+ConjunctionParallel +
+ConjunctionSequence +
+DifferenceExt +
+DifferenceInt +
+Disjunction +
+Equivalence +
+EquivalenceAfter +
+EquivalenceWhen +
+ImageExt +
+ImageInt +
+Implication +
+ImplicationAfter +
+ImplicationBefore +
+ImplicationWhen +
+Inheritance +
+Instance +
+InstanceProperty +
+IntersectionExt +
+IntersectionInt +
+Negation +
+Product +
+Property +
+SetExt +
+SetInt +
+Similarity +
+Statement +
+Term +
+Variable
+ + + + + + +
+Enums  + +
+Variable.VarType
+ + + + diff --git a/nars-dist/javadoc/nars/language/package-summary.html b/nars-dist/javadoc/nars/language/package-summary.html new file mode 100644 index 00000000..6d913960 --- /dev/null +++ b/nars-dist/javadoc/nars/language/package-summary.html @@ -0,0 +1,389 @@ + + + + + + + +nars.language (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package nars.language +

+Term hierarchy in Narsese +

+See: +
+          Description +

+ + + + + + + + + +
+Interface Summary
TemporalAn interface for compound terms with temporal information in it
+  + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class Summary
CompoundTermA CompoundTerm is a Term with internal (syntactic) structure
ConjunctionConjunction of statements
ConjunctionParallelA parallel conjunction of Statements.
ConjunctionSequenceA sequential conjunction of Statements.
DifferenceExtA compound term whose extension is the difference of the extensions of its components
DifferenceIntA compound term whose extension is the difference of the intensions of its components
DisjunctionA disjunction of Statements.
EquivalenceA Statement about an Equivalence relation.
EquivalenceAfterTemporal Implication relation, predicate after subject.
EquivalenceWhenTemporal Equivalence relation, concurrent.
ImageExtAn extension image.
ImageIntAn intension image.
ImplicationA Statement about an Inheritance relation.
ImplicationAfterTemporal Implication relation, predicate after subject.
ImplicationBeforeTemporal Implication relation, predicate before subject.
ImplicationWhenTemporal Implication relation, concurrent.
InheritanceA Statement about an Inheritance relation.
InstanceA Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
InstancePropertyA Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
IntersectionExtA compound term whose extension is the intersection of the extensions of its components
IntersectionIntA compound term whose intension is the intersection of the extensions of its components
NegationA negation of a Statement.
ProductA Product is a sequence of terms.
PropertyA Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
SetExtAn extensionally defined set, which contains one or more instances.
SetIntAn intensionally defined set, which contains one or more instances defining the Term.
SimilarityA Statement about a Similarity relation.
StatementA statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
TermTerm is the basic component of Narsese, and the object of processing in NARS.
VariableA variable term, which does not correspond to a concept
+  + +

+ + + + + + + + + +
+Enum Summary
Variable.VarTypeFour variable types plus a wild card
+  + +

+

+Package nars.language Description +

+ +

+Term hierarchy in Narsese + +

Package Specification

+ +Open-NARS implements the following formal language, Narsese. +
+           <sentence> ::= <judgment>
+                        | <question>
+                        | <goal>
+           <judgment> ::= <statement> <tense> <truth-value>
+           <question> ::= <statement> <tense> 
+               <goal> ::= <statement> <desire-value>
+              <tense> ::= :\:    // past
+                        | :|:    // present
+                        | :/:    // future
+          <statement> ::= <<term> <relation> <term>>
+                        | <compound-statement>
+                        | <term>
+               <term> ::= <word>
+                        | <variable>
+                        | <compound-term>
+                        | <statement>
+           <relation> ::= -->    // Inheritance
+                        | <->    // Similarity
+                        | {--    // Instance
+                        | --]    // Property
+                        | {-]    // InstanceProperty
+                        | ==>    // Implication
+                        | =/>    // ImplicationAfter
+                        | =|>    // ImplicationWhen
+                        | =\>    // ImplicationBefore
+                        | <=>    // Equivalence
+                        | </>    // EquivalenceAfter
+                        | <|>    // EquivalenceWhen
+ <compound-statement> ::= (-- <statement>)                 // Negation
+                        | (|| <statement> <statement>+)    // Disjunction
+                        | (&& <statement> <statement>+)    // Conjunction
+                        | (&/ <statement> <statement>+)    // ConjunctionSequence
+                        | (&| <statement> <statement>+)    // ConjunctionParallel
+      <compound-term> ::= {<term>+}    // SetExt
+                        | [<term>+]    // SetInt
+                        | (& <term> <term>+)    // IntersectionExt
+                        | (| <term> <term>+)    // IntersectionInt
+                        | (- <term> <term>)     // DifferenceExt
+                        | (~ <term> <term>)     // DifferenceInt
+                        | (* <term> <term>+)    // Product
+                        | (/ <term>+ _ <term>*)    // ImageExt
+                        | (\ <term>+ _ <term>*)    // ImageInt
+           <variable> ::= <dependent-var>
+                        | <independent-var>
+                        | <anonymous-var>
+                        | <query-var>
+      <dependent-var> ::= #<word>(<independent-var>*)
+    <independent-var> ::= #<word>
+      <anonymous-var> ::= #
+          <query-var> ::= ?<word>
+               <word> : string in an alphabet
+        <truth-value> : a pair of real numbers in [0, 1] x (0, 1)
+       <desire-value> : a pair of real numbers in [0, 1] x (0, 1)
+
+ +Major methods in the Term classes: +
    +
  • constructors
  • +
  • get and set
  • +
  • clone, compare, and unify
  • +
  • create and access corresponding concept
  • +
  • structural operation in compound
  • +
+

+ +

+

+
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/package-tree.html b/nars-dist/javadoc/nars/language/package-tree.html new file mode 100644 index 00000000..a46eecf6 --- /dev/null +++ b/nars-dist/javadoc/nars/language/package-tree.html @@ -0,0 +1,189 @@ + + + + + + + +nars.language Class Hierarchy (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package nars.language +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+ +

+Interface Hierarchy +

+ +

+Enum Hierarchy +

+
    +
  • java.lang.Object
      +
    • java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable) + +
    +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/language/package-use.html b/nars-dist/javadoc/nars/language/package-use.html new file mode 100644 index 00000000..a772ce88 --- /dev/null +++ b/nars-dist/javadoc/nars/language/package-use.html @@ -0,0 +1,420 @@ + + + + + + + +Uses of Package nars.language (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Package
nars.language

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Packages that use nars.language
nars.entityData entities that are independently stored 
nars.inferenceThe inference rules and control functions 
nars.ioInput/output management 
nars.languageTerm hierarchy in Narsese 
nars.mainTop-level classes of the system 
nars.operationBuilt-in operators 
+  +

+ + + + + + + + +
+Classes in nars.language used by nars.entity
Term + +
+          Term is the basic component of Narsese, and the object of processing in NARS.
+  +

+ + + + + + + + + + + + + + + + + + + + + + + +
+Classes in nars.language used by nars.inference
CompoundTerm + +
+          A CompoundTerm is a Term with internal (syntactic) structure
Conjunction + +
+          Conjunction of statements
Implication + +
+          A Statement about an Inheritance relation.
Inheritance + +
+          A Statement about an Inheritance relation.
Statement + +
+          A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
Term + +
+          Term is the basic component of Narsese, and the object of processing in NARS.
+  +

+ + + + + + + + + + + +
+Classes in nars.language used by nars.io
Statement + +
+          A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
Term + +
+          Term is the basic component of Narsese, and the object of processing in NARS.
+  +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Classes in nars.language used by nars.language
CompoundTerm + +
+          A CompoundTerm is a Term with internal (syntactic) structure
Conjunction + +
+          Conjunction of statements
Equivalence + +
+          A Statement about an Equivalence relation.
EquivalenceAfter + +
+          Temporal Implication relation, predicate after subject.
EquivalenceWhen + +
+          Temporal Equivalence relation, concurrent.
ImageExt + +
+          An extension image.
ImageInt + +
+          An intension image.
Implication + +
+          A Statement about an Inheritance relation.
ImplicationAfter + +
+          Temporal Implication relation, predicate after subject.
ImplicationBefore + +
+          Temporal Implication relation, predicate before subject.
ImplicationWhen + +
+          Temporal Implication relation, concurrent.
Inheritance + +
+          A Statement about an Inheritance relation.
Product + +
+          A Product is a sequence of terms.
Similarity + +
+          A Statement about a Similarity relation.
Statement + +
+          A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
Temporal + +
+          An interface for compound terms with temporal information in it
Term + +
+          Term is the basic component of Narsese, and the object of processing in NARS.
Variable + +
+          A variable term, which does not correspond to a concept
Variable.VarType + +
+          Four variable types plus a wild card
+  +

+ + + + + + + + +
+Classes in nars.language used by nars.main
Term + +
+          Term is the basic component of Narsese, and the object of processing in NARS.
+  +

+ + + + + + + + + + + +
+Classes in nars.language used by nars.operation
Statement + +
+          A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
Term + +
+          Term is the basic component of Narsese, and the object of processing in NARS.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/main/Center.html b/nars-dist/javadoc/nars/main/Center.html new file mode 100644 index 00000000..a8e9c4ba --- /dev/null +++ b/nars-dist/javadoc/nars/main/Center.html @@ -0,0 +1,442 @@ + + + + + + + +Center (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.main +
+Class Center

+
+java.lang.Object
+  extended by nars.main.Center
+
+
+
+
public class Center
extends java.lang.Object
+ + +

+The control center of the system. +

+ Create static main window and input channel, reset memory, and manage system clock. +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+private static longclock + +
+          System clock, relatively defined to guaranttee the repeatability of behaviors
+static ExperienceIOexperienceIO + +
+          The unique input channel
+static MainWindowmainWindow + +
+          The unique main window
+private static booleanrunning + +
+          Flag for running continously
+private static longstoper + +
+          Timer for fixed distance walking
+  + + + + + + + + + + +
+Constructor Summary
Center() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+static voidreset() + +
+          Reset the system with an empty memory and reset clock.
+static voidsetStoper(long i) + +
+          Walk a fixed number of steps or continously.
+static voidstart() + +
+          Start the initial windows and memory.
+static voidtick() + +
+          A clock tick.
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+mainWindow

+
+public static MainWindow mainWindow
+
+
The unique main window +

+

+
+
+
+ +

+experienceIO

+
+public static ExperienceIO experienceIO
+
+
The unique input channel +

+

+
+
+
+ +

+clock

+
+private static long clock
+
+
System clock, relatively defined to guaranttee the repeatability of behaviors +

+

+
+
+
+ +

+stoper

+
+private static long stoper
+
+
Timer for fixed distance walking +

+

+
+
+
+ +

+running

+
+private static boolean running
+
+
Flag for running continously +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Center

+
+public Center()
+
+
+ + + + + + + + +
+Method Detail
+ +

+start

+
+public static void start()
+
+
Start the initial windows and memory. Called from NARS only. +

+

+
+
+
+
+ +

+reset

+
+public static void reset()
+
+
Reset the system with an empty memory and reset clock. Called locally and from MainWindow. +

+

+
+
+
+
+ +

+setStoper

+
+public static void setStoper(long i)
+
+
Walk a fixed number of steps or continously. Called from MainWindow only. +

+

+
Parameters:
i - The number of steps of inference, or infinite if negative
+
+
+
+ +

+tick

+
+public static void tick()
+
+
A clock tick. Run one working cycle or read input. Called from NARS only. +

+

+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/main/Memory.html b/nars-dist/javadoc/nars/main/Memory.html new file mode 100644 index 00000000..08559a14 --- /dev/null +++ b/nars-dist/javadoc/nars/main/Memory.html @@ -0,0 +1,1053 @@ + + + + + + + +Memory (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.main +
+Class Memory

+
+java.lang.Object
+  extended by nars.main.Memory
+
+
+
+
public class Memory
extends java.lang.Object
+ + +

+The memory of the system. +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+private static ConceptBagconcepts + +
+          Concept bag.
+static JudgmentcurrentBelief + +
+          Shortcut to the selected belief
+static TermLinkcurrentBeliefLink + +
+          Shortcut to the selected TermLink
+static StampcurrentStamp + +
+          Shortcut to the derived Stamp
+static TaskcurrentTask + +
+          Shortcut to the selected Task
+static TaskLinkcurrentTaskLink + +
+          Shortcut to the selected TaskLink
+static TemporalRules.RelationcurrentTense + +
+          Shortcut to the derived tense
+static TermcurrentTerm + +
+          Shortcut to the selected Term
+private static java.util.ArrayList<Task>newTasks + +
+          List of inference newTasks, to be processed in the next working cycle
+private static TaskBuffernovelTaskBuffer + +
+          New tasks with novel composed terms, for delayed and selective processing
+private static java.util.HashMap<java.lang.String,Operator>operators + +
+          Operators (built-in terms) table.
+static java.util.ArrayList<Task>recentEvents + +
+          List of recent events, for temporal learning
+  + + + + + + + + + + +
+Constructor Summary
Memory() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+static voidactivateConcept(Concept c, + BudgetValue b) + +
+          Adjust the activation level of a Concept
+static voidactivatedTask(BudgetValue budget, + Sentence sentence, + boolean isInput) + +
+          Activated task coming from MatchingRules.trySolution
+static voidconceptsStartPlay(java.lang.String s) + +
+          Display active concepts, called from MainWindow.
+private static voidcontinuedProcess(Task task, + Term content) + +
+          Link to a new task from all relevant concepts for continued processing in + the near future for unspecified time.
+static voidconvertedJudgment(TruthValue truth, + BudgetValue budget) + +
+          Convert jusgment into different relation
+static voidcycle() + +
+          An atomic working cycle of the system: process new Tasks, then fire a concept
+private static voidderivedTask(Task task) + +
+          Derived task comes from the inference rules.
+static voiddoublePremiseTask(BudgetValue budget, + Term content, + TruthValue truth) + +
+          Shared final operations by all double-premise rules, called from the rules except StructuralRules
+static voidexecutedTask(Task task) + +
+          Reporting executed task, and remember the event
+static ConceptgetConcept(Term term) + +
+          Get the Concept associated to a Term, or create it.
+private static voidimmediateProcess(Task task) + +
+          Imediate processing of a new task, in constant time + Local processing, in one concept only
+static voidinit() + +
+          Initialize a new memory by creating all members.
+static voidinputTask(Task task) + +
+          Input task processing.
+static ConceptnameToConcept(java.lang.String name) + +
+          Get an existing Concept for a given name
+static TermnameToListedTerm(java.lang.String name) + +
+          Get a Term for a given name of a Concept or Operator
+static OperatornameToOperator(java.lang.String name) + +
+          Check if a string is an operator name
+static voidnewTasksStartPlay(java.lang.String s) + +
+          Display newd tasks, called from MainWindow.
+static java.lang.StringnewTasksToString() + +
+          Prepare buffered tasks for display, called from TaskBuffer.
+static booleannoResult() + +
+          Check if there is already any derived Task in the current cycle
+private static voidprocessConcept() + +
+          Select a concept to fire.
+private static voidprocessTask() + +
+          Process the newTasks accumulated in the previous cycle, accept input ones + and those that corresponding to existing concepts, plus one from the buffer.
+static voidreport(Sentence sentence, + boolean input) + +
+          Display input/output sentence in the MainWindow.
+static voidsinglePremiseTask(BudgetValue budget, + Term content, + TruthValue truth) + +
+          Shared final operations by all single-premise rules, called in StructuralRules
+static ConcepttermToConcept(Term term) + +
+          Get an existing Concept for a given Term.
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+concepts

+
+private static ConceptBag concepts
+
+
Concept bag. Containing all Concepts of the system +

+

+
+
+
+ +

+operators

+
+private static java.util.HashMap<java.lang.String,Operator> operators
+
+
Operators (built-in terms) table. Accessed by name +

+

+
+
+
+ +

+newTasks

+
+private static java.util.ArrayList<Task> newTasks
+
+
List of inference newTasks, to be processed in the next working cycle +

+

+
+
+
+ +

+novelTaskBuffer

+
+private static TaskBuffer novelTaskBuffer
+
+
New tasks with novel composed terms, for delayed and selective processing +

+

+
+
+
+ +

+recentEvents

+
+public static java.util.ArrayList<Task> recentEvents
+
+
List of recent events, for temporal learning +

+

+
+
+
+ +

+currentTerm

+
+public static Term currentTerm
+
+
Shortcut to the selected Term +

+

+
+
+
+ +

+currentTaskLink

+
+public static TaskLink currentTaskLink
+
+
Shortcut to the selected TaskLink +

+

+
+
+
+ +

+currentTask

+
+public static Task currentTask
+
+
Shortcut to the selected Task +

+

+
+
+
+ +

+currentBeliefLink

+
+public static TermLink currentBeliefLink
+
+
Shortcut to the selected TermLink +

+

+
+
+
+ +

+currentBelief

+
+public static Judgment currentBelief
+
+
Shortcut to the selected belief +

+

+
+
+
+ +

+currentStamp

+
+public static Stamp currentStamp
+
+
Shortcut to the derived Stamp +

+

+
+
+
+ +

+currentTense

+
+public static TemporalRules.Relation currentTense
+
+
Shortcut to the derived tense +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Memory

+
+public Memory()
+
+
+ + + + + + + + +
+Method Detail
+ +

+init

+
+public static void init()
+
+
Initialize a new memory by creating all members. +

+ Called in Center.reset only +

+

+
+
+
+
+ +

+nameToListedTerm

+
+public static Term nameToListedTerm(java.lang.String name)
+
+
Get a Term for a given name of a Concept or Operator +

+ called in StringParser and the make methods of compound terms. +

+

+
Parameters:
name - the name of a concept or operator +
Returns:
a Term or null (if no Concept/Operator has this name)
+
+
+
+ +

+nameToOperator

+
+public static Operator nameToOperator(java.lang.String name)
+
+
Check if a string is an operator name +

+ called in StringParser only. +

+

+
Parameters:
name - the name of a possible operator +
Returns:
the corresponding operator or null
+
+
+
+ +

+nameToConcept

+
+public static Concept nameToConcept(java.lang.String name)
+
+
Get an existing Concept for a given name +

+ called from Term and ConceptWindow. +

+

+
Parameters:
name - the name of a concept +
Returns:
a Concept or null
+
+
+
+ +

+termToConcept

+
+public static Concept termToConcept(Term term)
+
+
Get an existing Concept for a given Term. +

+

+
Parameters:
term - The Term naming a concept +
Returns:
a Concept or null
+
+
+
+ +

+getConcept

+
+public static Concept getConcept(Term term)
+
+
Get the Concept associated to a Term, or create it. +

+

+
Parameters:
term - indicating the concept +
Returns:
an existing Concept, or a new one
+
+
+
+ +

+activateConcept

+
+public static void activateConcept(Concept c,
+                                   BudgetValue b)
+
+
Adjust the activation level of a Concept +

+ called in Concept.insertTaskLink only +

+

+
Parameters:
c - the concept to be adusted
b - the new BudgetValue
+
+
+
+ +

+noResult

+
+public static boolean noResult()
+
+
Check if there is already any derived Task in the current cycle +

+ called in Concept.fire only +

+

+ +
Returns:
Whether in the current cycle there is already derived Task
+
+
+
+ +

+inputTask

+
+public static void inputTask(Task task)
+
+
Input task processing. +

+

+
Parameters:
task - the input task
+
+
+
+ +

+derivedTask

+
+private static void derivedTask(Task task)
+
+
Derived task comes from the inference rules. +

+

+
Parameters:
task - the derived task
+
+
+
+ +

+executedTask

+
+public static void executedTask(Task task)
+
+
Reporting executed task, and remember the event +

+ called from Operator.call only +

+

+
Parameters:
task - the executed task
+
+
+
+ +

+activatedTask

+
+public static void activatedTask(BudgetValue budget,
+                                 Sentence sentence,
+                                 boolean isInput)
+
+
Activated task coming from MatchingRules.trySolution +

+

+
Parameters:
budget - The budget value of the new Task
sentence - The content of the new Task
isInput - Whether the question is input
+
+
+
+ +

+doublePremiseTask

+
+public static void doublePremiseTask(BudgetValue budget,
+                                     Term content,
+                                     TruthValue truth)
+
+
Shared final operations by all double-premise rules, called from the rules except StructuralRules +

+

+
Parameters:
budget - The budget value of the new task
content - The content of the new task
truth - The truth value of the new task
+
+
+
+ +

+singlePremiseTask

+
+public static void singlePremiseTask(BudgetValue budget,
+                                     Term content,
+                                     TruthValue truth)
+
+
Shared final operations by all single-premise rules, called in StructuralRules +

+

+
Parameters:
budget - The budget value of the new task
content - The content of the new task
truth - The truth value of the new task
+
+
+
+ +

+convertedJudgment

+
+public static void convertedJudgment(TruthValue truth,
+                                     BudgetValue budget)
+
+
Convert jusgment into different relation +

+ called in MatchingRules +

+

+
Parameters:
budget - The budget value of the new task
truth - The truth value of the new task
+
+
+
+ +

+cycle

+
+public static void cycle()
+
+
An atomic working cycle of the system: process new Tasks, then fire a concept +

+ Called from Center.tick only +

+

+
+
+
+
+ +

+processTask

+
+private static void processTask()
+
+
Process the newTasks accumulated in the previous cycle, accept input ones + and those that corresponding to existing concepts, plus one from the buffer. +

+

+
+
+
+
+ +

+processConcept

+
+private static void processConcept()
+
+
Select a concept to fire. +

+

+
+
+
+
+ +

+immediateProcess

+
+private static void immediateProcess(Task task)
+
+
Imediate processing of a new task, in constant time + Local processing, in one concept only +

+

+
Parameters:
task - the task to be accepted
+
+
+
+ +

+continuedProcess

+
+private static void continuedProcess(Task task,
+                                     Term content)
+
+
Link to a new task from all relevant concepts for continued processing in + the near future for unspecified time. +

+ The only method that calls the TaskLink constructor. +

+

+
Parameters:
task - The task to be linked
content - The content of the task
+
+
+
+ +

+conceptsStartPlay

+
+public static void conceptsStartPlay(java.lang.String s)
+
+
Display active concepts, called from MainWindow. +

+

+
Parameters:
s - the window title
+
+
+
+ +

+newTasksStartPlay

+
+public static void newTasksStartPlay(java.lang.String s)
+
+
Display newd tasks, called from MainWindow. +

+

+
Parameters:
s - the window title
+
+
+
+ +

+newTasksToString

+
+public static java.lang.String newTasksToString()
+
+
Prepare buffered tasks for display, called from TaskBuffer. +

+

+ +
Returns:
the tasks as a String
+
+
+
+ +

+report

+
+public static void report(Sentence sentence,
+                          boolean input)
+
+
Display input/output sentence in the MainWindow. +

+

+
Parameters:
sentence - the sentence to be displayed
input - whether the task is input
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/main/NARS.html b/nars-dist/javadoc/nars/main/NARS.html new file mode 100644 index 00000000..4f33d449 --- /dev/null +++ b/nars-dist/javadoc/nars/main/NARS.html @@ -0,0 +1,624 @@ + + + + + + + +NARS (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.main +
+Class NARS

+
+java.lang.Object
+  extended by java.awt.Component
+      extended by java.awt.Container
+          extended by java.awt.Panel
+              extended by java.applet.Applet
+                  extended by nars.main.NARS
+
+
+
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.lang.Runnable, javax.accessibility.Accessible
+
+
+
+
public class NARS
extends java.applet.Applet
implements java.lang.Runnable
+ + +

+The main class of the project. +

+ Define an application with full funcationality and an applet with partial functionality. +

+ Manage the internal working thread. Communicate with Center only. +

+ +

+

+
See Also:
Serialized Form
+
+ +

+ + + + + + + +
+Nested Class Summary
+ + + + + + + +
Nested classes/interfaces inherited from class java.applet.Applet
java.applet.Applet.AccessibleApplet
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Panel
java.awt.Panel.AccessibleAWTPanel
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
+  + + + + + + + + +
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+static java.lang.StringINFO + +
+          The information about the version and date of the project.
+(package private)  java.lang.ThreadnarsThread + +
+          The internal working thread of the system.
+private static booleanstandAlone + +
+          Flag to distinguish the two running modes of the project.
+static java.lang.StringWEBSITE + +
+          The project websites.
+ + + + + + + +
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
+ + + + + + + +
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
+  + + + + + + + + + + +
+Constructor Summary
NARS() + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ java.lang.StringgetAppletInfo() + +
+          Provide system information for the applet.
+ voidinit() + +
+          Initialize the system at the control center.
+static booleanisStandAlone() + +
+          Whether the project running as an application.
+static voidmain(java.lang.String[] args) + +
+          The entry point of the standalone application.
+ voidrun() + +
+          Repeatedly execute NARS working cycle.
+ voidstart() + +
+          Start the thread if necessary, called when the page containing the applet first appears on the screen.
+ voidstop() + +
+          Called when the page containing the applet is no longer on the screen.
+ + + + + + + +
Methods inherited from class java.applet.Applet
destroy, getAccessibleContext, getAppletContext, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, getParameterInfo, isActive, newAudioClip, play, play, resize, resize, setStub, showStatus
+ + + + + + + +
Methods inherited from class java.awt.Panel
addNotify
+ + + + + + + +
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
+ + + + + + + +
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusUpCycle
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+INFO

+
+public static final java.lang.String INFO
+
+
The information about the version and date of the project. +

+

+
See Also:
Constant Field Values
+
+
+ +

+WEBSITE

+
+public static final java.lang.String WEBSITE
+
+
The project websites. +

+

+
See Also:
Constant Field Values
+
+
+ +

+standAlone

+
+private static boolean standAlone
+
+
Flag to distinguish the two running modes of the project. +

+

+
+
+
+ +

+narsThread

+
+java.lang.Thread narsThread
+
+
The internal working thread of the system. +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+NARS

+
+public NARS()
+
+
+ + + + + + + + +
+Method Detail
+ +

+main

+
+public static void main(java.lang.String[] args)
+
+
The entry point of the standalone application. +

+ Create an instance of the class, then run the init and start methods. +

+

+
+
+
+
Parameters:
args - no arguments are used
+
+
+
+ +

+init

+
+public void init()
+
+
Initialize the system at the control center. +

+

+
Overrides:
init in class java.applet.Applet
+
+
+
+
+
+
+ +

+start

+
+public void start()
+
+
Start the thread if necessary, called when the page containing the applet first appears on the screen. +

+

+
Overrides:
start in class java.applet.Applet
+
+
+
+
+
+
+ +

+stop

+
+public void stop()
+
+
Called when the page containing the applet is no longer on the screen. +

+

+
Overrides:
stop in class java.applet.Applet
+
+
+
+
+
+
+ +

+run

+
+public void run()
+
+
Repeatedly execute NARS working cycle. This method is called when the Runnable's thread is started. +

+

+
Specified by:
run in interface java.lang.Runnable
+
+
+
+
+
+
+ +

+isStandAlone

+
+public static boolean isStandAlone()
+
+
Whether the project running as an application. +

+

+
+
+
+ +
Returns:
true for application; false for applet.
+
+
+
+ +

+getAppletInfo

+
+public java.lang.String getAppletInfo()
+
+
Provide system information for the applet. +

+

+
Overrides:
getAppletInfo in class java.applet.Applet
+
+
+ +
Returns:
The string containing the information about the applet.
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/main/Parameters.html b/nars-dist/javadoc/nars/main/Parameters.html new file mode 100644 index 00000000..7a601b63 --- /dev/null +++ b/nars-dist/javadoc/nars/main/Parameters.html @@ -0,0 +1,847 @@ + + + + + + + +Parameters (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.main +
+Class Parameters

+
+java.lang.Object
+  extended by nars.main.Parameters
+
+
+
+
public class Parameters
extends java.lang.Object
+ + +

+Collected system parameters. To be modified before compiling. +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+static intBAG_LEVEL + +
+          Level granularity in Bag, two digits
+static intBAG_THRESHOLD + +
+          Level separation in Bag, one digit, for display (run-time adjustable) and management (fixed)
+static floatBUDGET_THRESHOLD + +
+          The budget threthold for task to be accepted.
+static intCONCEPT_BAG_SIZE + +
+          Size of ConceptBag
+static intCONCEPT_FORGETTING_CYCLE + +
+          Concept decay rate in ConceptBag, in [1, 99].
+static floatDECISION_THRESHOLD + +
+          The desireability threthold for an operation to be executed.
+static floatDEFAULT_GOAL_DURABILITY + +
+          Default durability of input goal
+static floatDEFAULT_GOAL_PRIORITY + +
+          Default priority of input goal
+static floatDEFAULT_JUDGMENT_CONFIDENCE + +
+          Default confidence of input judgment.
+static floatDEFAULT_JUDGMENT_DURABILITY + +
+          Default durability of input judgment
+static floatDEFAULT_JUDGMENT_PRIORITY + +
+          Default priority of input judgment
+static floatDEFAULT_QUESTION_DURABILITY + +
+          Default durability of input question
+static floatDEFAULT_QUESTION_PRIORITY + +
+          Default priority of input question
+static floatLOAD_FACTOR + +
+          Hashtable load factor in Bag
+static intMAX_MATCHED_TERM_LINK + +
+          Maximum TermLinks checked for novelity for each TaskLink in TermLinkBag
+static intMAX_REASONED_TERM_LINK + +
+          Maximum TermLinks used in reasoning for each Task in Concept
+static intMAXMUM_BELIEF_LENGTH + +
+          Maximum number of beliefs kept in a Concept
+static intMAXMUM_EVENTS_LENGTH + +
+          Range of temporal induction in input events.
+static intMAXMUM_GOALS_LENGTH + +
+          Maximum number of goals kept in a Concept
+static intMAXMUM_STAMP_LENGTH + +
+          Maximum length of Stamp, a power of 2
+static intNEAR_FUTURE + +
+          Horizon, the amount of evidence coming in the near future.
+static intNEW_TASK_FORGETTING_CYCLE + +
+          Task decay rate in TaskBuffer, in [1, 99].
+static floatPRIORITY_THRESHOLD + +
+          The priority threthold for operation to be executed.
+static intSILENT_LEVEL + +
+          Silent threshold for task reporting, in [0, 100].
+static intTASK_BUFFER_SIZE + +
+          Size of TaskBuffer
+static intTASK_LINK_BAG_SIZE + +
+          Size of TaskLinkBag
+static intTASK_LINK_FORGETTING_CYCLE + +
+          TaskLink decay rate in TaskLinkBag, in [1, 99].
+static intTERM_LINK_BAG_SIZE + +
+          Size of TermLinkBag
+static intTERM_LINK_FORGETTING_CYCLE + +
+          TermLink decay rate in TermLinkBag, in [1, 99].
+static intTERM_LINK_RECORD_LENGTH + +
+          Remember recently used TermLink on a Task
+  + + + + + + + + + + +
+Constructor Summary
Parameters() + +
+           
+  + + + + + + + +
+Method Summary
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+CONCEPT_FORGETTING_CYCLE

+
+public static final int CONCEPT_FORGETTING_CYCLE
+
+
Concept decay rate in ConceptBag, in [1, 99]. +

+

+
See Also:
Constant Field Values
+
+
+ +

+TASK_LINK_FORGETTING_CYCLE

+
+public static final int TASK_LINK_FORGETTING_CYCLE
+
+
TaskLink decay rate in TaskLinkBag, in [1, 99]. +

+

+
See Also:
Constant Field Values
+
+
+ +

+TERM_LINK_FORGETTING_CYCLE

+
+public static final int TERM_LINK_FORGETTING_CYCLE
+
+
TermLink decay rate in TermLinkBag, in [1, 99]. +

+

+
See Also:
Constant Field Values
+
+
+ +

+SILENT_LEVEL

+
+public static final int SILENT_LEVEL
+
+
Silent threshold for task reporting, in [0, 100]. +

+

+
See Also:
Constant Field Values
+
+
+ +

+NEW_TASK_FORGETTING_CYCLE

+
+public static final int NEW_TASK_FORGETTING_CYCLE
+
+
Task decay rate in TaskBuffer, in [1, 99]. +

+

+
See Also:
Constant Field Values
+
+
+ +

+MAX_MATCHED_TERM_LINK

+
+public static final int MAX_MATCHED_TERM_LINK
+
+
Maximum TermLinks checked for novelity for each TaskLink in TermLinkBag +

+

+
See Also:
Constant Field Values
+
+
+ +

+MAX_REASONED_TERM_LINK

+
+public static final int MAX_REASONED_TERM_LINK
+
+
Maximum TermLinks used in reasoning for each Task in Concept +

+

+
See Also:
Constant Field Values
+
+
+ +

+NEAR_FUTURE

+
+public static final int NEAR_FUTURE
+
+
Horizon, the amount of evidence coming in the near future. +

+

+
See Also:
Constant Field Values
+
+
+ +

+DECISION_THRESHOLD

+
+public static final float DECISION_THRESHOLD
+
+
The desireability threthold for an operation to be executed. +

+

+
See Also:
Constant Field Values
+
+
+ +

+MAXMUM_EVENTS_LENGTH

+
+public static final int MAXMUM_EVENTS_LENGTH
+
+
Range of temporal induction in input events. +

+

+
See Also:
Constant Field Values
+
+
+ +

+BUDGET_THRESHOLD

+
+public static final float BUDGET_THRESHOLD
+
+
The budget threthold for task to be accepted. +

+

+
See Also:
Constant Field Values
+
+
+ +

+PRIORITY_THRESHOLD

+
+public static final float PRIORITY_THRESHOLD
+
+
The priority threthold for operation to be executed. +

+

+
See Also:
Constant Field Values
+
+
+ +

+DEFAULT_JUDGMENT_CONFIDENCE

+
+public static final float DEFAULT_JUDGMENT_CONFIDENCE
+
+
Default confidence of input judgment. +

+

+
See Also:
Constant Field Values
+
+
+ +

+DEFAULT_JUDGMENT_PRIORITY

+
+public static final float DEFAULT_JUDGMENT_PRIORITY
+
+
Default priority of input judgment +

+

+
See Also:
Constant Field Values
+
+
+ +

+DEFAULT_JUDGMENT_DURABILITY

+
+public static final float DEFAULT_JUDGMENT_DURABILITY
+
+
Default durability of input judgment +

+

+
See Also:
Constant Field Values
+
+
+ +

+DEFAULT_GOAL_PRIORITY

+
+public static final float DEFAULT_GOAL_PRIORITY
+
+
Default priority of input goal +

+

+
See Also:
Constant Field Values
+
+
+ +

+DEFAULT_GOAL_DURABILITY

+
+public static final float DEFAULT_GOAL_DURABILITY
+
+
Default durability of input goal +

+

+
See Also:
Constant Field Values
+
+
+ +

+DEFAULT_QUESTION_PRIORITY

+
+public static final float DEFAULT_QUESTION_PRIORITY
+
+
Default priority of input question +

+

+
See Also:
Constant Field Values
+
+
+ +

+DEFAULT_QUESTION_DURABILITY

+
+public static final float DEFAULT_QUESTION_DURABILITY
+
+
Default durability of input question +

+

+
See Also:
Constant Field Values
+
+
+ +

+BAG_LEVEL

+
+public static final int BAG_LEVEL
+
+
Level granularity in Bag, two digits +

+

+
See Also:
Constant Field Values
+
+
+ +

+BAG_THRESHOLD

+
+public static final int BAG_THRESHOLD
+
+
Level separation in Bag, one digit, for display (run-time adjustable) and management (fixed) +

+

+
See Also:
Constant Field Values
+
+
+ +

+LOAD_FACTOR

+
+public static final float LOAD_FACTOR
+
+
Hashtable load factor in Bag +

+

+
See Also:
Constant Field Values
+
+
+ +

+CONCEPT_BAG_SIZE

+
+public static final int CONCEPT_BAG_SIZE
+
+
Size of ConceptBag +

+

+
See Also:
Constant Field Values
+
+
+ +

+TASK_LINK_BAG_SIZE

+
+public static final int TASK_LINK_BAG_SIZE
+
+
Size of TaskLinkBag +

+

+
See Also:
Constant Field Values
+
+
+ +

+TERM_LINK_BAG_SIZE

+
+public static final int TERM_LINK_BAG_SIZE
+
+
Size of TermLinkBag +

+

+
See Also:
Constant Field Values
+
+
+ +

+TASK_BUFFER_SIZE

+
+public static final int TASK_BUFFER_SIZE
+
+
Size of TaskBuffer +

+

+
See Also:
Constant Field Values
+
+
+ +

+MAXMUM_STAMP_LENGTH

+
+public static final int MAXMUM_STAMP_LENGTH
+
+
Maximum length of Stamp, a power of 2 +

+

+
See Also:
Constant Field Values
+
+
+ +

+TERM_LINK_RECORD_LENGTH

+
+public static final int TERM_LINK_RECORD_LENGTH
+
+
Remember recently used TermLink on a Task +

+

+
See Also:
Constant Field Values
+
+
+ +

+MAXMUM_BELIEF_LENGTH

+
+public static final int MAXMUM_BELIEF_LENGTH
+
+
Maximum number of beliefs kept in a Concept +

+

+
See Also:
Constant Field Values
+
+
+ +

+MAXMUM_GOALS_LENGTH

+
+public static final int MAXMUM_GOALS_LENGTH
+
+
Maximum number of goals kept in a Concept +

+

+
See Also:
Constant Field Values
+
+ + + + + + + + +
+Constructor Detail
+ +

+Parameters

+
+public Parameters()
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/main/class-use/Center.html b/nars-dist/javadoc/nars/main/class-use/Center.html new file mode 100644 index 00000000..1ba67346 --- /dev/null +++ b/nars-dist/javadoc/nars/main/class-use/Center.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.main.Center (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.main.Center

+
+No usage of nars.main.Center +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/main/class-use/Memory.html b/nars-dist/javadoc/nars/main/class-use/Memory.html new file mode 100644 index 00000000..701b3610 --- /dev/null +++ b/nars-dist/javadoc/nars/main/class-use/Memory.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.main.Memory (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.main.Memory

+
+No usage of nars.main.Memory +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/main/class-use/NARS.html b/nars-dist/javadoc/nars/main/class-use/NARS.html new file mode 100644 index 00000000..ea42fbf8 --- /dev/null +++ b/nars-dist/javadoc/nars/main/class-use/NARS.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.main.NARS (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.main.NARS

+
+No usage of nars.main.NARS +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/main/class-use/Parameters.html b/nars-dist/javadoc/nars/main/class-use/Parameters.html new file mode 100644 index 00000000..526350b4 --- /dev/null +++ b/nars-dist/javadoc/nars/main/class-use/Parameters.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.main.Parameters (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.main.Parameters

+
+No usage of nars.main.Parameters +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/main/package-frame.html b/nars-dist/javadoc/nars/main/package-frame.html new file mode 100644 index 00000000..c2cfc6ed --- /dev/null +++ b/nars-dist/javadoc/nars/main/package-frame.html @@ -0,0 +1,39 @@ + + + + + + + +nars.main (NARS Document) + + + + + + + + + + + +nars.main + + + + +
+Classes  + +
+Center +
+Memory +
+NARS +
+Parameters
+ + + + diff --git a/nars-dist/javadoc/nars/main/package-summary.html b/nars-dist/javadoc/nars/main/package-summary.html new file mode 100644 index 00000000..55ece2f8 --- /dev/null +++ b/nars-dist/javadoc/nars/main/package-summary.html @@ -0,0 +1,203 @@ + + + + + + + +nars.main (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package nars.main +

+Top-level classes of the system +

+See: +
+          Description +

+ + + + + + + + + + + + + + + + + + + + + +
+Class Summary
CenterThe control center of the system.
MemoryThe memory of the system.
NARSThe main class of the project.
ParametersCollected system parameters.
+  + +

+

+Package nars.main Description +

+ +

+Top-level classes of the system + +

Package Specification

+ +This package contains the top classes of the system. +

+NARS: defines the application and applet. +

+Parameters: collects all system parameters, which can be edited before compiling. +

+Center: controls the running of the whole system. +

+Memory: maintains the work space of the system, including static objects that +can be directly accessed from anywhere of the system: +

    +
  • a bag of concept,
  • +
  • a look-up table of all built-in operators,
  • +
  • buffers for new tasks.
  • +
+

+ +

+

+
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/main/package-tree.html b/nars-dist/javadoc/nars/main/package-tree.html new file mode 100644 index 00000000..0f45d73d --- /dev/null +++ b/nars-dist/javadoc/nars/main/package-tree.html @@ -0,0 +1,165 @@ + + + + + + + +nars.main Class Hierarchy (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package nars.main +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+
    +
  • java.lang.Object
      +
    • nars.main.Center
    • java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable) +
        +
      • java.awt.Container
          +
        • java.awt.Panel (implements javax.accessibility.Accessible) +
            +
          • java.applet.Applet
              +
            • nars.main.NARS (implements java.lang.Runnable) +
            +
          +
        +
      +
    • nars.main.Memory
    • nars.main.Parameters
    +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/main/package-use.html b/nars-dist/javadoc/nars/main/package-use.html new file mode 100644 index 00000000..db9bec67 --- /dev/null +++ b/nars-dist/javadoc/nars/main/package-use.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Package nars.main (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Package
nars.main

+
+No usage of nars.main +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/Break.html b/nars-dist/javadoc/nars/operation/Break.html new file mode 100644 index 00000000..d8634ace --- /dev/null +++ b/nars-dist/javadoc/nars/operation/Break.html @@ -0,0 +1,305 @@ + + + + + + + +Break (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.operation +
+Class Break

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.operation.Operator
+          extended by nars.operation.Break
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class Break
extends Operator
+ + +

+A class used in testing only. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + +
+Constructor Summary
Break(java.lang.String name) + +
+           
+  + + + + + + + + + + + +
+Method Summary
+ java.util.ArrayList<Task>execute(Task task) + +
+          Required method for every operation, specifying the operation
+ + + + + + + +
Methods inherited from class nars.operation.Operator
call, setOperators
+ + + + + + + +
Methods inherited from class nars.language.Term
clone, compareTo, equals, getComplexity, getConstantName, getName, getTemporalOrder, hashCode, isConstant, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Break

+
+public Break(java.lang.String name)
+
+
+ + + + + + + + +
+Method Detail
+ +

+execute

+
+public java.util.ArrayList<Task> execute(Task task)
+
+
Description copied from class: Operator
+
Required method for every operation, specifying the operation +

+

+
Specified by:
execute in class Operator
+
+
+
Parameters:
task - The task with the arguments to be passed to the operator +
Returns:
The direct collectable results and feedback of the execution
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/GoTo.html b/nars-dist/javadoc/nars/operation/GoTo.html new file mode 100644 index 00000000..aa8dddb2 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/GoTo.html @@ -0,0 +1,305 @@ + + + + + + + +GoTo (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.operation +
+Class GoTo

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.operation.Operator
+          extended by nars.operation.GoTo
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class GoTo
extends Operator
+ + +

+A class used in testing only. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + +
+Constructor Summary
GoTo(java.lang.String name) + +
+           
+  + + + + + + + + + + + +
+Method Summary
+ java.util.ArrayList<Task>execute(Task task) + +
+          Required method for every operation, specifying the operation
+ + + + + + + +
Methods inherited from class nars.operation.Operator
call, setOperators
+ + + + + + + +
Methods inherited from class nars.language.Term
clone, compareTo, equals, getComplexity, getConstantName, getName, getTemporalOrder, hashCode, isConstant, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+GoTo

+
+public GoTo(java.lang.String name)
+
+
+ + + + + + + + +
+Method Detail
+ +

+execute

+
+public java.util.ArrayList<Task> execute(Task task)
+
+
Description copied from class: Operator
+
Required method for every operation, specifying the operation +

+

+
Specified by:
execute in class Operator
+
+
+
Parameters:
task - The task with the arguments to be passed to the operator +
Returns:
The direct collectable results and feedback of the execution
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/Open.html b/nars-dist/javadoc/nars/operation/Open.html new file mode 100644 index 00000000..4ddffe75 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/Open.html @@ -0,0 +1,305 @@ + + + + + + + +Open (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.operation +
+Class Open

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.operation.Operator
+          extended by nars.operation.Open
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class Open
extends Operator
+ + +

+A class used in testing only. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + +
+Constructor Summary
Open(java.lang.String name) + +
+           
+  + + + + + + + + + + + +
+Method Summary
+ java.util.ArrayList<Task>execute(Task task) + +
+          Required method for every operation, specifying the operation
+ + + + + + + +
Methods inherited from class nars.operation.Operator
call, setOperators
+ + + + + + + +
Methods inherited from class nars.language.Term
clone, compareTo, equals, getComplexity, getConstantName, getName, getTemporalOrder, hashCode, isConstant, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Open

+
+public Open(java.lang.String name)
+
+
+ + + + + + + + +
+Method Detail
+ +

+execute

+
+public java.util.ArrayList<Task> execute(Task task)
+
+
Description copied from class: Operator
+
Required method for every operation, specifying the operation +

+

+
Specified by:
execute in class Operator
+
+
+
Parameters:
task - The task with the arguments to be passed to the operator +
Returns:
The direct collectable results and feedback of the execution
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/Operator.html b/nars-dist/javadoc/nars/operation/Operator.html new file mode 100644 index 00000000..398877ed --- /dev/null +++ b/nars-dist/javadoc/nars/operation/Operator.html @@ -0,0 +1,364 @@ + + + + + + + +Operator (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.operation +
+Class Operator

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.operation.Operator
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
Direct Known Subclasses:
Break, GoTo, Open, Pick
+
+
+
+
public abstract class Operator
extends Term
+ + +

+An individual operator that can be execute by the system, though implemented + outside NARS. +

+ This is the only file to modify when adding a new operator into NARS. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + +
+Constructor Summary
Operator(java.lang.String name) + +
+           
+  + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ voidcall(Task task) + +
+          Execute an operation, then handle feedback
+abstract  java.util.ArrayList<Task>execute(Task task) + +
+          Required method for every operation, specifying the operation
+static java.util.HashMap<java.lang.String,Operator>setOperators() + +
+          Register all built-in operators in the Memory
+private  voidshowExecution(Statement operation) + +
+          Display a message in the output stream to indicate the execution of an operation
+ + + + + + + +
Methods inherited from class nars.language.Term
clone, compareTo, equals, getComplexity, getConstantName, getName, getTemporalOrder, hashCode, isConstant, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Operator

+
+public Operator(java.lang.String name)
+
+
+ + + + + + + + +
+Method Detail
+ +

+execute

+
+public abstract java.util.ArrayList<Task> execute(Task task)
+
+
Required method for every operation, specifying the operation +

+

+
Parameters:
task - The task with the arguments to be passed to the operator +
Returns:
The direct collectable results and feedback of the execution
+
+
+
+ +

+call

+
+public void call(Task task)
+
+
Execute an operation, then handle feedback +

+

+
Parameters:
task - The task to be executed
+
+
+
+ +

+setOperators

+
+public static java.util.HashMap<java.lang.String,Operator> setOperators()
+
+
Register all built-in operators in the Memory +

+ The only method to modify when adding a new operator into NARS. + An operator name should contain at least two characters after '^'. +

+

+ +
Returns:
A Map between Operator name and object
+
+
+
+ +

+showExecution

+
+private void showExecution(Statement operation)
+
+
Display a message in the output stream to indicate the execution of an operation +

+

+
Parameters:
operation - The content of the operation to be executed
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/Pick.html b/nars-dist/javadoc/nars/operation/Pick.html new file mode 100644 index 00000000..aa7a8eb3 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/Pick.html @@ -0,0 +1,305 @@ + + + + + + + +Pick (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.operation +
+Class Pick

+
+java.lang.Object
+  extended by nars.language.Term
+      extended by nars.operation.Operator
+          extended by nars.operation.Pick
+
+
+
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Term>
+
+
+
+
public class Pick
extends Operator
+ + +

+A class used in testing only. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.language.Term
name
+  + + + + + + + + + + +
+Constructor Summary
Pick(java.lang.String name) + +
+           
+  + + + + + + + + + + + +
+Method Summary
+ java.util.ArrayList<Task>execute(Task task) + +
+          Required method for every operation, specifying the operation
+ + + + + + + +
Methods inherited from class nars.operation.Operator
call, setOperators
+ + + + + + + +
Methods inherited from class nars.language.Term
clone, compareTo, equals, getComplexity, getConstantName, getName, getTemporalOrder, hashCode, isConstant, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+Pick

+
+public Pick(java.lang.String name)
+
+
+ + + + + + + + +
+Method Detail
+ +

+execute

+
+public java.util.ArrayList<Task> execute(Task task)
+
+
Description copied from class: Operator
+
Required method for every operation, specifying the operation +

+

+
Specified by:
execute in class Operator
+
+
+
Parameters:
task - The task with the arguments to be passed to the operator +
Returns:
The direct collectable results and feedback of the execution
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/class-use/Break.html b/nars-dist/javadoc/nars/operation/class-use/Break.html new file mode 100644 index 00000000..fa41b81a --- /dev/null +++ b/nars-dist/javadoc/nars/operation/class-use/Break.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.operation.Break (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.operation.Break

+
+No usage of nars.operation.Break +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/class-use/GoTo.html b/nars-dist/javadoc/nars/operation/class-use/GoTo.html new file mode 100644 index 00000000..2c5f7051 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/class-use/GoTo.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.operation.GoTo (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.operation.GoTo

+
+No usage of nars.operation.GoTo +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/class-use/Open.html b/nars-dist/javadoc/nars/operation/class-use/Open.html new file mode 100644 index 00000000..1b0ea911 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/class-use/Open.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.operation.Open (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.operation.Open

+
+No usage of nars.operation.Open +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/class-use/Operator.html b/nars-dist/javadoc/nars/operation/class-use/Operator.html new file mode 100644 index 00000000..8f73d5fc --- /dev/null +++ b/nars-dist/javadoc/nars/operation/class-use/Operator.html @@ -0,0 +1,266 @@ + + + + + + + +Uses of Class nars.operation.Operator (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.operation.Operator

+
+ + + + + + + + + + + + + +
+Packages that use Operator
nars.mainTop-level classes of the system 
nars.operationBuilt-in operators 
+  +

+ + + + + +
+Uses of Operator in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main with type parameters of type Operator
+private static java.util.HashMap<java.lang.String,Operator>Memory.operators + +
+          Operators (built-in terms) table.
+  +

+ + + + + + + + + +
Methods in nars.main that return Operator
+static OperatorMemory.nameToOperator(java.lang.String name) + +
+          Check if a string is an operator name
+  +

+ + + + + +
+Uses of Operator in nars.operation
+  +

+ + + + + + + + + + + + + + + + + + + + + +
Subclasses of Operator in nars.operation
+ classBreak + +
+          A class used in testing only.
+ classGoTo + +
+          A class used in testing only.
+ classOpen + +
+          A class used in testing only.
+ classPick + +
+          A class used in testing only.
+  +

+ + + + + + + + + +
Methods in nars.operation that return types with arguments of type Operator
+static java.util.HashMap<java.lang.String,Operator>Operator.setOperators() + +
+          Register all built-in operators in the Memory
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/class-use/Pick.html b/nars-dist/javadoc/nars/operation/class-use/Pick.html new file mode 100644 index 00000000..70ddb91e --- /dev/null +++ b/nars-dist/javadoc/nars/operation/class-use/Pick.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.operation.Pick (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.operation.Pick

+
+No usage of nars.operation.Pick +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/package-frame.html b/nars-dist/javadoc/nars/operation/package-frame.html new file mode 100644 index 00000000..24a84f91 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/package-frame.html @@ -0,0 +1,41 @@ + + + + + + + +nars.operation (NARS Document) + + + + + + + + + + + +nars.operation + + + + +
+Classes  + +
+Break +
+GoTo +
+Open +
+Operator +
+Pick
+ + + + diff --git a/nars-dist/javadoc/nars/operation/package-summary.html b/nars-dist/javadoc/nars/operation/package-summary.html new file mode 100644 index 00000000..04e5e4bc --- /dev/null +++ b/nars-dist/javadoc/nars/operation/package-summary.html @@ -0,0 +1,200 @@ + + + + + + + +nars.operation (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package nars.operation +

+Built-in operators +

+See: +
+          Description +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+Class Summary
BreakA class used in testing only.
GoToA class used in testing only.
OpenA class used in testing only.
OperatorAn individual operator that can be execute by the system, though implemented + outside NARS.
PickA class used in testing only.
+  + +

+

+Package nars.operation Description +

+ +

+Built-in operators + +

Package Specification

+ +The built-in operator classes are all subclasses of Operator, which +extends Term. +

+All operators are also registered in Operator. +

+Each built-in operator must implement a method execute, which takes a +Task as argument, and returns an ArrayList of Task as direct results and feedback. +

+ +

+

+
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/package-tree.html b/nars-dist/javadoc/nars/operation/package-tree.html new file mode 100644 index 00000000..753479f0 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/package-tree.html @@ -0,0 +1,159 @@ + + + + + + + +nars.operation Class Hierarchy (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package nars.operation +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+
    +
  • java.lang.Object
      +
    • nars.language.Term (implements java.lang.Cloneable, java.lang.Comparable<T>) + +
    +
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/operation/package-use.html b/nars-dist/javadoc/nars/operation/package-use.html new file mode 100644 index 00000000..f85152f0 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/package-use.html @@ -0,0 +1,192 @@ + + + + + + + +Uses of Package nars.operation (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Package
nars.operation

+
+ + + + + + + + + + + + + +
+Packages that use nars.operation
nars.mainTop-level classes of the system 
nars.operationBuilt-in operators 
+  +

+ + + + + + + + +
+Classes in nars.operation used by nars.main
Operator + +
+          An individual operator that can be execute by the system, though implemented + outside NARS.
+  +

+ + + + + + + + +
+Classes in nars.operation used by nars.operation
Operator + +
+          An individual operator that can be execute by the system, though implemented + outside NARS.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/Bag.html b/nars-dist/javadoc/nars/storage/Bag.html new file mode 100644 index 00000000..2f187959 --- /dev/null +++ b/nars-dist/javadoc/nars/storage/Bag.html @@ -0,0 +1,969 @@ + + + + + + + +Bag (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.storage +
+Class Bag<Type extends Item>

+
+java.lang.Object
+  extended by nars.storage.Bag<Type>
+
+
+
Direct Known Subclasses:
ConceptBag, TaskBuffer, TaskLinkBag, TermLinkBag
+
+
+
+
public abstract class Bag<Type extends Item>
extends java.lang.Object
+ + +

+A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval. +

+ Each entity in a bag must extend Item, which has a BudgetValue and a key. +

+ A name table is used to merge duplicate items that have the same key. +

+ The bag space is divided by a threshold, above which is mainly time management, + and below, space mamagement. + Differences: (1) level selection vs. item selection, (2) decay rate +

+ +

+


+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Field Summary
+protected  intcapacity + +
+          defined in different bags
+protected  intcurrentCounter + +
+          maximum number of items to be taken out at current level
+protected  intcurrentLevel + +
+          current take out level
+(package private) static DistributorDISTRIBUTOR + +
+          shared distributor that produce the probability distribution
+protected  java.util.ArrayList<Type>[]itemTable + +
+          array of lists of items, for items on different level
+protected  intlevelIndex + +
+          index to get next level, kept in individual objects
+protected static floatLOAD_FACTOR + +
+          hashtable load factor
+protected  intmass + +
+          current sum of occupied level
+protected  java.util.HashMap<java.lang.String,Type>nameTable + +
+          mapping from key to item
+protected static floatRELATIVE_THRESHOLD + +
+          relative threshold, only calculate once
+protected  booleanshowing + +
+          whether this bag has an active window
+protected static intTHRESHOLD + +
+          firing threshold
+protected static intTOTAL_LEVEL + +
+          priority levels
+protected  BagWindowwindow + +
+          display window
+  + + + + + + + + + + + +
+Constructor Summary
+protected Bag() + +
+          constructor, called from subclasses
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ floataveragePriority() + +
+          Get the average priority of Items
+protected abstract  intcapacity() + +
+          To get the capacity of the concrete subclass
+ booleancontains(Type it) + +
+          Check if an item is in the bag
+private  booleanemptyLevel(int n) + +
+          Check whether a level is empty
+protected abstract  intforgetRate() + +
+          Get the item decay rate, which differs in difference subclass, and can be + changed in run time by the user, so not a constant.
+ Typeget(java.lang.String key) + +
+          Get an Item by key
+private  intgetLevel(Type item) + +
+          Decide the put-in level according to priority
+private  TypeintoBase(Type newItem) + +
+          Insert an item into the itemTable, and return the overflow
+protected  voidoutOfBase(Type oldItem) + +
+          Remove an item from itemTable, then adjust mass
+ TypepickOut(java.lang.String key) + +
+          Pick an item by key, then remove it from the bag
+ voidplay() + +
+          Resume display
+ voidputBack(Type oldItem) + +
+          Put an item back into the itemTable
+ voidputIn(Type newItem) + +
+          Add a new Item into the Bag
+ voidrefresh() + +
+          Refresh display
+ voidstartPlay(java.lang.String title) + +
+          To start displaying the Bag in a BagWindow
+ voidstop() + +
+          Stop display
+ TypetakeOut() + +
+          Choose an Item according to priority distribution and take it out of the Bag
+private  TypetakeOutFirst(int level) + +
+          Take out the first or last Type in a level from the itemTable
+ java.lang.StringtoString() + +
+          Collect Bag content into a String for display
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+TOTAL_LEVEL

+
+protected static final int TOTAL_LEVEL
+
+
priority levels +

+

+
See Also:
Constant Field Values
+
+
+ +

+THRESHOLD

+
+protected static final int THRESHOLD
+
+
firing threshold +

+

+
See Also:
Constant Field Values
+
+
+ +

+RELATIVE_THRESHOLD

+
+protected static final float RELATIVE_THRESHOLD
+
+
relative threshold, only calculate once +

+

+
See Also:
Constant Field Values
+
+
+ +

+LOAD_FACTOR

+
+protected static final float LOAD_FACTOR
+
+
hashtable load factor +

+

+
See Also:
Constant Field Values
+
+
+ +

+DISTRIBUTOR

+
+static final Distributor DISTRIBUTOR
+
+
shared distributor that produce the probability distribution +

+

+
+
+
+ +

+nameTable

+
+protected java.util.HashMap<java.lang.String,Type extends Item> nameTable
+
+
mapping from key to item +

+

+
+
+
+ +

+itemTable

+
+protected java.util.ArrayList<Type extends Item>[] itemTable
+
+
array of lists of items, for items on different level +

+

+
+
+
+ +

+capacity

+
+protected int capacity
+
+
defined in different bags +

+

+
+
+
+ +

+mass

+
+protected int mass
+
+
current sum of occupied level +

+

+
+
+
+ +

+levelIndex

+
+protected int levelIndex
+
+
index to get next level, kept in individual objects +

+

+
+
+
+ +

+currentLevel

+
+protected int currentLevel
+
+
current take out level +

+

+
+
+
+ +

+currentCounter

+
+protected int currentCounter
+
+
maximum number of items to be taken out at current level +

+

+
+
+
+ +

+showing

+
+protected boolean showing
+
+
whether this bag has an active window +

+

+
+
+
+ +

+window

+
+protected BagWindow window
+
+
display window +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Bag

+
+protected Bag()
+
+
constructor, called from subclasses +

+

+ + + + + + + + +
+Method Detail
+ +

+capacity

+
+protected abstract int capacity()
+
+
To get the capacity of the concrete subclass +

+

+ +
Returns:
Bag capacity, in number of Items allowed
+
+
+
+ +

+forgetRate

+
+protected abstract int forgetRate()
+
+
Get the item decay rate, which differs in difference subclass, and can be + changed in run time by the user, so not a constant. +

+

+ +
Returns:
The number of times for a decay factor to be fully applied
+
+
+
+ +

+averagePriority

+
+public float averagePriority()
+
+
Get the average priority of Items +

+

+ +
Returns:
The average priority of Items in the bag
+
+
+
+ +

+contains

+
+public boolean contains(Type it)
+
+
Check if an item is in the bag +

+

+
Parameters:
it - An item +
Returns:
Whether the Item is in the Bag
+
+
+
+ +

+get

+
+public Type get(java.lang.String key)
+
+
Get an Item by key +

+

+
Parameters:
key - The key of the Item +
Returns:
The Item with the given key
+
+
+
+ +

+putIn

+
+public void putIn(Type newItem)
+
+
Add a new Item into the Bag +

+

+
Parameters:
newItem - The new Item
+
+
+
+ +

+putBack

+
+public void putBack(Type oldItem)
+
+
Put an item back into the itemTable +

+ The only place where the forgetting rate is applied +

+

+
Parameters:
oldItem - The Item to put back
+
+
+
+ +

+takeOut

+
+public Type takeOut()
+
+
Choose an Item according to priority distribution and take it out of the Bag +

+

+ +
Returns:
The selected Item
+
+
+
+ +

+pickOut

+
+public Type pickOut(java.lang.String key)
+
+
Pick an item by key, then remove it from the bag +

+

+
Parameters:
key - The given key +
Returns:
The Item with the key
+
+
+
+ +

+emptyLevel

+
+private boolean emptyLevel(int n)
+
+
Check whether a level is empty +

+

+
Parameters:
n - The level index +
Returns:
Whether that level is empty
+
+
+
+ +

+getLevel

+
+private int getLevel(Type item)
+
+
Decide the put-in level according to priority +

+

+
Parameters:
item - The Item to put in +
Returns:
The put-in level
+
+
+
+ +

+intoBase

+
+private Type intoBase(Type newItem)
+
+
Insert an item into the itemTable, and return the overflow +

+

+
Parameters:
newItem - The Item to put in +
Returns:
The overflow Item
+
+
+
+ +

+takeOutFirst

+
+private Type takeOutFirst(int level)
+
+
Take out the first or last Type in a level from the itemTable +

+

+
Parameters:
level - The current level +
Returns:
The first Item
+
+
+
+ +

+outOfBase

+
+protected void outOfBase(Type oldItem)
+
+
Remove an item from itemTable, then adjust mass +

+

+
Parameters:
oldItem - The Item to be removed
+
+
+
+ +

+startPlay

+
+public void startPlay(java.lang.String title)
+
+
To start displaying the Bag in a BagWindow +

+

+
Parameters:
title - The title of the window
+
+
+
+ +

+play

+
+public void play()
+
+
Resume display +

+

+
+
+
+
+ +

+refresh

+
+public void refresh()
+
+
Refresh display +

+

+
+
+
+
+ +

+stop

+
+public void stop()
+
+
Stop display +

+

+
+
+
+
+ +

+toString

+
+public java.lang.String toString()
+
+
Collect Bag content into a String for display +

+

+
Overrides:
toString in class java.lang.Object
+
+
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/ConceptBag.html b/nars-dist/javadoc/nars/storage/ConceptBag.html new file mode 100644 index 00000000..e90372f9 --- /dev/null +++ b/nars-dist/javadoc/nars/storage/ConceptBag.html @@ -0,0 +1,316 @@ + + + + + + + +ConceptBag (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.storage +
+Class ConceptBag

+
+java.lang.Object
+  extended by nars.storage.Bag<Concept>
+      extended by nars.storage.ConceptBag
+
+
+
+
public class ConceptBag
extends Bag<Concept>
+ + +

+Contains Concepts. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.storage.Bag
capacity, currentCounter, currentLevel, DISTRIBUTOR, itemTable, levelIndex, LOAD_FACTOR, mass, nameTable, RELATIVE_THRESHOLD, showing, THRESHOLD, TOTAL_LEVEL, window
+  + + + + + + + + + + +
+Constructor Summary
ConceptBag() + +
+           
+  + + + + + + + + + + + + + + + +
+Method Summary
+protected  intcapacity() + +
+          Get the (constant) capacity of ConceptBag
+protected  intforgetRate() + +
+          Get the (adjustable) forget rate of ConceptBag
+ + + + + + + +
Methods inherited from class nars.storage.Bag
averagePriority, contains, get, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+ConceptBag

+
+public ConceptBag()
+
+
+ + + + + + + + +
+Method Detail
+ +

+capacity

+
+protected int capacity()
+
+
Get the (constant) capacity of ConceptBag +

+

+
Specified by:
capacity in class Bag<Concept>
+
+
+ +
Returns:
The capacity of ConceptBag
+
+
+
+ +

+forgetRate

+
+protected int forgetRate()
+
+
Get the (adjustable) forget rate of ConceptBag +

+

+
Specified by:
forgetRate in class Bag<Concept>
+
+
+ +
Returns:
The forget rate of ConceptBag
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/Distributor.html b/nars-dist/javadoc/nars/storage/Distributor.html new file mode 100644 index 00000000..2dd453b6 --- /dev/null +++ b/nars-dist/javadoc/nars/storage/Distributor.html @@ -0,0 +1,344 @@ + + + + + + + +Distributor (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.storage +
+Class Distributor

+
+java.lang.Object
+  extended by nars.storage.Distributor
+
+
+
+
 class Distributor
extends java.lang.Object
+ + +

+A pseudo-random number generator, used in Bag. +

+ +

+


+ +

+ + + + + + + + + + + + + + + +
+Field Summary
+private  intcapacity + +
+          Capacity of the array
+private  int[]order + +
+          Shuffled sequence of index numbers
+  + + + + + + + + + + +
+Constructor Summary
Distributor(int range) + +
+          For any number N < range, there is N+1 copies of it in the array, distributed as evenly as possible
+  + + + + + + + + + + + + + + + +
+Method Summary
+ intnext(int index) + +
+          Advance the index
+ intpick(int index) + +
+          Get the next number according to the given index
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
+  +

+ + + + + + + + +
+Field Detail
+ +

+order

+
+private int[] order
+
+
Shuffled sequence of index numbers +

+

+
+
+
+ +

+capacity

+
+private int capacity
+
+
Capacity of the array +

+

+
+
+ + + + + + + + +
+Constructor Detail
+ +

+Distributor

+
+public Distributor(int range)
+
+
For any number N < range, there is N+1 copies of it in the array, distributed as evenly as possible +

+

+
Parameters:
range - Range of valid numbers
+
+ + + + + + + + +
+Method Detail
+ +

+pick

+
+public int pick(int index)
+
+
Get the next number according to the given index +

+

+
Parameters:
index - The current index +
Returns:
the random value
+
+
+
+ +

+next

+
+public int next(int index)
+
+
Advance the index +

+

+
Parameters:
index - The current index +
Returns:
the next index
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/TaskBuffer.html b/nars-dist/javadoc/nars/storage/TaskBuffer.html new file mode 100644 index 00000000..c9684751 --- /dev/null +++ b/nars-dist/javadoc/nars/storage/TaskBuffer.html @@ -0,0 +1,341 @@ + + + + + + + +TaskBuffer (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.storage +
+Class TaskBuffer

+
+java.lang.Object
+  extended by nars.storage.Bag<Task>
+      extended by nars.storage.TaskBuffer
+
+
+
+
public class TaskBuffer
extends Bag<Task>
+ + +

+New tasks that contain new Term. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.storage.Bag
capacity, currentCounter, currentLevel, DISTRIBUTOR, itemTable, levelIndex, LOAD_FACTOR, mass, nameTable, RELATIVE_THRESHOLD, showing, THRESHOLD, TOTAL_LEVEL, window
+  + + + + + + + + + + +
+Constructor Summary
TaskBuffer() + +
+           
+  + + + + + + + + + + + + + + + + + + + +
+Method Summary
+protected  intcapacity() + +
+          Get the (constant) capacity of TaskBuffer
+protected  intforgetRate() + +
+          Get the (constant) forget rate in TaskBuffer
+ java.lang.StringtoString() + +
+          Sepecial treatment: the display also include Tasks in the NewTask list
+ + + + + + + +
Methods inherited from class nars.storage.Bag
averagePriority, contains, get, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+TaskBuffer

+
+public TaskBuffer()
+
+
+ + + + + + + + +
+Method Detail
+ +

+capacity

+
+protected int capacity()
+
+
Get the (constant) capacity of TaskBuffer +

+

+
Specified by:
capacity in class Bag<Task>
+
+
+ +
Returns:
The capacity of TaskBuffer
+
+
+
+ +

+forgetRate

+
+protected int forgetRate()
+
+
Get the (constant) forget rate in TaskBuffer +

+

+
Specified by:
forgetRate in class Bag<Task>
+
+
+ +
Returns:
The forget rate in TaskBuffer
+
+
+
+ +

+toString

+
+public java.lang.String toString()
+
+
Sepecial treatment: the display also include Tasks in the NewTask list +

+

+
Overrides:
toString in class Bag<Task>
+
+
+ +
Returns:
New Tasks in the buffer and list for display
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/TaskLinkBag.html new file mode 100644 index 00000000..b7c36aea --- /dev/null +++ b/nars-dist/javadoc/nars/storage/TaskLinkBag.html @@ -0,0 +1,316 @@ + + + + + + + +TaskLinkBag (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.storage +
+Class TaskLinkBag

+
+java.lang.Object
+  extended by nars.storage.Bag<TaskLink>
+      extended by nars.storage.TaskLinkBag
+
+
+
+
public class TaskLinkBag
extends Bag<TaskLink>
+ + +

+TaskLinkBag contains links to tasks. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.storage.Bag
capacity, currentCounter, currentLevel, DISTRIBUTOR, itemTable, levelIndex, LOAD_FACTOR, mass, nameTable, RELATIVE_THRESHOLD, showing, THRESHOLD, TOTAL_LEVEL, window
+  + + + + + + + + + + +
+Constructor Summary
TaskLinkBag() + +
+           
+  + + + + + + + + + + + + + + + +
+Method Summary
+protected  intcapacity() + +
+          Get the (constant) capacity of TaskLinkBag
+protected  intforgetRate() + +
+          Get the (adjustable) forget rate of TaskLinkBag
+ + + + + + + +
Methods inherited from class nars.storage.Bag
averagePriority, contains, get, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+TaskLinkBag

+
+public TaskLinkBag()
+
+
+ + + + + + + + +
+Method Detail
+ +

+capacity

+
+protected int capacity()
+
+
Get the (constant) capacity of TaskLinkBag +

+

+
Specified by:
capacity in class Bag<TaskLink>
+
+
+ +
Returns:
The capacity of TaskLinkBag
+
+
+
+ +

+forgetRate

+
+protected int forgetRate()
+
+
Get the (adjustable) forget rate of TaskLinkBag +

+

+
Specified by:
forgetRate in class Bag<TaskLink>
+
+
+ +
Returns:
The forget rate of TaskLinkBag
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/TermLinkBag.html b/nars-dist/javadoc/nars/storage/TermLinkBag.html new file mode 100644 index 00000000..2ec75fe3 --- /dev/null +++ b/nars-dist/javadoc/nars/storage/TermLinkBag.html @@ -0,0 +1,338 @@ + + + + + + + +TermLinkBag (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

+ +nars.storage +
+Class TermLinkBag

+
+java.lang.Object
+  extended by nars.storage.Bag<TermLink>
+      extended by nars.storage.TermLinkBag
+
+
+
+
public class TermLinkBag
extends Bag<TermLink>
+ + +

+Contains TermLinks to relevant (compound or component) Terms. +

+ +

+


+ +

+ + + + + + + +
+Field Summary
+ + + + + + + +
Fields inherited from class nars.storage.Bag
capacity, currentCounter, currentLevel, DISTRIBUTOR, itemTable, levelIndex, LOAD_FACTOR, mass, nameTable, RELATIVE_THRESHOLD, showing, THRESHOLD, TOTAL_LEVEL, window
+  + + + + + + + + + + +
+Constructor Summary
TermLinkBag() + +
+           
+  + + + + + + + + + + + + + + + + + + + +
+Method Summary
+protected  intcapacity() + +
+          Get the (constant) capacity of TermLinkBag
+protected  intforgetRate() + +
+          Get the (adjustable) forget rate of TermLinkBag
+ TermLinktakeOut(TaskLink taskLink) + +
+          Replace defualt to prevent repeated inference, by checking TaskLink
+ + + + + + + +
Methods inherited from class nars.storage.Bag
averagePriority, contains, get, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString
+ + + + + + + +
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
+  +

+ + + + + + + + +
+Constructor Detail
+ +

+TermLinkBag

+
+public TermLinkBag()
+
+
+ + + + + + + + +
+Method Detail
+ +

+capacity

+
+protected int capacity()
+
+
Get the (constant) capacity of TermLinkBag +

+

+
Specified by:
capacity in class Bag<TermLink>
+
+
+ +
Returns:
The capacity of TermLinkBag
+
+
+
+ +

+forgetRate

+
+protected int forgetRate()
+
+
Get the (adjustable) forget rate of TermLinkBag +

+

+
Specified by:
forgetRate in class Bag<TermLink>
+
+
+ +
Returns:
The forget rate of TermLinkBag
+
+
+
+ +

+takeOut

+
+public TermLink takeOut(TaskLink taskLink)
+
+
Replace defualt to prevent repeated inference, by checking TaskLink +

+

+
Parameters:
taskLink - The selected TaskLink +
Returns:
The selected TermLink
+
+
+ +
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/class-use/Bag.html b/nars-dist/javadoc/nars/storage/class-use/Bag.html new file mode 100644 index 00000000..d7850aba --- /dev/null +++ b/nars-dist/javadoc/nars/storage/class-use/Bag.html @@ -0,0 +1,249 @@ + + + + + + + +Uses of Class nars.storage.Bag (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.storage.Bag

+
+ + + + + + + + + + + + + +
+Packages that use Bag
nars.guiGraphical user interface of the system 
nars.storageStorage management 
+  +

+ + + + + +
+Uses of Bag in nars.gui
+  +

+ + + + + + + + + +
Fields in nars.gui declared as Bag
+private  BagBagWindow.bag + +
+          The bag to be displayed
+  +

+ + + + + + + + +
Constructors in nars.gui with parameters of type Bag
BagWindow(Bag b, + java.lang.String title) + +
+          Constructor
+  +

+ + + + + +
+Uses of Bag in nars.storage
+  +

+ + + + + + + + + + + + + + + + + + + + + +
Subclasses of Bag in nars.storage
+ classConceptBag + +
+          Contains Concepts.
+ classTaskBuffer + +
+          New tasks that contain new Term.
+ classTaskLinkBag + +
+          TaskLinkBag contains links to tasks.
+ classTermLinkBag + +
+          Contains TermLinks to relevant (compound or component) Terms.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html new file mode 100644 index 00000000..87387705 --- /dev/null +++ b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.storage.ConceptBag (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.storage.ConceptBag

+
+ + + + + + + + + +
+Packages that use ConceptBag
nars.mainTop-level classes of the system 
+  +

+ + + + + +
+Uses of ConceptBag in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main declared as ConceptBag
+private static ConceptBagMemory.concepts + +
+          Concept bag.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/class-use/Distributor.html b/nars-dist/javadoc/nars/storage/class-use/Distributor.html new file mode 100644 index 00000000..eee655c8 --- /dev/null +++ b/nars-dist/javadoc/nars/storage/class-use/Distributor.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.storage.Distributor (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.storage.Distributor

+
+ + + + + + + + + +
+Packages that use Distributor
nars.storageStorage management 
+  +

+ + + + + +
+Uses of Distributor in nars.storage
+  +

+ + + + + + + + + +
Fields in nars.storage declared as Distributor
+(package private) static DistributorBag.DISTRIBUTOR + +
+          shared distributor that produce the probability distribution
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html new file mode 100644 index 00000000..66c1d5a4 --- /dev/null +++ b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.storage.TaskBuffer (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.storage.TaskBuffer

+
+ + + + + + + + + +
+Packages that use TaskBuffer
nars.mainTop-level classes of the system 
+  +

+ + + + + +
+Uses of TaskBuffer in nars.main
+  +

+ + + + + + + + + +
Fields in nars.main declared as TaskBuffer
+private static TaskBufferMemory.novelTaskBuffer + +
+          New tasks with novel composed terms, for delayed and selective processing
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html new file mode 100644 index 00000000..6086705a --- /dev/null +++ b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.storage.TaskLinkBag (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.storage.TaskLinkBag

+
+ + + + + + + + + +
+Packages that use TaskLinkBag
nars.entityData entities that are independently stored 
+  +

+ + + + + +
+Uses of TaskLinkBag in nars.entity
+  +

+ + + + + + + + + +
Fields in nars.entity declared as TaskLinkBag
+private  TaskLinkBagConcept.taskLinks + +
+          Task links for indirect processing
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html new file mode 100644 index 00000000..a2440d3c --- /dev/null +++ b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html @@ -0,0 +1,181 @@ + + + + + + + +Uses of Class nars.storage.TermLinkBag (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Class
nars.storage.TermLinkBag

+
+ + + + + + + + + +
+Packages that use TermLinkBag
nars.entityData entities that are independently stored 
+  +

+ + + + + +
+Uses of TermLinkBag in nars.entity
+  +

+ + + + + + + + + +
Fields in nars.entity declared as TermLinkBag
+private  TermLinkBagConcept.termLinks + +
+          Term links between the term and its components and compounds
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/package-frame.html b/nars-dist/javadoc/nars/storage/package-frame.html new file mode 100644 index 00000000..35e3d84e --- /dev/null +++ b/nars-dist/javadoc/nars/storage/package-frame.html @@ -0,0 +1,43 @@ + + + + + + + +nars.storage (NARS Document) + + + + + + + + + + + +nars.storage + + + + +
+Classes  + +
+Bag +
+ConceptBag +
+Distributor +
+TaskBuffer +
+TaskLinkBag +
+TermLinkBag
+ + + + diff --git a/nars-dist/javadoc/nars/storage/package-summary.html b/nars-dist/javadoc/nars/storage/package-summary.html new file mode 100644 index 00000000..06ad7ec1 --- /dev/null +++ b/nars-dist/javadoc/nars/storage/package-summary.html @@ -0,0 +1,221 @@ + + + + + + + +nars.storage (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+

+Package nars.storage +

+Storage management +

+See: +
+          Description +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Class Summary
Bag<Type extends Item>A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
ConceptBagContains Concepts.
DistributorA pseudo-random number generator, used in Bag.
TaskBufferNew tasks that contain new Term.
TaskLinkBagTaskLinkBag contains links to tasks.
TermLinkBagContains TermLinks to relevant (compound or component) Terms.
+  + +

+

+Package nars.storage Description +

+ +

+Storage management + +

Package Specification

+ +All Items (Concept within Memory, TaskLinks and TermLinks within Concept, and Tasks within buffer) are put into Bags, which supports priority-based resources allocation. Also, bag supports access by key (String). +

+A bag supports three major operations: +

    +
  • To take out an item by key.
  • +
  • To take out an item probabilistically according to priority.
  • +
  • To put an item into the bag.
  • +
+All the operations take constant time to finish. +

+The "take out by priority" operation takes an item out probablistically, with the +probability proportional to the priority value. +

+The probability distribution is generated from a deterministic table. +

+All classes in package nars.storage extend Bag. +

+In NARS, the memory consists of a bag of concepts. Each concept uniquely corresponds to a term, which uniquely corresponds to a String served as its name. It is necessary to separate a term and the corresponding concept, because a concept may be deleted due to space competition, and a term is removed only when no other term is linked to it. In the system, there may be multiple terms refer to the same concept, though the concept just refer to one of them. NARS does not follow a "one term, one concept" policy and use a hash table in memory to maps names into terms, because the system needs to remove a concept without removing the term that naming it. +

+Variable terms correspond to no concept, and their meaning is local to the "smallest" term that contains all occurences of the variable. +

+From name to term, call Term.nameToTerm(String). From name to concept, call Concept.nameToConcept(String). Both use the name as key to get the concept from the concept hashtable in memory. +

+The main memory also contains buffers for new tasks. One buffer contains tasks to be processed immediately (to be finished in constant time), and the other, a bag, for the tasks to be processed later. +

+ +

+

+
+
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/package-tree.html b/nars-dist/javadoc/nars/storage/package-tree.html new file mode 100644 index 00000000..b96f21ff --- /dev/null +++ b/nars-dist/javadoc/nars/storage/package-tree.html @@ -0,0 +1,156 @@ + + + + + + + +nars.storage Class Hierarchy (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package nars.storage +

+
+
+
Package Hierarchies:
All Packages
+
+

+Class Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/nars/storage/package-use.html b/nars-dist/javadoc/nars/storage/package-use.html new file mode 100644 index 00000000..b118c2f0 --- /dev/null +++ b/nars-dist/javadoc/nars/storage/package-use.html @@ -0,0 +1,248 @@ + + + + + + + +Uses of Package nars.storage (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Uses of Package
nars.storage

+
+ + + + + + + + + + + + + + + + + + + + + +
+Packages that use nars.storage
nars.entityData entities that are independently stored 
nars.guiGraphical user interface of the system 
nars.mainTop-level classes of the system 
nars.storageStorage management 
+  +

+ + + + + + + + + + + +
+Classes in nars.storage used by nars.entity
TaskLinkBag + +
+          TaskLinkBag contains links to tasks.
TermLinkBag + +
+          Contains TermLinks to relevant (compound or component) Terms.
+  +

+ + + + + + + + +
+Classes in nars.storage used by nars.gui
Bag + +
+          A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
+  +

+ + + + + + + + + + + +
+Classes in nars.storage used by nars.main
ConceptBag + +
+          Contains Concepts.
TaskBuffer + +
+          New tasks that contain new Term.
+  +

+ + + + + + + + + + + +
+Classes in nars.storage used by nars.storage
Bag + +
+          A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
Distributor + +
+          A pseudo-random number generator, used in Bag.
+  +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/overview-frame.html b/nars-dist/javadoc/overview-frame.html new file mode 100644 index 00000000..cefaf0ab --- /dev/null +++ b/nars-dist/javadoc/overview-frame.html @@ -0,0 +1,57 @@ + + + + + + + +Overview List (NARS Document) + + + + + + + + + + + + + + + +
+
+ + + + + +
All Classes +

+ +Packages +
+nars.entity +
+nars.gui +
+nars.inference +
+nars.io +
+nars.language +
+nars.main +
+nars.operation +
+nars.storage +
+

+ +

+  + + diff --git a/nars-dist/javadoc/overview-summary.html b/nars-dist/javadoc/overview-summary.html new file mode 100644 index 00000000..3acff595 --- /dev/null +++ b/nars-dist/javadoc/overview-summary.html @@ -0,0 +1,214 @@ + + + + + + + +Overview (NARS Document) + + + + + + + + + + + + +


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+NARS overview +

+See: +
+          Description +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Packages
nars.entityData entities that are independently stored
nars.guiGraphical user interface of the system
nars.inferenceThe inference rules and control functions
nars.ioInput/output management
nars.languageTerm hierarchy in Narsese
nars.mainTop-level classes of the system
nars.operationBuilt-in operators
nars.storageStorage management
+ +

+

+NARS overview + +

Package Specification

+ + The code for distribution is NARS.jar, in Java 1.6.0_03. +

+ It works both as an application (with full functionality) and an applet + (with restricted functionality and display). +

+ To run the application from the command line, go to the folder containing NARS.jar + and type the following: +

+            java -jar "NARS.jar"
+        
+ To run the applet in a browser, open an HTML file, which is in the folder + containing NARS.jar, and has the following line in it: +
+            <applet ARCHIVE="NARS.jar" CODE="nars.main.NARS"></applet>
+        
+ For more information, see + NARS website, + open-source project, + discussion group +

+ +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/overview-tree.html b/nars-dist/javadoc/overview-tree.html new file mode 100644 index 00000000..53f01cf7 --- /dev/null +++ b/nars-dist/javadoc/overview-tree.html @@ -0,0 +1,244 @@ + + + + + + + +Class Hierarchy (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For All Packages

+
+
+
Package Hierarchies:
nars.entity, nars.gui, nars.inference, nars.io, nars.language, nars.main, nars.operation, nars.storage
+
+

+Class Hierarchy +

+ +

+Interface Hierarchy +

+ +

+Enum Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/package-list b/nars-dist/javadoc/package-list new file mode 100644 index 00000000..b99852bb --- /dev/null +++ b/nars-dist/javadoc/package-list @@ -0,0 +1,8 @@ +nars.entity +nars.gui +nars.inference +nars.io +nars.language +nars.main +nars.operation +nars.storage diff --git a/nars-dist/javadoc/resources/inherit.gif b/nars-dist/javadoc/resources/inherit.gif new file mode 100644 index 0000000000000000000000000000000000000000..c814867a13deb0ca7ea2156c6ca1d5a03372af7e GIT binary patch literal 57 zcmZ?wbhEHbIIT!9-C*e{wE9>Kx3D)-;0v)C; KYxQGgum%9JOA&7X literal 0 HcmV?d00001 diff --git a/nars-dist/javadoc/serialized-form.html b/nars-dist/javadoc/serialized-form.html new file mode 100644 index 00000000..07635301 --- /dev/null +++ b/nars-dist/javadoc/serialized-form.html @@ -0,0 +1,847 @@ + + + + + + + +Serialized Form (NARS Document) + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Serialized Form

+
+
+ + + + + +
+Package nars.gui
+ +

+ + + + + +
+Class nars.gui.BagWindow extends NarsFrame implements Serializable
+ +

+ + + + + +
+Serialized Fields
+ +

+bag

+
+Bag<Type extends Item> bag
+
+
The bag to be displayed +

+

+
+
+
+

+showLevel

+
+int showLevel
+
+
The lowest level displayed +

+

+
+
+
+

+playButton

+
+java.awt.Button playButton
+
+
Control buttons +

+

+
+
+
+

+stopButton

+
+java.awt.Button stopButton
+
+
Control buttons +

+

+
+
+
+

+closeButton

+
+java.awt.Button closeButton
+
+
Control buttons +

+

+
+
+
+

+text

+
+java.awt.TextArea text
+
+
Display area +

+

+
+
+
+

+valueLabel

+
+java.awt.Label valueLabel
+
+
Display label +

+

+
+
+
+

+valueBar

+
+java.awt.Scrollbar valueBar
+
+
Adjustable display level +

+

+
+
+ +

+ + + + + +
+Class nars.gui.ConceptWindow extends NarsFrame implements Serializable
+ +

+ + + + + +
+Serialized Fields
+ +

+playButton

+
+java.awt.Button playButton
+
+
Control buttons +

+

+
+
+
+

+stopButton

+
+java.awt.Button stopButton
+
+
Control buttons +

+

+
+
+
+

+closeButton

+
+java.awt.Button closeButton
+
+
Control buttons +

+

+
+
+
+

+text

+
+java.awt.TextArea text
+
+
Display area +

+

+
+
+
+

+concept

+
+Concept concept
+
+
The concept to be displayed +

+

+
+
+ +

+ + + + + +
+Class nars.gui.InferenceWindow extends NarsFrame implements Serializable
+ +

+ + + + + +
+Serialized Fields
+ +

+playButton

+
+java.awt.Button playButton
+
+
Control buttons +

+

+
+
+
+

+stopButton

+
+java.awt.Button stopButton
+
+
Control buttons +

+

+
+
+
+

+hideButton

+
+java.awt.Button hideButton
+
+
Control buttons +

+

+
+
+
+

+text

+
+java.awt.TextArea text
+
+
Display area +

+

+
+
+ +

+ + + + + +
+Class nars.gui.InputWindow extends NarsFrame implements Serializable
+ +

+ + + + + +
+Serialized Fields
+ +

+okButton

+
+java.awt.Button okButton
+
+
Control buttons +

+

+
+
+
+

+holdButton

+
+java.awt.Button holdButton
+
+
Control buttons +

+

+
+
+
+

+clearButton

+
+java.awt.Button clearButton
+
+
Control buttons +

+

+
+
+
+

+closeButton

+
+java.awt.Button closeButton
+
+
Control buttons +

+

+
+
+
+

+inputText

+
+java.awt.TextArea inputText
+
+
Input area +

+

+
+
+
+

+ready

+
+boolean ready
+
+
Whether the window is ready to accept new input +

+

+
+
+ +

+ + + + + +
+Class nars.gui.MainWindow extends NarsFrame implements Serializable
+ +

+ + + + + +
+Serialized Fields
+ +

+ioText

+
+java.awt.TextArea ioText
+
+
Experience display area +

+

+
+
+
+

+stopButton

+
+java.awt.Button stopButton
+
+
Control buttons +

+

+
+
+
+

+walkButton

+
+java.awt.Button walkButton
+
+
Control buttons +

+

+
+
+
+

+runButton

+
+java.awt.Button runButton
+
+
Control buttons +

+

+
+
+
+

+exitButton

+
+java.awt.Button exitButton
+
+
Control buttons +

+

+
+
+
+

+timerText

+
+java.awt.TextField timerText
+
+
Clock display field +

+

+
+
+
+

+timerLabel

+
+java.awt.Label timerLabel
+
+
Label of the clock +

+

+
+
+
+

+timer

+
+long timer
+
+
System clock +

+

+
+
+
+

+savingExp

+
+boolean savingExp
+
+
Whether the experience is saving into a file +

+

+
+
+ +

+ + + + + +
+Class nars.gui.MessageDialog extends java.awt.Dialog implements Serializable
+ +

+ + + + + +
+Serialized Fields
+ +

+button

+
+java.awt.Button button
+
+
+
+
+
+

+text

+
+java.awt.TextArea text
+
+
+
+
+ +

+ + + + + +
+Class nars.gui.NarsFrame extends java.awt.Frame implements Serializable
+ +

+ +

+ + + + + +
+Class nars.gui.ParameterWindow extends NarsFrame implements Serializable
+ +

+ + + + + +
+Serialized Fields
+ +

+valueLabel

+
+java.awt.Label valueLabel
+
+
Display label +

+

+
+
+
+

+hideButton

+
+java.awt.Button hideButton
+
+
Control buttons +

+

+
+
+
+

+undoButton

+
+java.awt.Button undoButton
+
+
Control buttons +

+

+
+
+
+

+defaultButton

+
+java.awt.Button defaultButton
+
+
Control buttons +

+

+
+
+
+

+valueBar

+
+java.awt.Scrollbar valueBar
+
+
Adjusting bar +

+

+
+
+
+

+defaultValue

+
+int defaultValue
+
+
parameter values +

+

+
+
+
+

+previousValue

+
+int previousValue
+
+
parameter values +

+

+
+
+
+

+currentValue

+
+int currentValue
+
+
parameter values +

+

+
+
+ +

+ + + + + +
+Class nars.gui.TermWindow extends NarsFrame implements Serializable
+ +

+ + + + + +
+Serialized Fields
+ +

+termLabel

+
+java.awt.Label termLabel
+
+
Display label +

+

+
+
+
+

+termField

+
+java.awt.TextField termField
+
+
Input field for term name +

+

+
+
+
+

+playButton

+
+java.awt.Button playButton
+
+
Control buttons +

+

+
+
+
+

+hideButton

+
+java.awt.Button hideButton
+
+
Control buttons +

+

+
+
+
+ + + + + +
+Package nars.main
+ +

+ + + + + +
+Class nars.main.NARS extends java.applet.Applet implements Serializable
+ +

+ + + + + +
+Serialized Fields
+ +

+narsThread

+
+java.lang.Thread narsThread
+
+
The internal working thread of the system. +

+

+
+
+ +

+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/nars-dist/javadoc/stylesheet.css b/nars-dist/javadoc/stylesheet.css new file mode 100644 index 00000000..cbd34286 --- /dev/null +++ b/nars-dist/javadoc/stylesheet.css @@ -0,0 +1,29 @@ +/* Javadoc style sheet */ + +/* Define colors, fonts and other style attributes here to override the defaults */ + +/* Page background color */ +body { background-color: #FFFFFF; color:#000000 } + +/* Headings */ +h1 { font-size: 145% } + +/* Table colors */ +.TableHeadingColor { background: #CCCCFF; color:#000000 } /* Dark mauve */ +.TableSubHeadingColor { background: #EEEEFF; color:#000000 } /* Light mauve */ +.TableRowColor { background: #FFFFFF; color:#000000 } /* White */ + +/* Font used in left-hand frame lists */ +.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } + +/* Navigation bar fonts and colors */ +.NavBarCell1 { background-color:#EEEEFF; color:#000000} /* Light mauve */ +.NavBarCell1Rev { background-color:#00008B; color:#FFFFFF} /* Dark Blue */ +.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;color:#000000;} +.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;color:#FFFFFF;} + +.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} +.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} + From c30d09301701dea5b983ada3dd46659e7cd32101 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Thu, 31 Jul 2008 02:53:14 +0000 Subject: [PATCH 002/206] fix a bug in EquivalenceAfter.java and two other classes, and allow comment in experience --- nars/entity/Stamp.java | 6 +++--- nars/io/ExperienceIO.java | 4 +++- nars/io/StringParser.java | 10 +++++----- nars/io/Symbols.java | 15 +++++++++++---- nars/language/EquivalenceAfter.java | 2 +- nars/language/EquivalenceWhen.java | 2 +- nars/language/ImplicationWhen.java | 2 +- nars/main/NARS.java | 2 +- 8 files changed, 26 insertions(+), 17 deletions(-) diff --git a/nars/entity/Stamp.java b/nars/entity/Stamp.java index 680bd1c9..6f0d79c6 100644 --- a/nars/entity/Stamp.java +++ b/nars/entity/Stamp.java @@ -196,13 +196,13 @@ public TemporalRules.Relation orderWith(Stamp that) { */ @Override public String toString() { - StringBuffer buffer = new StringBuffer(Symbols.STAMP_OPENER + length + Symbols.STAMP_STARTER); + StringBuffer buffer = new StringBuffer(" " + Symbols.STAMP_OPENER + length + Symbols.STAMP_STARTER + " "); for (int i = 0; i < length; i++) { buffer.append(Long.toString(list[i])); if (i < (length - 1)) { - buffer.append(Symbols.STAMP_SEPARATOR); + buffer.append(Symbols.STAMP_SEPARATOR + ""); } else { - buffer.append(Symbols.STAMP_CLOSER); + buffer.append(Symbols.STAMP_CLOSER + " "); } } return buffer.toString(); diff --git a/nars/io/ExperienceIO.java b/nars/io/ExperienceIO.java index 5c5d9332..8b5f13c9 100644 --- a/nars/io/ExperienceIO.java +++ b/nars/io/ExperienceIO.java @@ -103,9 +103,11 @@ public long loadLine() { try { cycle = new Long(line); } catch (NumberFormatException e) { - if (line.charAt(0) == '*') { + if (line.charAt(0) == Symbols.RESET_MARK) { Center.reset(); saveLine(line); + } else if (line.charAt(0) == Symbols.COMMENT_MARK) { + saveLine(line); } else { StringParser.parseExperience(new StringBuffer(line)); } diff --git a/nars/io/StringParser.java b/nars/io/StringParser.java index 8fd20abc..5459bf51 100644 --- a/nars/io/StringParser.java +++ b/nars/io/StringParser.java @@ -53,18 +53,18 @@ public InvalidInputException(String s) { * @param buffer The line to be parsed */ public static void parseExperience(StringBuffer buffer) { - int i = buffer.indexOf(":"); + int i = buffer.indexOf(PREFIX_MARK + ""); if (i > 0) { String prefix = buffer.substring(0, i).trim(); - if (prefix.equals("OUT")) { + if (prefix.equals(OUTPUT_LINE)) { return; - } else if (prefix.equals("IN")) { + } else if (prefix.equals(INPUT_LINE)) { buffer.delete(0, i+1); } } char c = buffer.charAt(buffer.length()-1); - if (c == '}') { - int j = buffer.lastIndexOf("{"); + if (c == STAMP_CLOSER) { + int j = buffer.lastIndexOf(STAMP_OPENER + ""); buffer.delete(j-1, buffer.length()); } parseTask(buffer.toString().trim()); diff --git a/nars/io/Symbols.java b/nars/io/Symbols.java index e708223c..4f45ac89 100644 --- a/nars/io/Symbols.java +++ b/nars/io/Symbols.java @@ -92,11 +92,18 @@ public class Symbols { public static final char QUERY_VARIABLE_TAG = '?'; public static final char OPERATOR_TAG = '^'; + /* experience line prefix */ + public static final String INPUT_LINE = "IN"; + public static final String OUTPUT_LINE = "OUT"; + public static final char PREFIX_MARK = ':'; + public static final char RESET_MARK = '*'; + public static final char COMMENT_MARK = '/'; + /* Stamp, display only */ - public static final String STAMP_OPENER = " {"; - public static final String STAMP_CLOSER = "} "; - public static final String STAMP_SEPARATOR = ";"; - public static final String STAMP_STARTER = ": "; + public static final char STAMP_OPENER = '{'; + public static final char STAMP_CLOSER = '}'; + public static final char STAMP_SEPARATOR = ';'; + public static final char STAMP_STARTER = ':'; /* TermLink type, display only */ public static final String TO_COMPONENT_1 = " @("; diff --git a/nars/language/EquivalenceAfter.java b/nars/language/EquivalenceAfter.java index b80b6f65..afc55e7a 100644 --- a/nars/language/EquivalenceAfter.java +++ b/nars/language/EquivalenceAfter.java @@ -71,7 +71,7 @@ public static EquivalenceAfter make(Term subject, Term predicate) { if (invalidStatement(subject, predicate)) { return null; } - String name = makeStatementName(subject, Symbols.EQUIVALENCE_RELATION, predicate); + String name = makeStatementName(subject, Symbols.EQUIVALENCE_AFTER_RELATION, predicate); Term t = Memory.nameToListedTerm(name); if (t != null) { return (EquivalenceAfter) t; diff --git a/nars/language/EquivalenceWhen.java b/nars/language/EquivalenceWhen.java index c1a3d03f..107ecf4e 100644 --- a/nars/language/EquivalenceWhen.java +++ b/nars/language/EquivalenceWhen.java @@ -74,7 +74,7 @@ public static EquivalenceWhen make(Term subject, Term predicate) { if (subject.compareTo(predicate) > 0) { return make(predicate, subject); } - String name = makeStatementName(subject, Symbols.EQUIVALENCE_RELATION, predicate); + String name = makeStatementName(subject, Symbols.EQUIVALENCE_WHEN_RELATION, predicate); Term t = Memory.nameToListedTerm(name); if (t != null) { return (EquivalenceWhen) t; diff --git a/nars/language/ImplicationWhen.java b/nars/language/ImplicationWhen.java index 3d40d440..3ba47818 100644 --- a/nars/language/ImplicationWhen.java +++ b/nars/language/ImplicationWhen.java @@ -71,7 +71,7 @@ public static ImplicationWhen make(Term subject, Term predicate) { // to be ext if (invalidStatement(subject, predicate)) { return null; } - String name = makeStatementName(subject, Symbols.IMPLICATION_RELATION, predicate); + String name = makeStatementName(subject, Symbols.IMPLICATION_WHEN_RELATION, predicate); Term t = Memory.nameToListedTerm(name); if (t != null) { return (ImplicationWhen) t; diff --git a/nars/main/NARS.java b/nars/main/NARS.java index 231f596e..56f50f04 100644 --- a/nars/main/NARS.java +++ b/nars/main/NARS.java @@ -34,7 +34,7 @@ public class NARS extends Applet implements Runnable { * The information about the version and date of the project. */ public static final String INFO = - " Open-NARS Version 1.1.0 July 2008 \n"; + " Open-NARS Version 1.1.1 July 2008 \n"; /** * The project websites. */ From addfa2e1f6d1f4b8a72f263c842d0b1ae5b9327d Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Thu, 31 Jul 2008 02:59:48 +0000 Subject: [PATCH 003/206] updated jar and javadoc --- nars-dist/javadoc/allclasses-frame.html | 4 +- nars-dist/javadoc/allclasses-noframe.html | 4 +- nars-dist/javadoc/constant-values.html | 52 +++++++-- nars-dist/javadoc/deprecated-list.html | 4 +- nars-dist/javadoc/help-doc.html | 4 +- nars-dist/javadoc/index-files/index-1.html | 4 +- nars-dist/javadoc/index-files/index-10.html | 4 +- nars-dist/javadoc/index-files/index-11.html | 4 +- nars-dist/javadoc/index-files/index-12.html | 4 +- nars-dist/javadoc/index-files/index-13.html | 4 +- nars-dist/javadoc/index-files/index-14.html | 4 +- nars-dist/javadoc/index-files/index-15.html | 7 +- nars-dist/javadoc/index-files/index-16.html | 7 +- nars-dist/javadoc/index-files/index-17.html | 4 +- nars-dist/javadoc/index-files/index-18.html | 7 +- nars-dist/javadoc/index-files/index-19.html | 4 +- nars-dist/javadoc/index-files/index-2.html | 4 +- nars-dist/javadoc/index-files/index-20.html | 4 +- nars-dist/javadoc/index-files/index-21.html | 4 +- nars-dist/javadoc/index-files/index-22.html | 4 +- nars-dist/javadoc/index-files/index-23.html | 4 +- nars-dist/javadoc/index-files/index-3.html | 7 +- nars-dist/javadoc/index-files/index-4.html | 4 +- nars-dist/javadoc/index-files/index-5.html | 4 +- nars-dist/javadoc/index-files/index-6.html | 4 +- nars-dist/javadoc/index-files/index-7.html | 4 +- nars-dist/javadoc/index-files/index-8.html | 4 +- nars-dist/javadoc/index-files/index-9.html | 7 +- nars-dist/javadoc/index.html | 2 +- .../javadoc/nars/entity/BudgetValue.html | 4 +- nars-dist/javadoc/nars/entity/Concept.html | 4 +- nars-dist/javadoc/nars/entity/Goal.html | 4 +- nars-dist/javadoc/nars/entity/Item.html | 4 +- nars-dist/javadoc/nars/entity/Judgment.html | 4 +- nars-dist/javadoc/nars/entity/Question.html | 4 +- nars-dist/javadoc/nars/entity/Sentence.html | 4 +- nars-dist/javadoc/nars/entity/ShortFloat.html | 4 +- nars-dist/javadoc/nars/entity/Stamp.html | 4 +- nars-dist/javadoc/nars/entity/Task.html | 4 +- nars-dist/javadoc/nars/entity/TaskLink.html | 4 +- nars-dist/javadoc/nars/entity/TermLink.html | 4 +- nars-dist/javadoc/nars/entity/TruthValue.html | 4 +- .../nars/entity/class-use/BudgetValue.html | 4 +- .../nars/entity/class-use/Concept.html | 4 +- .../javadoc/nars/entity/class-use/Goal.html | 4 +- .../javadoc/nars/entity/class-use/Item.html | 4 +- .../nars/entity/class-use/Judgment.html | 4 +- .../nars/entity/class-use/Question.html | 4 +- .../nars/entity/class-use/Sentence.html | 4 +- .../nars/entity/class-use/ShortFloat.html | 4 +- .../javadoc/nars/entity/class-use/Stamp.html | 4 +- .../javadoc/nars/entity/class-use/Task.html | 4 +- .../nars/entity/class-use/TaskLink.html | 4 +- .../nars/entity/class-use/TermLink.html | 4 +- .../nars/entity/class-use/TruthValue.html | 4 +- .../javadoc/nars/entity/package-frame.html | 4 +- .../javadoc/nars/entity/package-summary.html | 4 +- .../javadoc/nars/entity/package-tree.html | 4 +- .../javadoc/nars/entity/package-use.html | 4 +- nars-dist/javadoc/nars/gui/BagWindow.html | 4 +- nars-dist/javadoc/nars/gui/ConceptWindow.html | 4 +- .../javadoc/nars/gui/InferenceWindow.html | 4 +- nars-dist/javadoc/nars/gui/InputWindow.html | 4 +- nars-dist/javadoc/nars/gui/MainWindow.html | 4 +- nars-dist/javadoc/nars/gui/MessageDialog.html | 4 +- nars-dist/javadoc/nars/gui/NarsFrame.html | 4 +- .../javadoc/nars/gui/ParameterWindow.html | 4 +- nars-dist/javadoc/nars/gui/TermWindow.html | 4 +- .../javadoc/nars/gui/class-use/BagWindow.html | 4 +- .../nars/gui/class-use/ConceptWindow.html | 4 +- .../nars/gui/class-use/InferenceWindow.html | 4 +- .../nars/gui/class-use/InputWindow.html | 4 +- .../nars/gui/class-use/MainWindow.html | 4 +- .../nars/gui/class-use/MessageDialog.html | 4 +- .../javadoc/nars/gui/class-use/NarsFrame.html | 4 +- .../nars/gui/class-use/ParameterWindow.html | 4 +- .../nars/gui/class-use/TermWindow.html | 4 +- nars-dist/javadoc/nars/gui/package-frame.html | 4 +- .../javadoc/nars/gui/package-summary.html | 4 +- nars-dist/javadoc/nars/gui/package-tree.html | 4 +- nars-dist/javadoc/nars/gui/package-use.html | 4 +- .../nars/inference/BudgetFunctions.html | 4 +- .../nars/inference/CompositionalRules.html | 4 +- .../javadoc/nars/inference/MatchingRules.html | 4 +- .../javadoc/nars/inference/RuleTables.html | 4 +- .../nars/inference/StructuralRules.html | 4 +- .../nars/inference/SyllogisticRules.html | 4 +- .../inference/TemporalRules.Relation.html | 4 +- .../javadoc/nars/inference/TemporalRules.html | 4 +- .../nars/inference/TruthFunctions.html | 4 +- .../nars/inference/UtilityFunctions.html | 4 +- .../inference/class-use/BudgetFunctions.html | 4 +- .../class-use/CompositionalRules.html | 4 +- .../inference/class-use/MatchingRules.html | 4 +- .../nars/inference/class-use/RuleTables.html | 4 +- .../inference/class-use/StructuralRules.html | 4 +- .../inference/class-use/SyllogisticRules.html | 4 +- .../class-use/TemporalRules.Relation.html | 4 +- .../inference/class-use/TemporalRules.html | 4 +- .../inference/class-use/TruthFunctions.html | 4 +- .../inference/class-use/UtilityFunctions.html | 4 +- .../javadoc/nars/inference/package-frame.html | 4 +- .../nars/inference/package-summary.html | 4 +- .../javadoc/nars/inference/package-tree.html | 4 +- .../javadoc/nars/inference/package-use.html | 4 +- nars-dist/javadoc/nars/io/ExperienceIO.html | 4 +- nars-dist/javadoc/nars/io/Record.html | 4 +- .../StringParser.InvalidInputException.html | 4 +- nars-dist/javadoc/nars/io/StringParser.html | 6 +- nars-dist/javadoc/nars/io/Symbols.html | 110 ++++++++++++++++-- .../nars/io/class-use/ExperienceIO.html | 4 +- .../javadoc/nars/io/class-use/Record.html | 4 +- .../StringParser.InvalidInputException.html | 4 +- .../nars/io/class-use/StringParser.html | 4 +- .../javadoc/nars/io/class-use/Symbols.html | 4 +- nars-dist/javadoc/nars/io/package-frame.html | 4 +- .../javadoc/nars/io/package-summary.html | 4 +- nars-dist/javadoc/nars/io/package-tree.html | 4 +- nars-dist/javadoc/nars/io/package-use.html | 4 +- .../javadoc/nars/language/CompoundTerm.html | 4 +- .../javadoc/nars/language/Conjunction.html | 4 +- .../nars/language/ConjunctionParallel.html | 4 +- .../nars/language/ConjunctionSequence.html | 4 +- .../javadoc/nars/language/DifferenceExt.html | 4 +- .../javadoc/nars/language/DifferenceInt.html | 4 +- .../javadoc/nars/language/Disjunction.html | 4 +- .../javadoc/nars/language/Equivalence.html | 4 +- .../nars/language/EquivalenceAfter.html | 4 +- .../nars/language/EquivalenceWhen.html | 4 +- nars-dist/javadoc/nars/language/ImageExt.html | 4 +- nars-dist/javadoc/nars/language/ImageInt.html | 4 +- .../javadoc/nars/language/Implication.html | 4 +- .../nars/language/ImplicationAfter.html | 4 +- .../nars/language/ImplicationBefore.html | 4 +- .../nars/language/ImplicationWhen.html | 4 +- .../javadoc/nars/language/Inheritance.html | 4 +- nars-dist/javadoc/nars/language/Instance.html | 4 +- .../nars/language/InstanceProperty.html | 4 +- .../nars/language/IntersectionExt.html | 4 +- .../nars/language/IntersectionInt.html | 4 +- nars-dist/javadoc/nars/language/Negation.html | 4 +- nars-dist/javadoc/nars/language/Product.html | 4 +- nars-dist/javadoc/nars/language/Property.html | 4 +- nars-dist/javadoc/nars/language/SetExt.html | 4 +- nars-dist/javadoc/nars/language/SetInt.html | 4 +- .../javadoc/nars/language/Similarity.html | 4 +- .../javadoc/nars/language/Statement.html | 4 +- nars-dist/javadoc/nars/language/Temporal.html | 4 +- nars-dist/javadoc/nars/language/Term.html | 4 +- .../nars/language/Variable.VarType.html | 4 +- nars-dist/javadoc/nars/language/Variable.html | 4 +- .../nars/language/class-use/CompoundTerm.html | 4 +- .../nars/language/class-use/Conjunction.html | 4 +- .../class-use/ConjunctionParallel.html | 4 +- .../class-use/ConjunctionSequence.html | 4 +- .../language/class-use/DifferenceExt.html | 4 +- .../language/class-use/DifferenceInt.html | 4 +- .../nars/language/class-use/Disjunction.html | 4 +- .../nars/language/class-use/Equivalence.html | 4 +- .../language/class-use/EquivalenceAfter.html | 4 +- .../language/class-use/EquivalenceWhen.html | 4 +- .../nars/language/class-use/ImageExt.html | 4 +- .../nars/language/class-use/ImageInt.html | 4 +- .../nars/language/class-use/Implication.html | 4 +- .../language/class-use/ImplicationAfter.html | 4 +- .../language/class-use/ImplicationBefore.html | 4 +- .../language/class-use/ImplicationWhen.html | 4 +- .../nars/language/class-use/Inheritance.html | 4 +- .../nars/language/class-use/Instance.html | 4 +- .../language/class-use/InstanceProperty.html | 4 +- .../language/class-use/IntersectionExt.html | 4 +- .../language/class-use/IntersectionInt.html | 4 +- .../nars/language/class-use/Negation.html | 4 +- .../nars/language/class-use/Product.html | 4 +- .../nars/language/class-use/Property.html | 4 +- .../nars/language/class-use/SetExt.html | 4 +- .../nars/language/class-use/SetInt.html | 4 +- .../nars/language/class-use/Similarity.html | 4 +- .../nars/language/class-use/Statement.html | 4 +- .../nars/language/class-use/Temporal.html | 4 +- .../javadoc/nars/language/class-use/Term.html | 4 +- .../language/class-use/Variable.VarType.html | 4 +- .../nars/language/class-use/Variable.html | 4 +- .../javadoc/nars/language/package-frame.html | 4 +- .../nars/language/package-summary.html | 4 +- .../javadoc/nars/language/package-tree.html | 4 +- .../javadoc/nars/language/package-use.html | 4 +- nars-dist/javadoc/nars/main/Center.html | 4 +- nars-dist/javadoc/nars/main/Memory.html | 4 +- nars-dist/javadoc/nars/main/NARS.html | 4 +- nars-dist/javadoc/nars/main/Parameters.html | 4 +- .../javadoc/nars/main/class-use/Center.html | 4 +- .../javadoc/nars/main/class-use/Memory.html | 4 +- .../javadoc/nars/main/class-use/NARS.html | 4 +- .../nars/main/class-use/Parameters.html | 4 +- .../javadoc/nars/main/package-frame.html | 4 +- .../javadoc/nars/main/package-summary.html | 4 +- nars-dist/javadoc/nars/main/package-tree.html | 4 +- nars-dist/javadoc/nars/main/package-use.html | 4 +- nars-dist/javadoc/nars/operation/Break.html | 4 +- nars-dist/javadoc/nars/operation/GoTo.html | 4 +- nars-dist/javadoc/nars/operation/Open.html | 4 +- .../javadoc/nars/operation/Operator.html | 4 +- nars-dist/javadoc/nars/operation/Pick.html | 4 +- .../nars/operation/class-use/Break.html | 4 +- .../nars/operation/class-use/GoTo.html | 4 +- .../nars/operation/class-use/Open.html | 4 +- .../nars/operation/class-use/Operator.html | 4 +- .../nars/operation/class-use/Pick.html | 4 +- .../javadoc/nars/operation/package-frame.html | 4 +- .../nars/operation/package-summary.html | 4 +- .../javadoc/nars/operation/package-tree.html | 4 +- .../javadoc/nars/operation/package-use.html | 4 +- nars-dist/javadoc/nars/storage/Bag.html | 4 +- .../javadoc/nars/storage/ConceptBag.html | 4 +- .../javadoc/nars/storage/Distributor.html | 4 +- .../javadoc/nars/storage/TaskBuffer.html | 4 +- .../javadoc/nars/storage/TaskLinkBag.html | 4 +- .../javadoc/nars/storage/TermLinkBag.html | 4 +- .../javadoc/nars/storage/class-use/Bag.html | 4 +- .../nars/storage/class-use/ConceptBag.html | 4 +- .../nars/storage/class-use/Distributor.html | 4 +- .../nars/storage/class-use/TaskBuffer.html | 4 +- .../nars/storage/class-use/TaskLinkBag.html | 4 +- .../nars/storage/class-use/TermLinkBag.html | 4 +- .../javadoc/nars/storage/package-frame.html | 4 +- .../javadoc/nars/storage/package-summary.html | 4 +- .../javadoc/nars/storage/package-tree.html | 4 +- .../javadoc/nars/storage/package-use.html | 4 +- nars-dist/javadoc/overview-frame.html | 4 +- nars-dist/javadoc/overview-summary.html | 4 +- nars-dist/javadoc/overview-tree.html | 4 +- nars-dist/javadoc/serialized-form.html | 4 +- 233 files changed, 618 insertions(+), 483 deletions(-) diff --git a/nars-dist/javadoc/allclasses-frame.html b/nars-dist/javadoc/allclasses-frame.html index 7510bbef..b1374d9a 100644 --- a/nars-dist/javadoc/allclasses-frame.html +++ b/nars-dist/javadoc/allclasses-frame.html @@ -2,13 +2,13 @@ - + All Classes (NARS Document) - + diff --git a/nars-dist/javadoc/allclasses-noframe.html b/nars-dist/javadoc/allclasses-noframe.html index ae7ae744..ae177fe9 100644 --- a/nars-dist/javadoc/allclasses-noframe.html +++ b/nars-dist/javadoc/allclasses-noframe.html @@ -2,13 +2,13 @@ - + All Classes (NARS Document) - + diff --git a/nars-dist/javadoc/constant-values.html b/nars-dist/javadoc/constant-values.html index 20c099a2..26fd8887 100644 --- a/nars-dist/javadoc/constant-values.html +++ b/nars-dist/javadoc/constant-values.html @@ -2,13 +2,13 @@ - + Constant Field Values (NARS Document) - + @@ -264,6 +264,12 @@

36 + +public static final char +COMMENT_MARK +47 + + public static final char COMPOUND_TERM_CLOSER @@ -372,6 +378,12 @@

"-->" + +public static final java.lang.String +INPUT_LINE +"IN" + + public static final java.lang.String INSTANCE_PROPERTY_RELATION @@ -414,12 +426,24 @@

94 + +public static final java.lang.String +OUTPUT_LINE +"OUT" + + public static final java.lang.String PARALLEL_OPERATOR "&|" + +public static final char +PREFIX_MARK +58 + + public static final java.lang.String PRODUCT_OPERATOR @@ -444,6 +468,12 @@

63 + +public static final char +RESET_MARK +42 + + public static final java.lang.String SEQUENCE_OPERATOR @@ -481,27 +511,27 @@

-public static final java.lang.String +public static final char STAMP_CLOSER -"} " +125 -public static final java.lang.String +public static final char STAMP_OPENER -" {" +123 -public static final java.lang.String +public static final char STAMP_SEPARATOR -";" +59 -public static final java.lang.String +public static final char STAMP_STARTER -": " +58 @@ -606,7 +636,7 @@

public static final java.lang.String INFO -" Open-NARS Version 1.1.0 August 2008 \n" +" Open-NARS Version 1.1.1 July 2008 \n" diff --git a/nars-dist/javadoc/deprecated-list.html b/nars-dist/javadoc/deprecated-list.html index ec19e4f6..3de1f175 100644 --- a/nars-dist/javadoc/deprecated-list.html +++ b/nars-dist/javadoc/deprecated-list.html @@ -2,13 +2,13 @@ - + Deprecated List (NARS Document) - + diff --git a/nars-dist/javadoc/help-doc.html b/nars-dist/javadoc/help-doc.html index 56cc660a..f521cadd 100644 --- a/nars-dist/javadoc/help-doc.html +++ b/nars-dist/javadoc/help-doc.html @@ -2,13 +2,13 @@ - + API Help (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-1.html b/nars-dist/javadoc/index-files/index-1.html index 13d9ed6e..1b0e0956 100644 --- a/nars-dist/javadoc/index-files/index-1.html +++ b/nars-dist/javadoc/index-files/index-1.html @@ -2,13 +2,13 @@ - + A-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-10.html b/nars-dist/javadoc/index-files/index-10.html index 043f6914..2cd1d267 100644 --- a/nars-dist/javadoc/index-files/index-10.html +++ b/nars-dist/javadoc/index-files/index-10.html @@ -2,13 +2,13 @@ - + J-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-11.html b/nars-dist/javadoc/index-files/index-11.html index 421c3705..f3c472b2 100644 --- a/nars-dist/javadoc/index-files/index-11.html +++ b/nars-dist/javadoc/index-files/index-11.html @@ -2,13 +2,13 @@ - + K-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-12.html b/nars-dist/javadoc/index-files/index-12.html index 26272234..c35f37ca 100644 --- a/nars-dist/javadoc/index-files/index-12.html +++ b/nars-dist/javadoc/index-files/index-12.html @@ -2,13 +2,13 @@ - + L-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-13.html b/nars-dist/javadoc/index-files/index-13.html index 4d01d117..25c63067 100644 --- a/nars-dist/javadoc/index-files/index-13.html +++ b/nars-dist/javadoc/index-files/index-13.html @@ -2,13 +2,13 @@ - + M-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-14.html b/nars-dist/javadoc/index-files/index-14.html index 3250002b..8c0350fd 100644 --- a/nars-dist/javadoc/index-files/index-14.html +++ b/nars-dist/javadoc/index-files/index-14.html @@ -2,13 +2,13 @@ - + N-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-15.html b/nars-dist/javadoc/index-files/index-15.html index b6912d48..e4bfcbc9 100644 --- a/nars-dist/javadoc/index-files/index-15.html +++ b/nars-dist/javadoc/index-files/index-15.html @@ -2,13 +2,13 @@ - + O-Index (NARS Document) - + @@ -198,6 +198,9 @@
outOfBase(Type) - Method in class nars.storage.Bag
Remove an item from itemTable, then adjust mass +
OUTPUT_LINE - +Static variable in class nars.io.Symbols +
 
diff --git a/nars-dist/javadoc/index-files/index-16.html b/nars-dist/javadoc/index-files/index-16.html index f4c0c6d5..a631a38d 100644 --- a/nars-dist/javadoc/index-files/index-16.html +++ b/nars-dist/javadoc/index-files/index-16.html @@ -2,13 +2,13 @@ - + P-Index (NARS Document) - + @@ -161,6 +161,9 @@
post(String) - Method in class nars.gui.MainWindow
Add new line to the display, plus the time interval +
PREFIX_MARK - +Static variable in class nars.io.Symbols +
 
prepareComponentLinks() - Method in class nars.language.CompoundTerm
Build TermLink templates to constant components and subcomponents diff --git a/nars-dist/javadoc/index-files/index-17.html b/nars-dist/javadoc/index-files/index-17.html index 49ec59bd..ef7244a4 100644 --- a/nars-dist/javadoc/index-files/index-17.html +++ b/nars-dist/javadoc/index-files/index-17.html @@ -2,13 +2,13 @@ - + Q-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-18.html b/nars-dist/javadoc/index-files/index-18.html index 0270ed66..98e0caa1 100644 --- a/nars-dist/javadoc/index-files/index-18.html +++ b/nars-dist/javadoc/index-files/index-18.html @@ -2,13 +2,13 @@ - + R-Index (NARS Document) - + @@ -149,6 +149,9 @@
reset() - Static method in class nars.main.Center
Reset the system with an empty memory and reset clock. +
RESET_MARK - +Static variable in class nars.io.Symbols +
 
resetBackground() - Method in class nars.gui.InferenceWindow
Reset background color after file saving diff --git a/nars-dist/javadoc/index-files/index-19.html b/nars-dist/javadoc/index-files/index-19.html index bee9d5bf..5ad90fd5 100644 --- a/nars-dist/javadoc/index-files/index-19.html +++ b/nars-dist/javadoc/index-files/index-19.html @@ -2,13 +2,13 @@ - + S-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-2.html b/nars-dist/javadoc/index-files/index-2.html index 6421e1c4..6c92691d 100644 --- a/nars-dist/javadoc/index-files/index-2.html +++ b/nars-dist/javadoc/index-files/index-2.html @@ -2,13 +2,13 @@ - + B-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-20.html b/nars-dist/javadoc/index-files/index-20.html index da4eb22b..cba669e4 100644 --- a/nars-dist/javadoc/index-files/index-20.html +++ b/nars-dist/javadoc/index-files/index-20.html @@ -2,13 +2,13 @@ - + T-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-21.html b/nars-dist/javadoc/index-files/index-21.html index 34732eb0..bbe46998 100644 --- a/nars-dist/javadoc/index-files/index-21.html +++ b/nars-dist/javadoc/index-files/index-21.html @@ -2,13 +2,13 @@ - + U-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-22.html b/nars-dist/javadoc/index-files/index-22.html index 804a9a43..671db9b8 100644 --- a/nars-dist/javadoc/index-files/index-22.html +++ b/nars-dist/javadoc/index-files/index-22.html @@ -2,13 +2,13 @@ - + V-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-23.html b/nars-dist/javadoc/index-files/index-23.html index a4e954ab..68c08841 100644 --- a/nars-dist/javadoc/index-files/index-23.html +++ b/nars-dist/javadoc/index-files/index-23.html @@ -2,13 +2,13 @@ - + W-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-3.html b/nars-dist/javadoc/index-files/index-3.html index 8841c2c4..2e3033c1 100644 --- a/nars-dist/javadoc/index-files/index-3.html +++ b/nars-dist/javadoc/index-files/index-3.html @@ -2,13 +2,13 @@ - + C-Index (NARS Document) - + @@ -236,6 +236,9 @@
closeSaveFile() - Method in class nars.io.ExperienceIO
Close an output experience file +
COMMENT_MARK - +Static variable in class nars.io.Symbols +
 
compareTo(Term) - Method in class nars.language.Term
Check the relative order of two Terms. diff --git a/nars-dist/javadoc/index-files/index-4.html b/nars-dist/javadoc/index-files/index-4.html index 4c6da055..61fb2342 100644 --- a/nars-dist/javadoc/index-files/index-4.html +++ b/nars-dist/javadoc/index-files/index-4.html @@ -2,13 +2,13 @@ - + D-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-5.html b/nars-dist/javadoc/index-files/index-5.html index b3f1ee2d..5587e983 100644 --- a/nars-dist/javadoc/index-files/index-5.html +++ b/nars-dist/javadoc/index-files/index-5.html @@ -2,13 +2,13 @@ - + E-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-6.html b/nars-dist/javadoc/index-files/index-6.html index db17aac8..066ee422 100644 --- a/nars-dist/javadoc/index-files/index-6.html +++ b/nars-dist/javadoc/index-files/index-6.html @@ -2,13 +2,13 @@ - + F-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-7.html b/nars-dist/javadoc/index-files/index-7.html index 7940d88e..25ce7c17 100644 --- a/nars-dist/javadoc/index-files/index-7.html +++ b/nars-dist/javadoc/index-files/index-7.html @@ -2,13 +2,13 @@ - + G-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-8.html b/nars-dist/javadoc/index-files/index-8.html index da417685..0702ebd1 100644 --- a/nars-dist/javadoc/index-files/index-8.html +++ b/nars-dist/javadoc/index-files/index-8.html @@ -2,13 +2,13 @@ - + H-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-9.html b/nars-dist/javadoc/index-files/index-9.html index 142217a3..8786afcd 100644 --- a/nars-dist/javadoc/index-files/index-9.html +++ b/nars-dist/javadoc/index-files/index-9.html @@ -2,13 +2,13 @@ - + I-Index (NARS Document) - + @@ -219,6 +219,9 @@
input - Variable in class nars.entity.Sentence
Whether it is an input sentence +
INPUT_LINE - +Static variable in class nars.io.Symbols +
 
inputTask(Task) - Static method in class nars.main.Memory
Input task processing. diff --git a/nars-dist/javadoc/index.html b/nars-dist/javadoc/index.html index aeb863a0..4096bea8 100644 --- a/nars-dist/javadoc/index.html +++ b/nars-dist/javadoc/index.html @@ -2,7 +2,7 @@ - + NARS Document diff --git a/nars-dist/javadoc/nars/entity/BudgetValue.html b/nars-dist/javadoc/nars/entity/BudgetValue.html index f3f1a5cb..5feed7f3 100644 --- a/nars-dist/javadoc/nars/entity/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/BudgetValue.html @@ -2,13 +2,13 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.6.0_03) on Fri Jul 18 21:30:07 EDT 2008 --> +<!-- Generated by javadoc (build 1.6.0_03) on Wed Jul 30 16:19:07 EDT 2008 --> <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <TITLE> BudgetValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Concept.html b/nars-dist/javadoc/nars/entity/Concept.html index 846c47d6..6a988649 100644 --- a/nars-dist/javadoc/nars/entity/Concept.html +++ b/nars-dist/javadoc/nars/entity/Concept.html @@ -2,13 +2,13 @@ - + Concept (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Goal.html b/nars-dist/javadoc/nars/entity/Goal.html index e09c1ff5..18b0d9a7 100644 --- a/nars-dist/javadoc/nars/entity/Goal.html +++ b/nars-dist/javadoc/nars/entity/Goal.html @@ -2,13 +2,13 @@ - + Goal (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Item.html b/nars-dist/javadoc/nars/entity/Item.html index 1903f7a4..3e3545c3 100644 --- a/nars-dist/javadoc/nars/entity/Item.html +++ b/nars-dist/javadoc/nars/entity/Item.html @@ -2,13 +2,13 @@ - + Item (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Judgment.html b/nars-dist/javadoc/nars/entity/Judgment.html index f990c9da..7d44b18c 100644 --- a/nars-dist/javadoc/nars/entity/Judgment.html +++ b/nars-dist/javadoc/nars/entity/Judgment.html @@ -2,13 +2,13 @@ - + Judgment (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Question.html b/nars-dist/javadoc/nars/entity/Question.html index 7e4c4c8c..1a8f1aa9 100644 --- a/nars-dist/javadoc/nars/entity/Question.html +++ b/nars-dist/javadoc/nars/entity/Question.html @@ -2,13 +2,13 @@ - + Question (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Sentence.html b/nars-dist/javadoc/nars/entity/Sentence.html index eac7e982..da01c395 100644 --- a/nars-dist/javadoc/nars/entity/Sentence.html +++ b/nars-dist/javadoc/nars/entity/Sentence.html @@ -2,13 +2,13 @@ - + Sentence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/ShortFloat.html b/nars-dist/javadoc/nars/entity/ShortFloat.html index 972e6466..4165d667 100644 --- a/nars-dist/javadoc/nars/entity/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/ShortFloat.html @@ -2,13 +2,13 @@ - + ShortFloat (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Stamp.html b/nars-dist/javadoc/nars/entity/Stamp.html index d0c6e12b..d222c0f8 100644 --- a/nars-dist/javadoc/nars/entity/Stamp.html +++ b/nars-dist/javadoc/nars/entity/Stamp.html @@ -2,13 +2,13 @@ - + Stamp (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Task.html b/nars-dist/javadoc/nars/entity/Task.html index c01d6c65..33de7c1b 100644 --- a/nars-dist/javadoc/nars/entity/Task.html +++ b/nars-dist/javadoc/nars/entity/Task.html @@ -2,13 +2,13 @@ - + Task (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/TaskLink.html b/nars-dist/javadoc/nars/entity/TaskLink.html index 3c0d3543..024c5dae 100644 --- a/nars-dist/javadoc/nars/entity/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/TaskLink.html @@ -2,13 +2,13 @@ - + TaskLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/TermLink.html b/nars-dist/javadoc/nars/entity/TermLink.html index 3625e6eb..31b6bb2c 100644 --- a/nars-dist/javadoc/nars/entity/TermLink.html +++ b/nars-dist/javadoc/nars/entity/TermLink.html @@ -2,13 +2,13 @@ - + TermLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/TruthValue.html b/nars-dist/javadoc/nars/entity/TruthValue.html index a71ce599..62a01d05 100644 --- a/nars-dist/javadoc/nars/entity/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/TruthValue.html @@ -2,13 +2,13 @@ - + TruthValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html index b41ee981..996a2a47 100644 --- a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.BudgetValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Concept.html b/nars-dist/javadoc/nars/entity/class-use/Concept.html index ee1d720a..ac1d3cba 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Concept.html +++ b/nars-dist/javadoc/nars/entity/class-use/Concept.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Concept (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Goal.html b/nars-dist/javadoc/nars/entity/class-use/Goal.html index d91dc061..1c5d0ca5 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Goal.html +++ b/nars-dist/javadoc/nars/entity/class-use/Goal.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Goal (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Item.html b/nars-dist/javadoc/nars/entity/class-use/Item.html index 52201e1e..70d59763 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Item.html +++ b/nars-dist/javadoc/nars/entity/class-use/Item.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Item (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Judgment.html b/nars-dist/javadoc/nars/entity/class-use/Judgment.html index cd869f47..c79b0d6c 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Judgment.html +++ b/nars-dist/javadoc/nars/entity/class-use/Judgment.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Judgment (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Question.html b/nars-dist/javadoc/nars/entity/class-use/Question.html index 1b089307..43fd3b38 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Question.html +++ b/nars-dist/javadoc/nars/entity/class-use/Question.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Question (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Sentence.html b/nars-dist/javadoc/nars/entity/class-use/Sentence.html index 09f2d891..9eed6563 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Sentence.html +++ b/nars-dist/javadoc/nars/entity/class-use/Sentence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Sentence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html index 81ce7755..b802dbfb 100644 --- a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.ShortFloat (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Stamp.html b/nars-dist/javadoc/nars/entity/class-use/Stamp.html index 920329cd..2bfc4fce 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Stamp.html +++ b/nars-dist/javadoc/nars/entity/class-use/Stamp.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Stamp (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Task.html b/nars-dist/javadoc/nars/entity/class-use/Task.html index a66cf1c1..723754a9 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Task.html +++ b/nars-dist/javadoc/nars/entity/class-use/Task.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Task (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html index 9058717c..f81f6cf6 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TaskLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TermLink.html b/nars-dist/javadoc/nars/entity/class-use/TermLink.html index 064f94a0..083fb180 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TermLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TermLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TermLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html index 312d888b..45ef6355 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TruthValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-frame.html b/nars-dist/javadoc/nars/entity/package-frame.html index 9e44dd82..68ca2b11 100644 --- a/nars-dist/javadoc/nars/entity/package-frame.html +++ b/nars-dist/javadoc/nars/entity/package-frame.html @@ -2,13 +2,13 @@ - + nars.entity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-summary.html b/nars-dist/javadoc/nars/entity/package-summary.html index 1e464916..6f4b8e13 100644 --- a/nars-dist/javadoc/nars/entity/package-summary.html +++ b/nars-dist/javadoc/nars/entity/package-summary.html @@ -2,13 +2,13 @@ - + nars.entity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-tree.html b/nars-dist/javadoc/nars/entity/package-tree.html index db991681..7b341179 100644 --- a/nars-dist/javadoc/nars/entity/package-tree.html +++ b/nars-dist/javadoc/nars/entity/package-tree.html @@ -2,13 +2,13 @@ - + nars.entity Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-use.html b/nars-dist/javadoc/nars/entity/package-use.html index b9510daf..6f3f08a5 100644 --- a/nars-dist/javadoc/nars/entity/package-use.html +++ b/nars-dist/javadoc/nars/entity/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.entity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/BagWindow.html b/nars-dist/javadoc/nars/gui/BagWindow.html index cb8ea9cf..94252514 100644 --- a/nars-dist/javadoc/nars/gui/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/BagWindow.html @@ -2,13 +2,13 @@ - + BagWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/ConceptWindow.html b/nars-dist/javadoc/nars/gui/ConceptWindow.html index 4d1298c8..33defbfe 100644 --- a/nars-dist/javadoc/nars/gui/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/ConceptWindow.html @@ -2,13 +2,13 @@ - + ConceptWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/InferenceWindow.html b/nars-dist/javadoc/nars/gui/InferenceWindow.html index 95063236..e3d99ffd 100644 --- a/nars-dist/javadoc/nars/gui/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/InferenceWindow.html @@ -2,13 +2,13 @@ - + InferenceWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/InputWindow.html b/nars-dist/javadoc/nars/gui/InputWindow.html index a2dfd874..789352f1 100644 --- a/nars-dist/javadoc/nars/gui/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/InputWindow.html @@ -2,13 +2,13 @@ - + InputWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/MainWindow.html b/nars-dist/javadoc/nars/gui/MainWindow.html index c45d7fef..f9108402 100644 --- a/nars-dist/javadoc/nars/gui/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/MainWindow.html @@ -2,13 +2,13 @@ - + MainWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/MessageDialog.html b/nars-dist/javadoc/nars/gui/MessageDialog.html index 3ea37006..1f1de665 100644 --- a/nars-dist/javadoc/nars/gui/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/MessageDialog.html @@ -2,13 +2,13 @@ - + MessageDialog (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/NarsFrame.html b/nars-dist/javadoc/nars/gui/NarsFrame.html index 88e52575..3d0705a1 100644 --- a/nars-dist/javadoc/nars/gui/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/NarsFrame.html @@ -2,13 +2,13 @@ - + NarsFrame (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/ParameterWindow.html b/nars-dist/javadoc/nars/gui/ParameterWindow.html index 8783e45b..9e32d283 100644 --- a/nars-dist/javadoc/nars/gui/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/ParameterWindow.html @@ -2,13 +2,13 @@ - + ParameterWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/TermWindow.html b/nars-dist/javadoc/nars/gui/TermWindow.html index 9522cf7a..2e511ec2 100644 --- a/nars-dist/javadoc/nars/gui/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/TermWindow.html @@ -2,13 +2,13 @@ - + TermWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html index 5d36796c..01fbb4be 100644 --- a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.BagWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html index 907dfd7a..f56a7d7b 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ConceptWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html index 2053073d..a22b5d04 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InferenceWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html index a817df8e..cade6c3a 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InputWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html index 78903858..e896bd9c 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MainWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html index e2bc26e6..0b3780a3 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MessageDialog (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html index ed407eea..9bc1b13c 100644 --- a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.NarsFrame (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html index c5a1c873..24f2feb7 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ParameterWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html index f1be6f88..585ff46a 100644 --- a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.TermWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-frame.html b/nars-dist/javadoc/nars/gui/package-frame.html index f95a6a52..72f265f2 100644 --- a/nars-dist/javadoc/nars/gui/package-frame.html +++ b/nars-dist/javadoc/nars/gui/package-frame.html @@ -2,13 +2,13 @@ - + nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-summary.html b/nars-dist/javadoc/nars/gui/package-summary.html index 5a38b7bf..59473b73 100644 --- a/nars-dist/javadoc/nars/gui/package-summary.html +++ b/nars-dist/javadoc/nars/gui/package-summary.html @@ -2,13 +2,13 @@ - + nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-tree.html b/nars-dist/javadoc/nars/gui/package-tree.html index 0877de98..c62e9c33 100644 --- a/nars-dist/javadoc/nars/gui/package-tree.html +++ b/nars-dist/javadoc/nars/gui/package-tree.html @@ -2,13 +2,13 @@ - + nars.gui Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-use.html b/nars-dist/javadoc/nars/gui/package-use.html index 5c85dea0..ed421baa 100644 --- a/nars-dist/javadoc/nars/gui/package-use.html +++ b/nars-dist/javadoc/nars/gui/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/BudgetFunctions.html index f43f1c47..556f2d31 100644 --- a/nars-dist/javadoc/nars/inference/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/BudgetFunctions.html @@ -2,13 +2,13 @@ - + BudgetFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/CompositionalRules.html b/nars-dist/javadoc/nars/inference/CompositionalRules.html index 0fad263c..cadb4913 100644 --- a/nars-dist/javadoc/nars/inference/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/CompositionalRules.html @@ -2,13 +2,13 @@ - + CompositionalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/MatchingRules.html b/nars-dist/javadoc/nars/inference/MatchingRules.html index 763ba52e..cac4ea51 100644 --- a/nars-dist/javadoc/nars/inference/MatchingRules.html +++ b/nars-dist/javadoc/nars/inference/MatchingRules.html @@ -2,13 +2,13 @@ - + MatchingRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/RuleTables.html b/nars-dist/javadoc/nars/inference/RuleTables.html index 3c46cc74..31fa50d6 100644 --- a/nars-dist/javadoc/nars/inference/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/RuleTables.html @@ -2,13 +2,13 @@ - + RuleTables (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/StructuralRules.html b/nars-dist/javadoc/nars/inference/StructuralRules.html index eb7d7340..c0915d84 100644 --- a/nars-dist/javadoc/nars/inference/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/StructuralRules.html @@ -2,13 +2,13 @@ - + StructuralRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/SyllogisticRules.html index 48351046..94262bc0 100644 --- a/nars-dist/javadoc/nars/inference/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/SyllogisticRules.html @@ -2,13 +2,13 @@ - + SyllogisticRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/TemporalRules.Relation.html b/nars-dist/javadoc/nars/inference/TemporalRules.Relation.html index cb8b6a80..eb01b871 100644 --- a/nars-dist/javadoc/nars/inference/TemporalRules.Relation.html +++ b/nars-dist/javadoc/nars/inference/TemporalRules.Relation.html @@ -2,13 +2,13 @@ - + TemporalRules.Relation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/TemporalRules.html b/nars-dist/javadoc/nars/inference/TemporalRules.html index cf39d301..9e76d42f 100644 --- a/nars-dist/javadoc/nars/inference/TemporalRules.html +++ b/nars-dist/javadoc/nars/inference/TemporalRules.html @@ -2,13 +2,13 @@ - + TemporalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/TruthFunctions.html b/nars-dist/javadoc/nars/inference/TruthFunctions.html index 149c7cd4..9f8ec1ec 100644 --- a/nars-dist/javadoc/nars/inference/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/TruthFunctions.html @@ -2,13 +2,13 @@ - + TruthFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/UtilityFunctions.html index d9a8190f..1b084ccc 100644 --- a/nars-dist/javadoc/nars/inference/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/UtilityFunctions.html @@ -2,13 +2,13 @@ - + UtilityFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html index 1ad2cbb4..dcefe108 100644 --- a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.BudgetFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html index 3e4ca22c..de2affae 100644 --- a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.CompositionalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html index 618b7927..a9c67616 100644 --- a/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.MatchingRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html index 9073d394..c03f290a 100644 --- a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.RuleTables (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html index 16bb9fd4..ad2010cf 100644 --- a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.StructuralRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html index 410b376c..bc615e5a 100644 --- a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.SyllogisticRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/TemporalRules.Relation.html b/nars-dist/javadoc/nars/inference/class-use/TemporalRules.Relation.html index 7954f45e..5d49bad8 100644 --- a/nars-dist/javadoc/nars/inference/class-use/TemporalRules.Relation.html +++ b/nars-dist/javadoc/nars/inference/class-use/TemporalRules.Relation.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.TemporalRules.Relation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/TemporalRules.html b/nars-dist/javadoc/nars/inference/class-use/TemporalRules.html index 69a401a2..bc35ed40 100644 --- a/nars-dist/javadoc/nars/inference/class-use/TemporalRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/TemporalRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.TemporalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html index 471996b3..ed47d7a1 100644 --- a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.TruthFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html index 38842174..8f30fb9f 100644 --- a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.UtilityFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-frame.html b/nars-dist/javadoc/nars/inference/package-frame.html index b37af5d2..139d1e96 100644 --- a/nars-dist/javadoc/nars/inference/package-frame.html +++ b/nars-dist/javadoc/nars/inference/package-frame.html @@ -2,13 +2,13 @@ - + nars.inference (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-summary.html b/nars-dist/javadoc/nars/inference/package-summary.html index 5c4e7fd7..4154913e 100644 --- a/nars-dist/javadoc/nars/inference/package-summary.html +++ b/nars-dist/javadoc/nars/inference/package-summary.html @@ -2,13 +2,13 @@ - + nars.inference (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-tree.html b/nars-dist/javadoc/nars/inference/package-tree.html index 11f2e159..b555b254 100644 --- a/nars-dist/javadoc/nars/inference/package-tree.html +++ b/nars-dist/javadoc/nars/inference/package-tree.html @@ -2,13 +2,13 @@ - + nars.inference Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-use.html b/nars-dist/javadoc/nars/inference/package-use.html index 051af9fe..d44429ed 100644 --- a/nars-dist/javadoc/nars/inference/package-use.html +++ b/nars-dist/javadoc/nars/inference/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.inference (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/ExperienceIO.html b/nars-dist/javadoc/nars/io/ExperienceIO.html index 0ed606a7..f73d6753 100644 --- a/nars-dist/javadoc/nars/io/ExperienceIO.html +++ b/nars-dist/javadoc/nars/io/ExperienceIO.html @@ -2,13 +2,13 @@ - + ExperienceIO (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/Record.html b/nars-dist/javadoc/nars/io/Record.html index 67344f51..2de5e371 100644 --- a/nars-dist/javadoc/nars/io/Record.html +++ b/nars-dist/javadoc/nars/io/Record.html @@ -2,13 +2,13 @@ - + Record (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html index 610125f4..2017c163 100644 --- a/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html +++ b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html @@ -2,13 +2,13 @@ - + StringParser.InvalidInputException (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/StringParser.html b/nars-dist/javadoc/nars/io/StringParser.html index af300c0e..b3593bd0 100644 --- a/nars-dist/javadoc/nars/io/StringParser.html +++ b/nars-dist/javadoc/nars/io/StringParser.html @@ -2,13 +2,13 @@ - + StringParser (NARS Document) - + @@ -142,7 +142,7 @@

Fields inherited from class nars.io.Symbols -ARGUMENT_SEPARATOR, BUDGET_VALUE_MARK, COMPOUND_TERM_CLOSER, COMPOUND_TERM_OPENER, CONJUNCTION_OPERATOR, DIFFERENCE_EXT_OPERATOR, DIFFERENCE_INT_OPERATOR, DISJUNCTION_OPERATOR, EQUIVALENCE_AFTER_RELATION, EQUIVALENCE_RELATION, EQUIVALENCE_WHEN_RELATION, GOAL_MARK, IMAGE_EXT_OPERATOR, IMAGE_INT_OPERATOR, IMAGE_PLACE_HOLDER, IMPLICATION_AFTER_RELATION, IMPLICATION_BEFORE_RELATION, IMPLICATION_RELATION, IMPLICATION_WHEN_RELATION, INHERITANCE_RELATION, INSTANCE_PROPERTY_RELATION, INSTANCE_RELATION, INTERSECTION_EXT_OPERATOR, INTERSECTION_INT_OPERATOR, JUDGMENT_MARK, NEGATION_OPERATOR, OPERATOR_TAG, PARALLEL_OPERATOR, PRODUCT_OPERATOR, PROPERTY_RELATION, QUERY_VARIABLE_TAG, QUESTION_MARK, SEQUENCE_OPERATOR, SET_EXT_CLOSER, SET_EXT_OPENER, SET_INT_CLOSER, SET_INT_OPENER, SIMILARITY_RELATION, STAMP_CLOSER, STAMP_OPENER, STAMP_SEPARATOR, STAMP_STARTER, STATEMENT_CLOSER, STATEMENT_OPENER, TENSE_FUTURE, TENSE_MARK, TENSE_PAST, TENSE_PRESENT, TO_COMPONENT_1, TO_COMPONENT_2, TO_COMPOUND_1, TO_COMPOUND_2, TRUTH_VALUE_MARK, VALUE_SEPARATOR, VARIABLE_TAG +ARGUMENT_SEPARATOR, BUDGET_VALUE_MARK, COMMENT_MARK, COMPOUND_TERM_CLOSER, COMPOUND_TERM_OPENER, CONJUNCTION_OPERATOR, DIFFERENCE_EXT_OPERATOR, DIFFERENCE_INT_OPERATOR, DISJUNCTION_OPERATOR, EQUIVALENCE_AFTER_RELATION, EQUIVALENCE_RELATION, EQUIVALENCE_WHEN_RELATION, GOAL_MARK, IMAGE_EXT_OPERATOR, IMAGE_INT_OPERATOR, IMAGE_PLACE_HOLDER, IMPLICATION_AFTER_RELATION, IMPLICATION_BEFORE_RELATION, IMPLICATION_RELATION, IMPLICATION_WHEN_RELATION, INHERITANCE_RELATION, INPUT_LINE, INSTANCE_PROPERTY_RELATION, INSTANCE_RELATION, INTERSECTION_EXT_OPERATOR, INTERSECTION_INT_OPERATOR, JUDGMENT_MARK, NEGATION_OPERATOR, OPERATOR_TAG, OUTPUT_LINE, PARALLEL_OPERATOR, PREFIX_MARK, PRODUCT_OPERATOR, PROPERTY_RELATION, QUERY_VARIABLE_TAG, QUESTION_MARK, RESET_MARK, SEQUENCE_OPERATOR, SET_EXT_CLOSER, SET_EXT_OPENER, SET_INT_CLOSER, SET_INT_OPENER, SIMILARITY_RELATION, STAMP_CLOSER, STAMP_OPENER, STAMP_SEPARATOR, STAMP_STARTER, STATEMENT_CLOSER, STATEMENT_OPENER, TENSE_FUTURE, TENSE_MARK, TENSE_PAST, TENSE_PRESENT, TO_COMPONENT_1, TO_COMPONENT_2, TO_COMPOUND_1, TO_COMPOUND_2, TRUTH_VALUE_MARK, VALUE_SEPARATOR, VARIABLE_TAG   diff --git a/nars-dist/javadoc/nars/io/Symbols.html b/nars-dist/javadoc/nars/io/Symbols.html index 4fab2e0d..5ba95368 100644 --- a/nars-dist/javadoc/nars/io/Symbols.html +++ b/nars-dist/javadoc/nars/io/Symbols.html @@ -2,13 +2,13 @@ - + Symbols (NARS Document) - + @@ -133,6 +133,14 @@

static char BUDGET_VALUE_MARK +
+            + + + +static char +COMMENT_MARK +
            @@ -277,6 +285,14 @@

static java.lang.String INHERITANCE_RELATION +
+            + + + +static java.lang.String +INPUT_LINE +
            @@ -333,6 +349,14 @@

static char OPERATOR_TAG +
+            + + + +static java.lang.String +OUTPUT_LINE +
            @@ -341,6 +365,14 @@

static java.lang.String PARALLEL_OPERATOR +
+            + + + +static char +PREFIX_MARK +
            @@ -373,6 +405,14 @@

static char QUESTION_MARK +
+            + + + +static char +RESET_MARK +
            @@ -426,7 +466,7 @@

-static java.lang.String +static char STAMP_CLOSER
@@ -434,7 +474,7 @@

-static java.lang.String +static char STAMP_OPENER
@@ -442,7 +482,7 @@

-static java.lang.String +static char STAMP_SEPARATOR
@@ -450,7 +490,7 @@

-static java.lang.String +static char STAMP_STARTER
@@ -1079,10 +1119,60 @@


+

+INPUT_LINE

+
+public static final java.lang.String INPUT_LINE
+
+
+
See Also:
Constant Field Values
+
+
+ +

+OUTPUT_LINE

+
+public static final java.lang.String OUTPUT_LINE
+
+
+
See Also:
Constant Field Values
+
+
+ +

+PREFIX_MARK

+
+public static final char PREFIX_MARK
+
+
+
See Also:
Constant Field Values
+
+
+ +

+RESET_MARK

+
+public static final char RESET_MARK
+
+
+
See Also:
Constant Field Values
+
+
+ +

+COMMENT_MARK

+
+public static final char COMMENT_MARK
+
+
+
See Also:
Constant Field Values
+
+
+

STAMP_OPENER

-public static final java.lang.String STAMP_OPENER
+public static final char STAMP_OPENER
See Also:
Constant Field Values
@@ -1092,7 +1182,7 @@

STAMP_CLOSER

-public static final java.lang.String STAMP_CLOSER
+public static final char STAMP_CLOSER
See Also:
Constant Field Values
@@ -1102,7 +1192,7 @@

STAMP_SEPARATOR

-public static final java.lang.String STAMP_SEPARATOR
+public static final char STAMP_SEPARATOR
See Also:
Constant Field Values
@@ -1112,7 +1202,7 @@

STAMP_STARTER

-public static final java.lang.String STAMP_STARTER
+public static final char STAMP_STARTER
See Also:
Constant Field Values
diff --git a/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html index 976c2e5c..4bd1bcc2 100644 --- a/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html +++ b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.ExperienceIO (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/Record.html b/nars-dist/javadoc/nars/io/class-use/Record.html index 769a1405..2dd1aff3 100644 --- a/nars-dist/javadoc/nars/io/class-use/Record.html +++ b/nars-dist/javadoc/nars/io/class-use/Record.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.Record (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html index 38930bdb..e6c8fd28 100644 --- a/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.StringParser.InvalidInputException (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.html b/nars-dist/javadoc/nars/io/class-use/StringParser.html index 99521a60..ab049e57 100644 --- a/nars-dist/javadoc/nars/io/class-use/StringParser.html +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.StringParser (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/Symbols.html b/nars-dist/javadoc/nars/io/class-use/Symbols.html index 3c4c2c7c..35df0817 100644 --- a/nars-dist/javadoc/nars/io/class-use/Symbols.html +++ b/nars-dist/javadoc/nars/io/class-use/Symbols.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.Symbols (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-frame.html b/nars-dist/javadoc/nars/io/package-frame.html index ae1dc0bc..ded9a41a 100644 --- a/nars-dist/javadoc/nars/io/package-frame.html +++ b/nars-dist/javadoc/nars/io/package-frame.html @@ -2,13 +2,13 @@ - + nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-summary.html b/nars-dist/javadoc/nars/io/package-summary.html index c41975d2..b779dfb0 100644 --- a/nars-dist/javadoc/nars/io/package-summary.html +++ b/nars-dist/javadoc/nars/io/package-summary.html @@ -2,13 +2,13 @@ - + nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-tree.html b/nars-dist/javadoc/nars/io/package-tree.html index 968abd05..27a28a55 100644 --- a/nars-dist/javadoc/nars/io/package-tree.html +++ b/nars-dist/javadoc/nars/io/package-tree.html @@ -2,13 +2,13 @@ - + nars.io Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-use.html b/nars-dist/javadoc/nars/io/package-use.html index ed35270c..04da9f31 100644 --- a/nars-dist/javadoc/nars/io/package-use.html +++ b/nars-dist/javadoc/nars/io/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/CompoundTerm.html b/nars-dist/javadoc/nars/language/CompoundTerm.html index df36dfa6..c9ca3b59 100644 --- a/nars-dist/javadoc/nars/language/CompoundTerm.html +++ b/nars-dist/javadoc/nars/language/CompoundTerm.html @@ -2,13 +2,13 @@ - + CompoundTerm (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Conjunction.html b/nars-dist/javadoc/nars/language/Conjunction.html index acacc519..45b697be 100644 --- a/nars-dist/javadoc/nars/language/Conjunction.html +++ b/nars-dist/javadoc/nars/language/Conjunction.html @@ -2,13 +2,13 @@ - + Conjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/ConjunctionParallel.html b/nars-dist/javadoc/nars/language/ConjunctionParallel.html index 8daee4cd..5734e628 100644 --- a/nars-dist/javadoc/nars/language/ConjunctionParallel.html +++ b/nars-dist/javadoc/nars/language/ConjunctionParallel.html @@ -2,13 +2,13 @@ - + ConjunctionParallel (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/ConjunctionSequence.html b/nars-dist/javadoc/nars/language/ConjunctionSequence.html index 663c30f2..e88349bc 100644 --- a/nars-dist/javadoc/nars/language/ConjunctionSequence.html +++ b/nars-dist/javadoc/nars/language/ConjunctionSequence.html @@ -2,13 +2,13 @@ - + ConjunctionSequence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/DifferenceExt.html b/nars-dist/javadoc/nars/language/DifferenceExt.html index ca3650b6..ce03de6c 100644 --- a/nars-dist/javadoc/nars/language/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/DifferenceExt.html @@ -2,13 +2,13 @@ - + DifferenceExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/DifferenceInt.html b/nars-dist/javadoc/nars/language/DifferenceInt.html index 778268ca..d72a89ab 100644 --- a/nars-dist/javadoc/nars/language/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/DifferenceInt.html @@ -2,13 +2,13 @@ - + DifferenceInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Disjunction.html b/nars-dist/javadoc/nars/language/Disjunction.html index 1a6abab9..b107e375 100644 --- a/nars-dist/javadoc/nars/language/Disjunction.html +++ b/nars-dist/javadoc/nars/language/Disjunction.html @@ -2,13 +2,13 @@ - + Disjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Equivalence.html b/nars-dist/javadoc/nars/language/Equivalence.html index 669d2138..5e41e8fd 100644 --- a/nars-dist/javadoc/nars/language/Equivalence.html +++ b/nars-dist/javadoc/nars/language/Equivalence.html @@ -2,13 +2,13 @@ - + Equivalence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/EquivalenceAfter.html b/nars-dist/javadoc/nars/language/EquivalenceAfter.html index 6727df4c..60bc6d78 100644 --- a/nars-dist/javadoc/nars/language/EquivalenceAfter.html +++ b/nars-dist/javadoc/nars/language/EquivalenceAfter.html @@ -2,13 +2,13 @@ - + EquivalenceAfter (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/EquivalenceWhen.html b/nars-dist/javadoc/nars/language/EquivalenceWhen.html index cc3cd6ef..9bbd56fb 100644 --- a/nars-dist/javadoc/nars/language/EquivalenceWhen.html +++ b/nars-dist/javadoc/nars/language/EquivalenceWhen.html @@ -2,13 +2,13 @@ - + EquivalenceWhen (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/ImageExt.html b/nars-dist/javadoc/nars/language/ImageExt.html index f5d93e67..4ec51484 100644 --- a/nars-dist/javadoc/nars/language/ImageExt.html +++ b/nars-dist/javadoc/nars/language/ImageExt.html @@ -2,13 +2,13 @@ - + ImageExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/ImageInt.html b/nars-dist/javadoc/nars/language/ImageInt.html index d124efbe..aa449ca0 100644 --- a/nars-dist/javadoc/nars/language/ImageInt.html +++ b/nars-dist/javadoc/nars/language/ImageInt.html @@ -2,13 +2,13 @@ - + ImageInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Implication.html b/nars-dist/javadoc/nars/language/Implication.html index 35042d2f..752f3c9a 100644 --- a/nars-dist/javadoc/nars/language/Implication.html +++ b/nars-dist/javadoc/nars/language/Implication.html @@ -2,13 +2,13 @@ - + Implication (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/ImplicationAfter.html b/nars-dist/javadoc/nars/language/ImplicationAfter.html index 3eac8717..10897467 100644 --- a/nars-dist/javadoc/nars/language/ImplicationAfter.html +++ b/nars-dist/javadoc/nars/language/ImplicationAfter.html @@ -2,13 +2,13 @@ - + ImplicationAfter (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/ImplicationBefore.html b/nars-dist/javadoc/nars/language/ImplicationBefore.html index f982a95d..77fed38f 100644 --- a/nars-dist/javadoc/nars/language/ImplicationBefore.html +++ b/nars-dist/javadoc/nars/language/ImplicationBefore.html @@ -2,13 +2,13 @@ - + ImplicationBefore (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/ImplicationWhen.html b/nars-dist/javadoc/nars/language/ImplicationWhen.html index 3e54b4ee..27de489a 100644 --- a/nars-dist/javadoc/nars/language/ImplicationWhen.html +++ b/nars-dist/javadoc/nars/language/ImplicationWhen.html @@ -2,13 +2,13 @@ - + ImplicationWhen (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Inheritance.html b/nars-dist/javadoc/nars/language/Inheritance.html index 1dadd05a..7e308870 100644 --- a/nars-dist/javadoc/nars/language/Inheritance.html +++ b/nars-dist/javadoc/nars/language/Inheritance.html @@ -2,13 +2,13 @@ - + Inheritance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Instance.html b/nars-dist/javadoc/nars/language/Instance.html index 013bdcff..3fe802c8 100644 --- a/nars-dist/javadoc/nars/language/Instance.html +++ b/nars-dist/javadoc/nars/language/Instance.html @@ -2,13 +2,13 @@ - + Instance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/InstanceProperty.html b/nars-dist/javadoc/nars/language/InstanceProperty.html index faeb30a7..e3edcaf8 100644 --- a/nars-dist/javadoc/nars/language/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/InstanceProperty.html @@ -2,13 +2,13 @@ - + InstanceProperty (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/IntersectionExt.html b/nars-dist/javadoc/nars/language/IntersectionExt.html index 8045aae0..06ba8303 100644 --- a/nars-dist/javadoc/nars/language/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/IntersectionExt.html @@ -2,13 +2,13 @@ - + IntersectionExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/IntersectionInt.html b/nars-dist/javadoc/nars/language/IntersectionInt.html index 0f0986f5..c96d3b15 100644 --- a/nars-dist/javadoc/nars/language/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/IntersectionInt.html @@ -2,13 +2,13 @@ - + IntersectionInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Negation.html b/nars-dist/javadoc/nars/language/Negation.html index ec98438c..95b1bc10 100644 --- a/nars-dist/javadoc/nars/language/Negation.html +++ b/nars-dist/javadoc/nars/language/Negation.html @@ -2,13 +2,13 @@ - + Negation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Product.html b/nars-dist/javadoc/nars/language/Product.html index 42d85fe8..33db016f 100644 --- a/nars-dist/javadoc/nars/language/Product.html +++ b/nars-dist/javadoc/nars/language/Product.html @@ -2,13 +2,13 @@ - + Product (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Property.html b/nars-dist/javadoc/nars/language/Property.html index 74c95a8b..d787b8f5 100644 --- a/nars-dist/javadoc/nars/language/Property.html +++ b/nars-dist/javadoc/nars/language/Property.html @@ -2,13 +2,13 @@ - + Property (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/SetExt.html b/nars-dist/javadoc/nars/language/SetExt.html index ed94fd6b..51cccf17 100644 --- a/nars-dist/javadoc/nars/language/SetExt.html +++ b/nars-dist/javadoc/nars/language/SetExt.html @@ -2,13 +2,13 @@ - + SetExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/SetInt.html b/nars-dist/javadoc/nars/language/SetInt.html index d3c18c15..64845d0f 100644 --- a/nars-dist/javadoc/nars/language/SetInt.html +++ b/nars-dist/javadoc/nars/language/SetInt.html @@ -2,13 +2,13 @@ - + SetInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Similarity.html b/nars-dist/javadoc/nars/language/Similarity.html index a0faf342..147574f8 100644 --- a/nars-dist/javadoc/nars/language/Similarity.html +++ b/nars-dist/javadoc/nars/language/Similarity.html @@ -2,13 +2,13 @@ - + Similarity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Statement.html b/nars-dist/javadoc/nars/language/Statement.html index 3585d4bc..010c5368 100644 --- a/nars-dist/javadoc/nars/language/Statement.html +++ b/nars-dist/javadoc/nars/language/Statement.html @@ -2,13 +2,13 @@ - + Statement (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Temporal.html b/nars-dist/javadoc/nars/language/Temporal.html index abadc744..03ad680a 100644 --- a/nars-dist/javadoc/nars/language/Temporal.html +++ b/nars-dist/javadoc/nars/language/Temporal.html @@ -2,13 +2,13 @@ - + Temporal (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Term.html b/nars-dist/javadoc/nars/language/Term.html index e055847d..57e79ba1 100644 --- a/nars-dist/javadoc/nars/language/Term.html +++ b/nars-dist/javadoc/nars/language/Term.html @@ -2,13 +2,13 @@ - + Term (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Variable.VarType.html b/nars-dist/javadoc/nars/language/Variable.VarType.html index fe4c027d..722b1a55 100644 --- a/nars-dist/javadoc/nars/language/Variable.VarType.html +++ b/nars-dist/javadoc/nars/language/Variable.VarType.html @@ -2,13 +2,13 @@ - + Variable.VarType (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Variable.html b/nars-dist/javadoc/nars/language/Variable.html index a7770ffd..6506a7a8 100644 --- a/nars-dist/javadoc/nars/language/Variable.html +++ b/nars-dist/javadoc/nars/language/Variable.html @@ -2,13 +2,13 @@ - + Variable (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html index 2150f05b..7ff5134a 100644 --- a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html +++ b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.CompoundTerm (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Conjunction.html b/nars-dist/javadoc/nars/language/class-use/Conjunction.html index 798792b9..bec9dd75 100644 --- a/nars-dist/javadoc/nars/language/class-use/Conjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Conjunction.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Conjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ConjunctionParallel.html b/nars-dist/javadoc/nars/language/class-use/ConjunctionParallel.html index c3dce9d2..7ef35a68 100644 --- a/nars-dist/javadoc/nars/language/class-use/ConjunctionParallel.html +++ b/nars-dist/javadoc/nars/language/class-use/ConjunctionParallel.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ConjunctionParallel (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ConjunctionSequence.html b/nars-dist/javadoc/nars/language/class-use/ConjunctionSequence.html index 50de4654..92b4065e 100644 --- a/nars-dist/javadoc/nars/language/class-use/ConjunctionSequence.html +++ b/nars-dist/javadoc/nars/language/class-use/ConjunctionSequence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ConjunctionSequence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html index 2bcd69c8..ec5c9e8d 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.DifferenceExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html index 2139724f..12730931 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.DifferenceInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Disjunction.html b/nars-dist/javadoc/nars/language/class-use/Disjunction.html index 2fb59696..20866c95 100644 --- a/nars-dist/javadoc/nars/language/class-use/Disjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Disjunction.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Disjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Equivalence.html b/nars-dist/javadoc/nars/language/class-use/Equivalence.html index b090da59..d99e250e 100644 --- a/nars-dist/javadoc/nars/language/class-use/Equivalence.html +++ b/nars-dist/javadoc/nars/language/class-use/Equivalence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Equivalence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/EquivalenceAfter.html b/nars-dist/javadoc/nars/language/class-use/EquivalenceAfter.html index abbce136..791b6a12 100644 --- a/nars-dist/javadoc/nars/language/class-use/EquivalenceAfter.html +++ b/nars-dist/javadoc/nars/language/class-use/EquivalenceAfter.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.EquivalenceAfter (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/EquivalenceWhen.html b/nars-dist/javadoc/nars/language/class-use/EquivalenceWhen.html index e2415296..a9e76959 100644 --- a/nars-dist/javadoc/nars/language/class-use/EquivalenceWhen.html +++ b/nars-dist/javadoc/nars/language/class-use/EquivalenceWhen.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.EquivalenceWhen (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ImageExt.html b/nars-dist/javadoc/nars/language/class-use/ImageExt.html index 5f3e5889..83ddab0e 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageExt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImageExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ImageInt.html b/nars-dist/javadoc/nars/language/class-use/ImageInt.html index e05b3ae0..5ece24d6 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageInt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImageInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Implication.html b/nars-dist/javadoc/nars/language/class-use/Implication.html index 5a705003..11dfc5ac 100644 --- a/nars-dist/javadoc/nars/language/class-use/Implication.html +++ b/nars-dist/javadoc/nars/language/class-use/Implication.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Implication (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ImplicationAfter.html b/nars-dist/javadoc/nars/language/class-use/ImplicationAfter.html index 78ca0aa7..fdc633f2 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImplicationAfter.html +++ b/nars-dist/javadoc/nars/language/class-use/ImplicationAfter.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImplicationAfter (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ImplicationBefore.html b/nars-dist/javadoc/nars/language/class-use/ImplicationBefore.html index 9b9e1817..2b615547 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImplicationBefore.html +++ b/nars-dist/javadoc/nars/language/class-use/ImplicationBefore.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImplicationBefore (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ImplicationWhen.html b/nars-dist/javadoc/nars/language/class-use/ImplicationWhen.html index c9d520d7..33b4846f 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImplicationWhen.html +++ b/nars-dist/javadoc/nars/language/class-use/ImplicationWhen.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImplicationWhen (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Inheritance.html b/nars-dist/javadoc/nars/language/class-use/Inheritance.html index 483e6915..7a8a1e27 100644 --- a/nars-dist/javadoc/nars/language/class-use/Inheritance.html +++ b/nars-dist/javadoc/nars/language/class-use/Inheritance.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Inheritance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Instance.html b/nars-dist/javadoc/nars/language/class-use/Instance.html index 21c4eb00..9b1b1f89 100644 --- a/nars-dist/javadoc/nars/language/class-use/Instance.html +++ b/nars-dist/javadoc/nars/language/class-use/Instance.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Instance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html index ac6e71ae..e1d4188f 100644 --- a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.InstanceProperty (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html index df01cd2d..2c14ac7c 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.IntersectionExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html index 04fc1d17..f667c101 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.IntersectionInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Negation.html b/nars-dist/javadoc/nars/language/class-use/Negation.html index f0aa30de..4fdb49c6 100644 --- a/nars-dist/javadoc/nars/language/class-use/Negation.html +++ b/nars-dist/javadoc/nars/language/class-use/Negation.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Negation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Product.html b/nars-dist/javadoc/nars/language/class-use/Product.html index 18a35f3d..f8490f38 100644 --- a/nars-dist/javadoc/nars/language/class-use/Product.html +++ b/nars-dist/javadoc/nars/language/class-use/Product.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Product (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Property.html b/nars-dist/javadoc/nars/language/class-use/Property.html index c9199c08..4a3d275a 100644 --- a/nars-dist/javadoc/nars/language/class-use/Property.html +++ b/nars-dist/javadoc/nars/language/class-use/Property.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Property (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/SetExt.html b/nars-dist/javadoc/nars/language/class-use/SetExt.html index 32e3a202..85e21b6c 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetExt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.SetExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/SetInt.html b/nars-dist/javadoc/nars/language/class-use/SetInt.html index 16e87906..361bca70 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetInt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.SetInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Similarity.html b/nars-dist/javadoc/nars/language/class-use/Similarity.html index baff7cd0..d3728a5d 100644 --- a/nars-dist/javadoc/nars/language/class-use/Similarity.html +++ b/nars-dist/javadoc/nars/language/class-use/Similarity.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Similarity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Statement.html b/nars-dist/javadoc/nars/language/class-use/Statement.html index 090577b0..239e6865 100644 --- a/nars-dist/javadoc/nars/language/class-use/Statement.html +++ b/nars-dist/javadoc/nars/language/class-use/Statement.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Statement (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Temporal.html b/nars-dist/javadoc/nars/language/class-use/Temporal.html index 21d3b3dc..ddbdb1c0 100644 --- a/nars-dist/javadoc/nars/language/class-use/Temporal.html +++ b/nars-dist/javadoc/nars/language/class-use/Temporal.html @@ -2,13 +2,13 @@ - + Uses of Interface nars.language.Temporal (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Term.html b/nars-dist/javadoc/nars/language/class-use/Term.html index f7c0d4ff..3b4cb604 100644 --- a/nars-dist/javadoc/nars/language/class-use/Term.html +++ b/nars-dist/javadoc/nars/language/class-use/Term.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Term (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html index 9ef7c040..90c02aba 100644 --- a/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html +++ b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Variable.VarType (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.html b/nars-dist/javadoc/nars/language/class-use/Variable.html index 525b1f93..2c3423cd 100644 --- a/nars-dist/javadoc/nars/language/class-use/Variable.html +++ b/nars-dist/javadoc/nars/language/class-use/Variable.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Variable (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-frame.html b/nars-dist/javadoc/nars/language/package-frame.html index a5bdccf7..45cd9adb 100644 --- a/nars-dist/javadoc/nars/language/package-frame.html +++ b/nars-dist/javadoc/nars/language/package-frame.html @@ -2,13 +2,13 @@ - + nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-summary.html b/nars-dist/javadoc/nars/language/package-summary.html index 6d913960..f1b5bd02 100644 --- a/nars-dist/javadoc/nars/language/package-summary.html +++ b/nars-dist/javadoc/nars/language/package-summary.html @@ -2,13 +2,13 @@ - + nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-tree.html b/nars-dist/javadoc/nars/language/package-tree.html index a46eecf6..838831f8 100644 --- a/nars-dist/javadoc/nars/language/package-tree.html +++ b/nars-dist/javadoc/nars/language/package-tree.html @@ -2,13 +2,13 @@ - + nars.language Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-use.html b/nars-dist/javadoc/nars/language/package-use.html index a772ce88..8f4ef4f3 100644 --- a/nars-dist/javadoc/nars/language/package-use.html +++ b/nars-dist/javadoc/nars/language/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/Center.html b/nars-dist/javadoc/nars/main/Center.html index a8e9c4ba..2260d981 100644 --- a/nars-dist/javadoc/nars/main/Center.html +++ b/nars-dist/javadoc/nars/main/Center.html @@ -2,13 +2,13 @@ - + Center (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/Memory.html b/nars-dist/javadoc/nars/main/Memory.html index 08559a14..03b790d0 100644 --- a/nars-dist/javadoc/nars/main/Memory.html +++ b/nars-dist/javadoc/nars/main/Memory.html @@ -2,13 +2,13 @@ - + Memory (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/NARS.html b/nars-dist/javadoc/nars/main/NARS.html index 4f33d449..21bb60c6 100644 --- a/nars-dist/javadoc/nars/main/NARS.html +++ b/nars-dist/javadoc/nars/main/NARS.html @@ -2,13 +2,13 @@ - + NARS (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/Parameters.html b/nars-dist/javadoc/nars/main/Parameters.html index 7a601b63..c6e94728 100644 --- a/nars-dist/javadoc/nars/main/Parameters.html +++ b/nars-dist/javadoc/nars/main/Parameters.html @@ -2,13 +2,13 @@ - + Parameters (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/Center.html b/nars-dist/javadoc/nars/main/class-use/Center.html index 1ba67346..a6ed998c 100644 --- a/nars-dist/javadoc/nars/main/class-use/Center.html +++ b/nars-dist/javadoc/nars/main/class-use/Center.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Center (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/Memory.html b/nars-dist/javadoc/nars/main/class-use/Memory.html index 701b3610..fbe996c3 100644 --- a/nars-dist/javadoc/nars/main/class-use/Memory.html +++ b/nars-dist/javadoc/nars/main/class-use/Memory.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Memory (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/NARS.html b/nars-dist/javadoc/nars/main/class-use/NARS.html index ea42fbf8..8b94c631 100644 --- a/nars-dist/javadoc/nars/main/class-use/NARS.html +++ b/nars-dist/javadoc/nars/main/class-use/NARS.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.NARS (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/Parameters.html b/nars-dist/javadoc/nars/main/class-use/Parameters.html index 526350b4..c1de0dd4 100644 --- a/nars-dist/javadoc/nars/main/class-use/Parameters.html +++ b/nars-dist/javadoc/nars/main/class-use/Parameters.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Parameters (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-frame.html b/nars-dist/javadoc/nars/main/package-frame.html index c2cfc6ed..7528c350 100644 --- a/nars-dist/javadoc/nars/main/package-frame.html +++ b/nars-dist/javadoc/nars/main/package-frame.html @@ -2,13 +2,13 @@ - + nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-summary.html b/nars-dist/javadoc/nars/main/package-summary.html index 55ece2f8..a92b0bda 100644 --- a/nars-dist/javadoc/nars/main/package-summary.html +++ b/nars-dist/javadoc/nars/main/package-summary.html @@ -2,13 +2,13 @@ - + nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-tree.html b/nars-dist/javadoc/nars/main/package-tree.html index 0f45d73d..1ab093a8 100644 --- a/nars-dist/javadoc/nars/main/package-tree.html +++ b/nars-dist/javadoc/nars/main/package-tree.html @@ -2,13 +2,13 @@ - + nars.main Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-use.html b/nars-dist/javadoc/nars/main/package-use.html index db9bec67..21f72017 100644 --- a/nars-dist/javadoc/nars/main/package-use.html +++ b/nars-dist/javadoc/nars/main/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/Break.html b/nars-dist/javadoc/nars/operation/Break.html index d8634ace..af7f2625 100644 --- a/nars-dist/javadoc/nars/operation/Break.html +++ b/nars-dist/javadoc/nars/operation/Break.html @@ -2,13 +2,13 @@ - + Break (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/GoTo.html b/nars-dist/javadoc/nars/operation/GoTo.html index aa8dddb2..a6ef9083 100644 --- a/nars-dist/javadoc/nars/operation/GoTo.html +++ b/nars-dist/javadoc/nars/operation/GoTo.html @@ -2,13 +2,13 @@ - + GoTo (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/Open.html b/nars-dist/javadoc/nars/operation/Open.html index 4ddffe75..00fc8af1 100644 --- a/nars-dist/javadoc/nars/operation/Open.html +++ b/nars-dist/javadoc/nars/operation/Open.html @@ -2,13 +2,13 @@ - + Open (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/Operator.html b/nars-dist/javadoc/nars/operation/Operator.html index 398877ed..90783e1b 100644 --- a/nars-dist/javadoc/nars/operation/Operator.html +++ b/nars-dist/javadoc/nars/operation/Operator.html @@ -2,13 +2,13 @@ - + Operator (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/Pick.html b/nars-dist/javadoc/nars/operation/Pick.html index aa7a8eb3..4d39ca87 100644 --- a/nars-dist/javadoc/nars/operation/Pick.html +++ b/nars-dist/javadoc/nars/operation/Pick.html @@ -2,13 +2,13 @@ - + Pick (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Break.html b/nars-dist/javadoc/nars/operation/class-use/Break.html index fa41b81a..5121caf7 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Break.html +++ b/nars-dist/javadoc/nars/operation/class-use/Break.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Break (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/GoTo.html b/nars-dist/javadoc/nars/operation/class-use/GoTo.html index 2c5f7051..24d087b4 100644 --- a/nars-dist/javadoc/nars/operation/class-use/GoTo.html +++ b/nars-dist/javadoc/nars/operation/class-use/GoTo.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.GoTo (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Open.html b/nars-dist/javadoc/nars/operation/class-use/Open.html index 1b0ea911..f271bda3 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Open.html +++ b/nars-dist/javadoc/nars/operation/class-use/Open.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Open (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Operator.html b/nars-dist/javadoc/nars/operation/class-use/Operator.html index 8f73d5fc..9ccba2a6 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Operator.html +++ b/nars-dist/javadoc/nars/operation/class-use/Operator.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Operator (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Pick.html b/nars-dist/javadoc/nars/operation/class-use/Pick.html index 70ddb91e..44f6179d 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Pick.html +++ b/nars-dist/javadoc/nars/operation/class-use/Pick.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Pick (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-frame.html b/nars-dist/javadoc/nars/operation/package-frame.html index 24a84f91..e633401e 100644 --- a/nars-dist/javadoc/nars/operation/package-frame.html +++ b/nars-dist/javadoc/nars/operation/package-frame.html @@ -2,13 +2,13 @@ - + nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-summary.html b/nars-dist/javadoc/nars/operation/package-summary.html index 04e5e4bc..6fdf97c6 100644 --- a/nars-dist/javadoc/nars/operation/package-summary.html +++ b/nars-dist/javadoc/nars/operation/package-summary.html @@ -2,13 +2,13 @@ - + nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-tree.html b/nars-dist/javadoc/nars/operation/package-tree.html index 753479f0..18fae682 100644 --- a/nars-dist/javadoc/nars/operation/package-tree.html +++ b/nars-dist/javadoc/nars/operation/package-tree.html @@ -2,13 +2,13 @@ - + nars.operation Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-use.html b/nars-dist/javadoc/nars/operation/package-use.html index f85152f0..4d47dc82 100644 --- a/nars-dist/javadoc/nars/operation/package-use.html +++ b/nars-dist/javadoc/nars/operation/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/Bag.html b/nars-dist/javadoc/nars/storage/Bag.html index 2f187959..35c03b9f 100644 --- a/nars-dist/javadoc/nars/storage/Bag.html +++ b/nars-dist/javadoc/nars/storage/Bag.html @@ -2,13 +2,13 @@ - + Bag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/ConceptBag.html b/nars-dist/javadoc/nars/storage/ConceptBag.html index e90372f9..0c1503b8 100644 --- a/nars-dist/javadoc/nars/storage/ConceptBag.html +++ b/nars-dist/javadoc/nars/storage/ConceptBag.html @@ -2,13 +2,13 @@ - + ConceptBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/Distributor.html b/nars-dist/javadoc/nars/storage/Distributor.html index 2dd453b6..b6675d39 100644 --- a/nars-dist/javadoc/nars/storage/Distributor.html +++ b/nars-dist/javadoc/nars/storage/Distributor.html @@ -2,13 +2,13 @@ - + Distributor (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TaskBuffer.html b/nars-dist/javadoc/nars/storage/TaskBuffer.html index c9684751..d483dc79 100644 --- a/nars-dist/javadoc/nars/storage/TaskBuffer.html +++ b/nars-dist/javadoc/nars/storage/TaskBuffer.html @@ -2,13 +2,13 @@ - + TaskBuffer (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/TaskLinkBag.html index b7c36aea..da6aa5ad 100644 --- a/nars-dist/javadoc/nars/storage/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TaskLinkBag.html @@ -2,13 +2,13 @@ - + TaskLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TermLinkBag.html b/nars-dist/javadoc/nars/storage/TermLinkBag.html index 2ec75fe3..547f41d4 100644 --- a/nars-dist/javadoc/nars/storage/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TermLinkBag.html @@ -2,13 +2,13 @@ - + TermLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/Bag.html b/nars-dist/javadoc/nars/storage/class-use/Bag.html index d7850aba..ebc97992 100644 --- a/nars-dist/javadoc/nars/storage/class-use/Bag.html +++ b/nars-dist/javadoc/nars/storage/class-use/Bag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.Bag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html index 87387705..23653203 100644 --- a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.ConceptBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/Distributor.html b/nars-dist/javadoc/nars/storage/class-use/Distributor.html index eee655c8..24165654 100644 --- a/nars-dist/javadoc/nars/storage/class-use/Distributor.html +++ b/nars-dist/javadoc/nars/storage/class-use/Distributor.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.Distributor (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html index 66c1d5a4..977dc168 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html +++ b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TaskBuffer (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html index 6086705a..f5fe3df8 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TaskLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html index a2440d3c..eae7588d 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TermLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-frame.html b/nars-dist/javadoc/nars/storage/package-frame.html index 35e3d84e..54b38dc1 100644 --- a/nars-dist/javadoc/nars/storage/package-frame.html +++ b/nars-dist/javadoc/nars/storage/package-frame.html @@ -2,13 +2,13 @@ - + nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-summary.html b/nars-dist/javadoc/nars/storage/package-summary.html index 06ad7ec1..9d7fe1d5 100644 --- a/nars-dist/javadoc/nars/storage/package-summary.html +++ b/nars-dist/javadoc/nars/storage/package-summary.html @@ -2,13 +2,13 @@ - + nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-tree.html b/nars-dist/javadoc/nars/storage/package-tree.html index b96f21ff..61f9598b 100644 --- a/nars-dist/javadoc/nars/storage/package-tree.html +++ b/nars-dist/javadoc/nars/storage/package-tree.html @@ -2,13 +2,13 @@ - + nars.storage Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-use.html b/nars-dist/javadoc/nars/storage/package-use.html index b118c2f0..18a866d3 100644 --- a/nars-dist/javadoc/nars/storage/package-use.html +++ b/nars-dist/javadoc/nars/storage/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/overview-frame.html b/nars-dist/javadoc/overview-frame.html index cefaf0ab..3e97fd7c 100644 --- a/nars-dist/javadoc/overview-frame.html +++ b/nars-dist/javadoc/overview-frame.html @@ -2,13 +2,13 @@ - + Overview List (NARS Document) - + diff --git a/nars-dist/javadoc/overview-summary.html b/nars-dist/javadoc/overview-summary.html index 3acff595..ae4685ff 100644 --- a/nars-dist/javadoc/overview-summary.html +++ b/nars-dist/javadoc/overview-summary.html @@ -2,13 +2,13 @@ - + Overview (NARS Document) - + diff --git a/nars-dist/javadoc/overview-tree.html b/nars-dist/javadoc/overview-tree.html index 53f01cf7..b510297e 100644 --- a/nars-dist/javadoc/overview-tree.html +++ b/nars-dist/javadoc/overview-tree.html @@ -2,13 +2,13 @@ - + Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/serialized-form.html b/nars-dist/javadoc/serialized-form.html index 07635301..7f2d1a2e 100644 --- a/nars-dist/javadoc/serialized-form.html +++ b/nars-dist/javadoc/serialized-form.html @@ -2,13 +2,13 @@ - + Serialized Form (NARS Document) - + From 85974106657a3bbca3f2d66b64b1e1f740f2ae23 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Tue, 12 Aug 2008 17:06:20 +0000 Subject: [PATCH 004/206] Fix a bug that produces "Wrong value" message --- nars/entity/Concept.java | 26 ++++++++++++++------------ nars/main/Memory.java | 24 +++++++++++++----------- nars/storage/Bag.java | 2 +- 3 files changed, 28 insertions(+), 24 deletions(-) diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index 04aeb2da..bbd59d54 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -299,18 +299,20 @@ public void buildTermLinks(BudgetValue budget) { Term t; Concept concept; TermLink termLink1, termLink2; - BudgetValue subBudget = BudgetFunctions.distributeAmongLinks(budget, termLinkTemplates.size()); - if (subBudget.aboveThreshold()) { - for (TermLink template : termLinkTemplates) { - if (template.getType() != TermLink.TRANSFORM) { - t = template.getTarget(); - concept = Memory.getConcept(t); - termLink1 = new TermLink(t, template, subBudget); - insertTermLink(termLink1); // this termLink to that - termLink2 = new TermLink(term, template, subBudget); - concept.insertTermLink(termLink2); // that termLink to this - if (t instanceof CompoundTerm) { - concept.buildTermLinks(subBudget); + if (termLinkTemplates.size() > 0) { + BudgetValue subBudget = BudgetFunctions.distributeAmongLinks(budget, termLinkTemplates.size()); + if (subBudget.aboveThreshold()) { + for (TermLink template : termLinkTemplates) { + if (template.getType() != TermLink.TRANSFORM) { + t = template.getTarget(); + concept = Memory.getConcept(t); + termLink1 = new TermLink(t, template, subBudget); + insertTermLink(termLink1); // this termLink to that + termLink2 = new TermLink(term, template, subBudget); + concept.insertTermLink(termLink2); // that termLink to this + if (t instanceof CompoundTerm) { + concept.buildTermLinks(subBudget); + } } } } diff --git a/nars/main/Memory.java b/nars/main/Memory.java index 135b1661..c72a683d 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -356,19 +356,21 @@ private static void continuedProcess(Task task, Term content) { if (content instanceof CompoundTerm) { ArrayList termLinks = (contentConcept != null) ? contentConcept.getTermLinkTemplates() : ((CompoundTerm) content).prepareComponentLinks(); // use saved if exist - BudgetValue subBudget = BudgetFunctions.distributeAmongLinks(budget, termLinks.size()); - if (subBudget.aboveThreshold()) { - Term componentTerm; - Concept componentConcept; - for (TermLink termLink : termLinks) { - if (!(task.isStructual() && (termLink.getType() == TermLink.TRANSFORM))) { // avoid circular transform - taskLink = new TaskLink(task, termLink, subBudget); - componentTerm = termLink.getTarget(); - componentConcept = getConcept(componentTerm); - componentConcept.insertTaskLink(taskLink); + if (termLinks.size() > 0) { + BudgetValue subBudget = BudgetFunctions.distributeAmongLinks(budget, termLinks.size()); + if (subBudget.aboveThreshold()) { + Term componentTerm; + Concept componentConcept; + for (TermLink termLink : termLinks) { + if (!(task.isStructual() && (termLink.getType() == TermLink.TRANSFORM))) { // avoid circular transform + taskLink = new TaskLink(task, termLink, subBudget); + componentTerm = termLink.getTarget(); + componentConcept = getConcept(componentTerm); + componentConcept.insertTaskLink(taskLink); + } } + contentConcept.buildTermLinks(budget); // recursively insert TermLink } - contentConcept.buildTermLinks(budget); // recursively insert TermLink } } } diff --git a/nars/storage/Bag.java b/nars/storage/Bag.java index 4afae025..ab3e9a86 100644 --- a/nars/storage/Bag.java +++ b/nars/storage/Bag.java @@ -59,7 +59,7 @@ public abstract class Bag { /** defined in different bags */ protected int capacity; /** current sum of occupied level */ - protected int mass; + protected int mass = 0; /** index to get next level, kept in individual objects */ protected int levelIndex; /** current take out level */ From ed3d2a3de25b1bfe1109a0763df6a908a22cc6b5 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sun, 18 Jan 2009 17:14:51 +0000 Subject: [PATCH 005/206] From 2f65c2a6977088f1a9709c991a56da6b7c4b8b10 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sun, 18 Jan 2009 17:16:18 +0000 Subject: [PATCH 006/206] Open-nars 1.1.2. Minor bugs fixed. --- nars/inference/RuleTables.java | 7 +++++-- nars/inference/SyllogisticRules.java | 2 ++ nars/language/Statement.java | 10 ++++++++++ nars/main/NARS.java | 5 +++-- nars/main/Parameters.java | 2 +- 5 files changed, 21 insertions(+), 5 deletions(-) diff --git a/nars/inference/RuleTables.java b/nars/inference/RuleTables.java index 737b4e75..ceeb8fb5 100644 --- a/nars/inference/RuleTables.java +++ b/nars/inference/RuleTables.java @@ -376,8 +376,11 @@ private static void detachmentWithVar(Sentence mainSentence, Sentence subSentenc } else if (Variable.unify(Variable.VarType.INDEPENDENT, component, content, statement, content)) { SyllogisticRules.detachment(mainSentence, subSentence, index); } else if ((statement instanceof Implication) && (Memory.currentTask.getSentence().isJudgment())) { - SyllogisticRules.introVarIndInner((Statement) content, (Statement) statement.getPredicate(), statement); // tense??? - CompositionalRules.introVarDepInner(statement, statement.getPredicate(), content); // tense??? + Statement s2 = (Statement) statement.getPredicate(); + if (s2.getSubject().equals(((Statement) content).getSubject())) { + SyllogisticRules.introVarIndInner((Statement) content, s2, statement); // tense??? + CompositionalRules.introVarDepInner(statement, s2, content); // tense??? + } } } } diff --git a/nars/inference/SyllogisticRules.java b/nars/inference/SyllogisticRules.java index e4bafbce..46b94151 100644 --- a/nars/inference/SyllogisticRules.java +++ b/nars/inference/SyllogisticRules.java @@ -258,6 +258,8 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int s) { } else { return; } + if ((content instanceof Statement) && ((Statement) content).invalid()) + return; Sentence taskSentence = Memory.currentTask.getSentence(); Sentence beliefSentence = Memory.currentBelief; TruthValue beliefTruth = beliefSentence.getTruth(); diff --git a/nars/language/Statement.java b/nars/language/Statement.java index 9355369f..b7b919dd 100644 --- a/nars/language/Statement.java +++ b/nars/language/Statement.java @@ -296,6 +296,16 @@ public static boolean invalidStatement(Term subject, Term predicate) { } return false; } + + /** + * Check the validity of a potential Statement. [To be refined] + *

+ * Minimum requirement: the two terms cannot be the same, or containing each other as component + * @return Whether The Statement is invalid + */ + public boolean invalid() { + return invalidStatement(getSubject(), getPredicate()); + } /** * Return the first component of the statement diff --git a/nars/main/NARS.java b/nars/main/NARS.java index 56f50f04..a8286750 100644 --- a/nars/main/NARS.java +++ b/nars/main/NARS.java @@ -34,7 +34,7 @@ public class NARS extends Applet implements Runnable { * The information about the version and date of the project. */ public static final String INFO = - " Open-NARS Version 1.1.1 July 2008 \n"; + " Open-NARS Version 1.1.2 January 2009 \n"; /** * The project websites. */ @@ -109,7 +109,8 @@ public void run() { * @return true for application; false for applet. */ public static boolean isStandAlone() { - return standAlone; + return true; // make the application and the applet identical, for now +// return standAlone; } /** diff --git a/nars/main/Parameters.java b/nars/main/Parameters.java index 9fe4fd63..0f6e3959 100644 --- a/nars/main/Parameters.java +++ b/nars/main/Parameters.java @@ -33,7 +33,7 @@ public class Parameters { /** TermLink decay rate in TermLinkBag, in [1, 99]. */ public static final int TERM_LINK_FORGETTING_CYCLE = 50; /** Silent threshold for task reporting, in [0, 100]. */ - public static final int SILENT_LEVEL = 10; + public static final int SILENT_LEVEL = 100; // no spontaneous report /* ---------- time management ---------- */ /** Task decay rate in TaskBuffer, in [1, 99]. */ From 2ff34794006f95d29a3c2933305854b6a2d10fe9 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sat, 15 Aug 2009 12:35:46 +0000 Subject: [PATCH 007/206] Open-nars 1.1.3 source code. The design of temporal inference has been changed to work in real time. --- nars/entity/Concept.java | 221 ++++++++++++++----------- nars/entity/Goal.java | 3 +- nars/entity/Judgment.java | 21 ++- nars/entity/Question.java | 17 +- nars/entity/Sentence.java | 105 ++++++++---- nars/entity/ShortFloat.java | 6 +- nars/entity/Stamp.java | 42 ++--- nars/entity/Task.java | 4 +- nars/entity/TemporalValue.java | 115 +++++++++++++ nars/entity/package.html | 1 + nars/inference/CompositionalRules.java | 24 ++- nars/inference/MatchingRules.java | 63 +++---- nars/inference/RuleTables.java | 5 +- nars/inference/StructuralRules.java | 4 +- nars/inference/SyllogisticRules.java | 135 ++++++++------- nars/inference/TemporalRules.java | 166 +++++++++---------- nars/inference/TruthFunctions.java | 101 ++++++----- nars/io/StringParser.java | 33 ++-- nars/language/CompoundTerm.java | 24 +-- nars/language/Conjunction.java | 201 +++++++++++++++++----- nars/language/ConjunctionParallel.java | 137 --------------- nars/language/ConjunctionSequence.java | 110 ------------ nars/language/Equivalence.java | 88 +++++++--- nars/language/EquivalenceAfter.java | 109 ------------ nars/language/EquivalenceWhen.java | 103 ------------ nars/language/Implication.java | 79 +++++---- nars/language/ImplicationAfter.java | 108 ------------ nars/language/ImplicationBefore.java | 108 ------------ nars/language/ImplicationWhen.java | 108 ------------ nars/language/Statement.java | 120 ++++---------- nars/language/Temporal.java | 29 ---- nars/language/Term.java | 8 +- nars/language/package.html | 14 +- nars/main/Center.java | 9 + nars/main/Memory.java | 71 +++++--- nars/main/NARS.java | 2 +- nars/main/Parameters.java | 2 +- nars/overview.html | 2 +- 38 files changed, 1003 insertions(+), 1495 deletions(-) create mode 100644 nars/entity/TemporalValue.java delete mode 100644 nars/language/ConjunctionParallel.java delete mode 100644 nars/language/ConjunctionSequence.java delete mode 100644 nars/language/EquivalenceAfter.java delete mode 100644 nars/language/EquivalenceWhen.java delete mode 100644 nars/language/ImplicationAfter.java delete mode 100644 nars/language/ImplicationBefore.java delete mode 100644 nars/language/ImplicationWhen.java delete mode 100644 nars/language/Temporal.java diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index bbd59d54..69c0a1bb 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -41,27 +41,30 @@ public final class Concept extends Item { /** The term is the unique ID of the concept */ private Term term; - /** Question directly asked about the term */ - private Question directQuestion; - /** Goals directly requested on the term */ - private ArrayList directGoals; - /** Judgments directly made about the term */ - private ArrayList directBeliefs; - /** Whether truth value of judgments can be revised */ - private boolean revisible = true; // /** Task links for indirect processing */ private TaskLinkBag taskLinks; /** Term links between the term and its components and compounds */ private TermLinkBag termLinks; /** Link templates of TermLink, only in concepts with CompoundTerm */ private ArrayList termLinkTemplates; - /** Whether the term specifies an event [to be refined] */ - private boolean event = false; + /** Question directly asked about the term */ + private ArrayList pendingQuestions; + /** Goals directly requested on the term */ + private ArrayList pendingGoals; + /** Judgments directly made about the term, with non-future tense */ + private ArrayList pastRecords; + /** Judgments directly made about the term, with future tense */ + private ArrayList predictions; // event only + /** Most recent and confidence judgment */ + private Judgment presentBelief = null; + /** Whether truth value of judgments can be revised */ + private boolean revisible = true; // /** Whether the content of the concept is being displayed */ private boolean showing = false; /** The display window */ private ConceptWindow window = null; + /* ---------- constructor and intialization ---------- */ /** * Constructor, called in Memory.getConcept only @@ -71,17 +74,18 @@ public Concept(Term tm) { super(); key = tm.toString(); term = tm; - directQuestion = null; - directGoals = new ArrayList(); - directBeliefs = new ArrayList(); + pendingQuestions = new ArrayList(); + pendingGoals = new ArrayList(); + pastRecords = new ArrayList(); + predictions = new ArrayList(); taskLinks = new TaskLinkBag(); termLinks = new TermLinkBag(); if (tm instanceof CompoundTerm) { termLinkTemplates = ((CompoundTerm) tm).prepareComponentLinks(); checkRevisibility(); - if (tm instanceof Temporal) { - markEventComponents(); - } +// if (tm instanceof Temporal) { +// markEventComponents(); +// } } } @@ -92,20 +96,6 @@ private void checkRevisibility() { revisible = ((key.indexOf("()") < 0) && (key.indexOf("(#")) < 0); } - /** - * Terms in temporal compounds is event - */ - private void markEventComponents() { - Term component; - for (TermLink tLink : termLinkTemplates) { - component = tLink.getTarget(); - Concept concept = Memory.termToConcept(component); - if (concept != null) { - concept.setEvent(); - } - } - } - /* ---------- direct processing of tasks ---------- */ /** * Directly process a new task. Called exactly once on each task. @@ -135,11 +125,25 @@ public void directProcess(Task task) { * @param task The task to be processed */ private void processQuestion(Question ques, Task task) { - if (directQuestion == null) { // keep the existing one for answer information - directQuestion = ques; + boolean duplicate = false; + for (Question q : pendingQuestions) { // keep the existing one for answer information + if (q.equals(ques)) { + duplicate = true; + } + } + if (!duplicate) { + pendingQuestions.add(ques); } - for (Judgment judg : directBeliefs) { - MatchingRules.trySolution(directQuestion, judg, task); // look for better answer + if ((ques.temporalOrder == null) || ques.temporalOrder.getDelta() < 0) { + for (Judgment judg : pastRecords) { + MatchingRules.trySolution(ques, judg, task); // look for better answer + } + } else if (ques.temporalOrder.getDelta() > 0) { + for (Judgment judg : predictions) { + MatchingRules.trySolution(ques, judg, task); // look for better answer + } + } else if (presentBelief != null) { + MatchingRules.trySolution(ques, presentBelief, task); } } @@ -151,13 +155,13 @@ private void processQuestion(Question ques, Task task) { private void processGoal(Goal goal, Task task) { boolean revised = false; if (revisible) { - revised = reviseTable(goal, task, directGoals); // revise desire - } - if (revised) { // don't process this goal, but the revised version - return; + revised = reviseTable(goal, task, pendingGoals); // revise desire + if (revised) { // don't process this goal, but the revised version + return; + } } - for (Judgment judg : directBeliefs) { - MatchingRules.trySolution(goal, judg, task); // reality check + if (presentBelief != null) { + MatchingRules.trySolution(goal, presentBelief, task); // reality check } Term content = goal.getContent(); if ((task.getPriority() >= Parameters.PRIORITY_THRESHOLD) && (content instanceof Inheritance)) { @@ -172,7 +176,9 @@ private void processGoal(Goal goal, Task task) { } } if (task.aboveThreshold()) { - addToTable(goal, directGoals, Parameters.MAXMUM_GOALS_LENGTH); // indirectly archiving + addToTable(goal, pendingGoals, Parameters.MAXMUM_GOALS_LENGTH); // indirectly archiving + Question ques = new Question(goal); + Memory.activatedTask(task.getBudget(), ques, false); } } @@ -182,25 +188,29 @@ private void processGoal(Goal goal, Task task) { * @param task The task to be processed */ private void processJudgment(Judgment judg, Task task) { - if (judg.getTense() != TemporalRules.Relation.NONE) { - setEvent(); - } if (revisible) { - boolean revised = reviseTable(judg, task, directBeliefs); + boolean revised; + if (judg.isFuture()) { + revised = reviseTable(judg, task, predictions); + } else { + revised = reviseTable(judg, task, pastRecords); + } if (!revised) { - if (isEvent()) { - TemporalRules.eventProcessing(task); - } + tryUpdate(judg); } } if (task.aboveThreshold()) { - if (directQuestion != null) { - MatchingRules.trySolution(directQuestion, judg, task); + for (Question ques : pendingQuestions) { + MatchingRules.trySolution(ques, judg, task); } - for (Goal goal : directGoals) { + for (Goal goal : pendingGoals) { MatchingRules.trySolution(goal, judg, task); } - addToTable(judg, directBeliefs, Parameters.MAXMUM_BELIEF_LENGTH); + if (judg.isFuture()) { + addToTable(judg, predictions, Parameters.MAXMUM_BELIEF_LENGTH); + } else { + addToTable(judg, pastRecords, Parameters.MAXMUM_BELIEF_LENGTH); + } } } @@ -208,41 +218,56 @@ private void processJudgment(Judgment judg, Task task) { * Revise existing beliefs or goals * @param task The task to be processed * @param table The table to be revised + * @return Whether the new belief triggered a temporalRevision */ private boolean reviseTable(Judgment newSentence, Task task, ArrayList table) { boolean revised = false; Judgment belief; for (int i = table.size() - 1; i >= 0; i--) { belief = (Judgment) table.get(i); - if ((newSentence.getTense() == belief.getTense()) && belief.noOverlapping(newSentence)) { - if (isUpdate(newSentence, belief)) { - MatchingRules.update(task, belief); - table.remove(i); - } else { - revised |= MatchingRules.revision(task, belief, false); - } + if ((table == predictions) && !newSentence.isFuture()) { + table.remove(i); + addToTable(belief, pastRecords, Parameters.MAXMUM_BELIEF_LENGTH); + } else if (belief.noOverlapping(newSentence)) { + revised |= MatchingRules.revision(task, belief, false); } } return revised; } /** - * Distinguish update from revision [to be refined] - * @param newBelief The new belief - * @param oldBelief The previous belief - * @return Whether the operation is update + * To temporalRevision the presentBelief + * @param judg The new belief */ - private boolean isUpdate(Judgment newBelief, Judgment oldBelief) { - if (oldBelief.getTense() != TemporalRules.Relation.WHEN) { - return false; // only update belief with present tense - } - if (newBelief.getTruth().getExpDifAbs(oldBelief.getTruth()) < 0.5) { - return false; // update means major change in expectation - } - if ((newBelief.getStamp().latest() <= oldBelief.getStamp().latest())) { - return false; // update previous experience with recent experience + private void tryUpdate(Judgment judg) { + if (presentBelief == null) { + presentBelief = judg; + } else { // presentBelief != null + if (presentBelief.getTense() == null) { + if (judg.getTense() == null) { + if (presentBelief.getTruth().getConfidence() < judg.getTruth().getConfidence()) { + presentBelief = judg; + } + } else { // judg.getTense() != null + if (judg.getEventTime() == Center.getTime()) { + presentBelief = judg; + } + } + } else { // presentBelief.getTense() != null + if (judg.getTense() != null) { + if (judg.getEventTime() < presentBelief.getEventTime()) { + return; + } + if (judg.getTruth().getExpDifAbs(presentBelief.getTruth()) > 0.5) { + presentBelief = judg; + } else if (judg.noOverlapping(presentBelief)) { + TemporalRules.temporalRevision(judg, presentBelief, Center.getTime(), false); + } else if (presentBelief.getTruth().getConfidence() < judg.getTruth().getConfidence()) { + presentBelief = judg; + } + } + } } - return true; } /** @@ -338,21 +363,6 @@ public Term getTerm() { return term; } - /** - * Distinguish events from non-events - * @return Whether the concept is an event - */ - public boolean isEvent() { - return event; - } - - /** - * Mark the concept as an event - */ - public void setEvent() { - event = true; - } - /** * Return a string representation of the concept, called in ConceptBag only * @return The concept name, with budget in the full version @@ -397,8 +407,8 @@ public ArrayList getTermLinkTemplates() { public Judgment getBelief(Task task) { Sentence taskSentence = task.getSentence(); Judgment belief; - for (int i = 0; i < directBeliefs.size(); i++) { - belief = directBeliefs.get(i); + for (int i = 0; i < pastRecords.size(); i++) { + belief = pastRecords.get(i); if (belief.noOverlapping(taskSentence)) { Record.append(" * Selected Belief: " + belief + "\n"); return belief; @@ -474,20 +484,33 @@ public void stop() { */ private String displayContent() { StringBuffer buffer = new StringBuffer(); - if (directBeliefs.size() > 0) { - buffer.append(" Beliefs:\n"); - for (int i = 0; i < directBeliefs.size(); i++) { - buffer.append(directBeliefs.get(i) + "\n"); + if (presentBelief != null) { + buffer.append(" Present Belief:\n"); + buffer.append(presentBelief + "\n"); + } + if (pastRecords.size() > 0) { + buffer.append("\n Beliefs:\n"); + for (Sentence s : pastRecords) { + buffer.append(s + "\n"); } } - if (directGoals.size() > 0) { + if (predictions.size() > 0) { + buffer.append("\n Predictions:\n"); + for (Sentence s : predictions) { + buffer.append(s + "\n"); + } + } + if (pendingGoals.size() > 0) { buffer.append("\n Goals:\n"); - for (int i = 0; i < directGoals.size(); i++) { - buffer.append(directGoals.get(i) + "\n"); + for (Sentence s : pendingGoals) { + buffer.append(s + "\n"); } } - if (directQuestion != null) { - buffer.append("\n Question:\n" + directQuestion + "\n"); + if (pendingQuestions.size() > 0) { + buffer.append("\n Question:\n"); + for (Sentence s : pendingQuestions) { + buffer.append(s + "\n"); + } } return buffer.toString(); } diff --git a/nars/entity/Goal.java b/nars/entity/Goal.java index 6f0897aa..ed5b9562 100644 --- a/nars/entity/Goal.java +++ b/nars/entity/Goal.java @@ -21,7 +21,6 @@ package nars.entity; -import nars.inference.TemporalRules; import nars.language.Term; /** @@ -38,7 +37,7 @@ public class Goal extends Judgment { * @param s The stamp */ public Goal(Term term, char punc, TruthValue t, Stamp s) { - super(term, punc, TemporalRules.Relation.NONE, t, s); + super(term, punc, t, s); } } diff --git a/nars/entity/Judgment.java b/nars/entity/Judgment.java index 9cf00033..10b929d1 100644 --- a/nars/entity/Judgment.java +++ b/nars/entity/Judgment.java @@ -20,7 +20,6 @@ */ package nars.entity; -import nars.inference.TemporalRules; import nars.io.Symbols; import nars.language.Term; import nars.main.Parameters; @@ -34,14 +33,12 @@ public class Judgment extends Sentence { * Constructor * @param term The content * @param punc The punctuation - * @param s The tense * @param t The truth value * @param b The stamp */ - public Judgment(Term term, char punc, TemporalRules.Relation s, TruthValue t, Stamp b) { + public Judgment(Term term, char punc, TruthValue t, Stamp b) { content = term; punctuation = punc; - tense = s; truth = t; stamp = b; } @@ -53,7 +50,7 @@ public Judgment(Term term, char punc, TemporalRules.Relation s, TruthValue t, St public Judgment(Goal g) { content = g.cloneContent(); punctuation = Symbols.JUDGMENT_MARK; - tense = TemporalRules.Relation.BEFORE; + temporalOrder = new TemporalValue(0); truth = new TruthValue(1.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); stamp = new Stamp(); } @@ -67,7 +64,8 @@ public Judgment(Goal g) { */ boolean equivalentTo(Judgment that) { assert content.equals(that.getContent()); - return (truth.equals(that.getTruth()) && stamp.equals(that.getStamp())); + return (truth.equals(that.getTruth()) && stamp.equals(that.getStamp()) + && TemporalValue.equal(temporalOrder, that.getTense())); } /** @@ -84,5 +82,16 @@ public float solutionQuality(Sentence problem) { return truth.getExpectation() / content.getComplexity(); } } + + /** + * Check if the judgment predict a future event + * @return Whether the judgment has a future sense + */ + public boolean isFuture() { + if (temporalOrder == null) + return false; + long eventTime = stamp.getCreationTime() + temporalOrder.getDelta(); + return eventTime > nars.main.Center.getTime(); + } } diff --git a/nars/entity/Question.java b/nars/entity/Question.java index ef7d1f15..1380bbc2 100644 --- a/nars/entity/Question.java +++ b/nars/entity/Question.java @@ -21,8 +21,8 @@ package nars.entity; -import nars.inference.TemporalRules; import nars.language.Term; +import nars.io.Symbols; /** * A Question is a sentence without a truth value, and may conain query variables @@ -33,13 +33,22 @@ public class Question extends Sentence { * COnstructor * @param term The content * @param punc The punctuation - * @param t The tense * @param s The stamp */ - public Question(Term term, char punc, TemporalRules.Relation t, Stamp s) { + public Question(Term term, char punc, Stamp s) { content = term; punctuation = punc; - tense = t; stamp = s; } + + /** + * Construct a Judgment to indicate an operation just executed + * @param g The goal that trigger the execution + */ + public Question(Goal g) { + content = g.cloneContent(); + punctuation = Symbols.QUESTION_MARK; + temporalOrder = new TemporalValue(0); + stamp = new Stamp(); + } } diff --git a/nars/entity/Sentence.java b/nars/entity/Sentence.java index e3f5734d..caf43934 100644 --- a/nars/entity/Sentence.java +++ b/nars/entity/Sentence.java @@ -20,7 +20,6 @@ */ package nars.entity; -import nars.inference.TemporalRules; import nars.io.Symbols; import nars.language.*; import nars.main.*; @@ -36,8 +35,6 @@ public abstract class Sentence implements Cloneable { protected Term content; /** The punctuation also indicates the type of the Sentence: Judgment, Question, or Goal */ protected char punctuation; - /** The tense of a Sentence can be BEFORE(past), WHEN(present), AFTER(future), or NONE */ - protected TemporalRules.Relation tense = TemporalRules.Relation.NONE; /** The truth value of Judgment or desire value of Goal */ protected TruthValue truth = null; /** Partial record of the derivation path */ @@ -46,6 +43,10 @@ public abstract class Sentence implements Cloneable { protected boolean input = false; /** For Question and Goal: best solution found so far */ protected Judgment bestSolution = null; + /** + * Temporal order between the components + */ + protected TemporalValue temporalOrder = null; /** * Make a Sentence from an input String. Called by StringParser. @@ -56,20 +57,27 @@ public abstract class Sentence implements Cloneable { * @param stamp The stamp of the truth value (for Judgment or Goal) * @return the Sentence generated from the arguments */ - public static Sentence make(Term term, char punc, TemporalRules.Relation tense, TruthValue truth, Stamp stamp) { + public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, TemporalValue tense) { if (term instanceof CompoundTerm) { ((CompoundTerm) term).renameVariables(); } + Sentence s = null; switch (punc) { case Symbols.JUDGMENT_MARK: - return new Judgment(term, punc, tense, truth, stamp); + s = new Judgment(term, punc, truth, stamp); + s.temporalOrder = tense; + break; case Symbols.GOAL_MARK: - return new Goal(term, punc, truth, stamp); + s = new Goal(term, punc, truth, stamp); + break; case Symbols.QUESTION_MARK: - return new Question(term, punc, tense, stamp); + s = new Question(term, punc, stamp); + s.temporalOrder = tense; + break; default: return null; } + return s; } /** @@ -81,17 +89,21 @@ public static Sentence make(Term term, char punc, TemporalRules.Relation tense, * @param stamp The stamp of the truth value (for Judgment or Goal) * @return the Sentence generated from the arguments */ - public static Sentence make(Sentence oldS, Term term, TemporalRules.Relation tense, TruthValue truth, Stamp stamp) { + public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, TemporalValue tense) { if (term instanceof CompoundTerm) { ((CompoundTerm) term).renameVariables(); } + Sentence s = null; if (oldS instanceof Question) { - return new Question(term, Symbols.QUESTION_MARK, tense, stamp); + s = new Question(term, Symbols.QUESTION_MARK, stamp); + s.temporalOrder = tense; + } else if (oldS instanceof Goal) { + s = new Goal(term, Symbols.GOAL_MARK, truth, stamp); + } else { + s = new Judgment(term, Symbols.JUDGMENT_MARK, truth, stamp); + s.temporalOrder = tense; } - if (oldS instanceof Goal) { - return new Goal(term, Symbols.GOAL_MARK, truth, stamp); - } - return new Judgment(term, Symbols.JUDGMENT_MARK, tense, truth, stamp); + return s; } /** @@ -100,7 +112,7 @@ public static Sentence make(Sentence oldS, Term term, TemporalRules.Relation ten */ @Override public Object clone() { - return make(content, punctuation, tense, truth, stamp); + return make(content, punctuation, truth, stamp, temporalOrder); } /** @@ -131,16 +143,8 @@ public void setContent(Term t) { * Get the tense of the Sentence * @return The tense of the Sentence */ - public TemporalRules.Relation getTense() { - return tense; - } - - /** - * Set the tense of the Sentence - * @param t The new tense of the Sentence - */ - public void setTense(TemporalRules.Relation t) { - tense = t; + public TemporalValue getTense() { + return temporalOrder; } /** @@ -211,6 +215,25 @@ public boolean noOverlapping(Sentence that) { return (Memory.currentStamp != null); } + /** + * Get a stable String representation for a Sentece + * Different from toString: tense symbol is replaced by the actual value + * @return String representation for a Sentece + */ + public String toKey() { + StringBuffer s = new StringBuffer(); + s.append(content.getName()); + s.append(punctuation + " "); + if (temporalOrder != null) { + s.append(temporalOrder.getDelta() + " "); + } + if (truth != null) { + s.append(truth.toString()); + } + s.append(stamp.toString()); + return s.toString(); + } + /** * Get a String representation of the sentence * @return The String @@ -258,16 +281,34 @@ public String toString2() { * Get a String representation of the tense of the sentence * @return The String */ - private String tenseToString() { - if (tense == TemporalRules.Relation.BEFORE) { - return Symbols.TENSE_PAST + " "; + public String tenseToString() { + TemporalValue t = getTense(); + if (t == null) { + return ""; } - if (tense == TemporalRules.Relation.WHEN) { - return Symbols.TENSE_PRESENT + " "; - } - if (tense == TemporalRules.Relation.AFTER) { + int delta = (int) (getEventTime() - Center.getTime()); + if (delta > 0) { return Symbols.TENSE_FUTURE + " "; } - return ""; + if (delta < 0) { + return Symbols.TENSE_PAST + " "; + } + return Symbols.TENSE_PRESENT + " "; + } + + /** + * Get the creation time of the truth-value from the Stamp + * @return The creation time of the truth-value + */ + public long getCreationTime() { + return getStamp().getCreationTime(); + } + + /** + * Get the occurrence time of the event + * @return The occurrence time of the event + */ + public long getEventTime() { + return getCreationTime() + getTense().getDelta(); } } diff --git a/nars/entity/ShortFloat.java b/nars/entity/ShortFloat.java index b24764c9..0cb65bba 100644 --- a/nars/entity/ShortFloat.java +++ b/nars/entity/ShortFloat.java @@ -92,7 +92,7 @@ public int hashCode() { */ @Override public String toString() { - if (value == 10000) { + if (value >= 10000) { return "1.0000"; } else { String s = String.valueOf(value); @@ -104,11 +104,13 @@ public String toString() { } /** - * Convert the value into a String + * Round the value into a short String * @return The String representation, with 2 digits accuracy */ public String toString2() { + value += 50; String s = toString(); + value -= 50; if (s.length() > 4) { return s.substring(0, 4); } else { diff --git a/nars/entity/Stamp.java b/nars/entity/Stamp.java index 6f0d79c6..e44ecd70 100644 --- a/nars/entity/Stamp.java +++ b/nars/entity/Stamp.java @@ -23,7 +23,7 @@ import java.util.*; import nars.io.Symbols; -import nars.main.Parameters; +import nars.main.*; import nars.inference.*; /** @@ -32,12 +32,14 @@ * The derived sentences inherits from its parents, then cut at the length limit. */ public class Stamp implements Cloneable { + /** serial number, for the whole system */ + private static long current = 0; /** serial numbers */ private long[] list; /** current stamp length */ private int length; - /** serial number, for the whole system */ - private static long current = 0; + /** creation time of the stamp */ + private final long creationTime = nars.main.Center.getTime(); /** * Generate a new stamp, with a new serial number, for input sentence @@ -157,37 +159,21 @@ public int hashCode() { } /** - * Get the latest Stamp in the list - * @return The largest number in the stamp + * Get the creationTime of the truth-value + * @return The creation time */ - public long latest() { - TreeSet set = toSet(); - Long number = set.last(); - return (long) number; + public long getCreationTime() { + return creationTime; } /** * Compare two Stamps for their temporal order - * @param that The STamp to be compared + * @param that The Stamp to be compared * @return The temporal order */ - public TemporalRules.Relation orderWith(Stamp that) { - TreeSet set1 = toSet(); - TreeSet set2 = that.toSet(); - long first1 = (long) set1.first(); - long last1 = (long) set1.last(); - long first2 = (long) set2.first(); - long last2 = (long) set2.last(); - if (last1 < first2) { - return TemporalRules.Relation.AFTER; - } - if (last2 < first1) { - return TemporalRules.Relation.BEFORE; - } - if ((first1 == first2) && (last1 == last2)) { - return TemporalRules.Relation.WHEN; - } - return null; + public TemporalValue orderWith(Stamp that) { + int delta = (int) (creationTime - that.getCreationTime()); + return new TemporalValue(delta); } /** @@ -196,7 +182,7 @@ public TemporalRules.Relation orderWith(Stamp that) { */ @Override public String toString() { - StringBuffer buffer = new StringBuffer(" " + Symbols.STAMP_OPENER + length + Symbols.STAMP_STARTER + " "); + StringBuffer buffer = new StringBuffer(" " + Symbols.STAMP_OPENER + creationTime + Symbols.STAMP_STARTER + " "); for (int i = 0; i < length; i++) { buffer.append(Long.toString(list[i])); if (i < (length - 1)) { diff --git a/nars/entity/Task.java b/nars/entity/Task.java index 302fc36c..89479c1d 100644 --- a/nars/entity/Task.java +++ b/nars/entity/Task.java @@ -41,7 +41,7 @@ public class Task extends Item { public Task(Sentence s, BudgetValue b) { super(b); sentence = s; - key = sentence.toString(); + key = sentence.toKey(); } /** @@ -64,7 +64,7 @@ public Term getContent() { * Directly get the tense of the sentence * @return The tense of the sentence */ - public TemporalRules.Relation getTense() { + public TemporalValue getTense() { return sentence.getTense(); } diff --git a/nars/entity/TemporalValue.java b/nars/entity/TemporalValue.java new file mode 100644 index 00000000..4cd512fd --- /dev/null +++ b/nars/entity/TemporalValue.java @@ -0,0 +1,115 @@ +/* + * TemporalValue.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ + +package nars.entity; + +import nars.io.Symbols; + +/** + * Temporal information, in terms of the internal clock of the system. + * In an Implication or Equivalence, the value indicates the interval from the first event to the second. + * In a Conjunction, the value can only be 0 (parallel) or 1 (suquential). + * In a Sentence, the value indicates the interval from when the sentence is created to when the event happens. + * @author Pei Wang + */ +public class TemporalValue { + private int delta; + + /** + * Constructor, with a given number + * @param t The temporal difference of the item + */ + public TemporalValue(int t) { + delta = t; + } + + /** + * Constructor, with a String representation + * @param s The temporal difference of the item as a String + */ + public TemporalValue(String s) { + if (s.equals(Symbols.TENSE_FUTURE) || s.equals(Symbols.SEQUENCE_OPERATOR) + || s.equals(Symbols.IMPLICATION_AFTER_RELATION) || s.equals(Symbols.EQUIVALENCE_AFTER_RELATION)) + delta = 1; + else if (s.equals(Symbols.TENSE_PAST) || s.equals(Symbols.IMPLICATION_BEFORE_RELATION)) + delta = -1; + else + delta = 0; + } + + /** + * Directly report the time difference + * @return The delta value + */ + public int getDelta() { + return delta; + } + + /** + * Get the reverse temporal difference of a given one + * @param t The given temporal value + * @return The reverse temporal value + */ + public static TemporalValue getReverse(TemporalValue t) { + if (t == null) { + return null; + } else { + return new TemporalValue(0 - t.getDelta()); + } + } + + /** + * Check if two temporal values have the same content + * @param t1 The first temporal value + * @param t2 The second temporal value + * @return If the two dicuate the same temporal relation + */ + public static boolean equal(TemporalValue t1, TemporalValue t2) { + if (t1 == t2) { + return true; + } + if ((t1 == null) || (t2 == null)) { + return false; + } + return (t1.getDelta() == t2.getDelta()); + } + + /** + * Check if the first temporal valie is closer to the given time than the second + * @param t1 The first temporal value + * @param t2 The second temporal value + * @param t The target temporal value + * @return If the first is closer to the target + */ + public static boolean closer(TemporalValue t1, TemporalValue t2, TemporalValue t) { + if (t1 != null) { + if (t2 == null) { + return true; + } else { + int time1 = t1.getDelta(); + int time2 = t2.getDelta(); + int time = t.getDelta(); + return (Math.abs(time1 - time) < Math.abs(time2 - time)); + } + } + return false; + } +} diff --git a/nars/entity/package.html b/nars/entity/package.html index 1eb73d9a..cad3e206 100644 --- a/nars/entity/package.html +++ b/nars/entity/package.html @@ -15,6 +15,7 @@

Package Specification

  • TaskLink: special TermLink refering to a Task, whose Term equals or contains the current Term.
  • Concept: labeled by a Term, contains a TaskLink bag and a TermLink bag for indirect tasks/beliefs, as well as beliefs/questions/goals directly on the Term.
  • Item: Concept, Task, or TermLink
  • +
  • TemporalValue: A relative time used in Sentence (for tense), Conjunction (for order), and Implication/Equivalence (for time interval)
  • in NARS, each task is processed in two stages: diff --git a/nars/inference/CompositionalRules.java b/nars/inference/CompositionalRules.java index 100f53ba..701c6d2c 100644 --- a/nars/inference/CompositionalRules.java +++ b/nars/inference/CompositionalRules.java @@ -50,11 +50,7 @@ static void composeCompound(Sentence taskSentence, Judgment belief, int index) { if (content1.getClass() != content2.getClass()) { return; } - if (content1.getTemporalOrder() != content2.getTemporalOrder()) { - return; - } - if (taskSentence.getTense() == belief.getTense()) { - Memory.currentTense = taskSentence.getTense(); + if (TemporalRules.sameTime((Judgment) taskSentence, belief)) { Term component1, component2; component1 = content1.componentAt(1 - index); component2 = content2.componentAt(1 - index); @@ -80,9 +76,9 @@ static void composeCompound(Sentence taskSentence, Judgment belief, int index) { t4 = DifferenceExt.make(component2, component1); } else if (content1 instanceof Implication) { t1 = Disjunction.make(component1, component2); - t2 = Conjunction.make(component1, component2); - t3 = Conjunction.make(component1, Negation.make(component2)); - t4 = Conjunction.make(component2, Negation.make(component1)); + t2 = Conjunction.make(component1, component2, null); + t3 = Conjunction.make(component1, Negation.make(component2), null); + t4 = Conjunction.make(component2, Negation.make(component1), null); } processComposed(content1, component, t1, TruthFunctions.union(v1, v2)); processComposed(content1, component, t2, TruthFunctions.intersection(v1, v2)); @@ -95,7 +91,7 @@ static void composeCompound(Sentence taskSentence, Judgment belief, int index) { t3 = DifferenceInt.make(component1, component2); t4 = DifferenceInt.make(component2, component1); } else if (content1 instanceof Implication) { - t1 = Conjunction.make(component1, component2); + t1 = Conjunction.make(component1, component2, null); t2 = Disjunction.make(component1, component2); t3 = Disjunction.make(component1, Negation.make(component2)); t4 = Disjunction.make(component2, Negation.make(component1)); @@ -290,14 +286,14 @@ private static Conjunction introVarDep(Statement premise1, Statement premise2, i state1 = Statement.make(premise1, premise1.getSubject(), var1); state2 = Statement.make(premise2, premise2.getSubject(), var2); } - TemporalRules.Relation tense1 = Memory.currentTask.getTense(); - TemporalRules.Relation tense2 = Memory.currentBelief.getTense(); + TemporalValue tense1 = Memory.currentTask.getTense(); + TemporalValue tense2 = Memory.currentBelief.getTense(); if (tense1 == tense2) { Memory.currentTense = tense1; - if (tense1 == TemporalRules.Relation.WHEN) { - return (Conjunction) ConjunctionParallel.make(state1, state2); + if ((tense1 != null) && (tense1.getDelta() == 0)) { + return (Conjunction) Conjunction.make(state1, state2, tense1); } else { - return (Conjunction) Conjunction.make(state1, state2); + return (Conjunction) Conjunction.make(state1, state2, null); } } else { return null; diff --git a/nars/inference/MatchingRules.java b/nars/inference/MatchingRules.java index 9c4f2b83..30a46254 100644 --- a/nars/inference/MatchingRules.java +++ b/nars/inference/MatchingRules.java @@ -22,14 +22,14 @@ import nars.entity.*; import nars.language.*; -import nars.main.Memory; +import nars.main.*; /** * Directly process a task by a oldBelief, with only two Terms in both. * In matching, the new task is compared with all existing direct Tasks in that Concept, to carry out: *

    - * revision: between judgments on non-overlapping evidence; - * update: between judgments; + * temporalRevision: between judgments on non-overlapping evidence; + * temporalRevision: between judgments; * satisfy: between a Judgment and a Question/Goal; * merge: between items of the same type and stamp; * conversion: between different inheritance relations. @@ -53,19 +53,6 @@ public static void match(Task task, Judgment belief) { } } - /** - * Belief update - *

    - * called from oncept.reviseTable - * @param task The task containing new belief - * @param oldBelief The previous belief with the same content - */ - public static void update(Task task, Judgment oldBelief) { - BudgetValue budget = BudgetFunctions.update(task, oldBelief.getTruth()); - Memory.currentTense = TemporalRules.Relation.BEFORE; - Memory.doublePremiseTask(budget, oldBelief.getContent(), oldBelief.getTruth()); - } - // called from Concept (direct) and match (indirect) /** * Belief revision *

    @@ -73,17 +60,16 @@ public static void update(Task task, Judgment oldBelief) { * @param task The task containing new belief * @param oldBelief The previous belief with the same content * @param feedbackToLinks Whether to send feedback to the links - * @return Whether revision happened + * @return Whether temporalRevision happened */ public static boolean revision(Task task, Judgment oldBelief, boolean feedbackToLinks) { Judgment newBelief = (Judgment) task.getSentence(); - if (newBelief.getTense() == oldBelief.getTense()) { + if (TemporalRules.sameTime(newBelief, oldBelief)) { TruthValue tTruth = newBelief.getTruth(); TruthValue bTruth = oldBelief.getTruth(); TruthValue truth = TruthFunctions.revision(tTruth, bTruth); BudgetValue budget = BudgetFunctions.revise(tTruth, bTruth, truth, task, feedbackToLinks); Term content = newBelief.getContent(); - Memory.currentTense = newBelief.getTense(); Memory.doublePremiseTask(budget, content, truth); return true; } else { @@ -98,13 +84,6 @@ public static boolean revision(Task task, Judgment oldBelief, boolean feedbackTo * @param task The task to be processed */ public static void trySolution(Sentence problem, Judgment belief, Task task) { - if (problem instanceof Goal) { - if (belief.getTense() == TemporalRules.Relation.AFTER) { - return; - } - } else if ((problem.getTense() != belief.getTense()) && (belief.getTense() != TemporalRules.Relation.NONE)) { - return; - } Judgment oldBest = problem.getBestSolution(); if (betterSolution(belief, oldBest, problem)) { problem.setBestSolution(belief); @@ -126,6 +105,11 @@ private static boolean betterSolution(Judgment newSol, Judgment oldSol, Sentence if (oldSol == null) { return true; } else { + if ((problem instanceof Question) && (problem.getTense() != null)) { + if(TemporalValue.closer(newSol.getTense(), oldSol.getTense(), problem.getTense())) { + return true; + } + } return (newSol.solutionQuality(problem) > oldSol.solutionQuality(problem)); } } @@ -137,7 +121,12 @@ private static boolean betterSolution(Judgment newSol, Judgment oldSol, Sentence public static void matchReverse() { Task task = Memory.currentTask; Judgment belief = Memory.currentBelief; - if (task.getContent().getTemporalOrder() != TemporalRules.reverse(belief.getContent().getTemporalOrder())) { + TemporalValue t1 = task.getContent().getOrder(); + TemporalValue t2 = belief.getContent().getOrder(); + if (((t1 == null) && (t2 != null)) || ((t1 != null) && (t2 == null))) { + return; + } + if ((t1 != t2) && (t1.getDelta() + t2.getDelta() != 0)) { return; } Sentence sentence = task.getSentence(); @@ -146,7 +135,6 @@ public static void matchReverse() { } else { conversion(); } - } /** @@ -156,9 +144,9 @@ public static void matchReverse() { * @param figure location of the shared term */ public static void matchAsymSym(Sentence asym, Sentence sym, int figure) { - TemporalRules.Relation order1 = asym.getContent().getTemporalOrder(); - TemporalRules.Relation order2 = sym.getContent().getTemporalOrder(); - TemporalRules.Relation order = TemporalRules.temporalSyllogism(order1, order2, figure); + TemporalValue order1 = asym.getContent().getOrder(); + TemporalValue order2 = sym.getContent().getOrder(); + TemporalValue order = TemporalRules.syllogistic(order1, order2, figure); if (order == null) { return; } @@ -178,18 +166,17 @@ public static void matchAsymSym(Sentence asym, Sentence sym, int figure) { */ private static void inferToSym(Judgment judgment1, Judgment judgment2) { Statement s1 = (Statement) judgment1.getContent(); - Statement s2 = (Statement) judgment2.getContent(); Term t1 = s1.getSubject(); Term t2 = s1.getPredicate(); Term content; if (s1 instanceof Inheritance) { content = Similarity.make(t1, t2); - } else if (s1 instanceof ImplicationAfter) { - content = EquivalenceAfter.make(t1, t2); - } else if (s1 instanceof ImplicationBefore) { - content = EquivalenceAfter.make(t2, t1); } else { - content = Equivalence.make(t1, t2); + TemporalValue order = s1.getOrder(); + if ((order != null) && order.getDelta() < 0) + content = Equivalence.make(t1, t2, TemporalValue.getReverse(order)); + else + content = Equivalence.make(t1, t2, order); } TruthValue value1 = judgment1.getTruth(); TruthValue value2 = judgment2.getTruth(); @@ -204,7 +191,7 @@ private static void inferToSym(Judgment judgment1, Judgment judgment2) { * @param asym The asymmetric premise * @param sym The symmetric premise */ - private static void inferToAsym(Judgment asym, Judgment sym, TemporalRules.Relation order) { + private static void inferToAsym(Judgment asym, Judgment sym, TemporalValue order) { Statement statement = (Statement) asym.getContent(); Term sub = statement.getPredicate(); Term pre = statement.getSubject(); diff --git a/nars/inference/RuleTables.java b/nars/inference/RuleTables.java index ceeb8fb5..23ec144f 100644 --- a/nars/inference/RuleTables.java +++ b/nars/inference/RuleTables.java @@ -55,7 +55,7 @@ public static void reason(TaskLink tLink, TermLink bLink) { case TermLink.SELF: switch (bLink.getType()) { case TermLink.COMPONENT: - if ((task.getSentence() instanceof Goal) && (taskTerm instanceof ConjunctionSequence) && (bIndex > 0)) { // more general solution? + if ((task.getSentence() instanceof Goal) && Conjunction.isSequence(taskTerm) && (bIndex > 0)) { // more general solution? return; } compoundAndSelf((CompoundTerm) taskTerm, beliefTerm, true); @@ -91,7 +91,6 @@ public static void reason(TaskLink tLink, TermLink bLink) { switch (bLink.getType()) { case TermLink.COMPOUND: compoundAndCompound((CompoundTerm) taskTerm, (CompoundTerm) beliefTerm); -// compoundAndCompound((CompoundTerm) taskTerm, tIndex, (CompoundTerm) beliefTerm, bIndex); break; case TermLink.COMPOUND_STATEMENT: compoundAndStatement((CompoundTerm) taskTerm, tIndex, (Statement) beliefTerm, bIndex, beliefTerm); @@ -403,7 +402,6 @@ private static void conditionalDedIndWithVar(Implication conditional, short inde component2 = statement.componentAt(side); } if ((component2 != null) && Variable.unify(Variable.VarType.ALL, component, component2, conditional, statement)) { -// if ((component2 != null) && Variable.unify(Variable.VarType.INDEPENDENT, component, component2, conditional, statement)) { SyllogisticRules.conditionalDedInd(conditional, index, statement, side); } } @@ -437,7 +435,6 @@ private static void compoundAndSelf(CompoundTerm compound, Term component, boole * @param beliefTerm The compound from the belief */ private static void compoundAndCompound(CompoundTerm taskTerm, CompoundTerm beliefTerm) { -// private static void compoundAndCompound(CompoundTerm taskTerm, int tIndex, CompoundTerm beliefTerm, int bIndex) { if (taskTerm.getClass() == beliefTerm.getClass()) { if (taskTerm.size() > beliefTerm.size()) { compoundAndSelf(taskTerm, beliefTerm, true); diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index a7069484..0c8c65d8 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -367,7 +367,7 @@ static void transformProductImage(Inheritance inh, CompoundTerm oldContent, shor componentList = ((CompoundTerm) condition).cloneComponents(); componentList.set(indices[1], newInh); Term newCond = CompoundTerm.make((CompoundTerm) condition, componentList); - content = Implication.make(newCond, ((Statement) oldContent).getPredicate()); + content = Implication.make(newCond, ((Statement) oldContent).getPredicate(), null); } else { componentList = oldContent.cloneComponents(); componentList.set(indices[0], newInh); @@ -453,7 +453,7 @@ static void transformNegation(Term content) { static void contraposition(Statement statement) { Term subj = statement.getSubject(); Term pred = statement.getPredicate(); - Term content = Statement.make(statement, Negation.make(pred), Negation.make(subj), TemporalRules.reverse(statement.getTemporalOrder())); + Term content = Statement.make(statement, Negation.make(pred), Negation.make(subj), TemporalValue.getReverse(statement.getOrder())); Task task = Memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); diff --git a/nars/inference/SyllogisticRules.java b/nars/inference/SyllogisticRules.java index 46b94151..adf271ee 100644 --- a/nars/inference/SyllogisticRules.java +++ b/nars/inference/SyllogisticRules.java @@ -63,16 +63,11 @@ static void dedExe(Term term1, Term term2, Sentence sentence, Judgment belief) { budget1 = BudgetFunctions.forward(truth1); budget2 = BudgetFunctions.forward(truth2); } - TemporalRules.Relation order1 = sentence.getContent().getTemporalOrder(); - TemporalRules.Relation order2 = belief.getContent().getTemporalOrder(); - TemporalRules.Relation order = TemporalRules.temporalInference(order1, order2); - if (order == null) { - order = TemporalRules.Relation.WHEN; - truth1 = TruthFunctions.temporalInduction(truth1); - truth2 = TruthFunctions.temporalInduction(truth2); - } + TemporalValue order1 = sentence.getContent().getOrder(); + TemporalValue order2 = belief.getContent().getOrder(); + TemporalValue order = TemporalRules.syllogistic(order1, order2); Statement content1 = Statement.make((Statement) sentence.getContent(), term1, term2, order); - Statement content2 = Statement.make((Statement) sentence.getContent(), term2, term1, TemporalRules.reverse(order)); + Statement content2 = Statement.make((Statement) sentence.getContent(), term2, term1, TemporalValue.getReverse(order)); Memory.doublePremiseTask(budget1, content1, truth1); Memory.doublePremiseTask(budget2, content2, truth2); } @@ -115,18 +110,24 @@ static void abdIndCom(Term term1, Term term2, Sentence taskSentence, Judgment be budget2 = BudgetFunctions.forward(truth2); budget3 = BudgetFunctions.forward(truth3); } - TemporalRules.Relation order1 = st1.getTemporalOrder(); - TemporalRules.Relation order2 = st2.getTemporalOrder(); - TemporalRules.Relation order = TemporalRules.temporalSyllogism(order1, order2, figure); + TemporalValue order1 = st1.getOrder(); + TemporalValue order2 = st2.getOrder(); + TemporalValue order = TemporalRules.syllogistic(order1, order2, figure); +// if (tense == null) { +// tense = TemporalValue.WHEN; +// truth1 = TruthFunctions.temporalInduction(truth1); +// truth2 = TruthFunctions.temporalInduction(truth2); +// truth3 = TruthFunctions.temporalInduction(truth3); +// } + Statement statement1, statement2, statement3; if (order == null) { - order = TemporalRules.Relation.WHEN; - truth1 = TruthFunctions.temporalInduction(truth1); - truth2 = TruthFunctions.temporalInduction(truth2); - truth3 = TruthFunctions.temporalInduction(truth3); - } - Statement statement1 = Statement.make(st1, term1, term2, order); - Statement statement2 = Statement.make(st1, term2, term1, TemporalRules.reverse(order)); - Statement statement3 = Statement.makeSym(st1, term1, term2, order); + statement1 = Statement.make(st1, term1, term2); + statement2 = Statement.make(st1, term2, term1); + } else { + statement1 = Statement.make(st1, term1, term2, order); + statement2 = Statement.make(st1, term2, term1, TemporalValue.getReverse(order)); + } + statement3 = Statement.makeSym(st1, term1, term2, order); Memory.doublePremiseTask(budget1, statement1, truth1); Memory.doublePremiseTask(budget2, statement2, truth2); Memory.doublePremiseTask(budget3, statement3, truth3); @@ -173,25 +174,21 @@ static void analogy(Term term1, Term term2, Sentence asym, Sentence sym, int fig } budget = BudgetFunctions.forward(truth); } - TemporalRules.Relation order1 = asymSt.getTemporalOrder(); - TemporalRules.Relation order2 = symSt.getTemporalOrder(); - TemporalRules.Relation order; + TemporalValue order1 = asymSt.getOrder(); + TemporalValue order2 = symSt.getOrder(); + TemporalValue order; switch (figure) { case 11: case 12: - order = TemporalRules.temporalSyllogism(order2, order1, figure); + order = TemporalRules.syllogistic(order2, order1, figure); break; case 21: case 22: - order = TemporalRules.temporalSyllogism(order1, order2, figure); + order = TemporalRules.syllogistic(order1, order2, figure); break; default: return; } - if (order == null) { - order = TemporalRules.Relation.WHEN; - truth = TruthFunctions.temporalInduction(truth); - } Term content = Statement.make(asymSt, term1, term2, order); Memory.doublePremiseTask(budget, content, truth); } @@ -223,14 +220,15 @@ static void resemblance(Term term1, Term term2, Judgment belief, Sentence senten } budget = BudgetFunctions.forward(truth); } - TemporalRules.Relation order1 = st1.getTemporalOrder(); - TemporalRules.Relation order2 = st2.getTemporalOrder(); - TemporalRules.Relation order = TemporalRules.temporalSyllogism(order1, order2, figure); + TemporalValue order1 = st1.getOrder(); + TemporalValue order2 = st2.getOrder(); + TemporalValue order = TemporalRules.syllogistic(order1, order2, figure); + Term statement; if (order == null) { - order = TemporalRules.Relation.WHEN; - truth = TruthFunctions.temporalInduction(truth); + statement = Statement.make(st1, term1, term2); + } else { + statement = Statement.make(st1, term1, term2, order); } - Term statement = Statement.make(st1, term1, term2, order); Memory.doublePremiseTask(budget, statement, truth); } @@ -295,19 +293,15 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int s) { } budget = BudgetFunctions.forward(truth); } - TemporalRules.Relation order1 = subSentence.getTense(); - TemporalRules.Relation order2 = statement.getTemporalOrder(); - TemporalRules.Relation order; + TemporalValue tense0 = subSentence.getTense(); + TemporalValue order0 = statement.getOrder(); + TemporalValue tense; if (side == 0) { - order = TemporalRules.temporalInference(order1, order2); + tense = TemporalRules.tenseSyllogistic(tense0, subSentence.getCreationTime(), order0); } else { - order = TemporalRules.temporalInference(order1, TemporalRules.reverse(order2)); - } - if (order == null) { - order = TemporalRules.Relation.WHEN; -// truth = TruthFunctions.temporalInduction(truth); + tense = TemporalRules.tenseSyllogistic(tense0, subSentence.getCreationTime(), TemporalValue.getReverse(order0)); } - Memory.currentTense = order; + Memory.currentTense = tense; Memory.doublePremiseTask(budget, content, truth); } @@ -327,22 +321,22 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, boolean deduction = (side != 0); HashMap substitute = Variable.findSubstitute(Variable.VarType.ALL, premise2, belief.getContent()); boolean conditionalTask = (substitute != null); - TemporalRules.Relation tense1 = (conditionalTask ? taskSentence.getTense() : belief.getTense()); - TemporalRules.Relation tense2 = (conditionalTask ? belief.getTense() : taskSentence.getTense()); - TemporalRules.Relation order1 = premise1.getTemporalOrder(); - TemporalRules.Relation order2 = premise2.getTemporalOrder(); - if ((side == -1) && (tense2 == TemporalRules.Relation.AFTER)) { + TemporalValue tense1 = (conditionalTask ? taskSentence.getTense() : belief.getTense()); + TemporalValue tense2 = (conditionalTask ? belief.getTense() : taskSentence.getTense()); + TemporalValue order1 = premise1.getOrder(); + TemporalValue order2 = premise2.getOrder(); + if ((side == -1) && (tense2 != null) && (tense2.getDelta() > 0)) { return; } - if ((side == 0) && (order2 == TemporalRules.Relation.AFTER)) { + if ((side == 0) && (order2 != null) && (order2.getDelta() > 0)) { return; } - if ((side == 1) && (order2 == TemporalRules.Relation.BEFORE)) { + if ((side == 1) && (order2 != null) && (order2.getDelta() < 0)) { return; } - TemporalRules.Relation tense = TemporalRules.temporalInference(tense1, tense2); - if (tense != TemporalRules.Relation.NONE) { - tense = TemporalRules.Relation.WHEN; + TemporalValue tense = TemporalRules.syllogistic(tense1, tense2); + if (tense != null) { + tense = new TemporalValue(0); } Term commonComponent; Term newComponent = null; @@ -368,6 +362,9 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, newCondition = null; } else { newCondition = CompoundTerm.replaceComponent(oldCondition, index, newComponent); + if ((newCondition instanceof Conjunction) && ((CompoundTerm) newCondition).size() == 1) { + newCondition = ((CompoundTerm) newCondition).componentAt(0); + } } Term content; if (newCondition != null) { @@ -424,8 +421,8 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s if (!(cond1 instanceof Conjunction) && !(cond2 instanceof Conjunction)) { return false; } - TemporalRules.Relation order1 = st1.getTemporalOrder(); - TemporalRules.Relation order2 = st2.getTemporalOrder(); + TemporalValue order1 = st1.getOrder(); + TemporalValue order2 = st2.getOrder(); if (order1 != order2) { return false; } @@ -491,7 +488,7 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s } budget = BudgetFunctions.forward(truth); } - Memory.currentTense = TemporalRules.Relation.NONE; + Memory.currentTense = null; Memory.doublePremiseTask(budget, content, truth); } return true; @@ -519,9 +516,9 @@ private static Statement introVarInd(Sentence sentence1, Sentence sentence2, int state1 = Statement.make(premise1, premise1.getSubject(), v1); state2 = Statement.make(premise2, premise2.getSubject(), v2); } - TemporalRules.Relation tense1 = sentence1.getTense(); - TemporalRules.Relation tense2 = sentence2.getTense(); - TemporalRules.Relation tense = TemporalRules.tenseInference(tense1, tense2); + TemporalValue tense1 = sentence1.getTense(); + TemporalValue tense2 = sentence2.getTense(); + TemporalValue tense = TemporalRules.tenseInduction(tense1, tense2); if (tense == null) { return null; } @@ -564,19 +561,19 @@ static void introVarIndInner(Statement premise1, Statement premise2, CompoundTer } Sentence belief = Memory.currentBelief; Term compound, content; - TemporalRules.Relation tense; + TemporalValue tense; TruthValue truth; if (premise1.equals(taskSentence.getContent())) { truth = TruthFunctions.abduction(taskSentence.getTruth(), belief.getTruth()); - tense = TemporalRules.tenseInference(taskSentence.getTense(), belief.getTense()); + tense = TemporalRules.tenseInduction(taskSentence.getTense(), belief.getTense()); } else { truth = TruthFunctions.abduction(belief.getTruth(), taskSentence.getTruth()); - tense = TemporalRules.tenseInference(belief.getTense(), taskSentence.getTense()); + tense = TemporalRules.tenseInduction(belief.getTense(), taskSentence.getTense()); } if (tense == null) { return; } - if ((oldCompound instanceof Implication) && (tense == oldCompound.getTemporalOrder())) { + if ((oldCompound instanceof Implication) && (tense == oldCompound.getOrder())) { compound = Statement.make((Statement) oldCompound, oldCompound.componentAt(0), state2); content = Statement.make((Statement) oldCompound, state1, compound); } else if (oldCompound instanceof Conjunction) { @@ -593,9 +590,9 @@ static void introVarIndInner(Statement premise1, Statement premise2, CompoundTer * { S>, P>} |- { P>,

    S>, P>} * @param task1 The first premise * @param task2 The second premise - * @param order Temporal order of the premises + * @param order Temporal order of the terms in conclusion */ - static void temporalIndCom(Task task1, Task task2, TemporalRules.Relation order) { + public static void temporalIndCom(Task task1, Task task2, TemporalValue order) { Judgment judg1 = (Judgment) task1.getSentence(); Judgment judg2 = (Judgment) task2.getSentence(); Stamp stamp = Stamp.make(judg1.getStamp(), judg2.getStamp()); @@ -638,7 +635,7 @@ static void temporalIndCom(Task task1, Task task2, TemporalRules.Relation order) } } Statement statement1 = Implication.make(term1, term2, order); - Statement statement2 = Implication.make(term2, term1, TemporalRules.reverse(order)); + Statement statement2 = Implication.make(term2, term1, TemporalValue.getReverse(order)); Statement statement3 = Equivalence.make(term1, term2, order); TruthValue value1 = judg1.getTruth(); TruthValue value2 = judg2.getTruth(); @@ -648,7 +645,7 @@ static void temporalIndCom(Task task1, Task task2, TemporalRules.Relation order) BudgetValue budget1 = BudgetFunctions.temporalIndCom(task1.getBudget(), task2.getBudget(), truth1); BudgetValue budget2 = BudgetFunctions.temporalIndCom(task1.getBudget(), task2.getBudget(), truth2); BudgetValue budget3 = BudgetFunctions.temporalIndCom(task1.getBudget(), task2.getBudget(), truth3); - Memory.currentTense = TemporalRules.Relation.WHEN; + Memory.currentTense = new TemporalValue(0); Memory.doublePremiseTask(budget1, statement1, truth1); Memory.doublePremiseTask(budget2, statement2, truth2); Memory.doublePremiseTask(budget3, statement3, truth3); diff --git a/nars/inference/TemporalRules.java b/nars/inference/TemporalRules.java index c80648d7..e99cdec6 100644 --- a/nars/inference/TemporalRules.java +++ b/nars/inference/TemporalRules.java @@ -24,7 +24,7 @@ import nars.entity.*; import nars.main.*; - +import nars.language.Term; /** * Temporal inference rules *

    @@ -32,65 +32,59 @@ */ public class TemporalRules { - /** Temporal relations: a default and three specific */ - public enum Relation { - - NONE, BEFORE, WHEN, AFTER - } - /** * Temporal relationships among three terms - * @param r12 Temporal relationship from term1 to term2 - * @param r23 Temporal relationship from term2 to term3 - * @return Temporal relationship from term1 to term3 + * @param r12 Temporal TemporalValueship from term1 to term2 + * @param r23 Temporal TemporalValueship from term2 to term3 + * @return Temporal TemporalValueship from term1 to term3 */ - public static Relation temporalInference(Relation r12, Relation r23) { - if (r12 == r23) { - return r12; - } - if (r12 == Relation.NONE) { - return r23; - } - if (r23 == Relation.NONE) { - return r12; + public static TemporalValue syllogistic(TemporalValue r12, TemporalValue r23) { + if ((r12 == null) && (r23 == null)) { + return null; } - if (r12 == Relation.WHEN) { - return r23; - } - if (r23 == Relation.WHEN) { - return r12; - } - assert (r12 == reverse(r23)); - return null; + int i12 = (r12 == null) ? 0 : r12.getDelta(); + int i23 = (r23 == null) ? 0 : r23.getDelta(); + int i13 = i12 + i23; + return new TemporalValue(i13); } - public static Relation reverse(Relation t1) { - if (t1 == Relation.BEFORE) { - return Relation.AFTER; - } - if (t1 == Relation.AFTER) { - return Relation.BEFORE; + /** + * Temporal relationships among three terms, with creasion time + * @param r12 Temporal TemporalValueship from term1 to term2 + * @param time1 Creation time of the first premise + * @param r23 Temporal TemporalValueship from term2 to term3 + * @return Temporal TemporalValueship from term1 to term3 + */ + public static TemporalValue tenseSyllogistic(TemporalValue r12, long time1, TemporalValue r23) { + if ((r12 == null) && (r23 == null)) { + return null; } - return t1; + int i12 = (r12 == null) ? 0 : r12.getDelta(); + int i23 = (r23 == null) ? 0 : r23.getDelta(); + int i13 = (int) (time1 + i12 + i23 - Center.getTime()); + return new TemporalValue(i13); } /** - * Temporal inference in syllogism - * @param r1 The first premise - * @param r2 The second premise + * Temporal inference in syllogism, with figure + * @param r1 The first premise, containing the subject of the conclusion + * @param r2 The second premise, containing the predicate of the conclusion * @param figure The location of the shared term * @return The temporal order in the conclusion */ - public static Relation temporalSyllogism(Relation r1, Relation r2, int figure) { + public static TemporalValue syllogistic(TemporalValue r1, TemporalValue r2, int figure) { + if ((r1 == null) && (r2 == null)) { + return null; + } switch (figure) { case 11: - return temporalInference(reverse(r1), r2); + return syllogistic(TemporalValue.getReverse(r1), r2); case 12: - return temporalInference(reverse(r1), reverse(r2)); + return syllogistic(TemporalValue.getReverse(r1), TemporalValue.getReverse(r2)); case 21: - return temporalInference(r1, r2); + return syllogistic(r1, r2); case 22: - return temporalInference(r1, reverse(r2)); + return syllogistic(r1, TemporalValue.getReverse(r2)); default: return null; } @@ -103,53 +97,59 @@ public static Relation temporalSyllogism(Relation r1, Relation r2, int figure) { * @param tense2 The tense of the second premise * @return The tense of the conclusion */ - public static Relation tenseInference(Relation tense1, Relation tense2) { - if (tense1 == tense2) { - if (tense1 == Relation.NONE) { - return Relation.NONE; - } - return Relation.WHEN; - } - if (((tense1 == Relation.BEFORE) && (tense2 == Relation.WHEN)) || ((tense1 == Relation.WHEN) && (tense2 == Relation.AFTER))) { - return Relation.AFTER; + public static TemporalValue tenseInduction(TemporalValue tense1, TemporalValue tense2) { + if ((tense1 == null) || (tense2 == null)) { + return null; } - if (((tense1 == Relation.AFTER) && (tense2 == Relation.WHEN)) || ((tense1 == Relation.WHEN) && (tense2 == Relation.BEFORE))) { - return Relation.BEFORE; - } - return null; + int i1 = tense1.getDelta(); + int i2 = tense2.getDelta(); + int i = i2 - i1; + return new TemporalValue(i); } - + /** - * Simple temporal regularity discovery [To be refined] + * Belief temporalRevision *

    - * called in Memory.immediateProcess - * @param event1 A new event + * called from Concept.reviseTable and match + * @param newBelief The new belief + * @param oldBelief The previous belief with the same content + * @param time The target time of the statement + * @param feedbackToLinks Whether to send feedback to the links + * @return Whether temporalRevision happened */ - public static void eventProcessing(Task event1) { - ArrayList recentEvents = Memory.recentEvents; - Sentence sentence1 = event1.getSentence(); - TemporalRules.Relation tense1 = sentence1.getTense(); - if (!sentence1.isJudgment() || (tense1 == TemporalRules.Relation.AFTER)) { - return; - } - recentEvents.add(0, event1); - if (recentEvents.size() > Parameters.MAXMUM_EVENTS_LENGTH) { - recentEvents.remove(Parameters.MAXMUM_EVENTS_LENGTH); - } - Task event2; - Sentence sentence2; -// TemporalRules.Relation tense2; - TemporalRules.Relation order; - for (int i = 1; i < recentEvents.size(); i++) { - event2 = recentEvents.get(i); - sentence2 = event2.getSentence(); -// tense2 = sentence2.getTense(); -// if (tense1 == tense2) { - order = sentence1.getStamp().orderWith(sentence2.getStamp()); - if (order != null) { - SyllogisticRules.temporalIndCom(event1, event2, order); + public static boolean temporalRevision(Judgment newBelief, Judgment oldBelief, long time, boolean feedbackToLinks) { + TruthValue tTruth = newBelief.getTruth(); + TruthValue bTruth = oldBelief.getTruth(); + long time1 = newBelief.getCreationTime(); + long time2 = oldBelief.getCreationTime(); + TruthValue truth = TruthFunctions.temporalRevision(tTruth, bTruth, time1, time2, time); + BudgetValue budget = BudgetFunctions.revise(tTruth, bTruth, truth, Memory.currentTask, feedbackToLinks); + Term content = newBelief.getContent(); + Memory.currentTense = new TemporalValue((int) (time - Center.getTime())); + Memory.doublePremiseTask(budget, content, truth); + return true; + } + + /** + * If the two beliefs have compatible temporal information + * @param belief1 + * @param belief2 + * @return If the two can be considered as about the same time + */ + public static boolean sameTime(Judgment belief1, Judgment belief2) { + TemporalValue tense1 = belief1.getTense(); + TemporalValue tense2 = belief2.getTense(); + if ((tense1 == null) || (tense2 == null)) { + Memory.currentTense = null; + } else { + long time1 = belief1.getEventTime(); + long time2 = belief2.getEventTime(); + if (time1 != time2) { + return false; } -// } + long time = Center.getTime(); + Memory.currentTense = new TemporalValue((int) (time1 - time)); } + return true; } } diff --git a/nars/inference/TruthFunctions.java b/nars/inference/TruthFunctions.java index bf2476fe..e7f67ded 100644 --- a/nars/inference/TruthFunctions.java +++ b/nars/inference/TruthFunctions.java @@ -101,15 +101,6 @@ static TruthValue implied(TruthValue v1) { static TruthValue negImply(TruthValue v1) { return negation(implying(v1)); } - - /** - * Make temporal hypothesis - * @param v1 Truth value of the premise - * @return Truth value of the conclusion - */ - static TruthValue temporalInduction(TruthValue v1) { - return implied(v1); - } /* ----- double argument functions, called in MatchingRules ----- */ @@ -127,10 +118,33 @@ static TruthValue revision(TruthValue v1, TruthValue v2) { float w1 = c1 / (1 - c1); float w2 = c2 / (1 - c2); float f = (w1 * f1 + w2 * f2) / (w1 + w2); - float c = (w1 + w2) / (w1 + w2 + 1); + float c = w2c(w1 + w2); return new TruthValue(f, c); } - + + /** + * Revision weighted by time difference + * @param v1 Truth value of the first premise + * @param v2 Truth value of the second premise + * @param t1 Creation time of the first truth value + * @param t2 Creation time of the second truth value + * @param t Target time of the resulting truth value + * @return Truth value of the conclusion + */ + static TruthValue temporalRevision(TruthValue v1, TruthValue v2, long t1, long t2, long t) { + float f1 = v1.getFrequency(); + float f2 = v2.getFrequency(); + float c1 = v1.getConfidence(); + float c2 = v2.getConfidence(); + float w1 = c1 / (1 - c1); + float w2 = c2 / (1 - c2); + float d1 = w1 / (Math.abs(t - t1) + 1); + float d2 = w2 / (Math.abs(t - t2) + 1); + float f = (d1 * f1 + d2 * f2) / (d1 + d2); + float c = w2c(w1 + w2); + return new TruthValue(f, c); + } + /* ----- double argument functions, called in SyllogisticRules ----- */ /** @@ -148,6 +162,39 @@ static TruthValue deduction(TruthValue v1, TruthValue v2) { float c = and(c1, c2, f); return new TruthValue(f, c); } + /** + * { M>, P>} |- P> + * @param v1 Truth value of the first premise + * @param v2 Truth value of the second premise + * @return Truth value of the conclusion + */ + static TruthValue analogy(TruthValue v1, TruthValue v2) { + float f1 = v1.getFrequency(); + float f2 = v2.getFrequency(); + float c1 = v1.getConfidence(); + float c2 = v2.getConfidence(); + float f = and(f1, f2); +// float c0 = and(f2, c2); +// float c = and(c1, c0, c0); + float c = and(c1, c2, f2); // 09-05-06 + return new TruthValue(f, c); + } + + /** + * { M>, P>} |- P> + * @param v1 Truth value of the first premise + * @param v2 Truth value of the second premise + * @return Truth value of the conclusion + */ + static TruthValue resemblance(TruthValue v1, TruthValue v2) { + float f1 = v1.getFrequency(); + float f2 = v2.getFrequency(); + float c1 = v1.getConfidence(); + float c2 = v2.getConfidence(); + float f = and(f1, f2); + float c = and(c1, c2, or(f1, f2)); + return new TruthValue(f, c); + } /** * { M>,

    M>} |- P> @@ -209,38 +256,6 @@ static TruthValue comparison(TruthValue v1, TruthValue v2) { return new TruthValue(f, c); } - /** - * { M>, P>} |- P> - * @param v1 Truth value of the first premise - * @param v2 Truth value of the second premise - * @return Truth value of the conclusion - */ - static TruthValue analogy(TruthValue v1, TruthValue v2) { - float f1 = v1.getFrequency(); - float f2 = v2.getFrequency(); - float c1 = v1.getConfidence(); - float c2 = v2.getConfidence(); - float f = and(f1, f2); - float c0 = and(f2, c2); - float c = and(c1, c0, c0); - return new TruthValue(f, c); - } - - /** - * { M>, P>} |- P> - * @param v1 Truth value of the first premise - * @param v2 Truth value of the second premise - * @return Truth value of the conclusion - */ - static TruthValue resemblance(TruthValue v1, TruthValue v2) { - float f1 = v1.getFrequency(); - float f2 = v2.getFrequency(); - float c1 = v1.getConfidence(); - float c2 = v2.getConfidence(); - float f = and(f1, f2); - float c = and(c1, c2, or(f1, f2)); - return new TruthValue(f, c); - } /* ----- desire-value functions, called in SyllogisticRules ----- */ diff --git a/nars/io/StringParser.java b/nars/io/StringParser.java index 5459bf51..3c5105a7 100644 --- a/nars/io/StringParser.java +++ b/nars/io/StringParser.java @@ -79,14 +79,18 @@ public static void parseTask(String s) { try { String budgetString = getBudgetString(buffer); String truthString = getTruthString(buffer); - TemporalRules.Relation tense = parseTense(buffer); + String tense = parseTense(buffer); String str = buffer.toString().trim(); int last = str.length() - 1; char punc = str.charAt(last); TruthValue truth = parseTruth(truthString, punc); Term content = parseTerm(str.substring(0, last)); Stamp stamp = new Stamp(); - Sentence sentence = Sentence.make(content, punc, tense, truth, stamp); + Sentence sentence = null; + if (tense.length() == 0) + sentence = Sentence.make(content, punc, truth, stamp, null); + else + sentence = Sentence.make(content, punc, truth, stamp, new TemporalValue(tense)); if (sentence == null) { throw new InvalidInputException("invalid sentence"); } @@ -129,21 +133,24 @@ private static String getBudgetString(StringBuffer s) throws InvalidInputExcepti * @param s the input in a StringBuffer * @return a tense value */ - private static TemporalRules.Relation parseTense(StringBuffer s) { - TemporalRules.Relation tense = TemporalRules.Relation.NONE; + private static String parseTense(StringBuffer s) { int i = s.indexOf(Symbols.TENSE_MARK); + String t = ""; if (i > 0) { - String t = s.substring(i).trim(); - if (t.equals(Symbols.TENSE_PAST)) { - tense = TemporalRules.Relation.BEFORE; - } else if (t.equals(Symbols.TENSE_PRESENT)) { - tense = TemporalRules.Relation.WHEN; - } else if (t.equals(Symbols.TENSE_FUTURE)) { - tense = TemporalRules.Relation.AFTER; - } + t = s.substring(i).trim(); s.delete(i, s.length()); } - return tense; + return t; + } + + private static int tenseToOrder(String t) { + if (t.equals(Symbols.TENSE_PAST)) { + return -1; + } else if (t.equals(Symbols.TENSE_PRESENT)) { + return 0; + } else { // (t.equals(Symbols.TENSE_FUTURE)) { + return 1; + } } /** diff --git a/nars/language/CompoundTerm.java b/nars/language/CompoundTerm.java index 6d302ccf..363f5a24 100644 --- a/nars/language/CompoundTerm.java +++ b/nars/language/CompoundTerm.java @@ -22,7 +22,7 @@ import java.util.*; -import nars.entity.TermLink; +import nars.entity.*; import nars.io.Symbols; import nars.main.Memory; @@ -135,14 +135,8 @@ public static Term make(CompoundTerm compound, ArrayList components) { if (compound instanceof Disjunction) { return Disjunction.make(components); } - if (compound instanceof ConjunctionSequence) { - return ConjunctionSequence.make(components); - } - if (compound instanceof ConjunctionParallel) { - return ConjunctionParallel.make(components); - } if (compound instanceof Conjunction) { - return Conjunction.make(components); + return Conjunction.make(components, ((Conjunction) compound).getOrder()); } return null; } @@ -187,13 +181,10 @@ public static Term make(String op, ArrayList arg) { return Disjunction.make(arg); } if (op.equals(Symbols.CONJUNCTION_OPERATOR)) { - return Conjunction.make(arg); - } - if (op.equals(Symbols.SEQUENCE_OPERATOR)) { - return ConjunctionSequence.make(arg); + return Conjunction.make(arg, null); } - if (op.equals(Symbols.PARALLEL_OPERATOR)) { - return ConjunctionParallel.make(arg); + if (op.equals(Symbols.SEQUENCE_OPERATOR) || op.equals(Symbols.PARALLEL_OPERATOR)) { + return Conjunction.make(arg, new TemporalValue(op)); } } if (isBuiltInOperator(op)) { @@ -234,10 +225,7 @@ public static boolean isOperator(String s) { s.equals(Symbols.DISJUNCTION_OPERATOR) || s.equals(Symbols.CONJUNCTION_OPERATOR) || s.equals(Symbols.SEQUENCE_OPERATOR) || - s.equals(Symbols.PARALLEL_OPERATOR) || - s.equals(Symbols.TENSE_PAST) || - s.equals(Symbols.TENSE_PRESENT) || - s.equals(Symbols.TENSE_FUTURE)); + s.equals(Symbols.PARALLEL_OPERATOR)); } return isBuiltInOperator(s); } diff --git a/nars/language/Conjunction.java b/nars/language/Conjunction.java index 4c016a64..af614bef 100644 --- a/nars/language/Conjunction.java +++ b/nars/language/Conjunction.java @@ -22,6 +22,7 @@ import java.util.*; +import nars.entity.TemporalValue; import nars.io.Symbols; import nars.main.Memory; @@ -30,13 +31,20 @@ */ public class Conjunction extends CompoundTerm { + /** + * Temporal order between the components + */ + private TemporalValue temporalOrder = null; + /** * Constructor with partial values, called by make * @param n The name of the term * @param arg The component list of the term + * @param order The temporal order of the components */ - protected Conjunction(String n, ArrayList arg) { + protected Conjunction(String n, ArrayList arg, TemporalValue order) { super(n, arg); + temporalOrder = order; } /** @@ -45,9 +53,11 @@ protected Conjunction(String n, ArrayList arg) { * @param cs Component list * @param open Open variable list * @param i Syntactic complexity of the compound + * @param order The temporal order of the components */ - protected Conjunction(String n, ArrayList cs, ArrayList open, short i) { + protected Conjunction(String n, ArrayList cs, ArrayList open, short i, TemporalValue order) { super(n, cs, open, i); + temporalOrder = order; } /** @@ -56,53 +66,108 @@ protected Conjunction(String n, ArrayList cs, ArrayList open, sh */ @SuppressWarnings("unchecked") public Object clone() { - return new Conjunction(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity); + return new Conjunction(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity, temporalOrder); } /** - * Try to make a new compound from two components. Called by the inference rules. - * @param term1 The first compoment - * @param term2 The second compoment - * @return A compound generated or a term it reduced to + * Get the operator of the term. + * @return the operator of the term */ - @SuppressWarnings("unchecked") - public static Term make(Term term1, Term term2) { - TreeSet set; - if (term1 instanceof Conjunction) { - set = new TreeSet(((CompoundTerm) term1).cloneComponents()); - if (term2 instanceof Conjunction) { - set.addAll(((CompoundTerm) term2).cloneComponents()); - } // (&,(&,P,Q),(&,R,S)) = (&,P,Q,R,S) - else { - set.add((Term) term2.clone()); - } // (&,(&,P,Q),R) = (&,P,Q,R) - } else if (term2 instanceof Conjunction) { - set = new TreeSet(((CompoundTerm) term2).cloneComponents()); - set.add((Term) term1.clone()); // (&,R,(&,P,Q)) = (&,P,Q,R) - } else { - set = new TreeSet(); - set.add(term1); // clone? - set.add(term2); // clone? + public String operator() { + return getConjunctionSymbol(temporalOrder); + } + + /** + * COnvert a temporal into its String representation + * @param t The given temporal value + * @return String representation of the order + */ + public static String getConjunctionSymbol(TemporalValue t) { + if (t == null) + return Symbols.CONJUNCTION_OPERATOR; + int delta = t.getDelta(); + if (delta > 0) + return Symbols.SEQUENCE_OPERATOR; + if (delta < 0) + return "ERROR: UNKNOWN CONJUNCTION"; + return Symbols.PARALLEL_OPERATOR; + } + + /** + * Check if the compound is communitative. + * @return true for communitative + */ + @Override + public boolean isCommutative() { + return ((temporalOrder == null) || (temporalOrder.getDelta() == 0)); + } + + + /** + * Return the temporal order. + * @return Temporal order of the components + */ + @Override + public TemporalValue getOrder() { + return temporalOrder; + } + + /** + * Whether the Term is a parallel conjunction + * @param t A given term + * @return If the term is a paralel conjunction + */ + public static boolean isParallel(Term t) { + if (t instanceof Conjunction) { + Conjunction c = (Conjunction) t; + TemporalValue temp = c.getOrder(); + if (temp != null && (temp.getDelta() == 0)) { + return true; + } + } + return false; + } + + /** + * Whether the Term is a sequential conjunction + * @param t A given term + * @return If the term is a sequential conjunction + */ + public static boolean isSequence(Term t) { + if (t instanceof Conjunction) { + Conjunction c = (Conjunction) t; + TemporalValue temp = c.getOrder(); + if (temp != null && (temp.getDelta() == 1)) { + return true; + } } - return make(set); + return false; } /** * Try to make a new compound from a list of components. Called by StringParser. * @return the Term generated from the arguments * @param argList the list of arguments + * @param order The temporal order of the components */ - public static Term make(ArrayList argList) { - TreeSet set = new TreeSet(argList); // sort/merge arguments - return make(set); + public static Term make(ArrayList argList, TemporalValue order) { + if ((order != null) && (order.getDelta() > 0)) { + String name = makeCompoundName(Symbols.SEQUENCE_OPERATOR, argList); + Term t = Memory.nameToListedTerm(name); + return (t != null) ? t : new Conjunction(name, argList, order); + } else { + TreeSet set = new TreeSet(argList); // sort/merge arguments + return make(set, order); + } } /** * Try to make a new compound from a set of components. Called by the public make methods. * @param set a set of Term as compoments + * @param order The temporal order of the components * @return the Term generated from the arguments */ - public static Term make(TreeSet set) { + public static Term make(TreeSet set, TemporalValue order) { if (set.isEmpty()) { return null; } // special case: no component @@ -110,24 +175,72 @@ public static Term make(TreeSet set) { return set.first(); } // special case: single component ArrayList argument = new ArrayList(set); - String name = makeCompoundName(Symbols.CONJUNCTION_OPERATOR, argument); + String sym = getConjunctionSymbol(order); + String name = makeCompoundName(sym, argument); Term t = Memory.nameToListedTerm(name); - return (t != null) ? t : new Conjunction(name, argument); + return (t != null) ? t : new Conjunction(name, argument, order); } + // overload this method by term type? /** - * Get the operator of the term. - * @return the operator of the term - */ - public String operator() { - return Symbols.CONJUNCTION_OPERATOR; - } - - /** - * Check if the compound is communitative. - * @return true for communitative + * Try to make a new compound from two components. Called by the inference rules. + * @param term1 The first compoment + * @param term2 The second compoment + * @param order The temporal order of the components + * @return A compound generated or a term it reduced to */ - public boolean isCommutative() { - return true; + @SuppressWarnings("unchecked") + public static Term make(Term term1, Term term2, TemporalValue order) { + if ((order != null) && order.getDelta() > 0) { + ArrayList argument; + if (isSequence(term2)) { // to be refined to check other cases + argument = ((CompoundTerm) term2).cloneComponents(); + argument.add(0, term1); + } else { + argument = new ArrayList(); + argument.add(term1); + argument.add(term2); + } + return make(argument, order); + } else { // to be refined to check other cases + TreeSet set; + if ((order != null) && (order.getDelta() == 0)) { + if (isParallel(term1)) { + set = new TreeSet(((CompoundTerm) term1).cloneComponents()); + if (isParallel(term2)) { + set.addAll(((CompoundTerm) term2).cloneComponents()); + } else { + set.add((Term) term2.clone()); + } // (&,(&,P,Q),R) = (&,P,Q,R) + } else if (isParallel(term2)) { + set = new TreeSet(((CompoundTerm) term2).cloneComponents()); + set.add((Term) term1.clone()); // (&,R,(&,P,Q)) = (&,P,Q,R) + } else { + set = new TreeSet(); + set.add(term1); + set.add(term2); + return make(set, order); + } + } else { // if (order == null) + if (term1 instanceof Conjunction) { + set = new TreeSet(((CompoundTerm) term1).cloneComponents()); + if (term2 instanceof Conjunction) { + set.addAll(((CompoundTerm) term2).cloneComponents()); + } // (&,(&,P,Q),(&,R,S)) = (&,P,Q,R,S) + else { + set.add((Term) term2.clone()); + } // (&,(&,P,Q),R) = (&,P,Q,R) + } else if (term2 instanceof Conjunction) { + set = new TreeSet(((CompoundTerm) term2).cloneComponents()); + set.add((Term) term1.clone()); // (&,R,(&,P,Q)) = (&,P,Q,R) + } else { + set = new TreeSet(); + set.add(term1); // clone? + set.add(term2); // clone? + } + return make(set, order); + } + } + return null; // report error? how about compound sets? } } diff --git a/nars/language/ConjunctionParallel.java b/nars/language/ConjunctionParallel.java deleted file mode 100644 index 6d4af771..00000000 --- a/nars/language/ConjunctionParallel.java +++ /dev/null @@ -1,137 +0,0 @@ -/* - * ConjunctionParallel.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ -package nars.language; - -import java.util.*; - -import nars.inference.TemporalRules; -import nars.io.Symbols; -import nars.main.Memory; - -/** - * A parallel conjunction of Statements. - */ -public class ConjunctionParallel extends Conjunction implements Temporal { - - /** - * Constructor with partial values, called by make - * @param n The name of the term - * @param arg The component list of the term - */ - protected ConjunctionParallel(String n, ArrayList arg) { - super(n, arg); - } - - /** - * Constructor with full values, called by clone - * @param n The name of the term - * @param cs Component list - * @param open Open variable list - * @param i Syntactic complexity of the compound - */ - private ConjunctionParallel(String n, ArrayList cs, ArrayList open, short i) { - super(n, cs, open, i); - } - - /** - * Clone an object - * @return A new object - */ - @Override - @SuppressWarnings("unchecked") - public Object clone() { - return new ConjunctionParallel(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity); - } - - /** - * Try to make a new compound from two components. Called by the inference rules. - * @param term1 The first compoment - * @param term2 The second compoment - * @return A compound generated or a term it reduced to - */ - @SuppressWarnings("unchecked") - public static Term make(Term term1, Term term2) { - TreeSet set; - if (term1 instanceof ConjunctionParallel) { - set = new TreeSet(((CompoundTerm) term1).cloneComponents()); - if (term2 instanceof ConjunctionParallel) { - set.addAll(((CompoundTerm) term2).cloneComponents()); - } // (&,(&,P,Q),(&,R,S)) = (&,P,Q,R,S) - else { - set.add((Term) term2.clone()); - } // (&,(&,P,Q),R) = (&,P,Q,R) - } else if (term2 instanceof ConjunctionParallel) { - set = new TreeSet(((CompoundTerm) term2).cloneComponents()); - set.add((Term) term1.clone()); // (&,R,(&,P,Q)) = (&,P,Q,R) - } else { - set = new TreeSet(); - set.add(term1); // valid solution??? - set.add(term2); - } - return make(set); - } - - /** - * Try to make a new compound from a list of components. Called by StringParser. - * @return the Term generated from the arguments - * @param argList the list of arguments - */ - public static Term make(ArrayList argList) { - TreeSet set = new TreeSet(argList); // sort/merge arguments - return make(set); - } - - /** - * Try to make a new compound from a set of components. Called by the public make methods. - * @param set a set of Term as compoments - * @return the Term generated from the arguments - */ - public static Term make(TreeSet set) { - if (set.isEmpty()) { - return null; - } // special case: no component - if (set.size() == 1) { - return set.first(); - } // special case: single component - ArrayList argument = new ArrayList(set); - String name = makeCompoundName(Symbols.CONJUNCTION_OPERATOR, argument); - Term t = Memory.nameToListedTerm(name); - return (t != null) ? t : new ConjunctionParallel(name, argument); - } - - /** - * Get the operator of the term. - * @return the operator of the term - */ - @Override - public String operator() { - return Symbols.PARALLEL_OPERATOR; - } - - /** - * The components are concurrent - * @return WHEN means the components happen altogether - */ - @Override - public TemporalRules.Relation getTemporalOrder() { - return TemporalRules.Relation.WHEN; - } -} diff --git a/nars/language/ConjunctionSequence.java b/nars/language/ConjunctionSequence.java deleted file mode 100644 index 67d6c3ad..00000000 --- a/nars/language/ConjunctionSequence.java +++ /dev/null @@ -1,110 +0,0 @@ -/* - * ConjunctionSequence.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ -package nars.language; - -import java.util.*; -import nars.inference.*; -import nars.io.*; -import nars.main.Memory; - -/** - * A sequential conjunction of Statements. - */ -public class ConjunctionSequence extends Conjunction implements Temporal { - - /** - * constructor with partial values, called by make - * @param n The name of the term - * @param arg The component list of the term - */ - private ConjunctionSequence(String n, ArrayList arg) { - super(n, arg); - } - - /** - * Constructor with full values, called by clone - * @param n The name of the term - * @param cs Component list - * @param open Open variable list - * @param i Syntactic complexity of the compound - */ - private ConjunctionSequence(String n, ArrayList cs, ArrayList open, short i) { - super(n, cs, open, i); - } - - /** - * Clone an object - * @return A new object - */ - @Override - @SuppressWarnings("unchecked") - public Object clone() { - return new ConjunctionSequence(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity); - } - - /** - * Try to make a new compound from a list of components. Called by StringParser. - * @param argument the list of arguments - * @return the Term generated from the arguments - */ - public static Term make(ArrayList argument) { - if (argument.size() == 1) { - return argument.get(0); - } - String name = makeCompoundName(Symbols.PRODUCT_OPERATOR, argument); - Term t = Memory.nameToListedTerm(name); - return (t != null) ? t : new ConjunctionSequence(name, argument); - } - - public static Term make(Term term1, Term term2) { - ArrayList argument = new ArrayList(); - argument.add(term1); - argument.add(term2); - return make(argument); - } - - /** - * Get the operator of the term. - * @return the operator of the term - */ - @Override - public String operator() { - return Symbols.SEQUENCE_OPERATOR; - } - - /** - * Check if the compound is communitative. - * @return true for communitative - */ - @Override - public boolean isCommutative() { - return false; - } - - /** - * The components are temporally sorted - * @return AFTER means the components happen in that order - */ - @Override - public TemporalRules.Relation getTemporalOrder() { - return TemporalRules.Relation.AFTER; - } -} diff --git a/nars/language/Equivalence.java b/nars/language/Equivalence.java index 388226eb..17cc39a9 100644 --- a/nars/language/Equivalence.java +++ b/nars/language/Equivalence.java @@ -22,7 +22,7 @@ import java.util.*; -import nars.inference.TemporalRules; +import nars.entity.TemporalValue; import nars.io.Symbols; import nars.main.Memory; @@ -31,13 +31,20 @@ */ public class Equivalence extends Statement { + /** + * Temporal order between the components + */ + private TemporalValue temporalOrder = null; + /** * Constructor with partial values, called by make * @param n The name of the term * @param arg The component list of the term + * @param order The temporal order of the components */ - protected Equivalence(String n, ArrayList arg) { + protected Equivalence(String n, ArrayList arg, TemporalValue order) { super(n, arg); + temporalOrder = order; } /** @@ -46,9 +53,11 @@ protected Equivalence(String n, ArrayList arg) { * @param cs Component list * @param open Open variable list * @param i Syntactic complexity of the compound + * @param order The temporal order of the components */ - protected Equivalence(String n, ArrayList cs, ArrayList open, short i) { + protected Equivalence(String n, ArrayList cs, ArrayList open, short i, TemporalValue order) { super(n, cs, open, i); + temporalOrder = order; } /** @@ -57,45 +66,45 @@ protected Equivalence(String n, ArrayList cs, ArrayList open, sh */ @SuppressWarnings("unchecked") public Object clone() { - return new Equivalence(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity); + return new Equivalence(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity, temporalOrder); } /** * Try to make a new compound from two components. Called by the inference rules. * @param subject The first compoment * @param predicate The second compoment + * @param order The temporal order of the components * @return A compound generated or null */ - public static Equivalence make(Term subject, Term predicate) { + public static Equivalence make(Term subject, Term predicate, TemporalValue order) { // to be extended to check if subject is Conjunction + if ((subject instanceof Implication) || (subject instanceof Equivalence)) { + return null; + } + if ((predicate instanceof Implication) || (predicate instanceof Equivalence)) { + return null; + } if (invalidStatement(subject, predicate)) { return null; } - if (subject.compareTo(predicate) > 0) { - return make(predicate, subject); + Term interm; + if ((subject.compareTo(predicate) > 0) && ((order == null) || (order.getDelta() == 0))) { + interm = subject; + subject = predicate; + predicate = interm; + } else if ((order != null) && (order.getDelta() < 0)) { + interm = subject; + subject = predicate; + predicate = interm; + order = TemporalValue.getReverse(order); } - String name = makeStatementName(subject, Symbols.EQUIVALENCE_RELATION, predicate); + String sym = getEquivalenceSymbol(order); + String name = makeStatementName(subject, sym, predicate); Term t = Memory.nameToListedTerm(name); if (t != null) { return (Equivalence) t; } ArrayList argument = argumentsToList(subject, predicate); - return new Equivalence(name, argument); - } - - public static Equivalence make(Term subject, Term predicate, TemporalRules.Relation temporalOrder) { // to be extended to check if subject is Conjunction - if ((subject instanceof Implication) || (subject instanceof Equivalence) || (predicate instanceof Implication) || (predicate instanceof Equivalence)) { - return null; - } - switch (temporalOrder) { - case BEFORE: - return EquivalenceAfter.make(predicate, subject); - case WHEN: - return EquivalenceWhen.make(subject, predicate); - case AFTER: - return EquivalenceAfter.make(subject, predicate); - default: - return Equivalence.make(subject, predicate); - } + return new Equivalence(name, argument, order); } /** @@ -103,7 +112,7 @@ public static Equivalence make(Term subject, Term predicate, TemporalRules.Relat * @return the operator of the term */ public String operator() { - return Symbols.EQUIVALENCE_RELATION; + return getEquivalenceSymbol(temporalOrder); } /** @@ -112,6 +121,31 @@ public String operator() { */ @Override public boolean isCommutative() { - return true; + return ((temporalOrder == null) || (temporalOrder.getDelta() == 0)); + } + + /** + * Get the temporal order. + * @return the temporal order of the components + */ + @Override + public TemporalValue getOrder() { + return temporalOrder; + } + + /** + * Get the symbole of the relation by tense + * @param t The tense of the statement + * @return The String representation of the relation + */ + public static String getEquivalenceSymbol(TemporalValue t) { + if (t == null) + return Symbols.EQUIVALENCE_RELATION; + int delta = t.getDelta(); + if (delta > 0) + return Symbols.EQUIVALENCE_AFTER_RELATION; + if (delta < 0) + return "ERROR: UNKNOWN EQUIVALENCE"; + return Symbols.EQUIVALENCE_WHEN_RELATION; } } diff --git a/nars/language/EquivalenceAfter.java b/nars/language/EquivalenceAfter.java deleted file mode 100644 index afc55e7a..00000000 --- a/nars/language/EquivalenceAfter.java +++ /dev/null @@ -1,109 +0,0 @@ -/* - * EquivalenceAfter.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ -package nars.language; - -import java.util.*; - -import nars.inference.TemporalRules; -import nars.io.Symbols; -import nars.main.Memory; - -/** - * Temporal Implication relation, predicate after subject. - */ -public class EquivalenceAfter extends Equivalence implements Temporal { - - /** - * constructor with partial values, called by make - * @param n The name of the term - * @param arg The component list of the term - */ - public EquivalenceAfter(String n, ArrayList arg) { - super(n, arg); - } - - /** - * Constructor with full values, called by clone - * @param n The name of the term - * @param cs Component list - * @param open Open variable list - * @param i Syntactic complexity of the compound - */ - private EquivalenceAfter(String n, ArrayList cs, ArrayList open, short i) { - super(n, cs, open, i); - } - - /** - * Clone an object - * @return A new object - */ - @Override - @SuppressWarnings("unchecked") - public Object clone() { - return new EquivalenceAfter(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity); - } - - /** - * Try to make a new compound from two components. Called by the inference rules. - * @param subject The first compoment - * @param predicate The second compoment - * @return A compound generated or null - */ - public static EquivalenceAfter make(Term subject, Term predicate) { - if (invalidStatement(subject, predicate)) { - return null; - } - String name = makeStatementName(subject, Symbols.EQUIVALENCE_AFTER_RELATION, predicate); - Term t = Memory.nameToListedTerm(name); - if (t != null) { - return (EquivalenceAfter) t; - } - ArrayList argument = argumentsToList(subject, predicate); - return new EquivalenceAfter(name, argument); - } - - /** - * Get the operator of the term. - * @return the operator of the term - */ - @Override - public String operator() { - return Symbols.EQUIVALENCE_AFTER_RELATION; - } - - /** - * Check if the compound is communitative. - * @return The components are temporally ordered - */ - @Override - public boolean isCommutative() { - return false; - } - - /** - * Get the temporal order of the class - * @return AFTER since the components are temporally ordered - */ - @Override - public TemporalRules.Relation getTemporalOrder() { - return TemporalRules.Relation.AFTER; - } -} diff --git a/nars/language/EquivalenceWhen.java b/nars/language/EquivalenceWhen.java deleted file mode 100644 index 107ecf4e..00000000 --- a/nars/language/EquivalenceWhen.java +++ /dev/null @@ -1,103 +0,0 @@ -/* - * EquivalenceWhen.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ -package nars.language; - -import java.util.*; - -import nars.inference.TemporalRules; -import nars.io.Symbols; -import nars.main.Memory; - -/** - * Temporal Equivalence relation, concurrent. - */ -public class EquivalenceWhen extends Equivalence implements Temporal { - - /** - * Constructor with partial values, called by make - * @param n The name of the term - * @param arg The component list of the term - */ - public EquivalenceWhen(String n, ArrayList arg) { - super(n, arg); - } - - /** - * Constructor with full values, called by clone - * @param n The name of the term - * @param cs Component list - * @param open Open variable list - * @param i Syntactic complexity of the compound - */ - private EquivalenceWhen(String n, ArrayList cs, ArrayList open, short i) { - super(n, cs, open, i); - } - - /** - * Clone an object - * @return A new object - */ - @Override - @SuppressWarnings("unchecked") - public Object clone() { - return new EquivalenceWhen(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity); - } - - /** - * Try to make a new compound from two components. Called by the inference rules. - * @param subject The first compoment - * @param predicate The second compoment - * @return A compound generated or null - */ - public static EquivalenceWhen make(Term subject, Term predicate) { - if (invalidStatement(subject, predicate)) { - return null; - } - if (subject.compareTo(predicate) > 0) { - return make(predicate, subject); - } - String name = makeStatementName(subject, Symbols.EQUIVALENCE_WHEN_RELATION, predicate); - Term t = Memory.nameToListedTerm(name); - if (t != null) { - return (EquivalenceWhen) t; - } - ArrayList argument = argumentsToList(subject, predicate); - return new EquivalenceWhen(name, argument); - } - - /** - * Get the operator of the term. - * @return the operator of the term - */ - @Override - public String operator() { - return Symbols.EQUIVALENCE_WHEN_RELATION; - } - - /** - * Get the temporal order of the class - * @return WHEN since the components are concurrent - */ - @Override - public TemporalRules.Relation getTemporalOrder() { - return TemporalRules.Relation.WHEN; - } -} diff --git a/nars/language/Implication.java b/nars/language/Implication.java index bdddf315..7bff77f9 100644 --- a/nars/language/Implication.java +++ b/nars/language/Implication.java @@ -22,7 +22,7 @@ import java.util.*; -import nars.inference.TemporalRules; +import nars.entity.TemporalValue; import nars.io.Symbols; import nars.main.Memory; @@ -30,14 +30,20 @@ * A Statement about an Inheritance relation. */ public class Implication extends Statement { - + + /** + * Temporal order between the components + */ + private TemporalValue temporalOrder = null; /** * Constructor with partial values, called by make * @param n The name of the term * @param arg The component list of the term + * @param order The temporal order of the components */ - protected Implication(String n, ArrayList arg) { + protected Implication(String n, ArrayList arg, TemporalValue order) { super(n, arg); + temporalOrder = order; } /** @@ -46,9 +52,11 @@ protected Implication(String n, ArrayList arg) { * @param cs Component list * @param open Open variable list * @param i Syntactic complexity of the compound + * @param order The temporal order of the components */ - protected Implication(String n, ArrayList cs, ArrayList open, short i) { + protected Implication(String n, ArrayList cs, ArrayList open, short i, TemporalValue order) { super(n, cs, open, i); + temporalOrder = order; } /** @@ -57,47 +65,34 @@ protected Implication(String n, ArrayList cs, ArrayList open, sh */ @SuppressWarnings("unchecked") public Object clone() { - return new Implication(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity); + return new Implication(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity, temporalOrder); } /** * Try to make a new compound from two components. Called by the inference rules. * @param subject The first compoment * @param predicate The second compoment + * @param order The temporal order of the components * @return A compound generated or a term it reduced to */ - public static Implication make(Term subject, Term predicate) { // to be extended to check if subject is Conjunction - if (invalidStatement(subject, predicate)) { + public static Implication make(Term subject, Term predicate, TemporalValue order) { + if ((subject instanceof Implication) || (subject instanceof Equivalence) || (predicate instanceof Equivalence)) return null; - } - String name = makeStatementName(subject, Symbols.IMPLICATION_RELATION, predicate); + if (invalidStatement(subject, predicate)) + return null; + String sym = getSymbol(order); + String name = makeStatementName(subject, sym, predicate); Term t = Memory.nameToListedTerm(name); if (t != null) { return (Implication) t; } if (predicate instanceof Implication) { Term oldCondition = ((Implication) predicate).getSubject(); - Term newCondition = Conjunction.make(subject, oldCondition); - return make(newCondition, ((Implication) predicate).getPredicate()); + Term newCondition = Conjunction.make(subject, oldCondition, order); + return make(newCondition, ((Implication) predicate).getPredicate(), order); } else { ArrayList argument = argumentsToList(subject, predicate); - return new Implication(name, argument); - } - } - - public static Implication make(Term subject, Term predicate, TemporalRules.Relation temporalOrder) { - if ((subject instanceof Implication) || (subject instanceof Equivalence) || (predicate instanceof Equivalence)) { - return null; - } - switch (temporalOrder) { - case BEFORE: - return ImplicationBefore.make(subject, predicate); - case WHEN: - return ImplicationWhen.make(subject, predicate); - case AFTER: - return ImplicationAfter.make(subject, predicate); - default: - return Implication.make(subject, predicate); + return new Implication(name, argument, order); } } @@ -106,6 +101,32 @@ public static Implication make(Term subject, Term predicate, TemporalRules.Relat * @return the operator of the term */ public String operator() { - return Symbols.IMPLICATION_RELATION; + return getSymbol(temporalOrder); + } + + + /** + * Get the order of the components. + * @return the order within the term + */ + @Override + public TemporalValue getOrder() { + return temporalOrder; + } + + /** + * Convert a TemporalValue into its String representation + * @param t The temporal value to be represented + * @return The the String representation + */ + public static String getSymbol(TemporalValue t) { + if (t == null) + return Symbols.IMPLICATION_RELATION; + int delta = t.getDelta(); + if (delta > 0) + return Symbols.IMPLICATION_AFTER_RELATION; + if (delta < 0) + return Symbols.IMPLICATION_BEFORE_RELATION; + return Symbols.IMPLICATION_WHEN_RELATION; } } diff --git a/nars/language/ImplicationAfter.java b/nars/language/ImplicationAfter.java deleted file mode 100644 index 57f155d0..00000000 --- a/nars/language/ImplicationAfter.java +++ /dev/null @@ -1,108 +0,0 @@ -/* - * ImplicationAfter.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ -package nars.language; - -import java.util.*; - -import nars.inference.TemporalRules; -import nars.io.Symbols; -import nars.main.Memory; - -/** - * Temporal Implication relation, predicate after subject. - */ -public class ImplicationAfter extends Implication implements Temporal { - - /** - * constructor with partial values, called by make - * @param n The name of the term - * @param arg The component list of the term - */ - private ImplicationAfter(String n, ArrayList arg) { - super(n, arg); - } - - /** - * Constructor with full values, called by clone - * @param n The name of the term - * @param cs Component list - * @param open Open variable list - * @param i Syntactic complexity of the compound - */ - private ImplicationAfter(String n, ArrayList cs, ArrayList open, short i) { - super(n, cs, open, i); - } - - /** - * Clone an object - * @return A new object - */ - @Override - @SuppressWarnings("unchecked") - public Object clone() { - return new ImplicationAfter(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity); - } - - /** - * Try to make a new compound from two components. Called by the inference rules. - * @param subject The first compoment - * @param predicate The second compoment - * @return A compound generated or a term it reduced to - */ - public static ImplicationAfter make(Term subject, Term predicate) { // to be extended to check if subject is Conjunction - if (invalidStatement(subject, predicate)) { - return null; - } - String name = makeStatementName(subject, Symbols.IMPLICATION_AFTER_RELATION, predicate); - Term t = Memory.nameToListedTerm(name); - if (t != null) { - return (ImplicationAfter) t; - } - if (predicate instanceof ImplicationAfter) { - Term oldCondition = ((ImplicationAfter) predicate).getSubject(); - Term newCondition = ConjunctionSequence.make(subject, oldCondition); - return make(newCondition, ((ImplicationAfter) predicate).getPredicate()); - } else if (!(predicate instanceof Implication)) { - ArrayList argument = argumentsToList(subject, predicate); - return new ImplicationAfter(name, argument); - } else { - return null; - } - } - - /** - * Get the operator of the term. - * @return the operator of the term - */ - @Override - public String operator() { - return Symbols.IMPLICATION_AFTER_RELATION; - } - - /** - * The relation is predictive - * @return AFTER means the condition is pre-condition - */ - @Override - public TemporalRules.Relation getTemporalOrder() { - return TemporalRules.Relation.AFTER; - } -} diff --git a/nars/language/ImplicationBefore.java b/nars/language/ImplicationBefore.java deleted file mode 100644 index 8010098c..00000000 --- a/nars/language/ImplicationBefore.java +++ /dev/null @@ -1,108 +0,0 @@ -/* - * ImplicationBefore.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ -package nars.language; - -import java.util.*; - -import nars.inference.TemporalRules; -import nars.io.Symbols; -import nars.main.Memory; - -/** - * Temporal Implication relation, predicate before subject. - */ -public class ImplicationBefore extends Implication implements Temporal { - - /** - * Constructor with partial values, called by make - * @param n The name of the term - * @param arg The component list of the term - */ - private ImplicationBefore(String n, ArrayList arg) { - super(n, arg); - } - - /** - * Constructor with full values, called by clone - * @param n The name of the term - * @param cs Component list - * @param open Open variable list - * @param i Syntactic complexity of the compound - */ - private ImplicationBefore(String n, ArrayList cs, ArrayList open, short i) { - super(n, cs, open, i); - } - - /** - * Clone an object - * @return A new object - */ - @Override - @SuppressWarnings("unchecked") - public Object clone() { - return new ImplicationBefore(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity); - } - - /** - * Try to make a new compound from two components. Called by the inference rules. - * @param subject The first compoment - * @param predicate The second compoment - * @return A compound generated or a term it reduced to - */ - public static ImplicationBefore make(Term subject, Term predicate) { // to be extended to check if subject is Conjunction - if (invalidStatement(subject, predicate)) { - return null; - } - String name = makeStatementName(subject, Symbols.IMPLICATION_BEFORE_RELATION, predicate); - Term t = Memory.nameToListedTerm(name); - if (t != null) { - return (ImplicationBefore) t; - } - if (predicate instanceof ImplicationBefore) { - Term oldCondition = ((ImplicationBefore) predicate).getSubject(); - Term newCondition = ConjunctionSequence.make(oldCondition, subject); - return make(newCondition, ((ImplicationBefore) predicate).getPredicate()); - } else if (!(predicate instanceof Implication)) { - ArrayList argument = argumentsToList(subject, predicate); - return new ImplicationBefore(name, argument); - } else { - return null; - } - } - - /** - * Get the operator of the term. - * @return the operator of the term - */ - @Override - public String operator() { - return Symbols.IMPLICATION_BEFORE_RELATION; - } - - /** - * The relation is retrospective - * @return BEFORE means the condition is post-condition - */ - @Override - public TemporalRules.Relation getTemporalOrder() { - return TemporalRules.Relation.BEFORE; - } -} diff --git a/nars/language/ImplicationWhen.java b/nars/language/ImplicationWhen.java deleted file mode 100644 index 3ba47818..00000000 --- a/nars/language/ImplicationWhen.java +++ /dev/null @@ -1,108 +0,0 @@ -/* - * ImplicationWhen.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ -package nars.language; - -import java.util.*; - -import nars.inference.TemporalRules; -import nars.io.Symbols; -import nars.main.Memory; - -/** - * Temporal Implication relation, concurrent. - */ -public class ImplicationWhen extends Implication implements Temporal { - - /** - * Constructor with partial values, called by make - * @param n The name of the term - * @param arg The component list of the term - */ - protected ImplicationWhen(String n, ArrayList arg) { - super(n, arg); - } - - /** - * Constructor with full values, called by clone - * @param n The name of the term - * @param cs Component list - * @param open Open variable list - * @param i Syntactic complexity of the compound - */ - private ImplicationWhen(String n, ArrayList cs, ArrayList open, short i) { - super(n, cs, open, i); - } - - /** - * Clone an object - * @return A new object - */ - @Override - @SuppressWarnings("unchecked") - public Object clone() { - return new ImplicationWhen(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity); - } - - /** - * Try to make a new compound from two components. Called by the inference rules. - * @param subject The first compoment - * @param predicate The second compoment - * @return A compound generated or a term it reduced to - */ - public static ImplicationWhen make(Term subject, Term predicate) { // to be extended to check if subject is Conjunction - if (invalidStatement(subject, predicate)) { - return null; - } - String name = makeStatementName(subject, Symbols.IMPLICATION_WHEN_RELATION, predicate); - Term t = Memory.nameToListedTerm(name); - if (t != null) { - return (ImplicationWhen) t; - } - if (predicate instanceof ImplicationWhen) { - Term oldCondition = ((ImplicationWhen) predicate).getSubject(); - Term newCondition = ConjunctionParallel.make(subject, oldCondition); - return make(newCondition, ((ImplicationWhen) predicate).getPredicate()); - } else if (!(predicate instanceof Implication)) { - ArrayList argument = argumentsToList(subject, predicate); - return new ImplicationWhen(name, argument); - } else { - return null; - } - } - - /** - * Get the operator of the term. - * @return the operator of the term - */ - @Override - public String operator() { - return Symbols.IMPLICATION_WHEN_RELATION; - } - - /** - * The relation is concurrent - * @return WHEN means the condition is co-condition - */ - @Override - public TemporalRules.Relation getTemporalOrder() { - return TemporalRules.Relation.WHEN; - } -} diff --git a/nars/language/Statement.java b/nars/language/Statement.java index b7b919dd..d7b23dce 100644 --- a/nars/language/Statement.java +++ b/nars/language/Statement.java @@ -22,8 +22,8 @@ import java.util.ArrayList; -import nars.inference.TemporalRules; import nars.io.Symbols; +import nars.entity.TemporalValue; /** * A statement is a compound term, consisting of a subject, a predicate, @@ -84,25 +84,19 @@ public static Statement make(String relation, Term subject, Term predicate) { return InstanceProperty.make(subject, predicate); } if (relation.equals(Symbols.IMPLICATION_RELATION)) { - return Implication.make(subject, predicate); + return Implication.make(subject, predicate, null); } if (relation.equals(Symbols.EQUIVALENCE_RELATION)) { - return Equivalence.make(subject, predicate); + return Equivalence.make(subject, predicate, null); } - if (relation.equals(Symbols.IMPLICATION_AFTER_RELATION)) { - return ImplicationAfter.make(subject, predicate); + if (relation.equals(Symbols.IMPLICATION_AFTER_RELATION) || + relation.equals(Symbols.IMPLICATION_WHEN_RELATION) || + relation.equals(Symbols.IMPLICATION_BEFORE_RELATION)) { + return Implication.make(subject, predicate, new TemporalValue(relation)); } - if (relation.equals(Symbols.IMPLICATION_WHEN_RELATION)) { - return ImplicationWhen.make(subject, predicate); - } - if (relation.equals(Symbols.IMPLICATION_BEFORE_RELATION)) { - return ImplicationBefore.make(subject, predicate); - } - if (relation.equals(Symbols.EQUIVALENCE_AFTER_RELATION)) { - return EquivalenceAfter.make(subject, predicate); - } - if (relation.equals(Symbols.EQUIVALENCE_WHEN_RELATION)) { - return EquivalenceWhen.make(subject, predicate); + if (relation.equals(Symbols.EQUIVALENCE_AFTER_RELATION) || + relation.equals(Symbols.EQUIVALENCE_WHEN_RELATION)) { + return Equivalence.make(subject, predicate, new TemporalValue(relation)); } return null; } @@ -121,26 +115,11 @@ public static Statement make(Statement statement, Term subj, Term pred) { if (statement instanceof Similarity) { return Similarity.make(subj, pred); } - if (statement instanceof ImplicationBefore) { - return ImplicationBefore.make(subj, pred); - } - if (statement instanceof ImplicationWhen) { - return ImplicationWhen.make(subj, pred); - } - if (statement instanceof ImplicationAfter) { - return ImplicationAfter.make(subj, pred); - } if (statement instanceof Implication) { - return Implication.make(subj, pred); - } - if (statement instanceof EquivalenceWhen) { - return EquivalenceWhen.make(subj, pred); - } - if (statement instanceof EquivalenceAfter) { - return EquivalenceAfter.make(subj, pred); + return Implication.make(subj, pred, null); } if (statement instanceof Equivalence) { - return Equivalence.make(subj, pred); + return Equivalence.make(subj, pred, null); } return null; } @@ -150,39 +129,19 @@ public static Statement make(Statement statement, Term subj, Term pred) { * @param statement A sample statement providing the class type * @param subj The first component * @param pred The second component - * @param order The temporal order of the statement + * @param t The temporal order of the statement * @return The Statement built */ - public static Statement make(Statement statement, Term subj, Term pred, TemporalRules.Relation order) { - if (order == TemporalRules.Relation.NONE) { - return make(statement, subj, pred); - } - if (order == TemporalRules.Relation.AFTER) { - if (statement instanceof Implication) { - return ImplicationAfter.make(subj, pred); - } - if (statement instanceof Equivalence) { - return EquivalenceAfter.make(subj, pred); - } - return null; - } - if (order == TemporalRules.Relation.WHEN) { - if (statement instanceof Implication) { - return ImplicationWhen.make(subj, pred); - } - if (statement instanceof Equivalence) { - return EquivalenceWhen.make(subj, pred); - } - return null; + public static Statement make(Statement statement, Term subj, Term pred, TemporalValue t) { + if (statement instanceof Implication) { + return Implication.make(subj, pred, t); } - if (order == TemporalRules.Relation.BEFORE) { - if (statement instanceof Implication) { - return ImplicationBefore.make(subj, pred); - } - if (statement instanceof Equivalence) { - return EquivalenceAfter.make(pred, subj); + if (statement instanceof Equivalence) { + if (t.getDelta() < 0) { + return Equivalence.make(pred, subj, TemporalValue.getReverse(t)); + } else { + return Equivalence.make(subj, pred, t); } - return null; } return null; } @@ -192,36 +151,19 @@ public static Statement make(Statement statement, Term subj, Term pred, Temporal * @param statement A sample asymmetric statement providing the class type * @param subj The first component * @param pred The second component - * @param order The temporal order of the statement + * @param t The temporal order of the statement * @return The Statement built */ - public static Statement makeSym(Statement statement, Term subj, Term pred, TemporalRules.Relation order) { - if (order == TemporalRules.Relation.NONE) { - if (statement instanceof Inheritance) { - return Similarity.make(subj, pred); - } - if (statement instanceof Implication) { - return Equivalence.make(subj, pred); - } - return null; - } - if (order == TemporalRules.Relation.AFTER) { - if (statement instanceof Implication) { - return EquivalenceAfter.make(subj, pred); - } - return null; - } - if (order == TemporalRules.Relation.WHEN) { - if (statement instanceof Implication) { - return EquivalenceWhen.make(subj, pred); - } - return null; + public static Statement makeSym(Statement statement, Term subj, Term pred, TemporalValue t) { + if (statement instanceof Inheritance) { + return Similarity.make(subj, pred); } - if (order == TemporalRules.Relation.BEFORE) { - if (statement instanceof Implication) { - return EquivalenceAfter.make(pred, subj); + if (statement instanceof Implication) { + if ((t != null) && (t.getDelta() < 0)) { + return Equivalence.make(pred, subj, TemporalValue.getReverse(t)); + } else { + return Equivalence.make(subj, pred, t); } - return null; } return null; } @@ -296,7 +238,7 @@ public static boolean invalidStatement(Term subject, Term predicate) { } return false; } - + /** * Check the validity of a potential Statement. [To be refined] *

    diff --git a/nars/language/Temporal.java b/nars/language/Temporal.java deleted file mode 100644 index 12f5dfe3..00000000 --- a/nars/language/Temporal.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Temporal.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ - -package nars.language; - -/** - * An interface for compound terms with temporal information in it - */ -public interface Temporal { - -} diff --git a/nars/language/Term.java b/nars/language/Term.java index 817632b1..6adc0008 100644 --- a/nars/language/Term.java +++ b/nars/language/Term.java @@ -20,7 +20,7 @@ */ package nars.language; -import nars.inference.TemporalRules; +import nars.entity.TemporalValue; /** * Term is the basic component of Narsese, and the object of processing in NARS. @@ -132,10 +132,10 @@ public boolean isConstant() { } /** - * Get the temporal order in a term, which is NONE by default + * Get the temporal order in a term, which is null by default * @return The default temporal order */ - public TemporalRules.Relation getTemporalOrder() { - return TemporalRules.Relation.NONE; + public TemporalValue getOrder() { + return null; } } diff --git a/nars/language/package.html b/nars/language/package.html index ddac2f31..638ab7c7 100644 --- a/nars/language/package.html +++ b/nars/language/package.html @@ -30,17 +30,17 @@

    Package Specification

    | --] // Property | {-] // InstanceProperty | ==> // Implication - | =/> // ImplicationAfter - | =|> // ImplicationWhen - | =\> // ImplicationBefore + | =/> // Implication (After) + | =|> // Implication (When) + | =\> // Implication (Before) | <=> // Equivalence - | </> // EquivalenceAfter - | <|> // EquivalenceWhen + | </> // Equivalence (After) + | <|> // Equivalence (When) <compound-statement> ::= (-- <statement>) // Negation | (|| <statement> <statement>+) // Disjunction | (&& <statement> <statement>+) // Conjunction - | (&/ <statement> <statement>+) // ConjunctionSequence - | (&| <statement> <statement>+) // ConjunctionParallel + | (&/ <statement> <statement>+) // Conjunction (Sequence) + | (&| <statement> <statement>+) // Conjunction (Parallel) <compound-term> ::= {<term>+} // SetExt | [<term>+] // SetInt | (& <term> <term>+) // IntersectionExt diff --git a/nars/main/Center.java b/nars/main/Center.java index 025ff650..2cd17597 100644 --- a/nars/main/Center.java +++ b/nars/main/Center.java @@ -94,4 +94,13 @@ public static void tick() { } } } + + /** + * Get the current time from the clock + * Called in nars.entity.Stamp + * @return The current time + */ + public static long getTime() { + return clock; + } } diff --git a/nars/main/Memory.java b/nars/main/Memory.java index c72a683d..cc6b0b7d 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -39,13 +39,15 @@ public class Memory { private static ConceptBag concepts; /** Operators (built-in terms) table. Accessed by name */ private static HashMap operators; + /* There is no global Term table, which may ask for unlimited space. */ /** List of inference newTasks, to be processed in the next working cycle */ private static ArrayList newTasks; /** New tasks with novel composed terms, for delayed and selective processing */ - private static TaskBuffer novelTaskBuffer; + private static TaskBuffer novelTasks; /** List of recent events, for temporal learning */ - public static ArrayList recentEvents; + private static TaskBuffer recentEvents; + /* ---------- global variables used to reduce method arguments ---------- */ /** Shortcut to the selected Term */ public static Term currentTerm; @@ -60,7 +62,7 @@ public class Memory { /** Shortcut to the derived Stamp */ public static Stamp currentStamp; /** Shortcut to the derived tense */ - public static TemporalRules.Relation currentTense; + public static TemporalValue currentTense; /* ---------- initialization ---------- */ /** @@ -72,8 +74,8 @@ public static void init() { concepts = new ConceptBag(); // initially empty, with capacity limit operators = Operator.setOperators(); // with operators created, then remain constant newTasks = new ArrayList(); // initially empty, without capacity limit - novelTaskBuffer = new TaskBuffer(); // initially empty, with capacity limit - recentEvents = new ArrayList(Parameters.MAXMUM_EVENTS_LENGTH); // initially empty, with capacity limit + novelTasks = new TaskBuffer(); // initially empty, with capacity limit + recentEvents = new TaskBuffer(); // with a different capacity? } /* ---------- access utilities ---------- */ @@ -174,7 +176,7 @@ public static void inputTask(Task task) { if (task.aboveThreshold()) { report(task.getSentence(), true); // report input newTasks.add(task); // wait to be processed in the next cycle - novelTaskBuffer.refresh(); // refresh display + novelTasks.refresh(); // refresh display } else { Record.append("!!! Ignored: " + task + "\n"); } @@ -194,7 +196,7 @@ private static void derivedTask(Task task) { report(task.getSentence(), false); } newTasks.add(task); - novelTaskBuffer.refresh(); + novelTasks.refresh(); } else { Record.append("!!! Ignored: " + task + "\n"); } @@ -213,7 +215,7 @@ public static void executedTask(Task task) { Task newTask = new Task(j, task.getBudget()); report(newTask.getSentence(), false); newTasks.add(newTask); - novelTaskBuffer.refresh(); + novelTasks.refresh(); } /** @@ -225,8 +227,16 @@ public static void executedTask(Task task) { public static void activatedTask(BudgetValue budget, Sentence sentence, boolean isInput) { Task task = new Task(sentence, budget); Record.append("!!! Activated: " + task.toString() + "\n"); + if (sentence instanceof Question) { + float s = task.getBudget().summary(); + @SuppressWarnings("static-access") + float minSilent = Center.mainWindow.silentW.value() / 100.0f; + if (s > minSilent) { // only report significient derived Tasks + report(task.getSentence(), false); + } + } newTasks.add(task); - novelTaskBuffer.refresh(); + novelTasks.refresh(); } /* --------------- new task building --------------- */ @@ -238,7 +248,7 @@ public static void activatedTask(BudgetValue budget, Sentence sentence, boolean */ public static void doublePremiseTask(BudgetValue budget, Term content, TruthValue truth) { if (content != null) { - Sentence newSentence = Sentence.make(currentTask.getSentence(), content, currentTense, truth, currentStamp); + Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, currentStamp, currentTense); Task newTask = new Task(newSentence, budget); derivedTask(newTask); } @@ -252,7 +262,7 @@ public static void doublePremiseTask(BudgetValue budget, Term content, TruthValu */ public static void singlePremiseTask(BudgetValue budget, Term content, TruthValue truth) { Sentence sentence = currentTask.getSentence(); - Sentence newSentence = Sentence.make(sentence, content, sentence.getTense(), truth, sentence.getStamp()); + Sentence newSentence = Sentence.make(sentence, content, truth, sentence.getStamp(), sentence.getTense()); Task newTask = new Task(newSentence, budget); newTask.setStructual(); derivedTask(newTask); @@ -267,9 +277,9 @@ public static void singlePremiseTask(BudgetValue budget, Term content, TruthValu */ public static void convertedJudgment(TruthValue truth, BudgetValue budget) { Term content = Memory.currentTask.getContent(); - TemporalRules.Relation tense = Memory.currentBelief.getTense(); + TemporalValue tense = Memory.currentBelief.getTense(); Stamp stamp = Memory.currentBelief.getStamp(); - Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, tense, truth, stamp); + Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, truth, stamp, tense); Task newTask = new Task(newJudgment, budget); newTask.setStructual(); derivedTask(newTask); @@ -299,10 +309,10 @@ private static void processTask() { if (task.getSentence().isInput() || (termToConcept(task.getContent()) != null)) { // new input or existing concept immediateProcess(task); } else { - novelTaskBuffer.putIn(task); // delayed processing + novelTasks.putIn(task); // delayed processing } } - task = novelTaskBuffer.takeOut(); // select a task from novelTaskBuffer + task = novelTasks.takeOut(); // select a task from novelTasks if (task != null) { immediateProcess(task); } @@ -318,7 +328,7 @@ private static void processConcept() { Record.append(" * Selected Concept: " + currentTerm + "\n"); concepts.putBack(currentConcept); // current Concept remains in the bag all the time currentConcept.fire(); // a working cycle - novelTaskBuffer.refresh(); // show new result + novelTasks.refresh(); // show new result } } @@ -336,6 +346,10 @@ private static void immediateProcess(Task task) { c.directProcess(task); if (task.aboveThreshold()) { // still need to be processed continuedProcess(task, content); + Sentence s = task.getSentence(); + if (s.isJudgment() && (s.getTense() != null)) { + eventProcessing(task); + } } } @@ -375,6 +389,24 @@ private static void continuedProcess(Task task, Term content) { } } + /** + * Simple temporal regularity discovery [To be refined] + *

    + * called in Memory.immediateProcess + * @param event1 A new event + */ + private static void eventProcessing(Task event1) { + Task event2 = recentEvents.takeOut(); + if ((event2 != null) && event1.getSentence().noOverlapping(event2.getSentence())) { + long time1 = event1.getSentence().getEventTime(); + long time2 = event2.getSentence().getEventTime(); + TemporalValue order = new TemporalValue((int) (time2 - time1)); + SyllogisticRules.temporalIndCom(event1, event2, order); + recentEvents.putBack(event2); + } + recentEvents.putIn(event1); + } + /* ---------- display ---------- */ /** * Display active concepts, called from MainWindow. @@ -389,7 +421,8 @@ public static void conceptsStartPlay(String s) { * @param s the window title */ public static void newTasksStartPlay(String s) { - novelTaskBuffer.startPlay(s); + novelTasks.startPlay(s); + recentEvents.startPlay("Recent Events"); } /** @@ -401,10 +434,6 @@ public static String newTasksToString() { for (int i = 0; i < newTasks.size(); i++) { s += newTasks.get(i) + "\n"; } - s += "\n Recent Events:: \n"; - for (int i = 0; i < recentEvents.size(); i++) { - s += recentEvents.get(i) + "\n"; - } s += "\n Task Buffer: \n"; return s; } diff --git a/nars/main/NARS.java b/nars/main/NARS.java index a8286750..9a7edef7 100644 --- a/nars/main/NARS.java +++ b/nars/main/NARS.java @@ -34,7 +34,7 @@ public class NARS extends Applet implements Runnable { * The information about the version and date of the project. */ public static final String INFO = - " Open-NARS Version 1.1.2 January 2009 \n"; + " Open-NARS Version 1.1.3 August 2009 \n"; /** * The project websites. */ diff --git a/nars/main/Parameters.java b/nars/main/Parameters.java index 0f6e3959..97469eb5 100644 --- a/nars/main/Parameters.java +++ b/nars/main/Parameters.java @@ -33,7 +33,7 @@ public class Parameters { /** TermLink decay rate in TermLinkBag, in [1, 99]. */ public static final int TERM_LINK_FORGETTING_CYCLE = 50; /** Silent threshold for task reporting, in [0, 100]. */ - public static final int SILENT_LEVEL = 100; // no spontaneous report + public static final int SILENT_LEVEL = 1; // spontaneous report /* ---------- time management ---------- */ /** Task decay rate in TaskBuffer, in [1, 99]. */ diff --git a/nars/overview.html b/nars/overview.html index 1325c1d1..4c994842 100644 --- a/nars/overview.html +++ b/nars/overview.html @@ -1,7 +1,7 @@ NARS - + NARS overview From b81e39b4129e00627c8e0bb18b7ddf69fea93d8e Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sat, 15 Aug 2009 12:44:18 +0000 Subject: [PATCH 008/206] Open-nars distribution files: JAR, javadoc, and examples --- .../Examples/Example-NAL8-4-abridged.txt | 2 +- .../Examples/Example-NAL8-5-abridged.txt | 106 +++ .../Examples/Example-NAL8-5-complete.txt | 147 ++++ nars-dist/NARS-applet.html | 5 +- nars-dist/javadoc/allclasses-frame.html | 22 +- nars-dist/javadoc/allclasses-noframe.html | 22 +- nars-dist/javadoc/constant-values.html | 8 +- nars-dist/javadoc/deprecated-list.html | 4 +- nars-dist/javadoc/help-doc.html | 4 +- nars-dist/javadoc/index-files/index-1.html | 4 +- nars-dist/javadoc/index-files/index-10.html | 6 +- nars-dist/javadoc/index-files/index-11.html | 4 +- nars-dist/javadoc/index-files/index-12.html | 7 +- nars-dist/javadoc/index-files/index-13.html | 63 +- nars-dist/javadoc/index-files/index-14.html | 6 +- nars-dist/javadoc/index-files/index-15.html | 25 +- nars-dist/javadoc/index-files/index-16.html | 19 +- nars-dist/javadoc/index-files/index-17.html | 9 +- nars-dist/javadoc/index-files/index-18.html | 7 +- nars-dist/javadoc/index-files/index-19.html | 19 +- nars-dist/javadoc/index-files/index-2.html | 4 +- nars-dist/javadoc/index-files/index-20.html | 62 +- nars-dist/javadoc/index-files/index-21.html | 7 +- nars-dist/javadoc/index-files/index-22.html | 11 +- nars-dist/javadoc/index-files/index-23.html | 4 +- nars-dist/javadoc/index-files/index-3.html | 47 +- nars-dist/javadoc/index-files/index-4.html | 16 +- nars-dist/javadoc/index-files/index-5.html | 30 +- nars-dist/javadoc/index-files/index-6.html | 4 +- nars-dist/javadoc/index-files/index-7.html | 68 +- nars-dist/javadoc/index-files/index-8.html | 4 +- nars-dist/javadoc/index-files/index-9.html | 52 +- nars-dist/javadoc/index.html | 2 +- .../javadoc/nars/entity/BudgetValue.html | 4 +- nars-dist/javadoc/nars/entity/Concept.html | 200 ++--- nars-dist/javadoc/nars/entity/Goal.html | 10 +- nars-dist/javadoc/nars/entity/Item.html | 4 +- nars-dist/javadoc/nars/entity/Judgment.html | 38 +- nars-dist/javadoc/nars/entity/Question.html | 34 +- nars-dist/javadoc/nars/entity/Sentence.html | 161 +++-- nars-dist/javadoc/nars/entity/ShortFloat.html | 8 +- nars-dist/javadoc/nars/entity/Stamp.html | 64 +- nars-dist/javadoc/nars/entity/Task.html | 8 +- nars-dist/javadoc/nars/entity/TaskLink.html | 8 +- .../javadoc/nars/entity/TemporalValue.html | 393 ++++++++++ nars-dist/javadoc/nars/entity/TermLink.html | 8 +- nars-dist/javadoc/nars/entity/TruthValue.html | 4 +- .../nars/entity/class-use/BudgetValue.html | 4 +- .../nars/entity/class-use/Concept.html | 4 +- .../javadoc/nars/entity/class-use/Goal.html | 12 +- .../javadoc/nars/entity/class-use/Item.html | 4 +- .../nars/entity/class-use/Judgment.html | 72 +- .../nars/entity/class-use/Question.html | 10 +- .../nars/entity/class-use/Sentence.html | 22 +- .../nars/entity/class-use/ShortFloat.html | 4 +- .../javadoc/nars/entity/class-use/Stamp.html | 24 +- .../javadoc/nars/entity/class-use/Task.html | 43 +- .../nars/entity/class-use/TaskLink.html | 4 +- .../nars/entity/class-use/TemporalValue.html | 684 ++++++++++++++++++ .../nars/entity/class-use/TermLink.html | 4 +- .../nars/entity/class-use/TruthValue.html | 35 +- .../javadoc/nars/entity/package-frame.html | 6 +- .../javadoc/nars/entity/package-summary.html | 9 +- .../javadoc/nars/entity/package-tree.html | 6 +- .../javadoc/nars/entity/package-use.html | 28 +- nars-dist/javadoc/nars/gui/BagWindow.html | 4 +- nars-dist/javadoc/nars/gui/ConceptWindow.html | 4 +- .../javadoc/nars/gui/InferenceWindow.html | 4 +- nars-dist/javadoc/nars/gui/InputWindow.html | 4 +- nars-dist/javadoc/nars/gui/MainWindow.html | 4 +- nars-dist/javadoc/nars/gui/MessageDialog.html | 4 +- nars-dist/javadoc/nars/gui/NarsFrame.html | 4 +- .../javadoc/nars/gui/ParameterWindow.html | 4 +- nars-dist/javadoc/nars/gui/TermWindow.html | 4 +- .../javadoc/nars/gui/class-use/BagWindow.html | 4 +- .../nars/gui/class-use/ConceptWindow.html | 4 +- .../nars/gui/class-use/InferenceWindow.html | 4 +- .../nars/gui/class-use/InputWindow.html | 4 +- .../nars/gui/class-use/MainWindow.html | 4 +- .../nars/gui/class-use/MessageDialog.html | 4 +- .../javadoc/nars/gui/class-use/NarsFrame.html | 4 +- .../nars/gui/class-use/ParameterWindow.html | 4 +- .../nars/gui/class-use/TermWindow.html | 4 +- nars-dist/javadoc/nars/gui/package-frame.html | 4 +- .../javadoc/nars/gui/package-summary.html | 4 +- nars-dist/javadoc/nars/gui/package-tree.html | 4 +- nars-dist/javadoc/nars/gui/package-use.html | 4 +- .../nars/inference/BudgetFunctions.html | 4 +- .../nars/inference/CompositionalRules.html | 4 +- .../javadoc/nars/inference/MatchingRules.html | 43 +- .../javadoc/nars/inference/RuleTables.html | 4 +- .../nars/inference/StructuralRules.html | 4 +- .../nars/inference/SyllogisticRules.html | 20 +- .../javadoc/nars/inference/TemporalRules.html | 157 ++-- .../nars/inference/TruthFunctions.html | 102 +-- .../nars/inference/UtilityFunctions.html | 4 +- .../inference/class-use/BudgetFunctions.html | 4 +- .../class-use/CompositionalRules.html | 4 +- .../inference/class-use/MatchingRules.html | 4 +- .../nars/inference/class-use/RuleTables.html | 4 +- .../inference/class-use/StructuralRules.html | 4 +- .../inference/class-use/SyllogisticRules.html | 4 +- .../inference/class-use/TemporalRules.html | 4 +- .../inference/class-use/TruthFunctions.html | 4 +- .../inference/class-use/UtilityFunctions.html | 4 +- .../javadoc/nars/inference/package-frame.html | 15 +- .../nars/inference/package-summary.html | 18 +- .../javadoc/nars/inference/package-tree.html | 14 +- .../javadoc/nars/inference/package-use.html | 86 +-- nars-dist/javadoc/nars/io/ExperienceIO.html | 4 +- nars-dist/javadoc/nars/io/Record.html | 4 +- .../StringParser.InvalidInputException.html | 4 +- nars-dist/javadoc/nars/io/StringParser.html | 27 +- nars-dist/javadoc/nars/io/Symbols.html | 4 +- .../nars/io/class-use/ExperienceIO.html | 4 +- .../javadoc/nars/io/class-use/Record.html | 4 +- .../StringParser.InvalidInputException.html | 4 +- .../nars/io/class-use/StringParser.html | 4 +- .../javadoc/nars/io/class-use/Symbols.html | 4 +- nars-dist/javadoc/nars/io/package-frame.html | 4 +- .../javadoc/nars/io/package-summary.html | 4 +- nars-dist/javadoc/nars/io/package-tree.html | 4 +- nars-dist/javadoc/nars/io/package-use.html | 4 +- .../javadoc/nars/language/CompoundTerm.html | 6 +- .../javadoc/nars/language/Conjunction.html | 249 +++++-- .../javadoc/nars/language/DifferenceExt.html | 10 +- .../javadoc/nars/language/DifferenceInt.html | 6 +- .../javadoc/nars/language/Disjunction.html | 6 +- .../javadoc/nars/language/Equivalence.html | 162 +++-- nars-dist/javadoc/nars/language/ImageExt.html | 10 +- nars-dist/javadoc/nars/language/ImageInt.html | 6 +- .../javadoc/nars/language/Implication.html | 154 ++-- .../javadoc/nars/language/Inheritance.html | 12 +- nars-dist/javadoc/nars/language/Instance.html | 8 +- .../nars/language/InstanceProperty.html | 8 +- .../nars/language/IntersectionExt.html | 6 +- .../nars/language/IntersectionInt.html | 6 +- nars-dist/javadoc/nars/language/Negation.html | 6 +- nars-dist/javadoc/nars/language/Product.html | 6 +- nars-dist/javadoc/nars/language/Property.html | 8 +- nars-dist/javadoc/nars/language/SetExt.html | 6 +- nars-dist/javadoc/nars/language/SetInt.html | 6 +- .../javadoc/nars/language/Similarity.html | 8 +- .../javadoc/nars/language/Statement.html | 54 +- nars-dist/javadoc/nars/language/Term.html | 22 +- .../nars/language/Variable.VarType.html | 4 +- nars-dist/javadoc/nars/language/Variable.html | 6 +- .../nars/language/class-use/CompoundTerm.html | 60 +- .../nars/language/class-use/Conjunction.html | 41 +- .../language/class-use/DifferenceExt.html | 4 +- .../language/class-use/DifferenceInt.html | 4 +- .../nars/language/class-use/Disjunction.html | 4 +- .../nars/language/class-use/Equivalence.html | 43 +- .../nars/language/class-use/ImageExt.html | 4 +- .../nars/language/class-use/ImageInt.html | 4 +- .../nars/language/class-use/Implication.html | 51 +- .../nars/language/class-use/Inheritance.html | 4 +- .../nars/language/class-use/Instance.html | 4 +- .../language/class-use/InstanceProperty.html | 4 +- .../language/class-use/IntersectionExt.html | 4 +- .../language/class-use/IntersectionInt.html | 4 +- .../nars/language/class-use/Negation.html | 4 +- .../nars/language/class-use/Product.html | 4 +- .../nars/language/class-use/Property.html | 4 +- .../nars/language/class-use/SetExt.html | 4 +- .../nars/language/class-use/SetInt.html | 4 +- .../nars/language/class-use/Similarity.html | 4 +- .../nars/language/class-use/Statement.html | 60 +- .../javadoc/nars/language/class-use/Term.html | 495 +++---------- .../language/class-use/Variable.VarType.html | 4 +- .../nars/language/class-use/Variable.html | 82 +-- .../javadoc/nars/language/package-frame.html | 29 +- .../nars/language/package-summary.html | 60 +- .../javadoc/nars/language/package-tree.html | 26 +- .../javadoc/nars/language/package-use.html | 46 +- nars-dist/javadoc/nars/main/Center.html | 28 +- nars-dist/javadoc/nars/main/Memory.html | 43 +- nars-dist/javadoc/nars/main/NARS.html | 4 +- nars-dist/javadoc/nars/main/Parameters.html | 4 +- .../javadoc/nars/main/class-use/Center.html | 4 +- .../javadoc/nars/main/class-use/Memory.html | 4 +- .../javadoc/nars/main/class-use/NARS.html | 4 +- .../nars/main/class-use/Parameters.html | 4 +- .../javadoc/nars/main/package-frame.html | 4 +- .../javadoc/nars/main/package-summary.html | 4 +- nars-dist/javadoc/nars/main/package-tree.html | 4 +- nars-dist/javadoc/nars/main/package-use.html | 4 +- nars-dist/javadoc/nars/operation/Break.html | 6 +- nars-dist/javadoc/nars/operation/GoTo.html | 6 +- nars-dist/javadoc/nars/operation/Open.html | 6 +- .../javadoc/nars/operation/Operator.html | 6 +- nars-dist/javadoc/nars/operation/Pick.html | 6 +- .../nars/operation/class-use/Break.html | 4 +- .../nars/operation/class-use/GoTo.html | 4 +- .../nars/operation/class-use/Open.html | 4 +- .../nars/operation/class-use/Operator.html | 4 +- .../nars/operation/class-use/Pick.html | 4 +- .../javadoc/nars/operation/package-frame.html | 4 +- .../nars/operation/package-summary.html | 4 +- .../javadoc/nars/operation/package-tree.html | 4 +- .../javadoc/nars/operation/package-use.html | 4 +- nars-dist/javadoc/nars/storage/Bag.html | 4 +- .../javadoc/nars/storage/ConceptBag.html | 4 +- .../javadoc/nars/storage/Distributor.html | 4 +- .../javadoc/nars/storage/TaskBuffer.html | 4 +- .../javadoc/nars/storage/TaskLinkBag.html | 4 +- .../javadoc/nars/storage/TermLinkBag.html | 4 +- .../javadoc/nars/storage/class-use/Bag.html | 4 +- .../nars/storage/class-use/ConceptBag.html | 4 +- .../nars/storage/class-use/Distributor.html | 4 +- .../nars/storage/class-use/TaskBuffer.html | 14 +- .../nars/storage/class-use/TaskLinkBag.html | 4 +- .../nars/storage/class-use/TermLinkBag.html | 4 +- .../javadoc/nars/storage/package-frame.html | 4 +- .../javadoc/nars/storage/package-summary.html | 4 +- .../javadoc/nars/storage/package-tree.html | 4 +- .../javadoc/nars/storage/package-use.html | 4 +- nars-dist/javadoc/overview-frame.html | 4 +- nars-dist/javadoc/overview-summary.html | 4 +- nars-dist/javadoc/overview-tree.html | 30 +- nars-dist/javadoc/serialized-form.html | 4 +- 221 files changed, 3192 insertions(+), 2334 deletions(-) create mode 100644 nars-dist/Examples/Example-NAL8-5-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL8-5-complete.txt create mode 100644 nars-dist/javadoc/nars/entity/TemporalValue.html create mode 100644 nars-dist/javadoc/nars/entity/class-use/TemporalValue.html diff --git a/nars-dist/Examples/Example-NAL8-4-abridged.txt b/nars-dist/Examples/Example-NAL8-4-abridged.txt index 6d048bf6..1fddf796 100644 --- a/nars-dist/Examples/Example-NAL8-4-abridged.txt +++ b/nars-dist/Examples/Example-NAL8-4-abridged.txt @@ -13,7 +13,7 @@ IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: IN: <(*,Self,key001) --> hold>! 2 - OUT: <(*,key001) --> ^pick>! %1.00;0.81% {2: 2;1} + OUT: <(*,key001) --> ^pick>! %1.00;0.81% {2: 2;1} ********** [06 -> 07]: IN: <(*,key001) --> ^pick>! diff --git a/nars-dist/Examples/Example-NAL8-5-abridged.txt b/nars-dist/Examples/Example-NAL8-5-abridged.txt new file mode 100644 index 00000000..3d29e324 --- /dev/null +++ b/nars-dist/Examples/Example-NAL8-5-abridged.txt @@ -0,0 +1,106 @@ +*** [01] <(*, Self, key001) --> hold>! +*** [02] (--, <(*, Self, key001) --> hold>). :|: +*** [03] <(&/, <(*, Self, key001) --> reachable>, (^pick, key001)) =/> <(*, Self, key001) --> hold>>. +*** [04] <(*, Self, key001) --> reachable>. :|: + +********** [03 + 04 -> 05]: + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. + IN: <(*,Self,key001) --> reachable>. :|: +1 + + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% + +********** [05 + 01 -> 06]: + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% + IN: <(*,Self,key001) --> hold>! +1 + + OUT: <(*,Self,key001) --> hold>? :|: +2 + + OUT: <(*,key001) --> ^pick>! %1.00;0.73% + +********** [06 -> 07]: + IN: <(*,key001) --> ^pick>! %1.00;0.73% +1 + + OUT: <(*,key001) --> ^pick>. :|: %1.00;0.90% + +********** [07 + 05 -> 08]: + IN: <(*,key001) --> ^pick>. :|: + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% +1 + + OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.73% + +********** [02 + 08 -> 08]: + IN: (--,<(*,Self,key001) --> hold>). :|: +1 + + OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% +1 + + IN: <(*,Self,key001) --> hold>? :|: +1 + + OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% +1 + + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.73% +2 + + IN: <(*,Self,key001) --> hold>? :|: +1 + + OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.73% + +*** [09] <(*, Self, key001) --> hold>. + +********** [08 + 09 -> 10]: + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.73% +1 + + IN: <(*,Self,key001) --> hold>. :|: +1 + + OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.92% + + +********** [07 + 09 -> 11]: + IN: <(*,key001) --> ^pick>. :|: +1 + + IN: <(*,Self,key001) --> hold>. :|: +1 + + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% + +********** [05 + 11 -> 12]: + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% + +1 + + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% +1 + + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.84% + +********** [04 + 12 -> 13]: + IN: <(*,Self,key001) --> reachable>. :|: +1 + + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.84% +1 + + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.43% + + +********** [03 + 13 -> 14]: + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. +1 + + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.43% + +1 + + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.91% diff --git a/nars-dist/Examples/Example-NAL8-5-complete.txt b/nars-dist/Examples/Example-NAL8-5-complete.txt new file mode 100644 index 00000000..a5451bd7 --- /dev/null +++ b/nars-dist/Examples/Example-NAL8-5-complete.txt @@ -0,0 +1,147 @@ +*** [01] <(*, Self, key001) --> hold>! +*** [02] (--, <(*, Self, key001) --> hold>). :|: +*** [03] <(&/, <(*, Self, key001) --> reachable>, (^pick, key001)) =/> <(*, Self, key001) --> hold>>. +*** [04] <(*, Self, key001) --> reachable>. :|: +********** [03 + 04 -> 05]: + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0: 1} + + IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0: 2} + +1 + + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {1: 2;1} + +********** [05 + 01 -> 06]: + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0: 1} + + IN: <(*,Self,key001) --> hold>! %1.00;0.90% {0: 2} + +1 + + OUT: <(*,Self,key001) --> hold>? :|: {1: 3} + + OUT: (/,hold,_,key001)>! %1.00;0.90% {0: 2} + +1 + + OUT: (/,hold,_,key001)>? :|: {2: 4} + +1 + + OUT: <(*,key001) --> ^pick>! %1.00;0.73% {3: 2;1} + +********** [06 -> 07]: + IN: <(*,key001) --> ^pick>! %1.00;0.73% {0: 1} + +1 + + OUT: <(*,key001) --> ^pick>. :|: %1.00;0.90% {1: 2} + +********** [07 + 05 -> 08]: + IN: <(*,key001) --> ^pick>. :|: %1.00;0.90% {0: 1} + + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0: 2} + +1 + + OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.73% {1: 1;2} + +********** [02 + 08 -> 08]: + IN: (--,<(*,Self,key001) --> hold>). :|: %1.00;0.90% {0: 1} + +1 + + OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% {0: 1} + +1 + + OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% {0: 1} + + IN: <(*,Self,key001) --> hold>? :|: {2: 2} + +1 + + OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% {0: 1} + +1 + + OUT: (--,<(*,Self,key001) --> hold>)? :\: {2: 2} + + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.73% {4: 3} + +2 + + IN: <(*,Self,key001) --> hold>? :|: {6: 4} + +1 + + OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.73% {4: 3} + +*** [09] <(*, Self, key001) --> hold>. +********** [08 + 09 -> 10]: + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.73% {0: 1} + +1 + + OUT: (/,hold,_,key001)>. :\: %1.00;0.73% {0: 1} + + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.92% {2: 1;2} + +********** [07 + 09 -> 11]: + IN: <(*,key001) --> ^pick>. :|: %1.00;0.90% {0: 1} + +1 + + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1: 2} + +1 + + OUT: <<(*,Self,key001) --> hold> =\> <(*,key001) --> ^pick>>. :|: %1.00;0.45% {2: 1;2} + + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 1;2} + + OUT: <<(*,key001) --> ^pick> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 1;2} + + OUT: (/,^pick,_)>. :\: %1.00;0.90% {0: 1} + +********** [05 + 11 -> 12]: + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0: 1} + +1 + + OUT: < (/,^pick,_)> ==> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% {0: 1} + + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {1: 2} + +1 + + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.84% {2: 1;2} + +********** [04 + 12 -> 13]: + IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0: 1} + +1 + + OUT: (/,reachable,_,key001)>. :\: %1.00;0.90% {0: 1} + + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.84% {1: 2} + +1 + + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.43% {2: 1;2} + +********** [03 + 13 -> 14]: + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0: 1} + +1 + + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.43% {1: 2} + +1 + + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.91% {2: 2;1} + diff --git a/nars-dist/NARS-applet.html b/nars-dist/NARS-applet.html index f53ffa13..d76e27b0 100644 --- a/nars-dist/NARS-applet.html +++ b/nars-dist/NARS-applet.html @@ -6,7 +6,10 @@ NARS - NARS is running. To stop it, close this window. +

    +If you don't see the two applet windows, most likely it is because your browser does not support Java. You can test it here. +

    + diff --git a/nars-dist/javadoc/allclasses-frame.html b/nars-dist/javadoc/allclasses-frame.html index b1374d9a..b90ca19a 100644 --- a/nars-dist/javadoc/allclasses-frame.html +++ b/nars-dist/javadoc/allclasses-frame.html @@ -2,13 +2,13 @@ - + All Classes (NARS Document) - + @@ -46,10 +46,6 @@
    Conjunction
    -ConjunctionParallel -
    -ConjunctionSequence -
    DifferenceExt
    DifferenceInt @@ -60,10 +56,6 @@
    Equivalence
    -EquivalenceAfter -
    -EquivalenceWhen -
    ExperienceIO
    Goal @@ -76,12 +68,6 @@
    Implication
    -ImplicationAfter -
    -ImplicationBefore -
    -ImplicationWhen -
    InferenceWindow
    Inheritance @@ -166,11 +152,9 @@
    TaskLinkBag
    -Temporal -
    TemporalRules
    -TemporalRules.Relation +TemporalValue
    Term
    diff --git a/nars-dist/javadoc/allclasses-noframe.html b/nars-dist/javadoc/allclasses-noframe.html index ae177fe9..b64daa8d 100644 --- a/nars-dist/javadoc/allclasses-noframe.html +++ b/nars-dist/javadoc/allclasses-noframe.html @@ -2,13 +2,13 @@ - + All Classes (NARS Document) - + @@ -46,10 +46,6 @@
    Conjunction
    -ConjunctionParallel -
    -ConjunctionSequence -
    DifferenceExt
    DifferenceInt @@ -60,10 +56,6 @@
    Equivalence
    -EquivalenceAfter -
    -EquivalenceWhen -
    ExperienceIO
    Goal @@ -76,12 +68,6 @@
    Implication
    -ImplicationAfter -
    -ImplicationBefore -
    -ImplicationWhen -
    InferenceWindow
    Inheritance @@ -166,11 +152,9 @@
    TaskLinkBag
    -Temporal -
    TemporalRules
    -TemporalRules.Relation +TemporalValue
    Term
    diff --git a/nars-dist/javadoc/constant-values.html b/nars-dist/javadoc/constant-values.html index 26fd8887..79a1b8b8 100644 --- a/nars-dist/javadoc/constant-values.html +++ b/nars-dist/javadoc/constant-values.html @@ -2,13 +2,13 @@ - + Constant Field Values (NARS Document) - + @@ -636,7 +636,7 @@

    public static final java.lang.String INFO -" Open-NARS Version 1.1.1 July 2008 \n" +" Open-NARS Version 1.1.3 August 2009 \n" @@ -798,7 +798,7 @@

    public static final int SILENT_LEVEL -10 +1 diff --git a/nars-dist/javadoc/deprecated-list.html b/nars-dist/javadoc/deprecated-list.html index 3de1f175..c69f2cc0 100644 --- a/nars-dist/javadoc/deprecated-list.html +++ b/nars-dist/javadoc/deprecated-list.html @@ -2,13 +2,13 @@ - + Deprecated List (NARS Document) - + diff --git a/nars-dist/javadoc/help-doc.html b/nars-dist/javadoc/help-doc.html index f521cadd..a20bab88 100644 --- a/nars-dist/javadoc/help-doc.html +++ b/nars-dist/javadoc/help-doc.html @@ -2,13 +2,13 @@ - + API Help (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-1.html b/nars-dist/javadoc/index-files/index-1.html index 1b0e0956..4e4bb774 100644 --- a/nars-dist/javadoc/index-files/index-1.html +++ b/nars-dist/javadoc/index-files/index-1.html @@ -2,13 +2,13 @@ - + A-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-10.html b/nars-dist/javadoc/index-files/index-10.html index 2cd1d267..f83b24e6 100644 --- a/nars-dist/javadoc/index-files/index-10.html +++ b/nars-dist/javadoc/index-files/index-10.html @@ -2,13 +2,13 @@ - + J-Index (NARS Document) - + @@ -83,7 +83,7 @@

    J

    -
    Judgment - Class in nars.entity
    A Judgment is an piece of new knowledge to be absorbed.
    Judgment(Term, char, TemporalRules.Relation, TruthValue, Stamp) - +
    Judgment - Class in nars.entity
    A Judgment is an piece of new knowledge to be absorbed.
    Judgment(Term, char, TruthValue, Stamp) - Constructor for class nars.entity.Judgment
    Constructor
    Judgment(Goal) - diff --git a/nars-dist/javadoc/index-files/index-11.html b/nars-dist/javadoc/index-files/index-11.html index f3c472b2..28bb97ba 100644 --- a/nars-dist/javadoc/index-files/index-11.html +++ b/nars-dist/javadoc/index-files/index-11.html @@ -2,13 +2,13 @@ - + K-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-12.html b/nars-dist/javadoc/index-files/index-12.html index c35f37ca..cc592968 100644 --- a/nars-dist/javadoc/index-files/index-12.html +++ b/nars-dist/javadoc/index-files/index-12.html @@ -2,13 +2,13 @@ - + L-Index (NARS Document) - + @@ -83,9 +83,6 @@

    L

    -
    latest() - -Method in class nars.entity.Stamp -
    Get the latest Stamp in the list
    length - Variable in class nars.entity.Stamp
    current stamp length diff --git a/nars-dist/javadoc/index-files/index-13.html b/nars-dist/javadoc/index-files/index-13.html index 25c63067..26da918c 100644 --- a/nars-dist/javadoc/index-files/index-13.html +++ b/nars-dist/javadoc/index-files/index-13.html @@ -2,13 +2,13 @@ - + M-Index (NARS Document) - + @@ -95,10 +95,10 @@
    mainWindow - Static variable in class nars.main.Center
    The unique main window -
    make(Term, char, TemporalRules.Relation, TruthValue, Stamp) - +
    make(Term, char, TruthValue, Stamp, TemporalValue) - Static method in class nars.entity.Sentence
    Make a Sentence from an input String. -
    make(Sentence, Term, TemporalRules.Relation, TruthValue, Stamp) - +
    make(Sentence, Term, TruthValue, Stamp, TemporalValue) - Static method in class nars.entity.Sentence
    Make a derived Sentence from a template and some initial values.
    make(Stamp, Stamp) - @@ -110,30 +110,15 @@
    make(String, ArrayList<Term>) - Static method in class nars.language.CompoundTerm
    Try to make a compound term from an operator and a list of components -
    make(Term, Term) - -Static method in class nars.language.Conjunction -
    Try to make a new compound from two components. -
    make(ArrayList<Term>) - +
    make(ArrayList<Term>, TemporalValue) - Static method in class nars.language.Conjunction
    Try to make a new compound from a list of components. -
    make(TreeSet<Term>) - +
    make(TreeSet<Term>, TemporalValue) - Static method in class nars.language.Conjunction
    Try to make a new compound from a set of components. -
    make(Term, Term) - -Static method in class nars.language.ConjunctionParallel +
    make(Term, Term, TemporalValue) - +Static method in class nars.language.Conjunction
    Try to make a new compound from two components. -
    make(ArrayList<Term>) - -Static method in class nars.language.ConjunctionParallel -
    Try to make a new compound from a list of components. -
    make(TreeSet<Term>) - -Static method in class nars.language.ConjunctionParallel -
    Try to make a new compound from a set of components. -
    make(ArrayList<Term>) - -Static method in class nars.language.ConjunctionSequence -
    Try to make a new compound from a list of components. -
    make(Term, Term) - -Static method in class nars.language.ConjunctionSequence -
     
    make(ArrayList<Term>) - Static method in class nars.language.DifferenceExt
    Try to make a new DifferenceExt. @@ -155,17 +140,8 @@
    make(TreeSet<Term>) - Static method in class nars.language.Disjunction
    Try to make a new Disjunction from a set of components. -
    make(Term, Term) - -Static method in class nars.language.Equivalence -
    Try to make a new compound from two components. -
    make(Term, Term, TemporalRules.Relation) - +
    make(Term, Term, TemporalValue) - Static method in class nars.language.Equivalence -
      -
    make(Term, Term) - -Static method in class nars.language.EquivalenceAfter -
    Try to make a new compound from two components. -
    make(Term, Term) - -Static method in class nars.language.EquivalenceWhen
    Try to make a new compound from two components.
    make(ArrayList<Term>) - Static method in class nars.language.ImageExt @@ -191,20 +167,8 @@
    make(ArrayList<Term>, short) - Static method in class nars.language.ImageInt
    Try to make a new compound from a set of components. -
    make(Term, Term) - -Static method in class nars.language.Implication -
    Try to make a new compound from two components. -
    make(Term, Term, TemporalRules.Relation) - +
    make(Term, Term, TemporalValue) - Static method in class nars.language.Implication -
      -
    make(Term, Term) - -Static method in class nars.language.ImplicationAfter -
    Try to make a new compound from two components. -
    make(Term, Term) - -Static method in class nars.language.ImplicationBefore -
    Try to make a new compound from two components. -
    make(Term, Term) - -Static method in class nars.language.ImplicationWhen
    Try to make a new compound from two components.
    make(Term, Term) - Static method in class nars.language.Inheritance @@ -275,7 +239,7 @@
    make(Statement, Term, Term) - Static method in class nars.language.Statement
    Make a Statement from given components, called by the rules -
    make(Statement, Term, Term, TemporalRules.Relation) - +
    make(Statement, Term, Term, TemporalValue) - Static method in class nars.language.Statement
    Make a Statement from given components and temporal information, called by the rules
    makeCompoundName(String, ArrayList<Term>) - @@ -308,7 +272,7 @@
    makeStatementName(Term, String, Term) - Static method in class nars.language.Statement
    Default method to make the name of an image term from given fields -
    makeSym(Statement, Term, Term, TemporalRules.Relation) - +
    makeSym(Statement, Term, Term, TemporalValue) - Static method in class nars.language.Statement
    Make a symmetric Statement from given components and temporal information, called by the rules
    makeVarName(int, Variable) - @@ -317,9 +281,6 @@
    MARK - Static variable in class nars.entity.BudgetValue
    The charactor that marks the two ends of a budget value -
    markEventComponents() - -Method in class nars.entity.Concept -
    Terms in temporal compounds is event
    markVariables() - Method in class nars.language.CompoundTerm
    Register open and closed variables in a CompoundTerm diff --git a/nars-dist/javadoc/index-files/index-14.html b/nars-dist/javadoc/index-files/index-14.html index 8c0350fd..c165dac2 100644 --- a/nars-dist/javadoc/index-files/index-14.html +++ b/nars-dist/javadoc/index-files/index-14.html @@ -2,13 +2,13 @@ - + N-Index (NARS Document) - + @@ -160,7 +160,7 @@ Method in class nars.entity.TaskLink
    To check whether a TaskLink should use a TermLink, return false if they interacted recently -
    novelTaskBuffer - +
    novelTasks - Static variable in class nars.main.Memory
    New tasks with novel composed terms, for delayed and selective processing
    diff --git a/nars-dist/javadoc/index-files/index-15.html b/nars-dist/javadoc/index-files/index-15.html index e4bfcbc9..b86c2777 100644 --- a/nars-dist/javadoc/index-files/index-15.html +++ b/nars-dist/javadoc/index-files/index-15.html @@ -2,13 +2,13 @@ - + O-Index (NARS Document) - + @@ -107,12 +107,6 @@
    operator() - Method in class nars.language.Conjunction
    Get the operator of the term. -
    operator() - -Method in class nars.language.ConjunctionParallel -
    Get the operator of the term. -
    operator() - -Method in class nars.language.ConjunctionSequence -
    Get the operator of the term.
    operator() - Method in class nars.language.DifferenceExt
    Get the operator of the term. @@ -125,12 +119,6 @@
    operator() - Method in class nars.language.Equivalence
    Get the operator of the term. -
    operator() - -Method in class nars.language.EquivalenceAfter -
    Get the operator of the term. -
    operator() - -Method in class nars.language.EquivalenceWhen -
    Get the operator of the term.
    operator() - Method in class nars.language.ImageExt
    get the operator of the term. @@ -140,15 +128,6 @@
    operator() - Method in class nars.language.Implication
    Get the operator of the term. -
    operator() - -Method in class nars.language.ImplicationAfter -
    Get the operator of the term. -
    operator() - -Method in class nars.language.ImplicationBefore -
    Get the operator of the term. -
    operator() - -Method in class nars.language.ImplicationWhen -
    Get the operator of the term.
    operator() - Method in class nars.language.Inheritance
    Get the operator of the term. diff --git a/nars-dist/javadoc/index-files/index-16.html b/nars-dist/javadoc/index-files/index-16.html index a631a38d..15a25814 100644 --- a/nars-dist/javadoc/index-files/index-16.html +++ b/nars-dist/javadoc/index-files/index-16.html @@ -2,13 +2,13 @@ - + P-Index (NARS Document) - + @@ -122,6 +122,15 @@
    parseTruth(String, char) - Static method in class nars.io.StringParser
    parse the input String into a TruthValue (or DesireValue) +
    pastRecords - +Variable in class nars.entity.Concept +
    Judgments directly made about the term, with non-future tense +
    pendingGoals - +Variable in class nars.entity.Concept +
    Goals directly requested on the term +
    pendingQuestions - +Variable in class nars.entity.Concept +
    Question directly asked about the term
    Pick - Class in nars.operation
    A class used in testing only.
    Pick(String) - Constructor for class nars.operation.Pick
      @@ -161,6 +170,9 @@
    post(String) - Method in class nars.gui.MainWindow
    Add new line to the display, plus the time interval +
    predictions - +Variable in class nars.entity.Concept +
    Judgments directly made about the term, with future tense
    PREFIX_MARK - Static variable in class nars.io.Symbols
      @@ -170,6 +182,9 @@
    prepareComponentLinks(ArrayList<TermLink>, short, CompoundTerm) - Method in class nars.language.CompoundTerm
    Collect TermLink templates into a list, go down one level except in special cases +
    presentBelief - +Variable in class nars.entity.Concept +
    Most recent and confidence judgment
    previousValue - Variable in class nars.gui.ParameterWindow
    parameter values diff --git a/nars-dist/javadoc/index-files/index-17.html b/nars-dist/javadoc/index-files/index-17.html index ef7244a4..c11af1f5 100644 --- a/nars-dist/javadoc/index-files/index-17.html +++ b/nars-dist/javadoc/index-files/index-17.html @@ -2,13 +2,13 @@ - + Q-Index (NARS Document) - + @@ -89,9 +89,12 @@
    QUERY_VARIABLE_TAG - Static variable in class nars.io.Symbols
      -
    Question - Class in nars.entity
    A Question is a sentence without a truth value, and may conain query variables
    Question(Term, char, TemporalRules.Relation, Stamp) - +
    Question - Class in nars.entity
    A Question is a sentence without a truth value, and may conain query variables
    Question(Term, char, Stamp) - Constructor for class nars.entity.Question
    COnstructor +
    Question(Goal) - +Constructor for class nars.entity.Question +
    Construct a Judgment to indicate an operation just executed
    QUESTION_MARK - Static variable in class nars.io.Symbols
      diff --git a/nars-dist/javadoc/index-files/index-18.html b/nars-dist/javadoc/index-files/index-18.html index 98e0caa1..f7d19cd6 100644 --- a/nars-dist/javadoc/index-files/index-18.html +++ b/nars-dist/javadoc/index-files/index-18.html @@ -2,13 +2,13 @@ - + R-Index (NARS Document) - + @@ -155,9 +155,6 @@
    resetBackground() - Method in class nars.gui.InferenceWindow
    Reset background color after file saving -
    reverse(TemporalRules.Relation) - -Static method in class nars.inference.TemporalRules -
     
    revise(TruthValue, TruthValue, TruthValue, Task, boolean) - Static method in class nars.inference.BudgetFunctions
    Evaluate the quality of a revision, then de-prioritize the premises diff --git a/nars-dist/javadoc/index-files/index-19.html b/nars-dist/javadoc/index-files/index-19.html index 5ad90fd5..e679738c 100644 --- a/nars-dist/javadoc/index-files/index-19.html +++ b/nars-dist/javadoc/index-files/index-19.html @@ -2,13 +2,13 @@ - + S-Index (NARS Document) - + @@ -83,6 +83,9 @@

    S

    +
    sameTime(Judgment, Judgment) - +Static method in class nars.inference.TemporalRules +
    If the two beliefs have compatible temporal information
    saveLine(String) - Method in class nars.io.ExperienceIO
    Write a line into the output experience file @@ -134,9 +137,6 @@
    setDurability(float) - Method in class nars.entity.BudgetValue
    Change durability value -
    setEvent() - -Method in class nars.entity.Concept -
    Mark the concept as an event
    SetExt - Class in nars.language
    An extensionally defined set, which contains one or more instances.
    SetExt(String, ArrayList<Term>) - Constructor for class nars.language.SetExt
    Constructor with partial values, called by make @@ -176,9 +176,6 @@
    setStructual() - Method in class nars.entity.Task
    Record if a Task is derived by a StructuralRule -
    setTense(TemporalRules.Relation) - -Method in class nars.entity.Sentence -
    Set the tense of the Sentence
    setValue(float) - Method in class nars.entity.ShortFloat
    Set new value, rounded, with validity checking @@ -362,6 +359,12 @@ Static method in class nars.inference.RuleTables
    Meta-table of syllogistic rules, indexed by the content classes of the taskSentence and the belief +
    syllogistic(TemporalValue, TemporalValue) - +Static method in class nars.inference.TemporalRules +
    Temporal relationships among three terms +
    syllogistic(TemporalValue, TemporalValue, int) - +Static method in class nars.inference.TemporalRules +
    Temporal inference in syllogism, with figure
    SyllogisticRules - Class in nars.inference
    Syllogisms: Inference rules based on the transitivity of the relation.
    SyllogisticRules() - Constructor for class nars.inference.SyllogisticRules
      diff --git a/nars-dist/javadoc/index-files/index-2.html b/nars-dist/javadoc/index-files/index-2.html index 6c92691d..ea6beed6 100644 --- a/nars-dist/javadoc/index-files/index-2.html +++ b/nars-dist/javadoc/index-files/index-2.html @@ -2,13 +2,13 @@ - + B-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-20.html b/nars-dist/javadoc/index-files/index-20.html index cba669e4..f5772d7f 100644 --- a/nars-dist/javadoc/index-files/index-20.html +++ b/nars-dist/javadoc/index-files/index-20.html @@ -2,13 +2,13 @@ - + T-Index (NARS Document) - + @@ -122,30 +122,39 @@
    taskLinks - Variable in class nars.entity.Concept
    Task links for indirect processing -
    Temporal - Interface in nars.language
    An interface for compound terms with temporal information in it
    temporalIndCom(BudgetValue, BudgetValue, TruthValue) - +
    temporalIndCom(BudgetValue, BudgetValue, TruthValue) - Static method in class nars.inference.BudgetFunctions
    Special treatment for temporal induction and comparison among recent event, no feedback -
    temporalIndCom(Task, Task, TemporalRules.Relation) - +
    temporalIndCom(Task, Task, TemporalValue) - Static method in class nars.inference.SyllogisticRules
    { S>, P>} |- { P>,

    S>, P>} -

    temporalInduction(TruthValue) - -Static method in class nars.inference.TruthFunctions -
    Make temporal hypothesis -
    temporalInference(TemporalRules.Relation, TemporalRules.Relation) - +
    temporalOrder - +Variable in class nars.entity.Sentence +
    Temporal order between the components +
    temporalOrder - +Variable in class nars.language.Conjunction +
    Temporal order between the components +
    temporalOrder - +Variable in class nars.language.Equivalence +
    Temporal order between the components +
    temporalOrder - +Variable in class nars.language.Implication +
    Temporal order between the components +
    temporalRevision(Judgment, Judgment, long, boolean) - Static method in class nars.inference.TemporalRules -
    Temporal relationships among three terms +
    Belief temporalRevision +
    temporalRevision(TruthValue, TruthValue, long, long, long) - +Static method in class nars.inference.TruthFunctions +
    Revision weighted by time difference
    TemporalRules - Class in nars.inference
    Temporal inference rules
    TemporalRules() - Constructor for class nars.inference.TemporalRules
      -
    TemporalRules.Relation - Enum in nars.inference
    Temporal relations: a default and three specific
    TemporalRules.Relation() - -Constructor for enum nars.inference.TemporalRules.Relation -
      -
    temporalSyllogism(TemporalRules.Relation, TemporalRules.Relation, int) - -Static method in class nars.inference.TemporalRules -
    Temporal inference in syllogism -
    tense - -Variable in class nars.entity.Sentence -
    The tense of a Sentence can be BEFORE(past), WHEN(present), AFTER(future), or NONE +
    TemporalValue - Class in nars.entity
    Temporal information, in terms of the internal clock of the system.
    TemporalValue(int) - +Constructor for class nars.entity.TemporalValue +
    Constructor, with a given number +
    TemporalValue(String) - +Constructor for class nars.entity.TemporalValue +
    Constructor, with a String representation
    TENSE_FUTURE - Static variable in class nars.io.Symbols
      @@ -158,9 +167,15 @@
    TENSE_PRESENT - Static variable in class nars.io.Symbols
      -
    tenseInference(TemporalRules.Relation, TemporalRules.Relation) - +
    tenseInduction(TemporalValue, TemporalValue) - Static method in class nars.inference.TemporalRules
    The temporal inference on tenses +
    tenseSyllogistic(TemporalValue, long, TemporalValue) - +Static method in class nars.inference.TemporalRules +
    Temporal relationships among three terms, with creasion time +
    tenseToOrder(String) - +Static method in class nars.io.StringParser +
     
    tenseToString() - Method in class nars.entity.Sentence
    Get a String representation of the tense of the sentence @@ -257,6 +272,10 @@
    TO_COMPOUND_2 - Static variable in class nars.io.Symbols
      +
    toKey() - +Method in class nars.entity.Sentence +
    Get a stable String representation for a Sentece + Different from toString: tense symbol is replaced by the actual value
    topRelation(String) - Static method in class nars.io.StringParser
    locate the top-level relation in a statement @@ -304,7 +323,7 @@
    Get a String representation of the sentence, with 2-digit accuracy
    toString2() - Method in class nars.entity.ShortFloat -
    Convert the value into a String +
    Round the value into a short String
    toString2() - Method in class nars.entity.Task
    Get a String representation of the Task, with reduced accuracy @@ -356,6 +375,9 @@
    trySolution(Sentence, Judgment, Task) - Static method in class nars.inference.MatchingRules
    Check if a Judgment provide a better answer to a Question +
    tryUpdate(Judgment) - +Method in class nars.entity.Concept +
    To temporalRevision the presentBelief
    type - Variable in class nars.entity.TermLink
    The type of link, one of the above diff --git a/nars-dist/javadoc/index-files/index-21.html b/nars-dist/javadoc/index-files/index-21.html index bbe46998..b50ad451 100644 --- a/nars-dist/javadoc/index-files/index-21.html +++ b/nars-dist/javadoc/index-files/index-21.html @@ -2,13 +2,13 @@ - + U-Index (NARS Document) - + @@ -98,9 +98,6 @@
    update(Task, TruthValue) - Static method in class nars.inference.BudgetFunctions
    Update a belief -
    update(Task, Judgment) - -Static method in class nars.inference.MatchingRules -
    Belief update
    UtilityFunctions - Class in nars.inference
    Common functions on real numbers, mostly in [0,1].
    UtilityFunctions() - Constructor for class nars.inference.UtilityFunctions
      diff --git a/nars-dist/javadoc/index-files/index-22.html b/nars-dist/javadoc/index-files/index-22.html index 671db9b8..8c2209cd 100644 --- a/nars-dist/javadoc/index-files/index-22.html +++ b/nars-dist/javadoc/index-files/index-22.html @@ -2,13 +2,13 @@ - + V-Index (NARS Document) - + @@ -105,16 +105,9 @@
    valueLabel - Variable in class nars.gui.ParameterWindow
    Display label -
    valueOf(String) - -Static method in enum nars.inference.TemporalRules.Relation -
    Returns the enum constant of this type with the specified name.
    valueOf(String) - Static method in enum nars.language.Variable.VarType
    Returns the enum constant of this type with the specified name. -
    values() - -Static method in enum nars.inference.TemporalRules.Relation -
    Returns an array containing the constants of this enum type, in -the order they are declared.
    values() - Static method in enum nars.language.Variable.VarType
    Returns an array containing the constants of this enum type, in diff --git a/nars-dist/javadoc/index-files/index-23.html b/nars-dist/javadoc/index-files/index-23.html index 68c08841..8273f7c8 100644 --- a/nars-dist/javadoc/index-files/index-23.html +++ b/nars-dist/javadoc/index-files/index-23.html @@ -2,13 +2,13 @@ - + W-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-3.html b/nars-dist/javadoc/index-files/index-3.html index 2e3033c1..634be769 100644 --- a/nars-dist/javadoc/index-files/index-3.html +++ b/nars-dist/javadoc/index-files/index-3.html @@ -2,13 +2,13 @@ - + C-Index (NARS Document) - + @@ -137,12 +137,6 @@
    clone() - Method in class nars.language.Conjunction
    Clone an object -
    clone() - -Method in class nars.language.ConjunctionParallel -
    Clone an object -
    clone() - -Method in class nars.language.ConjunctionSequence -
    Clone an object
    clone() - Method in class nars.language.DifferenceExt
    Clone an object @@ -155,12 +149,6 @@
    clone() - Method in class nars.language.Equivalence
    Clone an object -
    clone() - -Method in class nars.language.EquivalenceAfter -
    Clone an object -
    clone() - -Method in class nars.language.EquivalenceWhen -
    Clone an object
    clone() - Method in class nars.language.ImageExt
    Clone an object @@ -170,15 +158,6 @@
    clone() - Method in class nars.language.Implication
    Clone an object -
    clone() - -Method in class nars.language.ImplicationAfter -
    Clone an object -
    clone() - -Method in class nars.language.ImplicationBefore -
    Clone an object -
    clone() - -Method in class nars.language.ImplicationWhen -
    Clone an object
    clone() - Method in class nars.language.Inheritance
    Clone an object @@ -233,6 +212,9 @@
    closeLogFile() - Static method in class nars.io.Record
    Close the log file +
    closer(TemporalValue, TemporalValue, TemporalValue) - +Static method in class nars.entity.TemporalValue +
    Check if the first temporal valie is closer to the given time than the second
    closeSaveFile() - Method in class nars.io.ExperienceIO
    Close an output experience file @@ -356,27 +338,15 @@
    confidence - Variable in class nars.entity.TruthValue
    The confidence factor of the truth value -
    Conjunction - Class in nars.language
    Conjunction of statements
    Conjunction(String, ArrayList<Term>) - +
    Conjunction - Class in nars.language
    Conjunction of statements
    Conjunction(String, ArrayList<Term>, TemporalValue) - Constructor for class nars.language.Conjunction
    Constructor with partial values, called by make -
    Conjunction(String, ArrayList<Term>, ArrayList<Variable>, short) - +
    Conjunction(String, ArrayList<Term>, ArrayList<Variable>, short, TemporalValue) - Constructor for class nars.language.Conjunction
    Constructor with full values, called by clone
    CONJUNCTION_OPERATOR - Static variable in class nars.io.Symbols
      -
    ConjunctionParallel - Class in nars.language
    A parallel conjunction of Statements.
    ConjunctionParallel(String, ArrayList<Term>) - -Constructor for class nars.language.ConjunctionParallel -
    Constructor with partial values, called by make -
    ConjunctionParallel(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.ConjunctionParallel -
    Constructor with full values, called by clone -
    ConjunctionSequence - Class in nars.language
    A sequential conjunction of Statements.
    ConjunctionSequence(String, ArrayList<Term>) - -Constructor for class nars.language.ConjunctionSequence -
    constructor with partial values, called by make -
    ConjunctionSequence(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.ConjunctionSequence -
    Constructor with full values, called by clone
    containAllComponents(Term) - Method in class nars.language.CompoundTerm
    Check whether the compound contains all components of another term, or that term as a whole @@ -417,6 +387,9 @@
    counter - Static variable in class nars.gui.BagWindow
    The location of the display area, shifted according to the number of windows openned +
    creationTime - +Variable in class nars.entity.Stamp +
    creation time of the stamp
    current - Static variable in class nars.entity.Stamp
    serial number, for the whole system diff --git a/nars-dist/javadoc/index-files/index-4.html b/nars-dist/javadoc/index-files/index-4.html index 61fb2342..3113ecc9 100644 --- a/nars-dist/javadoc/index-files/index-4.html +++ b/nars-dist/javadoc/index-files/index-4.html @@ -2,13 +2,13 @@ - + D-Index (NARS Document) - + @@ -138,6 +138,9 @@
    DELIMITER - Static variable in class nars.entity.TruthValue
    The charactor that marks the two ends of a truth value +
    delta - +Variable in class nars.entity.TemporalValue +
     
    derivedTask(Task) - Static method in class nars.main.Memory
    Derived task comes from the inference rules. @@ -181,18 +184,9 @@
    DifferenceInt(String, ArrayList<Term>, ArrayList<Variable>, short) - Constructor for class nars.language.DifferenceInt
    Constructor with full values, called by clone -
    directBeliefs - -Variable in class nars.entity.Concept -
    Judgments directly made about the term -
    directGoals - -Variable in class nars.entity.Concept -
    Goals directly requested on the term
    directProcess(Task) - Method in class nars.entity.Concept
    Directly process a new task. -
    directQuestion - -Variable in class nars.entity.Concept -
    Question directly asked about the term
    Disjunction - Class in nars.language
    A disjunction of Statements.
    Disjunction(String, ArrayList<Term>) - Constructor for class nars.language.Disjunction
    Constructor with partial values, called by make diff --git a/nars-dist/javadoc/index-files/index-5.html b/nars-dist/javadoc/index-files/index-5.html index 5587e983..7bcbbf98 100644 --- a/nars-dist/javadoc/index-files/index-5.html +++ b/nars-dist/javadoc/index-files/index-5.html @@ -2,13 +2,13 @@ - + E-Index (NARS Document) - + @@ -86,6 +86,9 @@
    emptyLevel(int) - Method in class nars.storage.Bag
    Check whether a level is empty +
    equal(TemporalValue, TemporalValue) - +Static method in class nars.entity.TemporalValue +
    Check if two temporal values have the same content
    equals(Object) - Method in class nars.entity.ShortFloat
    Compare two ShortFloat values @@ -101,10 +104,10 @@
    equals(Object) - Method in class nars.language.Variable
    Whether this variable equals another one -
    Equivalence - Class in nars.language
    A Statement about an Equivalence relation.
    Equivalence(String, ArrayList<Term>) - +
    Equivalence - Class in nars.language
    A Statement about an Equivalence relation.
    Equivalence(String, ArrayList<Term>, TemporalValue) - Constructor for class nars.language.Equivalence
    Constructor with partial values, called by make -
    Equivalence(String, ArrayList<Term>, ArrayList<Variable>, short) - +
    Equivalence(String, ArrayList<Term>, ArrayList<Variable>, short, TemporalValue) - Constructor for class nars.language.Equivalence
    Constructor with full values, called by clone
    EQUIVALENCE_AFTER_RELATION - @@ -116,26 +119,11 @@
    EQUIVALENCE_WHEN_RELATION - Static variable in class nars.io.Symbols
      -
    EquivalenceAfter - Class in nars.language
    Temporal Implication relation, predicate after subject.
    EquivalenceAfter(String, ArrayList<Term>) - -Constructor for class nars.language.EquivalenceAfter -
    constructor with partial values, called by make -
    EquivalenceAfter(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.EquivalenceAfter -
    Constructor with full values, called by clone -
    EquivalenceWhen - Class in nars.language
    Temporal Equivalence relation, concurrent.
    EquivalenceWhen(String, ArrayList<Term>) - -Constructor for class nars.language.EquivalenceWhen -
    Constructor with partial values, called by make -
    EquivalenceWhen(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.EquivalenceWhen -
    Constructor with full values, called by clone
    equivalentTo(Judgment) - Method in class nars.entity.Judgment
    Check whether the judgment is equivalent to another one -
    event - -Variable in class nars.entity.Concept -
    Whether the term specifies an event [to be refined] -
    eventProcessing(Task) - -Static method in class nars.inference.TemporalRules +
    eventProcessing(Task) - +Static method in class nars.main.Memory
    Simple temporal regularity discovery [To be refined]
    execute(Task) - Method in class nars.operation.Break diff --git a/nars-dist/javadoc/index-files/index-6.html b/nars-dist/javadoc/index-files/index-6.html index 066ee422..beff0f22 100644 --- a/nars-dist/javadoc/index-files/index-6.html +++ b/nars-dist/javadoc/index-files/index-6.html @@ -2,13 +2,13 @@ - + F-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-7.html b/nars-dist/javadoc/index-files/index-7.html index 25ce7c17..a4b5eefd 100644 --- a/nars-dist/javadoc/index-files/index-7.html +++ b/nars-dist/javadoc/index-files/index-7.html @@ -2,13 +2,13 @@ - + G-Index (NARS Document) - + @@ -119,6 +119,9 @@
    getConfidence() - Method in class nars.entity.TruthValue
    Get the confidence value +
    getConjunctionSymbol(TemporalValue) - +Static method in class nars.language.Conjunction +
    COnvert a temporal into its String representation
    getConstantName() - Method in class nars.language.CompoundTerm
    skip all variable names to produce stable sorting order among components, not for display @@ -134,9 +137,24 @@
    getContent() - Method in class nars.entity.Task
    Directly get the content of the sentence +
    getCreationTime() - +Method in class nars.entity.Sentence +
    Get the creation time of the truth-value from the Stamp +
    getCreationTime() - +Method in class nars.entity.Stamp +
    Get the creationTime of the truth-value +
    getDelta() - +Method in class nars.entity.TemporalValue +
    Directly report the time difference
    getDurability() - Method in class nars.entity.BudgetValue
    Get durability value +
    getEquivalenceSymbol(TemporalValue) - +Static method in class nars.language.Equivalence +
    Get the symbole of the relation by tense +
    getEventTime() - +Method in class nars.entity.Sentence +
    Get the occurrence time of the event
    getExpDifAbs(TruthValue) - Method in class nars.entity.TruthValue
    Calculate the absolute difference of the expectation value and that of a given truth value @@ -173,6 +191,18 @@
    getOpenVariables() - Method in class nars.language.CompoundTerm
    get the OpenVariables list +
    getOrder() - +Method in class nars.language.Conjunction +
    Return the temporal order. +
    getOrder() - +Method in class nars.language.Equivalence +
    Get the temporal order. +
    getOrder() - +Method in class nars.language.Implication +
    Get the order of the components. +
    getOrder() - +Method in class nars.language.Term +
    Get the temporal order in a term, which is null by default
    getPredicate() - Method in class nars.language.Statement
    Return the second component of the statement @@ -194,6 +224,9 @@
    getRelationIndex() - Method in class nars.language.ImageInt
    get the index of the relation in the component list +
    getReverse(TemporalValue) - +Static method in class nars.entity.TemporalValue +
    Get the reverse temporal difference of a given one
    getSentence() - Method in class nars.entity.Task
    Get the sentence @@ -209,36 +242,15 @@
    getSubject() - Method in class nars.language.Statement
    Return the first component of the statement +
    getSymbol(TemporalValue) - +Static method in class nars.language.Implication +
    Convert a TemporalValue into its String representation
    getTarget() - Method in class nars.entity.TermLink
    Get the target of the link
    getTargetTask() - Method in class nars.entity.TaskLink
    Get the target Task -
    getTemporalOrder() - -Method in class nars.language.ConjunctionParallel -
    The components are concurrent -
    getTemporalOrder() - -Method in class nars.language.ConjunctionSequence -
    The components are temporally sorted -
    getTemporalOrder() - -Method in class nars.language.EquivalenceAfter -
    Get the temporal order of the class -
    getTemporalOrder() - -Method in class nars.language.EquivalenceWhen -
    Get the temporal order of the class -
    getTemporalOrder() - -Method in class nars.language.ImplicationAfter -
    The relation is predictive -
    getTemporalOrder() - -Method in class nars.language.ImplicationBefore -
    The relation is retrospective -
    getTemporalOrder() - -Method in class nars.language.ImplicationWhen -
    The relation is concurrent -
    getTemporalOrder() - -Method in class nars.language.Term -
    Get the temporal order in a term, which is NONE by default
    getTense() - Method in class nars.entity.Sentence
    Get the tense of the Sentence @@ -251,6 +263,10 @@
    getTermLinkTemplates() - Method in class nars.entity.Concept
    Return the templates for TermLinks, only called in Memory.continuedProcess +
    getTime() - +Static method in class nars.main.Center +
    Get the current time from the clock + Called in nars.entity.Stamp
    getTruth() - Method in class nars.entity.Sentence
    Get the truth value of the sentence diff --git a/nars-dist/javadoc/index-files/index-8.html b/nars-dist/javadoc/index-files/index-8.html index 0702ebd1..5107fecf 100644 --- a/nars-dist/javadoc/index-files/index-8.html +++ b/nars-dist/javadoc/index-files/index-8.html @@ -2,13 +2,13 @@ - + H-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-9.html b/nars-dist/javadoc/index-files/index-9.html index 8786afcd..db60a2fa 100644 --- a/nars-dist/javadoc/index-files/index-9.html +++ b/nars-dist/javadoc/index-files/index-9.html @@ -2,13 +2,13 @@ - + I-Index (NARS Document) - + @@ -108,10 +108,10 @@ Static method in class nars.main.Memory
    Imediate processing of a new task, in constant time Local processing, in one concept only -
    Implication - Class in nars.language
    A Statement about an Inheritance relation.
    Implication(String, ArrayList<Term>) - +
    Implication - Class in nars.language
    A Statement about an Inheritance relation.
    Implication(String, ArrayList<Term>, TemporalValue) - Constructor for class nars.language.Implication
    Constructor with partial values, called by make -
    Implication(String, ArrayList<Term>, ArrayList<Variable>, short) - +
    Implication(String, ArrayList<Term>, ArrayList<Variable>, short, TemporalValue) - Constructor for class nars.language.Implication
    Constructor with full values, called by clone
    IMPLICATION_AFTER_RELATION - @@ -126,24 +126,6 @@
    IMPLICATION_WHEN_RELATION - Static variable in class nars.io.Symbols
      -
    ImplicationAfter - Class in nars.language
    Temporal Implication relation, predicate after subject.
    ImplicationAfter(String, ArrayList<Term>) - -Constructor for class nars.language.ImplicationAfter -
    constructor with partial values, called by make -
    ImplicationAfter(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.ImplicationAfter -
    Constructor with full values, called by clone -
    ImplicationBefore - Class in nars.language
    Temporal Implication relation, predicate before subject.
    ImplicationBefore(String, ArrayList<Term>) - -Constructor for class nars.language.ImplicationBefore -
    Constructor with partial values, called by make -
    ImplicationBefore(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.ImplicationBefore -
    Constructor with full values, called by clone -
    ImplicationWhen - Class in nars.language
    Temporal Implication relation, concurrent.
    ImplicationWhen(String, ArrayList<Term>) - -Constructor for class nars.language.ImplicationWhen -
    Constructor with partial values, called by make -
    ImplicationWhen(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.ImplicationWhen -
    Constructor with full values, called by clone
    implied(TruthValue) - Static method in class nars.inference.TruthFunctions
    { B>, B} |- A @@ -175,7 +157,7 @@
    InferenceWindow - Class in nars.gui
    Window displying inference log
    InferenceWindow() - Constructor for class nars.gui.InferenceWindow
    Constructor -
    inferToAsym(Judgment, Judgment, TemporalRules.Relation) - +
    inferToAsym(Judgment, Judgment, TemporalValue) - Static method in class nars.inference.MatchingRules
    { P>,

    S>} |- P> Produce an Inheritance/Implication from a Similarity/Equivalence and a reversed Inheritance/Implication @@ -298,6 +280,9 @@ Static method in class nars.inference.SyllogisticRules

    { S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>) +
    invalid() - +Method in class nars.language.Statement +
    Check the validity of a potential Statement.
    invalidStatement(Term, Term) - Static method in class nars.language.Statement
    Check the validity of a potential Statement. @@ -316,18 +301,12 @@
    isCommutative() - Method in class nars.language.Conjunction
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.language.ConjunctionSequence -
    Check if the compound is communitative.
    isCommutative() - Method in class nars.language.Disjunction
    Disjunction is communitative.
    isCommutative() - Method in class nars.language.Equivalence
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.language.EquivalenceAfter -
    Check if the compound is communitative.
    isCommutative() - Method in class nars.language.IntersectionExt
    Check if the compound is communitative. @@ -352,9 +331,9 @@
    isConstant() - Method in class nars.language.Variable
    A variable is constant -
    isEvent() - -Method in class nars.entity.Concept -
    Distinguish events from non-events +
    isFuture() - +Method in class nars.entity.Judgment +
    Check if the judgment predict a future event
    isInput() - Method in class nars.entity.Sentence
    Check input sentence @@ -370,21 +349,24 @@
    isOperator(String) - Static method in class nars.language.CompoundTerm
    Check CompoundTerm operator symbol +
    isParallel(Term) - +Static method in class nars.language.Conjunction +
    Whether the Term is a parallel conjunction
    isRelation(String) - Static method in class nars.language.Statement
    Check Statement relation symbol, called in StringPaser
    isReporting - Static variable in class nars.io.Record
    whether to display +
    isSequence(Term) - +Static method in class nars.language.Conjunction +
    Whether the Term is a sequential conjunction
    isStandAlone() - Static method in class nars.main.NARS
    Whether the project running as an application.
    isStructual() - Method in class nars.entity.Task
    Check if a Task is derived by a StructuralRule -
    isUpdate(Judgment, Judgment) - -Method in class nars.entity.Concept -
    Distinguish update from revision [to be refined]
    Item - Class in nars.entity
    An item is an object that can be put into a Bag, to participate in the resource competation of the system.
    Item() - Constructor for class nars.entity.Item diff --git a/nars-dist/javadoc/index.html b/nars-dist/javadoc/index.html index 4096bea8..7f2cb743 100644 --- a/nars-dist/javadoc/index.html +++ b/nars-dist/javadoc/index.html @@ -2,7 +2,7 @@ - + NARS Document diff --git a/nars-dist/javadoc/nars/entity/BudgetValue.html b/nars-dist/javadoc/nars/entity/BudgetValue.html index 5feed7f3..e23f5838 100644 --- a/nars-dist/javadoc/nars/entity/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/BudgetValue.html @@ -2,13 +2,13 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.6.0_03) on Wed Jul 30 16:19:07 EDT 2008 --> +<!-- Generated by javadoc (build 1.6.0_03) on Fri Aug 14 13:47:56 EDT 2009 --> <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <TITLE> BudgetValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Concept.html b/nars-dist/javadoc/nars/entity/Concept.html index 6a988649..eb25a2c3 100644 --- a/nars-dist/javadoc/nars/entity/Concept.html +++ b/nars-dist/javadoc/nars/entity/Concept.html @@ -2,13 +2,13 @@ - + Concept (NARS Document) - + @@ -129,34 +129,42 @@

    private  java.util.ArrayList<Judgment> -directBeliefs +pastRecords
    -          Judgments directly made about the term +          Judgments directly made about the term, with non-future tense private  java.util.ArrayList<Goal> -directGoals +pendingGoals
              Goals directly requested on the term -private  Question -directQuestion +private  java.util.ArrayList<Question>
    +pendingQuestions
              Question directly asked about the term -private  boolean -event +private  java.util.ArrayList<Judgment>
    +predictions + +
    +          Judgments directly made about the term, with future tense + + + +private  Judgment +presentBelief
    -          Whether the term specifies an event [to be refined] +          Most recent and confidence judgment @@ -359,31 +367,6 @@

    - boolean -isEvent() - -
    -          Distinguish events from non-events - - - -private  boolean -isUpdate(Judgment newBelief, - Judgment oldBelief) - -
    -          Distinguish update from revision [to be refined] - - - -private  void -markEventComponents() - -
    -          Terms in temporal compounds is event - - -  void play() @@ -430,14 +413,6 @@

     void -setEvent() - -
    -          Mark the concept as an event - - - - void startPlay()
    @@ -459,6 +434,14 @@


              Return a string representation of the concept, called in ConceptBag only + + +private  void +tryUpdate(Judgment judg) + +
    +          To temporalRevision the presentBelief +   @@ -512,96 +495,108 @@


    -

    -directQuestion

    +

    +taskLinks

    -private Question directQuestion
    +private TaskLinkBagtaskLinks
    -
    Question directly asked about the term +
    Task links for indirect processing


    -

    -directGoals

    +

    +termLinks

    -private java.util.ArrayList<Goal> directGoals
    +private TermLinkBagtermLinks
    -
    Goals directly requested on the term +
    Term links between the term and its components and compounds


    -

    -directBeliefs

    +

    +termLinkTemplates

    -private java.util.ArrayList<Judgment> directBeliefs
    +private java.util.ArrayList<TermLink> termLinkTemplates
    -
    Judgments directly made about the term +
    Link templates of TermLink, only in concepts with CompoundTerm


    -

    -revisible

    +

    +pendingQuestions

    -private boolean revisible
    +private java.util.ArrayList<Question> pendingQuestions
    -
    Whether truth value of judgments can be revised +
    Question directly asked about the term


    -

    -taskLinks

    +

    +pendingGoals

    -private TaskLinkBag taskLinks
    +private java.util.ArrayList<Goal> pendingGoals
    -
    Task links for indirect processing +
    Goals directly requested on the term


    -

    -termLinks

    +

    +pastRecords

    -private TermLinkBag termLinks
    +private java.util.ArrayList<Judgment> pastRecords
    -
    Term links between the term and its components and compounds +
    Judgments directly made about the term, with non-future tense


    -

    -termLinkTemplates

    +

    +predictions

    -private java.util.ArrayList<TermLink> termLinkTemplates
    +private java.util.ArrayList<Judgment> predictions
    -
    Link templates of TermLink, only in concepts with CompoundTerm +
    Judgments directly made about the term, with future tense


    -

    -event

    +

    +presentBelief

    -private boolean event
    +private JudgmentpresentBelief
    -
    Whether the term specifies an event [to be refined] +
    Most recent and confidence judgment +

    +

    +
    +
    +
    + +

    +revisible

    +
    +private boolean revisible
    +
    +
    Whether truth value of judgments can be revised

    @@ -675,19 +670,6 @@


    -

    -markEventComponents

    -
    -private void markEventComponents()
    -
    -
    Terms in temporal compounds is event -

    -

    -
    -
    -
    -
    -

    directProcess

    @@ -757,22 +739,21 @@ 

    Revise existing beliefs or goals

    -
    Parameters:
    task - The task to be processed
    table - The table to be revised
    +
    Parameters:
    task - The task to be processed
    table - The table to be revised +
    Returns:
    Whether the new belief triggered a temporalRevision

    -

    -isUpdate

    +

    +tryUpdate

    -private boolean isUpdate(Judgment newBelief,
    -                         Judgment oldBelief)
    +private void tryUpdate(Judgment judg)
    -
    Distinguish update from revision [to be refined] +
    To temporalRevision the presentBelief

    -
    Parameters:
    newBelief - The new belief
    oldBelief - The previous belief -
    Returns:
    Whether the operation is update
    +
    Parameters:
    judg - The new belief

    @@ -852,33 +833,6 @@


    -

    -isEvent

    -
    -public boolean isEvent()
    -
    -
    Distinguish events from non-events -

    -

    - -
    Returns:
    Whether the concept is an event
    -
    -
    -
    - -

    -setEvent

    -
    -public void setEvent()
    -
    -
    Mark the concept as an event -

    -

    -
    -
    -
    -
    -

    toString

    diff --git a/nars-dist/javadoc/nars/entity/Goal.html b/nars-dist/javadoc/nars/entity/Goal.html
    index 18b0d9a7..eed7a5d2 100644
    --- a/nars-dist/javadoc/nars/entity/Goal.html
    +++ b/nars-dist/javadoc/nars/entity/Goal.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Goal (NARS Document)
     
     
    -
    +
     
     
     
    @@ -129,7 +129,7 @@ 

    - +
    Fields inherited from class nars.entity.Sentence
    bestSolution, content, input, punctuation, stamp, tense, truthbestSolution, content, input, punctuation, stamp, temporalOrder, truth
      @@ -167,7 +167,7 @@

    Methods inherited from class nars.entity.Judgment -equivalentTo, solutionQuality +equivalentTo, isFuture, solutionQuality   @@ -176,7 +176,7 @@

    Methods inherited from class nars.entity.Sentence -clone, cloneContent, getBestSolution, getContent, getStamp, getTense, getTruth, isInput, isJudgment, make, make, noOverlapping, setBestSolution, setContent, setInput, setTense, toString, toString2 +clone, cloneContent, getBestSolution, getContent, getCreationTime, getEventTime, getStamp, getTense, getTruth, isInput, isJudgment, make, make, noOverlapping, setBestSolution, setContent, setInput, tenseToString, toKey, toString, toString2   diff --git a/nars-dist/javadoc/nars/entity/Item.html b/nars-dist/javadoc/nars/entity/Item.html index 3e3545c3..102df036 100644 --- a/nars-dist/javadoc/nars/entity/Item.html +++ b/nars-dist/javadoc/nars/entity/Item.html @@ -2,13 +2,13 @@ - + Item (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Judgment.html b/nars-dist/javadoc/nars/entity/Judgment.html index 7d44b18c..d6a93201 100644 --- a/nars-dist/javadoc/nars/entity/Judgment.html +++ b/nars-dist/javadoc/nars/entity/Judgment.html @@ -2,13 +2,13 @@ - + Judgment (NARS Document) - + @@ -131,7 +131,7 @@

    Fields inherited from class nars.entity.Sentence -bestSolution, content, input, punctuation, stamp, tense, truth +bestSolution, content, input, punctuation, stamp, temporalOrder, truth   @@ -150,9 +150,8 @@

              Construct a Judgment to indicate an operation just executed -Judgment(Term term, +Judgment(Term term, char punc, - TemporalRules.Relation s, TruthValue t, Stamp b) @@ -179,6 +178,14 @@

    + boolean +isFuture() + +
    +          Check if the judgment predict a future event + + +  float solutionQuality(Sentence problem) @@ -192,7 +199,7 @@

    Methods inherited from class nars.entity.Sentence -clone, cloneContent, getBestSolution, getContent, getStamp, getTense, getTruth, isInput, isJudgment, make, make, noOverlapping, setBestSolution, setContent, setInput, setTense, toString, toString2 +clone, cloneContent, getBestSolution, getContent, getCreationTime, getEventTime, getStamp, getTense, getTruth, isInput, isJudgment, make, make, noOverlapping, setBestSolution, setContent, setInput, tenseToString, toKey, toString, toString2   @@ -217,19 +224,18 @@

    -

    +

    Judgment

     public Judgment(Term term,
                     char punc,
    -                TemporalRules.Relation s,
                     TruthValue t,
                     Stamp b)
    Constructor

    -
    Parameters:
    term - The content
    punc - The punctuation
    s - The tense
    t - The truth value
    b - The stamp
    +
    Parameters:
    term - The content
    punc - The punctuation
    t - The truth value
    b - The stamp


    @@ -282,6 +288,20 @@

    Returns:
    The quality of the judgment as the solution

    +
    + +

    +isFuture

    +
    +public boolean isFuture()
    +
    +
    Check if the judgment predict a future event +

    +

    + +
    Returns:
    Whether the judgment has a future sense
    +
    +

    diff --git a/nars-dist/javadoc/nars/entity/Question.html b/nars-dist/javadoc/nars/entity/Question.html index 1a8f1aa9..aeb2434b 100644 --- a/nars-dist/javadoc/nars/entity/Question.html +++ b/nars-dist/javadoc/nars/entity/Question.html @@ -2,13 +2,13 @@ - + Question (NARS Document) - + @@ -128,7 +128,7 @@

    Fields inherited from class nars.entity.Sentence -bestSolution, content, input, punctuation, stamp, tense, truth +bestSolution, content, input, punctuation, stamp, temporalOrder, truth   @@ -141,9 +141,14 @@

    Constructor Summary -Question(Term term, +Question(Goal g) + +
    +          Construct a Judgment to indicate an operation just executed + + +Question(Term term, char punc, - TemporalRules.Relation t, Stamp s)
    @@ -166,7 +171,7 @@

    Methods inherited from class nars.entity.Sentence -clone, cloneContent, getBestSolution, getContent, getStamp, getTense, getTruth, isInput, isJudgment, make, make, noOverlapping, setBestSolution, setContent, setInput, setTense, toString, toString2 +clone, cloneContent, getBestSolution, getContent, getCreationTime, getEventTime, getStamp, getTense, getTruth, isInput, isJudgment, make, make, noOverlapping, setBestSolution, setContent, setInput, tenseToString, toKey, toString, toString2   @@ -191,18 +196,29 @@

    -

    +

    Question

     public Question(Term term,
                     char punc,
    -                TemporalRules.Relation t,
                     Stamp s)
    COnstructor

    -
    Parameters:
    term - The content
    punc - The punctuation
    t - The tense
    s - The stamp
    +
    Parameters:
    term - The content
    punc - The punctuation
    s - The stamp
    + +
    + +

    +Question

    +
    +public Question(Goal g)
    +
    +
    Construct a Judgment to indicate an operation just executed +

    +

    +
    Parameters:
    g - The goal that trigger the execution

    diff --git a/nars-dist/javadoc/nars/entity/Sentence.html b/nars-dist/javadoc/nars/entity/Sentence.html index da01c395..83a18c4e 100644 --- a/nars-dist/javadoc/nars/entity/Sentence.html +++ b/nars-dist/javadoc/nars/entity/Sentence.html @@ -2,13 +2,13 @@ - + Sentence (NARS Document) - + @@ -167,11 +167,11 @@

    -protected  TemporalRules.Relation -tense +protected  TemporalValue +temporalOrder
    -          The tense of a Sentence can be BEFORE(past), WHEN(present), AFTER(future), or NONE +          Temporal order between the components @@ -241,6 +241,22 @@

    + long +getCreationTime() + +
    +          Get the creation time of the truth-value from the Stamp + + + + long +getEventTime() + +
    +          Get the occurrence time of the event + + +  Stamp getStamp() @@ -249,7 +265,7 @@

    - TemporalRules.Relation + TemporalValue getTense()
    @@ -282,11 +298,11 @@

    static Sentence -make(Sentence oldS, +make(Sentence oldS, Term term, - TemporalRules.Relation tense, TruthValue truth, - Stamp stamp) + Stamp stamp, + TemporalValue tense)
              Make a derived Sentence from a template and some initial values. @@ -294,11 +310,11 @@

    static Sentence -make(Term term, +make(Term term, char punc, - TemporalRules.Relation tense, TruthValue truth, - Stamp stamp) + Stamp stamp, + TemporalValue tense)
              Make a Sentence from an input String. @@ -337,19 +353,20 @@

    - void -setTense(TemporalRules.Relation t) + java.lang.String +tenseToString()
    -          Set the tense of the Sentence +          Get a String representation of the tense of the sentence -private  java.lang.String -tenseToString() + java.lang.String +toKey()
    -          Get a String representation of the tense of the sentence +          Get a stable String representation for a Sentece + Different from toString: tense symbol is replaced by the actual value @@ -414,18 +431,6 @@


    -

    -tense

    -
    -protected TemporalRules.Relation tense
    -
    -
    The tense of a Sentence can be BEFORE(past), WHEN(present), AFTER(future), or NONE -

    -

    -
    -
    -
    -

    truth

    @@ -472,6 +477,18 @@ 

    +
    + +

    +temporalOrder

    +
    +protected TemporalValue temporalOrder
    +
    +
    Temporal order between the components +

    +

    +
    +
    @@ -500,14 +517,14 @@

    -

    +

    make

     public static Sentence make(Term term,
                                 char punc,
    -                            TemporalRules.Relation tense,
                                 TruthValue truth,
    -                            Stamp stamp)
    + Stamp stamp, + TemporalValue tense)
    Make a Sentence from an input String. Called by StringParser.

    @@ -521,14 +538,14 @@


    -

    +

    make

     public static Sentence make(Sentence oldS,
                                 Term term,
    -                            TemporalRules.Relation tense,
                                 TruthValue truth,
    -                            Stamp stamp)
    + Stamp stamp, + TemporalValue tense)
    Make a derived Sentence from a template and some initial values. Called by Memory.

    @@ -612,7 +629,7 @@

    getTense

    -public TemporalRules.Relation getTense()
    +public TemporalValue getTense()
    Get the tense of the Sentence

    @@ -626,22 +643,6 @@


    -

    -setTense

    -
    -public void setTense(TemporalRules.Relation t)
    -
    -
    Set the tense of the Sentence -

    -

    -
    -
    -
    -
    Parameters:
    t - The new tense of the Sentence
    -
    -
    -
    -

    getTruth

    @@ -776,6 +777,24 @@ 


    +

    +toKey

    +
    +public java.lang.String toKey()
    +
    +
    Get a stable String representation for a Sentece + Different from toString: tense symbol is replaced by the actual value +

    +

    +
    +
    +
    + +
    Returns:
    String representation for a Sentece
    +
    +
    +
    +

    toString

    @@ -813,7 +832,7 @@ 

    tenseToString

    -private java.lang.String tenseToString()
    +public java.lang.String tenseToString()
    Get a String representation of the tense of the sentence

    @@ -825,6 +844,40 @@

    Returns:
    The String

    +
    + +

    +getCreationTime

    +
    +public long getCreationTime()
    +
    +
    Get the creation time of the truth-value from the Stamp +

    +

    +
    +
    +
    + +
    Returns:
    The creation time of the truth-value
    +
    +
    +
    + +

    +getEventTime

    +
    +public long getEventTime()
    +
    +
    Get the occurrence time of the event +

    +

    +
    +
    +
    + +
    Returns:
    The occurrence time of the event
    +
    +

    diff --git a/nars-dist/javadoc/nars/entity/ShortFloat.html b/nars-dist/javadoc/nars/entity/ShortFloat.html index 4165d667..a1956703 100644 --- a/nars-dist/javadoc/nars/entity/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/ShortFloat.html @@ -2,13 +2,13 @@ - + ShortFloat (NARS Document) - + @@ -209,7 +209,7 @@

    toString2()
    -          Convert the value into a String +          Round the value into a short String   @@ -383,7 +383,7 @@

     public java.lang.String toString2()
    -
    Convert the value into a String +
    Round the value into a short String

    diff --git a/nars-dist/javadoc/nars/entity/Stamp.html b/nars-dist/javadoc/nars/entity/Stamp.html index d222c0f8..ab9a4dda 100644 --- a/nars-dist/javadoc/nars/entity/Stamp.html +++ b/nars-dist/javadoc/nars/entity/Stamp.html @@ -2,13 +2,13 @@ - + Stamp (NARS Document) - + @@ -124,6 +124,14 @@

    +private  long +creationTime + +
    +          creation time of the stamp + + + private static long current @@ -202,6 +210,14 @@

    + long +getCreationTime() + +
    +          Get the creationTime of the truth-value + + +  int hashCode() @@ -218,14 +234,6 @@

    - long -latest() - -
    -          Get the latest Stamp in the list - - -  int length() @@ -243,7 +251,7 @@

    - TemporalRules.Relation + TemporalValue orderWith(Stamp that)
    @@ -288,6 +296,18 @@

    +

    +current

    +
    +private static long current
    +
    +
    serial number, for the whole system +

    +

    +
    +
    +
    +

    list

    @@ -312,12 +332,12 @@ 


    -

    -current

    +

    +creationTime

    -private static long current
    +private final long creationTime
    -
    serial number, for the whole system +
    creation time of the stamp

    @@ -484,19 +504,19 @@


    -

    -latest

    +

    +getCreationTime

    -public long latest()
    +public long getCreationTime()
    -
    Get the latest Stamp in the list +
    Get the creationTime of the truth-value

    -
    Returns:
    The largest number in the stamp
    +
    Returns:
    The creation time

    @@ -504,7 +524,7 @@

    orderWith

    -public TemporalRules.Relation orderWith(Stamp that)
    +public TemporalValue orderWith(Stamp that)
    Compare two Stamps for their temporal order

    @@ -512,7 +532,7 @@

    -
    Parameters:
    that - The STamp to be compared +
    Parameters:
    that - The Stamp to be compared
    Returns:
    The temporal order
    diff --git a/nars-dist/javadoc/nars/entity/Task.html b/nars-dist/javadoc/nars/entity/Task.html index 33de7c1b..aa1016b4 100644 --- a/nars-dist/javadoc/nars/entity/Task.html +++ b/nars-dist/javadoc/nars/entity/Task.html @@ -2,13 +2,13 @@ - + Task (NARS Document) - + @@ -201,7 +201,7 @@

    - TemporalRules.Relation + TemporalValue getTense()
    @@ -374,7 +374,7 @@

    getTense

    -public TemporalRules.Relation getTense()
    +public TemporalValue getTense()
    Directly get the tense of the sentence

    diff --git a/nars-dist/javadoc/nars/entity/TaskLink.html b/nars-dist/javadoc/nars/entity/TaskLink.html index 024c5dae..1a4b10f3 100644 --- a/nars-dist/javadoc/nars/entity/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/TaskLink.html @@ -2,13 +2,13 @@ - + TaskLink (NARS Document) - + @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -426,7 +426,7 @@

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/entity/TemporalValue.html b/nars-dist/javadoc/nars/entity/TemporalValue.html new file mode 100644 index 00000000..fadabc00 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/TemporalValue.html @@ -0,0 +1,393 @@ + + + + + + + +TemporalValue (NARS Document) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.entity +
    +Class TemporalValue

    +
    +java.lang.Object
    +  extended by nars.entity.TemporalValue
    +
    +
    +
    +
    public class TemporalValue
    extends java.lang.Object
    + + +

    +Temporal information, in terms of the internal clock of the system. + In an Implication or Equivalence, the value indicates the interval from the first event to the second. + In a Conjunction, the value can only be 0 (parallel) or 1 (suquential). + In a Sentence, the value indicates the interval from when the sentence is created to when the event happens. +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +private  intdelta + +
    +           
    +  + + + + + + + + + + + + + +
    +Constructor Summary
    TemporalValue(int t) + +
    +          Constructor, with a given number
    TemporalValue(java.lang.String s) + +
    +          Constructor, with a String representation
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +static booleancloser(TemporalValue t1, + TemporalValue t2, + TemporalValue t) + +
    +          Check if the first temporal valie is closer to the given time than the second
    +static booleanequal(TemporalValue t1, + TemporalValue t2) + +
    +          Check if two temporal values have the same content
    + intgetDelta() + +
    +          Directly report the time difference
    +static TemporalValuegetReverse(TemporalValue t) + +
    +          Get the reverse temporal difference of a given one
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +delta

    +
    +private int delta
    +
    +
    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +TemporalValue

    +
    +public TemporalValue(int t)
    +
    +
    Constructor, with a given number +

    +

    +
    Parameters:
    t - The temporal difference of the item
    +
    +
    + +

    +TemporalValue

    +
    +public TemporalValue(java.lang.String s)
    +
    +
    Constructor, with a String representation +

    +

    +
    Parameters:
    s - The temporal difference of the item as a String
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getDelta

    +
    +public int getDelta()
    +
    +
    Directly report the time difference +

    +

    + +
    Returns:
    The delta value
    +
    +
    +
    + +

    +getReverse

    +
    +public static TemporalValue getReverse(TemporalValue t)
    +
    +
    Get the reverse temporal difference of a given one +

    +

    +
    Parameters:
    t - The given temporal value +
    Returns:
    The reverse temporal value
    +
    +
    +
    + +

    +equal

    +
    +public static boolean equal(TemporalValue t1,
    +                            TemporalValue t2)
    +
    +
    Check if two temporal values have the same content +

    +

    +
    Parameters:
    t1 - The first temporal value
    t2 - The second temporal value +
    Returns:
    If the two dicuate the same temporal relation
    +
    +
    +
    + +

    +closer

    +
    +public static boolean closer(TemporalValue t1,
    +                             TemporalValue t2,
    +                             TemporalValue t)
    +
    +
    Check if the first temporal valie is closer to the given time than the second +

    +

    +
    Parameters:
    t1 - The first temporal value
    t2 - The second temporal value
    t - The target temporal value +
    Returns:
    If the first is closer to the target
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/entity/TermLink.html b/nars-dist/javadoc/nars/entity/TermLink.html index 31b6bb2c..272d9fee 100644 --- a/nars-dist/javadoc/nars/entity/TermLink.html +++ b/nars-dist/javadoc/nars/entity/TermLink.html @@ -2,13 +2,13 @@ - + TermLink (NARS Document) - + @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -729,7 +729,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/entity/TruthValue.html b/nars-dist/javadoc/nars/entity/TruthValue.html index 62a01d05..0b926a82 100644 --- a/nars-dist/javadoc/nars/entity/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/TruthValue.html @@ -2,13 +2,13 @@ - + TruthValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html index 996a2a47..db51fbae 100644 --- a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.BudgetValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Concept.html b/nars-dist/javadoc/nars/entity/class-use/Concept.html index ac1d3cba..242c6197 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Concept.html +++ b/nars-dist/javadoc/nars/entity/class-use/Concept.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Concept (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Goal.html b/nars-dist/javadoc/nars/entity/class-use/Goal.html index 1c5d0ca5..47e99795 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Goal.html +++ b/nars-dist/javadoc/nars/entity/class-use/Goal.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Goal (NARS Document) - + @@ -114,7 +114,7 @@

    private  java.util.ArrayList<Goal> -Concept.directGoals +Concept.pendingGoals
              Goals directly requested on the term @@ -147,6 +147,12 @@

    Judgment(Goal g) +
    +          Construct a Judgment to indicate an operation just executed + + +Question(Goal g) +
              Construct a Judgment to indicate an operation just executed diff --git a/nars-dist/javadoc/nars/entity/class-use/Item.html b/nars-dist/javadoc/nars/entity/class-use/Item.html index 70d59763..94332a33 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Item.html +++ b/nars-dist/javadoc/nars/entity/class-use/Item.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Item (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Judgment.html b/nars-dist/javadoc/nars/entity/class-use/Judgment.html index c79b0d6c..2adb8b36 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Judgment.html +++ b/nars-dist/javadoc/nars/entity/class-use/Judgment.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Judgment (NARS Document) - + @@ -143,6 +143,14 @@


              For Question and Goal: best solution found so far + + +private  Judgment +Concept.presentBelief + +
    +          Most recent and confidence judgment +  

    @@ -154,10 +162,18 @@

    private  java.util.ArrayList<Judgment> -Concept.directBeliefs +Concept.pastRecords + +
    +          Judgments directly made about the term, with non-future tense + + + +private  java.util.ArrayList<Judgment> +Concept.predictions
    -          Judgments directly made about the term +          Judgments directly made about the term, with future tense   @@ -212,15 +228,6 @@

    -private  boolean -Concept.isUpdate(Judgment newBelief, - Judgment oldBelief) - -
    -          Distinguish update from revision [to be refined] - - - private  void Concept.processJudgment(Judgment judg, Task task) @@ -246,6 +253,14 @@


              Set the best-so-far solution for a Question or Goal + + +private  void +Concept.tryUpdate(Judgment judg) + +
    +          To temporalRevision the presentBelief +  

    @@ -319,9 +334,9 @@

    private static void -MatchingRules.inferToAsym(Judgment asym, +MatchingRules.inferToAsym(Judgment asym, Judgment sym, - TemporalRules.Relation order) + TemporalValue order)
              { P>,

    S>} |- P> @@ -378,6 +393,15 @@

    +static boolean +TemporalRules.sameTime(Judgment belief1, + Judgment belief2) + +
    +          If the two beliefs have compatible temporal information + + + (package private) static BudgetValue BudgetFunctions.solutionEval(Sentence problem, Judgment solution, @@ -399,22 +423,24 @@

    -static void -MatchingRules.trySolution(Sentence problem, - Judgment belief, - Task task) +static boolean +TemporalRules.temporalRevision(Judgment newBelief, + Judgment oldBelief, + long time, + boolean feedbackToLinks)
    -          Check if a Judgment provide a better answer to a Question +          Belief temporalRevision static void -MatchingRules.update(Task task, - Judgment oldBelief) +MatchingRules.trySolution(Sentence problem, + Judgment belief, + Task task)
    -          Belief update +          Check if a Judgment provide a better answer to a Question   diff --git a/nars-dist/javadoc/nars/entity/class-use/Question.html b/nars-dist/javadoc/nars/entity/class-use/Question.html index 43fd3b38..823a13c0 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Question.html +++ b/nars-dist/javadoc/nars/entity/class-use/Question.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Question (NARS Document) - + @@ -109,12 +109,12 @@

    - + - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Sentence.html b/nars-dist/javadoc/nars/entity/class-use/Sentence.html index 9eed6563..a0e62eca 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Sentence.html +++ b/nars-dist/javadoc/nars/entity/class-use/Sentence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Sentence (NARS Document) - + @@ -178,11 +178,11 @@

    - @@ -190,11 +190,11 @@

    - @@ -210,11 +210,11 @@

    - diff --git a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html index b802dbfb..04334417 100644 --- a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.ShortFloat (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Stamp.html b/nars-dist/javadoc/nars/entity/class-use/Stamp.html index 2bfc4fce..6e6ee66c 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Stamp.html +++ b/nars-dist/javadoc/nars/entity/class-use/Stamp.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Stamp (NARS Document) - + @@ -159,11 +159,11 @@

    - @@ -180,18 +180,18 @@

    - + TemporalValue - - - - - - - + @@ -336,15 +328,6 @@

    - - - - - - - -
    Fields in nars.entity declared as QuestionFields in nars.entity with type parameters of type Question
    -private  QuestionConcept.directQuestion +private  java.util.ArrayList<Question>Concept.pendingQuestions
              Question directly asked about the term
    static SentenceSentence.make(Sentence oldS, +Sentence.make(Sentence oldS, Term term, - TemporalRules.Relation tense, TruthValue truth, - Stamp stamp) + Stamp stamp, + TemporalValue tense)
              Make a derived Sentence from a template and some initial values.
    static SentenceSentence.make(Term term, +Sentence.make(Term term, char punc, - TemporalRules.Relation tense, TruthValue truth, - Stamp stamp) + Stamp stamp, + TemporalValue tense)
              Make a Sentence from an input String.
    static SentenceSentence.make(Sentence oldS, +Sentence.make(Sentence oldS, Term term, - TemporalRules.Relation tense, TruthValue truth, - Stamp stamp) + Stamp stamp, + TemporalValue tense)
              Make a derived Sentence from a template and some initial values.
    static SentenceSentence.make(Sentence oldS, +Sentence.make(Sentence oldS, Term term, - TemporalRules.Relation tense, TruthValue truth, - Stamp stamp) + Stamp stamp, + TemporalValue tense)
              Make a derived Sentence from a template and some initial values.
    static SentenceSentence.make(Term term, +Sentence.make(Term term, char punc, - TemporalRules.Relation tense, TruthValue truth, - Stamp stamp) + Stamp stamp, + TemporalValue tense)
              Make a Sentence from an input String.
    - TemporalRules.Relation Stamp.orderWith(Stamp that)
    @@ -215,9 +215,8 @@

              Constructor

    Judgment(Term term, +Judgment(Term term, char punc, - TemporalRules.Relation s, TruthValue t, Stamp b) @@ -225,9 +224,8 @@

              Constructor

    Question(Term term, +Question(Term term, char punc, - TemporalRules.Relation t, Stamp s)
    diff --git a/nars-dist/javadoc/nars/entity/class-use/Task.html b/nars-dist/javadoc/nars/entity/class-use/Task.html index 723754a9..7207d0fc 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Task.html +++ b/nars-dist/javadoc/nars/entity/class-use/Task.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Task (NARS Document) - + @@ -244,14 +244,6 @@

    static voidTemporalRules.eventProcessing(Task event1) - -
    -          Simple temporal regularity discovery [To be refined]
    -static void MatchingRules.match(Task task, Judgment belief) @@ -293,10 +285,10 @@

    -(package private) static voidSyllogisticRules.temporalIndCom(Task task1, +static voidSyllogisticRules.temporalIndCom(Task task1, Task task2, - TemporalRules.Relation order) + TemporalValue order)
              { S>, P>} |- { P>,

    S>, P>}

    -static voidMatchingRules.update(Task task, - Judgment oldBelief) - -
    -          Belief update
    (package private) static BudgetValue BudgetFunctions.update(Task task, TruthValue bTruth) @@ -393,14 +376,6 @@


              List of inference newTasks, to be processed in the next working cycle

    -static java.util.ArrayList<Task>Memory.recentEvents - -
    -          List of recent events, for temporal learning
     

    @@ -429,6 +404,14 @@

    +private static void +Memory.eventProcessing(Task event1) + +
    +          Simple temporal regularity discovery [To be refined] + + + static void Memory.executedTask(Task task) diff --git a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html index f81f6cf6..063b44f2 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TaskLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TemporalValue.html b/nars-dist/javadoc/nars/entity/class-use/TemporalValue.html new file mode 100644 index 00000000..e0c94765 --- /dev/null +++ b/nars-dist/javadoc/nars/entity/class-use/TemporalValue.html @@ -0,0 +1,684 @@ + + + + + + + +Uses of Class nars.entity.TemporalValue (NARS Document) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.entity.TemporalValue

    +
    + + + + + + + + + + + + + + + + + + + + + +
    +Packages that use TemporalValue
    nars.entityData entities that are independently stored 
    nars.inferenceThe inference rules and control functions 
    nars.languageTerm hierarchy in Narsese 
    nars.mainTop-level classes of the system 
    +  +

    + + + + + +
    +Uses of TemporalValue in nars.entity
    +  +

    + + + + + + + + + +
    Fields in nars.entity declared as TemporalValue
    +protected  TemporalValueSentence.temporalOrder + +
    +          Temporal order between the components
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.entity that return TemporalValue
    +static TemporalValueTemporalValue.getReverse(TemporalValue t) + +
    +          Get the reverse temporal difference of a given one
    + TemporalValueSentence.getTense() + +
    +          Get the tense of the Sentence
    + TemporalValueTask.getTense() + +
    +          Directly get the tense of the sentence
    + TemporalValueStamp.orderWith(Stamp that) + +
    +          Compare two Stamps for their temporal order
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.entity with parameters of type TemporalValue
    +static booleanTemporalValue.closer(TemporalValue t1, + TemporalValue t2, + TemporalValue t) + +
    +          Check if the first temporal valie is closer to the given time than the second
    +static booleanTemporalValue.equal(TemporalValue t1, + TemporalValue t2) + +
    +          Check if two temporal values have the same content
    +static TemporalValueTemporalValue.getReverse(TemporalValue t) + +
    +          Get the reverse temporal difference of a given one
    +static SentenceSentence.make(Sentence oldS, + Term term, + TruthValue truth, + Stamp stamp, + TemporalValue tense) + +
    +          Make a derived Sentence from a template and some initial values.
    +static SentenceSentence.make(Term term, + char punc, + TruthValue truth, + Stamp stamp, + TemporalValue tense) + +
    +          Make a Sentence from an input String.
    +  +

    + + + + + +
    +Uses of TemporalValue in nars.inference
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.inference that return TemporalValue
    +static TemporalValueTemporalRules.syllogistic(TemporalValue r12, + TemporalValue r23) + +
    +          Temporal relationships among three terms
    +static TemporalValueTemporalRules.syllogistic(TemporalValue r1, + TemporalValue r2, + int figure) + +
    +          Temporal inference in syllogism, with figure
    +static TemporalValueTemporalRules.tenseInduction(TemporalValue tense1, + TemporalValue tense2) + +
    +          The temporal inference on tenses
    +static TemporalValueTemporalRules.tenseSyllogistic(TemporalValue r12, + long time1, + TemporalValue r23) + +
    +          Temporal relationships among three terms, with creasion time
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.inference with parameters of type TemporalValue
    +private static voidMatchingRules.inferToAsym(Judgment asym, + Judgment sym, + TemporalValue order) + +
    +          { P>,

    S>} |- P> + Produce an Inheritance/Implication from a Similarity/Equivalence and a reversed Inheritance/Implication

    +static TemporalValueTemporalRules.syllogistic(TemporalValue r12, + TemporalValue r23) + +
    +          Temporal relationships among three terms
    +static TemporalValueTemporalRules.syllogistic(TemporalValue r1, + TemporalValue r2, + int figure) + +
    +          Temporal inference in syllogism, with figure
    +static voidSyllogisticRules.temporalIndCom(Task task1, + Task task2, + TemporalValue order) + +
    +          { S>, P>} |- { P>,

    S>, P>}

    +static TemporalValueTemporalRules.tenseInduction(TemporalValue tense1, + TemporalValue tense2) + +
    +          The temporal inference on tenses
    +static TemporalValueTemporalRules.tenseSyllogistic(TemporalValue r12, + long time1, + TemporalValue r23) + +
    +          Temporal relationships among three terms, with creasion time
    +  +

    + + + + + +
    +Uses of TemporalValue in nars.language
    +  +

    + + + + + + + + + + + + + + + + + +
    Fields in nars.language declared as TemporalValue
    +private  TemporalValueConjunction.temporalOrder + +
    +          Temporal order between the components
    +private  TemporalValueEquivalence.temporalOrder + +
    +          Temporal order between the components
    +private  TemporalValueImplication.temporalOrder + +
    +          Temporal order between the components
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.language that return TemporalValue
    + TemporalValueConjunction.getOrder() + +
    +          Return the temporal order.
    + TemporalValueEquivalence.getOrder() + +
    +          Get the temporal order.
    + TemporalValueImplication.getOrder() + +
    +          Get the order of the components.
    + TemporalValueTerm.getOrder() + +
    +          Get the temporal order in a term, which is null by default
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.language with parameters of type TemporalValue
    +static java.lang.StringConjunction.getConjunctionSymbol(TemporalValue t) + +
    +          COnvert a temporal into its String representation
    +static java.lang.StringEquivalence.getEquivalenceSymbol(TemporalValue t) + +
    +          Get the symbole of the relation by tense
    +static java.lang.StringImplication.getSymbol(TemporalValue t) + +
    +          Convert a TemporalValue into its String representation
    +static TermConjunction.make(java.util.ArrayList<Term> argList, + TemporalValue order) + +
    +          Try to make a new compound from a list of components.
    +static StatementStatement.make(Statement statement, + Term subj, + Term pred, + TemporalValue t) + +
    +          Make a Statement from given components and temporal information, called by the rules
    +static TermConjunction.make(Term term1, + Term term2, + TemporalValue order) + +
    +          Try to make a new compound from two components.
    +static EquivalenceEquivalence.make(Term subject, + Term predicate, + TemporalValue order) + +
    +          Try to make a new compound from two components.
    +static ImplicationImplication.make(Term subject, + Term predicate, + TemporalValue order) + +
    +          Try to make a new compound from two components.
    +static TermConjunction.make(java.util.TreeSet<Term> set, + TemporalValue order) + +
    +          Try to make a new compound from a set of components.
    +static StatementStatement.makeSym(Statement statement, + Term subj, + Term pred, + TemporalValue t) + +
    +          Make a symmetric Statement from given components and temporal information, called by the rules
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + +
    Constructors in nars.language with parameters of type TemporalValue
    Conjunction(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i, + TemporalValue order) + +
    +          Constructor with full values, called by clone
    Conjunction(java.lang.String n, + java.util.ArrayList<Term> arg, + TemporalValue order) + +
    +          Constructor with partial values, called by make
    Equivalence(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i, + TemporalValue order) + +
    +          Constructor with full values, called by clone
    Equivalence(java.lang.String n, + java.util.ArrayList<Term> arg, + TemporalValue order) + +
    +          Constructor with partial values, called by make
    Implication(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i, + TemporalValue order) + +
    +          Constructor with full values, called by clone
    Implication(java.lang.String n, + java.util.ArrayList<Term> arg, + TemporalValue order) + +
    +          Constructor with partial values, called by make
    +  +

    + + + + + +
    +Uses of TemporalValue in nars.main
    +  +

    + + + + + + + + + +
    Fields in nars.main declared as TemporalValue
    +static TemporalValueMemory.currentTense + +
    +          Shortcut to the derived tense
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/entity/class-use/TermLink.html b/nars-dist/javadoc/nars/entity/class-use/TermLink.html index 083fb180..ef8bcb08 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TermLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TermLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TermLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html index 45ef6355..2e884a2e 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TruthValue (NARS Document) - + @@ -166,11 +166,11 @@

    static Sentence -Sentence.make(Sentence oldS, +Sentence.make(Sentence oldS, Term term, - TemporalRules.Relation tense, TruthValue truth, - Stamp stamp) + Stamp stamp, + TemporalValue tense)
              Make a derived Sentence from a template and some initial values. @@ -178,11 +178,11 @@

    static Sentence -Sentence.make(Term term, +Sentence.make(Term term, char punc, - TemporalRules.Relation tense, TruthValue truth, - Stamp stamp) + Stamp stamp, + TemporalValue tense)
              Make a Sentence from an input String. @@ -205,9 +205,8 @@

              Constructor -Judgment(Term term, +Judgment(Term term, char punc, - TemporalRules.Relation s, TruthValue t, Stamp b) @@ -450,10 +449,14 @@

    (package private) static TruthValue -TruthFunctions.temporalInduction(TruthValue v1) +TruthFunctions.temporalRevision(TruthValue v1, + TruthValue v2, + long t1, + long t2, + long t)
    -          Make temporal hypothesis +          Revision weighted by time difference @@ -761,10 +764,14 @@

    (package private) static TruthValue -TruthFunctions.temporalInduction(TruthValue v1) +TruthFunctions.temporalRevision(TruthValue v1, + TruthValue v2, + long t1, + long t2, + long t)
    -          Make temporal hypothesis +          Revision weighted by time difference diff --git a/nars-dist/javadoc/nars/entity/package-frame.html b/nars-dist/javadoc/nars/entity/package-frame.html index 68ca2b11..efa1972b 100644 --- a/nars-dist/javadoc/nars/entity/package-frame.html +++ b/nars-dist/javadoc/nars/entity/package-frame.html @@ -2,13 +2,13 @@ - + nars.entity (NARS Document) - + @@ -46,6 +46,8 @@
    TaskLink
    +TemporalValue +
    TermLink
    TruthValue
    diff --git a/nars-dist/javadoc/nars/entity/package-summary.html b/nars-dist/javadoc/nars/entity/package-summary.html index 6f4b8e13..29e318c4 100644 --- a/nars-dist/javadoc/nars/entity/package-summary.html +++ b/nars-dist/javadoc/nars/entity/package-summary.html @@ -2,13 +2,13 @@ - + nars.entity (NARS Document) - + @@ -142,6 +142,10 @@

    Reference to a Task. +TemporalValue +Temporal information, in terms of the internal clock of the system. + + TermLink A link between a compound term and a component term @@ -171,6 +175,7 @@

    Package Specification

  • TaskLink: special TermLink refering to a Task, whose Term equals or contains the current Term.
  • Concept: labeled by a Term, contains a TaskLink bag and a TermLink bag for indirect tasks/beliefs, as well as beliefs/questions/goals directly on the Term.
  • Item: Concept, Task, or TermLink
  • +
  • TemporalValue: A relative time used in Sentence (for tense), Conjunction (for order), and Implication/Equivalence (for time interval)
  • in NARS, each task is processed in two stages: diff --git a/nars-dist/javadoc/nars/entity/package-tree.html b/nars-dist/javadoc/nars/entity/package-tree.html index 7b341179..8c5942f4 100644 --- a/nars-dist/javadoc/nars/entity/package-tree.html +++ b/nars-dist/javadoc/nars/entity/package-tree.html @@ -2,13 +2,13 @@ - + nars.entity Class Hierarchy (NARS Document) - + @@ -107,7 +107,7 @@

  • nars.entity.Question
  • nars.entity.ShortFloat (implements java.lang.Cloneable)
  • nars.entity.Stamp (implements java.lang.Cloneable) -
  • nars.entity.TruthValue +
  • nars.entity.TemporalValue
  • nars.entity.TruthValue
    diff --git a/nars-dist/javadoc/nars/entity/package-use.html b/nars-dist/javadoc/nars/entity/package-use.html index 6f3f08a5..24dd7317 100644 --- a/nars-dist/javadoc/nars/entity/package-use.html +++ b/nars-dist/javadoc/nars/entity/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.entity (NARS Document) - + @@ -193,6 +193,12 @@

              Reference to a Task. +TemporalValue + +
    +          Temporal information, in terms of the internal clock of the system. + + TermLink
    @@ -267,6 +273,12 @@

              Reference to a Task. +TemporalValue + +
    +          Temporal information, in terms of the internal clock of the system. + + TermLink
    @@ -309,6 +321,12 @@

    Classes in nars.entity used by nars.language +TemporalValue + +
    +          Temporal information, in terms of the internal clock of the system. + + TermLink
    @@ -367,6 +385,12 @@

              Reference to a Task. +TemporalValue + +
    +          Temporal information, in terms of the internal clock of the system. + + TermLink
    diff --git a/nars-dist/javadoc/nars/gui/BagWindow.html b/nars-dist/javadoc/nars/gui/BagWindow.html index 94252514..94fe949a 100644 --- a/nars-dist/javadoc/nars/gui/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/BagWindow.html @@ -2,13 +2,13 @@ - + BagWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/ConceptWindow.html b/nars-dist/javadoc/nars/gui/ConceptWindow.html index 33defbfe..7374fc40 100644 --- a/nars-dist/javadoc/nars/gui/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/ConceptWindow.html @@ -2,13 +2,13 @@ - + ConceptWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/InferenceWindow.html b/nars-dist/javadoc/nars/gui/InferenceWindow.html index e3d99ffd..22d5bd8b 100644 --- a/nars-dist/javadoc/nars/gui/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/InferenceWindow.html @@ -2,13 +2,13 @@ - + InferenceWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/InputWindow.html b/nars-dist/javadoc/nars/gui/InputWindow.html index 789352f1..c735c2f3 100644 --- a/nars-dist/javadoc/nars/gui/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/InputWindow.html @@ -2,13 +2,13 @@ - + InputWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/MainWindow.html b/nars-dist/javadoc/nars/gui/MainWindow.html index f9108402..22c6d1c7 100644 --- a/nars-dist/javadoc/nars/gui/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/MainWindow.html @@ -2,13 +2,13 @@ - + MainWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/MessageDialog.html b/nars-dist/javadoc/nars/gui/MessageDialog.html index 1f1de665..a3f26aea 100644 --- a/nars-dist/javadoc/nars/gui/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/MessageDialog.html @@ -2,13 +2,13 @@ - + MessageDialog (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/NarsFrame.html b/nars-dist/javadoc/nars/gui/NarsFrame.html index 3d0705a1..ce30fc79 100644 --- a/nars-dist/javadoc/nars/gui/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/NarsFrame.html @@ -2,13 +2,13 @@ - + NarsFrame (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/ParameterWindow.html b/nars-dist/javadoc/nars/gui/ParameterWindow.html index 9e32d283..fb9b65d8 100644 --- a/nars-dist/javadoc/nars/gui/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/ParameterWindow.html @@ -2,13 +2,13 @@ - + ParameterWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/TermWindow.html b/nars-dist/javadoc/nars/gui/TermWindow.html index 2e511ec2..c1cff56f 100644 --- a/nars-dist/javadoc/nars/gui/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/TermWindow.html @@ -2,13 +2,13 @@ - + TermWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html index 01fbb4be..4967794e 100644 --- a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.BagWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html index f56a7d7b..2cabca96 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ConceptWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html index a22b5d04..f53bb798 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InferenceWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html index cade6c3a..4cb4f536 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InputWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html index e896bd9c..585eedf5 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MainWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html index 0b3780a3..0a2ce4af 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MessageDialog (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html index 9bc1b13c..6275a88a 100644 --- a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.NarsFrame (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html index 24f2feb7..d7290e76 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ParameterWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html index 585ff46a..2286ff02 100644 --- a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.TermWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-frame.html b/nars-dist/javadoc/nars/gui/package-frame.html index 72f265f2..5195e5fe 100644 --- a/nars-dist/javadoc/nars/gui/package-frame.html +++ b/nars-dist/javadoc/nars/gui/package-frame.html @@ -2,13 +2,13 @@ - + nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-summary.html b/nars-dist/javadoc/nars/gui/package-summary.html index 59473b73..a22eba7c 100644 --- a/nars-dist/javadoc/nars/gui/package-summary.html +++ b/nars-dist/javadoc/nars/gui/package-summary.html @@ -2,13 +2,13 @@ - + nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-tree.html b/nars-dist/javadoc/nars/gui/package-tree.html index c62e9c33..808d43c4 100644 --- a/nars-dist/javadoc/nars/gui/package-tree.html +++ b/nars-dist/javadoc/nars/gui/package-tree.html @@ -2,13 +2,13 @@ - + nars.gui Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-use.html b/nars-dist/javadoc/nars/gui/package-use.html index ed421baa..1c1e6a12 100644 --- a/nars-dist/javadoc/nars/gui/package-use.html +++ b/nars-dist/javadoc/nars/gui/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/BudgetFunctions.html index 556f2d31..0fedcf12 100644 --- a/nars-dist/javadoc/nars/inference/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/BudgetFunctions.html @@ -2,13 +2,13 @@ - + BudgetFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/CompositionalRules.html b/nars-dist/javadoc/nars/inference/CompositionalRules.html index cadb4913..c9be214f 100644 --- a/nars-dist/javadoc/nars/inference/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/CompositionalRules.html @@ -2,13 +2,13 @@ - + CompositionalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/MatchingRules.html b/nars-dist/javadoc/nars/inference/MatchingRules.html index cac4ea51..356393bd 100644 --- a/nars-dist/javadoc/nars/inference/MatchingRules.html +++ b/nars-dist/javadoc/nars/inference/MatchingRules.html @@ -2,13 +2,13 @@ - + MatchingRules (NARS Document) - + @@ -105,8 +105,8 @@

    Directly process a task by a oldBelief, with only two Terms in both. In matching, the new task is compared with all existing direct Tasks in that Concept, to carry out:

    - revision: between judgments on non-overlapping evidence; - update: between judgments; + temporalRevision: between judgments on non-overlapping evidence; + temporalRevision: between judgments; satisfy: between a Judgment and a Question/Goal; merge: between items of the same type and stamp; conversion: between different inheritance relations. @@ -173,9 +173,9 @@

    private static void -inferToAsym(Judgment asym, +inferToAsym(Judgment asym, Judgment sym, - TemporalRules.Relation order) + TemporalValue order)
              { P>,

    S>} |- P> @@ -238,15 +238,6 @@


              Check if a Judgment provide a better answer to a Question - - -static void -update(Task task, - Judgment oldBelief) - -
    -          Belief update -   @@ -303,22 +294,6 @@


    -

    -update

    -
    -public static void update(Task task,
    -                          Judgment oldBelief)
    -
    -
    Belief update -

    - called from oncept.reviseTable -

    -

    -
    Parameters:
    task - The task containing new belief
    oldBelief - The previous belief with the same content
    -
    -
    -
    -

    revision

    @@ -332,7 +307,7 @@ 

    Parameters:
    task - The task containing new belief
    oldBelief - The previous belief with the same content
    feedbackToLinks - Whether to send feedback to the links -
    Returns:
    Whether revision happened
    +
    Returns:
    Whether temporalRevision happened

    @@ -411,12 +386,12 @@


    -

    +

    inferToAsym

     private static void inferToAsym(Judgment asym,
                                     Judgment sym,
    -                                TemporalRules.Relation order)
    + TemporalValue order)
    { P>,

    S>} |- P> Produce an Inheritance/Implication from a Similarity/Equivalence and a reversed Inheritance/Implication diff --git a/nars-dist/javadoc/nars/inference/RuleTables.html b/nars-dist/javadoc/nars/inference/RuleTables.html index 31fa50d6..02ac328c 100644 --- a/nars-dist/javadoc/nars/inference/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/RuleTables.html @@ -2,13 +2,13 @@ - + RuleTables (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/StructuralRules.html b/nars-dist/javadoc/nars/inference/StructuralRules.html index c0915d84..dccb4854 100644 --- a/nars-dist/javadoc/nars/inference/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/StructuralRules.html @@ -2,13 +2,13 @@ - + StructuralRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/SyllogisticRules.html index 94262bc0..f10a797d 100644 --- a/nars-dist/javadoc/nars/inference/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/SyllogisticRules.html @@ -2,13 +2,13 @@ - + SyllogisticRules (NARS Document) - + @@ -241,10 +241,10 @@

    - + @@ -440,17 +440,17 @@


    -

    +

    temporalIndCom

    -static void temporalIndCom(Task task1,
    -                           Task task2,
    -                           TemporalRules.Relation order)
    +public static void temporalIndCom(Task task1, + Task task2, + TemporalValue order)
    { S>, P>} |- { P>,

    S>, P>}

    -
    Parameters:
    task1 - The first premise
    task2 - The second premise
    order - Temporal order of the premises
    +
    Parameters:
    task1 - The first premise
    task2 - The second premise
    order - Temporal order of the terms in conclusion
    diff --git a/nars-dist/javadoc/nars/inference/TemporalRules.html b/nars-dist/javadoc/nars/inference/TemporalRules.html index 9e76d42f..d05ac64e 100644 --- a/nars-dist/javadoc/nars/inference/TemporalRules.html +++ b/nars-dist/javadoc/nars/inference/TemporalRules.html @@ -2,13 +2,13 @@ - + TemporalRules (NARS Document) - + @@ -57,7 +57,7 @@
    NEXT CLASS + SUMMARY: NESTED | FIELD | CONSTR | METHOD @@ -111,24 +111,7 @@


    - - -

    -(package private) static voidtemporalIndCom(Task task1, +static voidtemporalIndCom(Task task1, Task task2, - TemporalRules.Relation order) + TemporalValue order)
              { S>, P>} |- { P>,

    S>, P>}

    - - - - - - - -
    -Nested Class Summary
    -static classTemporalRules.Relation - -
    -          Temporal relations: a default and three specific
    @@ -155,48 +138,62 @@

    -static void -eventProcessing(Task event1) +static boolean +sameTime(Judgment belief1, + Judgment belief2)
    -          Simple temporal regularity discovery [To be refined] +          If the two beliefs have compatible temporal information -static TemporalRules.Relation -reverse(TemporalRules.Relation t1) +static TemporalValue
    +syllogistic(TemporalValue r12, + TemporalValue r23)
    -            +          Temporal relationships among three terms -static TemporalRules.Relation -temporalInference(TemporalRules.Relation r12, - TemporalRules.Relation r23) +static TemporalValue +syllogistic(TemporalValue r1, + TemporalValue r2, + int figure)
    -          Temporal relationships among three terms +          Temporal inference in syllogism, with figure -static TemporalRules.Relation -temporalSyllogism(TemporalRules.Relation r1, - TemporalRules.Relation r2, - int figure) +static boolean
    +temporalRevision(Judgment newBelief, + Judgment oldBelief, + long time, + boolean feedbackToLinks)
    -          Temporal inference in syllogism +          Belief temporalRevision -static TemporalRules.Relation -tenseInference(TemporalRules.Relation tense1, - TemporalRules.Relation tense2) +static TemporalValue +tenseInduction(TemporalValue tense1, + TemporalValue tense2)
              The temporal inference on tenses + + +static TemporalValue +tenseSyllogistic(TemporalValue r12, + long time1, + TemporalValue r23) + +
    +          Temporal relationships among three terms, with creasion time +   @@ -237,53 +234,58 @@

    -

    -temporalInference

    +

    +syllogistic

    -public static TemporalRules.Relation temporalInference(TemporalRules.Relation r12,
    -                                                       TemporalRules.Relation r23)
    +public static TemporalValue syllogistic(TemporalValue r12, + TemporalValue r23)
    Temporal relationships among three terms

    -
    Parameters:
    r12 - Temporal relationship from term1 to term2
    r23 - Temporal relationship from term2 to term3 -
    Returns:
    Temporal relationship from term1 to term3
    +
    Parameters:
    r12 - Temporal TemporalValueship from term1 to term2
    r23 - Temporal TemporalValueship from term2 to term3 +
    Returns:
    Temporal TemporalValueship from term1 to term3


  • -

    -reverse

    +

    +tenseSyllogistic

    -public static TemporalRules.Relation reverse(TemporalRules.Relation t1)
    +public static TemporalValue tenseSyllogistic(TemporalValue r12, + long time1, + TemporalValue r23)
    +
    Temporal relationships among three terms, with creasion time +

    -
    +
    Parameters:
    r12 - Temporal TemporalValueship from term1 to term2
    time1 - Creation time of the first premise
    r23 - Temporal TemporalValueship from term2 to term3 +
    Returns:
    Temporal TemporalValueship from term1 to term3

    -

    -temporalSyllogism

    +

    +syllogistic

    -public static TemporalRules.Relation temporalSyllogism(TemporalRules.Relation r1,
    -                                                       TemporalRules.Relation r2,
    -                                                       int figure)
    +public static TemporalValue syllogistic(TemporalValue r1, + TemporalValue r2, + int figure)
    -
    Temporal inference in syllogism +
    Temporal inference in syllogism, with figure

    -
    Parameters:
    r1 - The first premise
    r2 - The second premise
    figure - The location of the shared term +
    Parameters:
    r1 - The first premise, containing the subject of the conclusion
    r2 - The second premise, containing the predicate of the conclusion
    figure - The location of the shared term
    Returns:
    The temporal order in the conclusion

    -

    -tenseInference

    +

    +tenseInduction

    -public static TemporalRules.Relation tenseInference(TemporalRules.Relation tense1,
    -                                                    TemporalRules.Relation tense2)
    +public static TemporalValue tenseInduction(TemporalValue tense1, + TemporalValue tense2)
    The temporal inference on tenses

    @@ -294,17 +296,36 @@


    -

    -eventProcessing

    +

    +temporalRevision

    -public static void eventProcessing(Task event1)
    +public static boolean temporalRevision(Judgment newBelief, + Judgment oldBelief, + long time, + boolean feedbackToLinks)
    -
    Simple temporal regularity discovery [To be refined] +
    Belief temporalRevision

    - called in Memory.immediateProcess + called from Concept.reviseTable and match +

    +

    +
    Parameters:
    newBelief - The new belief
    oldBelief - The previous belief with the same content
    time - The target time of the statement
    feedbackToLinks - Whether to send feedback to the links +
    Returns:
    Whether temporalRevision happened
    +
    +
    +
    + +

    +sameTime

    +
    +public static boolean sameTime(Judgment belief1,
    +                               Judgment belief2)
    +
    +
    If the two beliefs have compatible temporal information

    -
    Parameters:
    event1 - A new event
    +
    Parameters:
    belief1 -
    belief2 - +
    Returns:
    If the two can be considered as about the same time
    @@ -339,7 +360,7 @@

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -359,7 +380,7 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/inference/TruthFunctions.html b/nars-dist/javadoc/nars/inference/TruthFunctions.html index 9f8ec1ec..f2375c68 100644 --- a/nars-dist/javadoc/nars/inference/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/TruthFunctions.html @@ -2,13 +2,13 @@ - + TruthFunctions (NARS Document) - + @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -348,10 +348,14 @@

    (package private) static TruthValue -temporalInduction(TruthValue v1) +temporalRevision(TruthValue v1, + TruthValue v2, + long t1, + long t2, + long t)
    -          Make temporal hypothesis +          Revision weighted by time difference @@ -495,30 +499,34 @@


    -

    -temporalInduction

    +

    +revision

    -static TruthValue temporalInduction(TruthValue v1)
    +static TruthValue revision(TruthValue v1, + TruthValue v2)
    -
    Make temporal hypothesis +
    { P>, P>} |- P>

    -
    Parameters:
    v1 - Truth value of the premise +
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise
    Returns:
    Truth value of the conclusion

    -

    -revision

    +

    +temporalRevision

    -static TruthValue revision(TruthValue v1,
    -                           TruthValue v2)
    +static TruthValue temporalRevision(TruthValue v1, + TruthValue v2, + long t1, + long t2, + long t)
    -
    { P>, P>} |- P> +
    Revision weighted by time difference

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise +
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise
    t1 - Creation time of the first truth value
    t2 - Creation time of the second truth value
    t - Target time of the resulting truth value
    Returns:
    Truth value of the conclusion
    @@ -539,13 +547,13 @@


    -

    -abduction

    +

    +analogy

    -static TruthValue abduction(TruthValue v1,
    -                            TruthValue v2)
    +static TruthValue analogy(TruthValue v1, + TruthValue v2)
    -
    { M>,

    M>} |- P> +

    { M>, P>} |- P>

    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise @@ -554,13 +562,13 @@


    -

    -induction

    +

    +resemblance

    -static TruthValue induction(TruthValue v1,
    -                            TruthValue v2)
    +static TruthValue resemblance(TruthValue v1, + TruthValue v2)
    -
    { S>, P>} |- P> +
    { M>, P>} |- P>

    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise @@ -569,13 +577,13 @@


    -

    -exemplification

    +

    +abduction

    -static TruthValue exemplification(TruthValue v1,
    -                                  TruthValue v2)
    +static TruthValue abduction(TruthValue v1, + TruthValue v2)
    -
    { S>,

    M>} |- P> +

    { M>,

    M>} |- P>

    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise @@ -584,13 +592,13 @@


    -

    -comparison

    +

    +induction

    -static TruthValue comparison(TruthValue v1,
    -                             TruthValue v2)
    +static TruthValue induction(TruthValue v1, + TruthValue v2)
    -
    { S>, P>} |- P> +
    { S>, P>} |- P>

    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise @@ -599,13 +607,13 @@


    -

    -analogy

    +

    +exemplification

    -static TruthValue analogy(TruthValue v1,
    -                          TruthValue v2)
    +static TruthValue exemplification(TruthValue v1, + TruthValue v2)
    -
    { M>, P>} |- P> +
    { S>,

    M>} |- P>

    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise @@ -614,13 +622,13 @@


    -

    -resemblance

    +

    +comparison

    -static TruthValue resemblance(TruthValue v1,
    -                              TruthValue v2)
    +static TruthValue comparison(TruthValue v1, + TruthValue v2)
    -
    { M>, P>} |- P> +
    { S>, P>} |- P>

    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise @@ -823,7 +831,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/inference/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/UtilityFunctions.html index 1b084ccc..b38cace7 100644 --- a/nars-dist/javadoc/nars/inference/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/UtilityFunctions.html @@ -2,13 +2,13 @@ - + UtilityFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html index dcefe108..144490e8 100644 --- a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.BudgetFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html index de2affae..42ca1fc9 100644 --- a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.CompositionalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html index a9c67616..7d4a8a47 100644 --- a/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.MatchingRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html index c03f290a..b103333e 100644 --- a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.RuleTables (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html index ad2010cf..bd2ffb2c 100644 --- a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.StructuralRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html index bc615e5a..e6735395 100644 --- a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.SyllogisticRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/TemporalRules.html b/nars-dist/javadoc/nars/inference/class-use/TemporalRules.html index bc35ed40..ba7923c5 100644 --- a/nars-dist/javadoc/nars/inference/class-use/TemporalRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/TemporalRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.TemporalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html index ed47d7a1..7e094035 100644 --- a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.TruthFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html index 8f30fb9f..43507da8 100644 --- a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.UtilityFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-frame.html b/nars-dist/javadoc/nars/inference/package-frame.html index 139d1e96..ef4d7559 100644 --- a/nars-dist/javadoc/nars/inference/package-frame.html +++ b/nars-dist/javadoc/nars/inference/package-frame.html @@ -2,13 +2,13 @@ - + nars.inference (NARS Document) - + @@ -45,16 +45,5 @@ - - - - -
    -Enums  - -
    -TemporalRules.Relation
    - - diff --git a/nars-dist/javadoc/nars/inference/package-summary.html b/nars-dist/javadoc/nars/inference/package-summary.html index 4154913e..c718fb76 100644 --- a/nars-dist/javadoc/nars/inference/package-summary.html +++ b/nars-dist/javadoc/nars/inference/package-summary.html @@ -2,13 +2,13 @@ - + nars.inference (NARS Document) - + @@ -134,20 +134,6 @@

      -

    - - - - - - - - - -
    -Enum Summary
    TemporalRules.RelationTemporal relations: a default and three specific
    -  -

    Package nars.inference Description diff --git a/nars-dist/javadoc/nars/inference/package-tree.html b/nars-dist/javadoc/nars/inference/package-tree.html index b555b254..1c8528dc 100644 --- a/nars-dist/javadoc/nars/inference/package-tree.html +++ b/nars-dist/javadoc/nars/inference/package-tree.html @@ -2,13 +2,13 @@ - + nars.inference Class Hierarchy (NARS Document) - + @@ -97,16 +97,6 @@

  • nars.inference.BudgetFunctions
  • nars.inference.TruthFunctions -

    -Enum Hierarchy -

    -
      -
    • java.lang.Object
        -
      • java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable) - -
      -

    diff --git a/nars-dist/javadoc/nars/inference/package-use.html b/nars-dist/javadoc/nars/inference/package-use.html index d44429ed..e4ed2353 100644 --- a/nars-dist/javadoc/nars/inference/package-use.html +++ b/nars-dist/javadoc/nars/inference/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.inference (NARS Document) - + @@ -91,40 +91,9 @@

    Packages that use nars.inference -nars.entity -Data entities that are independently stored  - - nars.inference The inference rules and control functions  - -nars.io -Input/output management  - - -nars.language -Term hierarchy in Narsese  - - -nars.main -Top-level classes of the system  - - -  -

    - - - - - - - -
    -Classes in nars.inference used by nars.entity
    TemporalRules.Relation - -
    -          Temporal relations: a default and three specific
     

    @@ -135,12 +104,6 @@

    Classes in nars.inference used by nars.inference -TemporalRules.Relation - -
    -          Temporal relations: a default and three specific - - UtilityFunctions
    @@ -149,51 +112,6 @@

     

    - - - - - - - - -
    -Classes in nars.inference used by nars.io
    TemporalRules.Relation - -
    -          Temporal relations: a default and three specific
    -  -

    - - - - - - - - -
    -Classes in nars.inference used by nars.language
    TemporalRules.Relation - -
    -          Temporal relations: a default and three specific
    -  -

    - - - - - - - - -
    -Classes in nars.inference used by nars.main
    TemporalRules.Relation - -
    -          Temporal relations: a default and three specific
    -  -


    diff --git a/nars-dist/javadoc/nars/io/ExperienceIO.html b/nars-dist/javadoc/nars/io/ExperienceIO.html index f73d6753..e63cc2b8 100644 --- a/nars-dist/javadoc/nars/io/ExperienceIO.html +++ b/nars-dist/javadoc/nars/io/ExperienceIO.html @@ -2,13 +2,13 @@ - + ExperienceIO (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/Record.html b/nars-dist/javadoc/nars/io/Record.html index 2de5e371..ab272dfc 100644 --- a/nars-dist/javadoc/nars/io/Record.html +++ b/nars-dist/javadoc/nars/io/Record.html @@ -2,13 +2,13 @@ - + Record (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html index 2017c163..f73c0de4 100644 --- a/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html +++ b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html @@ -2,13 +2,13 @@ - + StringParser.InvalidInputException (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/StringParser.html b/nars-dist/javadoc/nars/io/StringParser.html index b3593bd0..223f9808 100644 --- a/nars-dist/javadoc/nars/io/StringParser.html +++ b/nars-dist/javadoc/nars/io/StringParser.html @@ -2,13 +2,13 @@ - + StringParser (NARS Document) - + @@ -273,7 +273,7 @@

    -private static TemporalRules.Relation +private static java.lang.String parseTense(java.lang.StringBuffer s)
    @@ -299,6 +299,14 @@

    private static int +tenseToOrder(java.lang.String t) + +
    +            + + + +private static int topRelation(java.lang.String s)
    @@ -392,7 +400,7 @@

    parseTense

    -private static TemporalRules.Relation parseTense(java.lang.StringBuffer s)
    +private static java.lang.String parseTense(java.lang.StringBuffer s)
    Recognize the tense of an input sentence

    @@ -403,6 +411,17 @@


    +

    +tenseToOrder

    +
    +private static int tenseToOrder(java.lang.String t)
    +
    +
    +
    +
    +
    +
    +

    getTruthString

    diff --git a/nars-dist/javadoc/nars/io/Symbols.html b/nars-dist/javadoc/nars/io/Symbols.html
    index 5ba95368..5c757478 100644
    --- a/nars-dist/javadoc/nars/io/Symbols.html
    +++ b/nars-dist/javadoc/nars/io/Symbols.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Symbols (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html
    index 4bd1bcc2..eb7cbacf 100644
    --- a/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html
    +++ b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Class nars.io.ExperienceIO (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/io/class-use/Record.html b/nars-dist/javadoc/nars/io/class-use/Record.html
    index 2dd1aff3..f73f0420 100644
    --- a/nars-dist/javadoc/nars/io/class-use/Record.html
    +++ b/nars-dist/javadoc/nars/io/class-use/Record.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Class nars.io.Record (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html
    index e6c8fd28..70c088a0 100644
    --- a/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html
    +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Class nars.io.StringParser.InvalidInputException (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.html b/nars-dist/javadoc/nars/io/class-use/StringParser.html
    index ab049e57..8a021996 100644
    --- a/nars-dist/javadoc/nars/io/class-use/StringParser.html
    +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Class nars.io.StringParser (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/io/class-use/Symbols.html b/nars-dist/javadoc/nars/io/class-use/Symbols.html
    index 35df0817..faf14e3b 100644
    --- a/nars-dist/javadoc/nars/io/class-use/Symbols.html
    +++ b/nars-dist/javadoc/nars/io/class-use/Symbols.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Class nars.io.Symbols (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/io/package-frame.html b/nars-dist/javadoc/nars/io/package-frame.html
    index ded9a41a..08dc72f5 100644
    --- a/nars-dist/javadoc/nars/io/package-frame.html
    +++ b/nars-dist/javadoc/nars/io/package-frame.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     nars.io (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/io/package-summary.html b/nars-dist/javadoc/nars/io/package-summary.html
    index b779dfb0..495b8762 100644
    --- a/nars-dist/javadoc/nars/io/package-summary.html
    +++ b/nars-dist/javadoc/nars/io/package-summary.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     nars.io (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/io/package-tree.html b/nars-dist/javadoc/nars/io/package-tree.html
    index 27a28a55..b6f8ba11 100644
    --- a/nars-dist/javadoc/nars/io/package-tree.html
    +++ b/nars-dist/javadoc/nars/io/package-tree.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     nars.io Class Hierarchy (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/io/package-use.html b/nars-dist/javadoc/nars/io/package-use.html
    index 04da9f31..095f6ad5 100644
    --- a/nars-dist/javadoc/nars/io/package-use.html
    +++ b/nars-dist/javadoc/nars/io/package-use.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Package nars.io (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/language/CompoundTerm.html b/nars-dist/javadoc/nars/language/CompoundTerm.html
    index c9ca3b59..c4829e9a 100644
    --- a/nars-dist/javadoc/nars/language/CompoundTerm.html
    +++ b/nars-dist/javadoc/nars/language/CompoundTerm.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     CompoundTerm (NARS Document)
     
     
    -
    +
     
     
     
    @@ -514,7 +514,7 @@ 

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/Conjunction.html b/nars-dist/javadoc/nars/language/Conjunction.html index 45b697be..e7f34dc3 100644 --- a/nars-dist/javadoc/nars/language/Conjunction.html +++ b/nars-dist/javadoc/nars/language/Conjunction.html @@ -2,13 +2,13 @@ - + Conjunction (NARS Document) - + @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -101,9 +101,6 @@

    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    -
    -
    Direct Known Subclasses:
    ConjunctionParallel, ConjunctionSequence
    -

    public class Conjunction
    extends CompoundTerm
    @@ -125,6 +122,14 @@

    Field Summary + + +private  TemporalValue +temporalOrder + +
    +          Temporal order between the components +   @@ -156,22 +161,24 @@

    - +          Constructor with full values, called by clone - +          Constructor with partial values, called by make
    protected Conjunction(java.lang.String n, - java.util.ArrayList<Term> arg) +Conjunction(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i, + TemporalValue order)
    -          Constructor with partial values, called by make
    protected Conjunction(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) +Conjunction(java.lang.String n, + java.util.ArrayList<Term> arg, + TemporalValue order)
    -          Constructor with full values, called by clone
      @@ -193,6 +200,22 @@

    +static java.lang.String +getConjunctionSymbol(TemporalValue t) + +
    +          COnvert a temporal into its String representation + + + + TemporalValue +getOrder() + +
    +          Return the temporal order. + + +  boolean isCommutative() @@ -201,8 +224,25 @@

    +static boolean +isParallel(Term t) + +
    +          Whether the Term is a parallel conjunction + + + +static boolean +isSequence(Term t) + +
    +          Whether the Term is a sequential conjunction + + + static Term -make(java.util.ArrayList<Term> argList) +make(java.util.ArrayList<Term> argList, + TemporalValue order)
              Try to make a new compound from a list of components. @@ -210,8 +250,9 @@

    static Term -make(Term term1, - Term term2) +make(Term term1, + Term term2, + TemporalValue order)
              Try to make a new compound from two components. @@ -219,7 +260,8 @@

    static Term -make(java.util.TreeSet<Term> set) +make(java.util.TreeSet<Term> set, + TemporalValue order)
              Try to make a new compound from a set of components. @@ -248,7 +290,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, hashCode, toString   @@ -263,6 +305,27 @@

     

    + + + + + + + +
    +Field Detail
    + +

    +temporalOrder

    +
    +private TemporalValue temporalOrder
    +
    +
    Temporal order between the components +

    +

    +
    +
    + @@ -273,31 +336,33 @@

    -

    +

    Conjunction

     protected Conjunction(java.lang.String n,
    -                      java.util.ArrayList<Term> arg)
    + java.util.ArrayList<Term> arg, + TemporalValue order)
    Constructor with partial values, called by make

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    +
    Parameters:
    n - The name of the term
    arg - The component list of the term
    order - The temporal order of the components

  • -

    +

    Conjunction

     protected Conjunction(java.lang.String n,
                           java.util.ArrayList<Term> cs,
                           java.util.ArrayList<Variable> open,
    -                      short i)
    + short i, + TemporalValue order)
    Constructor with full values, called by clone

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    +
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    order - The temporal order of the components
    @@ -327,79 +392,141 @@


    -

    -make

    +

    +operator

    -public static Term make(Term term1,
    -                        Term term2)
    +public java.lang.String operator()
    -
    Try to make a new compound from two components. Called by the inference rules. +
    Get the operator of the term.

    -
    Parameters:
    term1 - The first compoment
    term2 - The second compoment -
    Returns:
    A compound generated or a term it reduced to
    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term

    -

    -make

    +

    +getConjunctionSymbol

    -public static Term make(java.util.ArrayList<Term> argList)
    +public static java.lang.String getConjunctionSymbol(TemporalValue t)
    -
    Try to make a new compound from a list of components. Called by StringParser. +
    COnvert a temporal into its String representation

    -
    Parameters:
    argList - the list of arguments -
    Returns:
    the Term generated from the arguments
    +
    Parameters:
    t - The given temporal value +
    Returns:
    String representation of the order

    -

    -make

    +

    +isCommutative

    -public static Term make(java.util.TreeSet<Term> set)
    +public boolean isCommutative()
    -
    Try to make a new compound from a set of components. Called by the public make methods. +
    Check if the compound is communitative.

    -
    Parameters:
    set - a set of Term as compoments -
    Returns:
    the Term generated from the arguments
    +
    Overrides:
    isCommutative in class CompoundTerm
    +
    +
    + +
    Returns:
    true for communitative

    -

    -operator

    +

    +getOrder

    -public java.lang.String operator()
    +public TemporalValue getOrder()
    -
    Get the operator of the term. +
    Return the temporal order.

    -
    Specified by:
    operator in class CompoundTerm
    +
    Overrides:
    getOrder in class Term
    -
    Returns:
    the operator of the term
    +
    Returns:
    Temporal order of the components

    -

    -isCommutative

    +

    +isParallel

    -public boolean isCommutative()
    +public static boolean isParallel(Term t)
    -
    Check if the compound is communitative. +
    Whether the Term is a parallel conjunction

    -
    Overrides:
    isCommutative in class CompoundTerm
    +
    Parameters:
    t - A given term +
    Returns:
    If the term is a paralel conjunction
    + + +
    + +

    +isSequence

    +
    +public static boolean isSequence(Term t)
    +
    +
    Whether the Term is a sequential conjunction +

    +

    +
    Parameters:
    t - A given term +
    Returns:
    If the term is a sequential conjunction
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argList,
    +                        TemporalValue order)
    +
    +
    Try to make a new compound from a list of components. Called by StringParser. +

    +
    Parameters:
    argList - the list of arguments
    order - The temporal order of the components +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    -
    Returns:
    true for communitative +

    +make

    +
    +public static Term make(java.util.TreeSet<Term> set,
    +                        TemporalValue order)
    +
    +
    Try to make a new compound from a set of components. Called by the public make methods. +

    +

    +
    Parameters:
    set - a set of Term as compoments
    order - The temporal order of the components +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Term term1,
    +                        Term term2,
    +                        TemporalValue order)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    +

    +
    Parameters:
    term1 - The first compoment
    term2 - The second compoment
    order - The temporal order of the components +
    Returns:
    A compound generated or a term it reduced to
    @@ -434,7 +561,7 @@

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -454,9 +581,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/DifferenceExt.html b/nars-dist/javadoc/nars/language/DifferenceExt.html index ce03de6c..f0f04699 100644 --- a/nars-dist/javadoc/nars/language/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/DifferenceExt.html @@ -2,13 +2,13 @@ - + DifferenceExt (NARS Document) - + @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -229,7 +229,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   @@ -383,7 +383,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/language/DifferenceInt.html b/nars-dist/javadoc/nars/language/DifferenceInt.html index d72a89ab..dcdc24e0 100644 --- a/nars-dist/javadoc/nars/language/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/DifferenceInt.html @@ -2,13 +2,13 @@ - + DifferenceInt (NARS Document) - + @@ -229,7 +229,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/Disjunction.html b/nars-dist/javadoc/nars/language/Disjunction.html index b107e375..e59bf566 100644 --- a/nars-dist/javadoc/nars/language/Disjunction.html +++ b/nars-dist/javadoc/nars/language/Disjunction.html @@ -2,13 +2,13 @@ - + Disjunction (NARS Document) - + @@ -245,7 +245,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/Equivalence.html b/nars-dist/javadoc/nars/language/Equivalence.html index 5e41e8fd..0b4f0dc6 100644 --- a/nars-dist/javadoc/nars/language/Equivalence.html +++ b/nars-dist/javadoc/nars/language/Equivalence.html @@ -2,13 +2,13 @@ - + Equivalence (NARS Document) - + @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -102,9 +102,6 @@

    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    -
    -
    Direct Known Subclasses:
    EquivalenceAfter, EquivalenceWhen
    -

    public class Equivalence
    extends Statement
    @@ -126,6 +123,14 @@

    Field Summary + + +private  TemporalValue +temporalOrder + +
    +          Temporal order between the components +   @@ -157,22 +162,24 @@

    - +          Constructor with full values, called by clone - +          Constructor with partial values, called by make
    protected Equivalence(java.lang.String n, - java.util.ArrayList<Term> arg) +Equivalence(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i, + TemporalValue order)
    -          Constructor with partial values, called by make
    protected Equivalence(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) +Equivalence(java.lang.String n, + java.util.ArrayList<Term> arg, + TemporalValue order)
    -          Constructor with full values, called by clone
      @@ -194,30 +201,37 @@

    - boolean -isCommutative() +static java.lang.String +getEquivalenceSymbol(TemporalValue t)
    -          Check if the compound is communitative. +          Get the symbole of the relation by tense -static Equivalence -make(Term subject, - Term predicate) + TemporalValue +getOrder()
    -          Try to make a new compound from two components. +          Get the temporal order. + + + + boolean +isCommutative() + +
    +          Check if the compound is communitative. static Equivalence -make(Term subject, +make(Term subject, Term predicate, - TemporalRules.Relation temporalOrder) + TemporalValue order)
    -            +          Try to make a new compound from two components. @@ -234,7 +248,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -252,7 +266,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, hashCode, toString   @@ -267,6 +281,27 @@

     

    + + + + + + + +
    +Field Detail
    + +

    +temporalOrder

    +
    +private TemporalValue temporalOrder
    +
    +
    Temporal order between the components +

    +

    +
    +
    + @@ -277,31 +312,33 @@

    -

    +

    Equivalence

     protected Equivalence(java.lang.String n,
    -                      java.util.ArrayList<Term> arg)
    + java.util.ArrayList<Term> arg, + TemporalValue order)
    Constructor with partial values, called by make

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    +
    Parameters:
    n - The name of the term
    arg - The component list of the term
    order - The temporal order of the components

    -

    +

    Equivalence

     protected Equivalence(java.lang.String n,
                           java.util.ArrayList<Term> cs,
                           java.util.ArrayList<Variable> open,
    -                      short i)
    + short i, + TemporalValue order)
    Constructor with full values, called by clone

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    +
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    order - The temporal order of the components
    @@ -331,34 +368,22 @@


    -

    +

    make

     public static Equivalence make(Term subject,
    -                               Term predicate)
    + Term predicate, + TemporalValue order)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    subject - The first compoment
    predicate - The second compoment +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    order - The temporal order of the components
    Returns:
    A compound generated or null

    -

    -make

    -
    -public static Equivalence make(Term subject,
    -                               Term predicate,
    -                               TemporalRules.Relation temporalOrder)
    -
    -
    -
    -
    -
    -
    -

    operator

    @@ -391,6 +416,37 @@ 

    Returns:
    true for communitative
    +
    + +

    +getOrder

    +
    +public TemporalValue getOrder()
    +
    +
    Get the temporal order. +

    +

    +
    Overrides:
    getOrder in class Term
    +
    +
    + +
    Returns:
    the temporal order of the components
    +
    +
    +
    + +

    +getEquivalenceSymbol

    +
    +public static java.lang.String getEquivalenceSymbol(TemporalValue t)
    +
    +
    Get the symbole of the relation by tense +

    +

    +
    Parameters:
    t - The tense of the statement +
    Returns:
    The String representation of the relation
    +
    +

    @@ -423,7 +479,7 @@

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -443,9 +499,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/ImageExt.html b/nars-dist/javadoc/nars/language/ImageExt.html index 4ec51484..cf63a56d 100644 --- a/nars-dist/javadoc/nars/language/ImageExt.html +++ b/nars-dist/javadoc/nars/language/ImageExt.html @@ -2,13 +2,13 @@ - + ImageExt (NARS Document) - + @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -279,7 +279,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   @@ -519,7 +519,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/language/ImageInt.html b/nars-dist/javadoc/nars/language/ImageInt.html index aa449ca0..cb608015 100644 --- a/nars-dist/javadoc/nars/language/ImageInt.html +++ b/nars-dist/javadoc/nars/language/ImageInt.html @@ -2,13 +2,13 @@ - + ImageInt (NARS Document) - + @@ -279,7 +279,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/Implication.html b/nars-dist/javadoc/nars/language/Implication.html index 752f3c9a..7156431b 100644 --- a/nars-dist/javadoc/nars/language/Implication.html +++ b/nars-dist/javadoc/nars/language/Implication.html @@ -2,13 +2,13 @@ - + Implication (NARS Document) - + @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -102,9 +102,6 @@

    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    -
    -
    Direct Known Subclasses:
    ImplicationAfter, ImplicationBefore, ImplicationWhen
    -

    public class Implication
    extends Statement
    @@ -126,6 +123,14 @@

    Field Summary + + +private  TemporalValue +temporalOrder + +
    +          Temporal order between the components +   @@ -157,22 +162,24 @@

    - +          Constructor with full values, called by clone - +          Constructor with partial values, called by make
    protected Implication(java.lang.String n, - java.util.ArrayList<Term> arg) +Implication(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i, + TemporalValue order)
    -          Constructor with partial values, called by make
    protected Implication(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) +Implication(java.lang.String n, + java.util.ArrayList<Term> arg, + TemporalValue order)
    -          Constructor with full values, called by clone
      @@ -194,22 +201,29 @@

    -static Implication -make(Term subject, - Term predicate) + TemporalValue +getOrder()
    -          Try to make a new compound from two components. +          Get the order of the components. + + + +static java.lang.String +getSymbol(TemporalValue t) + +
    +          Convert a TemporalValue into its String representation static Implication -make(Term subject, +make(Term subject, Term predicate, - TemporalRules.Relation temporalOrder) + TemporalValue order)
    -            +          Try to make a new compound from two components. @@ -226,7 +240,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -244,7 +258,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, hashCode, toString   @@ -259,6 +273,27 @@

     

    + + + + + + + +
    +Field Detail
    + +

    +temporalOrder

    +
    +private TemporalValue temporalOrder
    +
    +
    Temporal order between the components +

    +

    +
    +
    + @@ -269,31 +304,33 @@

    -

    +

    Implication

     protected Implication(java.lang.String n,
    -                      java.util.ArrayList<Term> arg)
    + java.util.ArrayList<Term> arg, + TemporalValue order)

    Constructor with partial values, called by make

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    +
    Parameters:
    n - The name of the term
    arg - The component list of the term
    order - The temporal order of the components

    -

    +

    Implication

     protected Implication(java.lang.String n,
                           java.util.ArrayList<Term> cs,
                           java.util.ArrayList<Variable> open,
    -                      short i)
    + short i, + TemporalValue order)
    Constructor with full values, called by clone

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    +
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    order - The temporal order of the components
    @@ -323,47 +360,66 @@


    -

    +

    make

     public static Implication make(Term subject,
    -                               Term predicate)
    + Term predicate, + TemporalValue order)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    subject - The first compoment
    predicate - The second compoment +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    order - The temporal order of the components
    Returns:
    A compound generated or a term it reduced to

    -

    -make

    +

    +operator

    -public static Implication make(Term subject,
    -                               Term predicate,
    -                               TemporalRules.Relation temporalOrder)
    +public java.lang.String operator()
    +
    Get the operator of the term. +

    -
    +
    Specified by:
    operator in class CompoundTerm
    +

    +
    + +
    Returns:
    the operator of the term

    -

    -operator

    +

    +getOrder

    -public java.lang.String operator()
    +public TemporalValue getOrder()
    -
    Get the operator of the term. +
    Get the order of the components.

    -
    Specified by:
    operator in class CompoundTerm
    +
    Overrides:
    getOrder in class Term
    -
    Returns:
    the operator of the term
    +
    Returns:
    the order within the term +
    + +
    + +

    +getSymbol

    +
    +public static java.lang.String getSymbol(TemporalValue t)
    +
    +
    Convert a TemporalValue into its String representation +

    +

    +
    Parameters:
    t - The temporal value to be represented +
    Returns:
    The the String representation
    @@ -398,7 +454,7 @@

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -418,9 +474,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/Inheritance.html b/nars-dist/javadoc/nars/language/Inheritance.html index 7e308870..9946269c 100644 --- a/nars-dist/javadoc/nars/language/Inheritance.html +++ b/nars-dist/javadoc/nars/language/Inheritance.html @@ -2,13 +2,13 @@ - + Inheritance (NARS Document) - + @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -213,7 +213,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -231,7 +231,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   @@ -371,7 +371,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/language/Instance.html b/nars-dist/javadoc/nars/language/Instance.html index 3fe802c8..34b3fced 100644 --- a/nars-dist/javadoc/nars/language/Instance.html +++ b/nars-dist/javadoc/nars/language/Instance.html @@ -2,13 +2,13 @@ - + Instance (NARS Document) - + @@ -184,7 +184,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -202,7 +202,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/InstanceProperty.html b/nars-dist/javadoc/nars/language/InstanceProperty.html index e3edcaf8..e64b2f30 100644 --- a/nars-dist/javadoc/nars/language/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/InstanceProperty.html @@ -2,13 +2,13 @@ - + InstanceProperty (NARS Document) - + @@ -184,7 +184,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -202,7 +202,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/IntersectionExt.html b/nars-dist/javadoc/nars/language/IntersectionExt.html index 06ba8303..22bc90e8 100644 --- a/nars-dist/javadoc/nars/language/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/IntersectionExt.html @@ -2,13 +2,13 @@ - + IntersectionExt (NARS Document) - + @@ -245,7 +245,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/IntersectionInt.html b/nars-dist/javadoc/nars/language/IntersectionInt.html index c96d3b15..27a9ce3c 100644 --- a/nars-dist/javadoc/nars/language/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/IntersectionInt.html @@ -2,13 +2,13 @@ - + IntersectionInt (NARS Document) - + @@ -245,7 +245,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/Negation.html b/nars-dist/javadoc/nars/language/Negation.html index 95b1bc10..ea3a6720 100644 --- a/nars-dist/javadoc/nars/language/Negation.html +++ b/nars-dist/javadoc/nars/language/Negation.html @@ -2,13 +2,13 @@ - + Negation (NARS Document) - + @@ -228,7 +228,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/Product.html b/nars-dist/javadoc/nars/language/Product.html index 33db016f..04a92925 100644 --- a/nars-dist/javadoc/nars/language/Product.html +++ b/nars-dist/javadoc/nars/language/Product.html @@ -2,13 +2,13 @@ - + Product (NARS Document) - + @@ -230,7 +230,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/Property.html b/nars-dist/javadoc/nars/language/Property.html index d787b8f5..c3692529 100644 --- a/nars-dist/javadoc/nars/language/Property.html +++ b/nars-dist/javadoc/nars/language/Property.html @@ -2,13 +2,13 @@ - + Property (NARS Document) - + @@ -184,7 +184,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -202,7 +202,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/SetExt.html b/nars-dist/javadoc/nars/language/SetExt.html index 51cccf17..f8259f04 100644 --- a/nars-dist/javadoc/nars/language/SetExt.html +++ b/nars-dist/javadoc/nars/language/SetExt.html @@ -2,13 +2,13 @@ - + SetExt (NARS Document) - + @@ -252,7 +252,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/SetInt.html b/nars-dist/javadoc/nars/language/SetInt.html index 64845d0f..d92e35b6 100644 --- a/nars-dist/javadoc/nars/language/SetInt.html +++ b/nars-dist/javadoc/nars/language/SetInt.html @@ -2,13 +2,13 @@ - + SetInt (NARS Document) - + @@ -252,7 +252,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/Similarity.html b/nars-dist/javadoc/nars/language/Similarity.html index 147574f8..1f5f1927 100644 --- a/nars-dist/javadoc/nars/language/Similarity.html +++ b/nars-dist/javadoc/nars/language/Similarity.html @@ -2,13 +2,13 @@ - + Similarity (NARS Document) - + @@ -221,7 +221,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -239,7 +239,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   diff --git a/nars-dist/javadoc/nars/language/Statement.html b/nars-dist/javadoc/nars/language/Statement.html index 010c5368..921c0534 100644 --- a/nars-dist/javadoc/nars/language/Statement.html +++ b/nars-dist/javadoc/nars/language/Statement.html @@ -2,13 +2,13 @@ - + Statement (NARS Document) - + @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -210,6 +210,14 @@

    + boolean +invalid() + +
    +          Check the validity of a potential Statement. + + + static boolean invalidStatement(Term subject, Term predicate) @@ -238,10 +246,10 @@

    static Statement -make(Statement statement, +make(Statement statement, Term subj, Term pred, - TemporalRules.Relation order) + TemporalValue t)
              Make a Statement from given components and temporal information, called by the rules @@ -277,10 +285,10 @@

    static Statement -makeSym(Statement statement, +makeSym(Statement statement, Term subj, Term pred, - TemporalRules.Relation order) + TemporalValue t)
              Make a symmetric Statement from given components and temporal information, called by the rules @@ -301,7 +309,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getTemporalOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, toString   @@ -405,35 +413,35 @@


    -

    +

    make

     public static Statement make(Statement statement,
                                  Term subj,
                                  Term pred,
    -                             TemporalRules.Relation order)
    + TemporalValue t)
    Make a Statement from given components and temporal information, called by the rules

    -
    Parameters:
    statement - A sample statement providing the class type
    subj - The first component
    pred - The second component
    order - The temporal order of the statement +
    Parameters:
    statement - A sample statement providing the class type
    subj - The first component
    pred - The second component
    t - The temporal order of the statement
    Returns:
    The Statement built

    -

    +

    makeSym

     public static Statement makeSym(Statement statement,
                                     Term subj,
                                     Term pred,
    -                                TemporalRules.Relation order)
    + TemporalValue t)
    Make a symmetric Statement from given components and temporal information, called by the rules

    -
    Parameters:
    statement - A sample asymmetric statement providing the class type
    subj - The first component
    pred - The second component
    order - The temporal order of the statement +
    Parameters:
    statement - A sample asymmetric statement providing the class type
    subj - The first component
    pred - The second component
    t - The temporal order of the statement
    Returns:
    The Statement built
    @@ -503,6 +511,22 @@


    +

    +invalid

    +
    +public boolean invalid()
    +
    +
    Check the validity of a potential Statement. [To be refined] +

    + Minimum requirement: the two terms cannot be the same, or containing each other as component +

    +

    + +
    Returns:
    Whether The Statement is invalid
    +
    +
    +
    +

    getSubject

    @@ -561,7 +585,7 @@ 

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/language/Term.html b/nars-dist/javadoc/nars/language/Term.html index 57e79ba1..d92e9712 100644 --- a/nars-dist/javadoc/nars/language/Term.html +++ b/nars-dist/javadoc/nars/language/Term.html @@ -2,13 +2,13 @@ - + Term (NARS Document) - + @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -221,11 +221,11 @@

    - TemporalRules.Relation -getTemporalOrder() + TemporalValue +getOrder()
    -          Get the temporal order in a term, which is NONE by default +          Get the temporal order in a term, which is null by default @@ -482,12 +482,12 @@


    -

    -getTemporalOrder

    +

    +getOrder

    -public TemporalRules.Relation getTemporalOrder()
    +public TemporalValue getOrder()

    -
    Get the temporal order in a term, which is NONE by default +
    Get the temporal order in a term, which is null by default

    @@ -528,7 +528,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/language/Variable.VarType.html b/nars-dist/javadoc/nars/language/Variable.VarType.html index 722b1a55..424c5589 100644 --- a/nars-dist/javadoc/nars/language/Variable.VarType.html +++ b/nars-dist/javadoc/nars/language/Variable.VarType.html @@ -2,13 +2,13 @@ - + Variable.VarType (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Variable.html b/nars-dist/javadoc/nars/language/Variable.html index 6506a7a8..473e33e8 100644 --- a/nars-dist/javadoc/nars/language/Variable.html +++ b/nars-dist/javadoc/nars/language/Variable.html @@ -2,13 +2,13 @@ - + Variable (NARS Document) - + @@ -350,7 +350,7 @@

    Methods inherited from class nars.language.Term -compareTo, getComplexity, getTemporalOrder, toString +compareTo, getComplexity, getOrder, toString   diff --git a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html index 7ff5134a..0d3514fd 100644 --- a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html +++ b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.CompoundTerm (NARS Document) - + @@ -315,22 +315,6 @@

     class -ConjunctionParallel - -
    -          A parallel conjunction of Statements. - - - - class -ConjunctionSequence - -
    -          A sequential conjunction of Statements. - - - - class DifferenceExt
    @@ -363,22 +347,6 @@

     class -EquivalenceAfter - -
    -          Temporal Implication relation, predicate after subject. - - - - class -EquivalenceWhen - -
    -          Temporal Equivalence relation, concurrent. - - - - class ImageExt
    @@ -403,30 +371,6 @@

     class -ImplicationAfter - -
    -          Temporal Implication relation, predicate after subject. - - - - class -ImplicationBefore - -
    -          Temporal Implication relation, predicate before subject. - - - - class -ImplicationWhen - -
    -          Temporal Implication relation, concurrent. - - - - class Inheritance
    diff --git a/nars-dist/javadoc/nars/language/class-use/Conjunction.html b/nars-dist/javadoc/nars/language/class-use/Conjunction.html index bec9dd75..856d0ce3 100644 --- a/nars-dist/javadoc/nars/language/class-use/Conjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Conjunction.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Conjunction (NARS Document) - + @@ -94,10 +94,6 @@

    nars.inference The inference rules and control functions  - -nars.language -Term hierarchy in Narsese  -  

    @@ -128,39 +124,6 @@

     

    - - - - - -
    -Uses of Conjunction in nars.language
    -  -

    - - - - - - - - - - - - - -
    Subclasses of Conjunction in nars.language
    - classConjunctionParallel - -
    -          A parallel conjunction of Statements.
    - classConjunctionSequence - -
    -          A sequential conjunction of Statements.
    -  -


    diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html index ec5c9e8d..0fc41c51 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.DifferenceExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html index 12730931..7588628d 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.DifferenceInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Disjunction.html b/nars-dist/javadoc/nars/language/class-use/Disjunction.html index 20866c95..265aea11 100644 --- a/nars-dist/javadoc/nars/language/class-use/Disjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Disjunction.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Disjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Equivalence.html b/nars-dist/javadoc/nars/language/class-use/Equivalence.html index d99e250e..7d34bc1e 100644 --- a/nars-dist/javadoc/nars/language/class-use/Equivalence.html +++ b/nars-dist/javadoc/nars/language/class-use/Equivalence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Equivalence (NARS Document) - + @@ -107,30 +107,6 @@

     

    - - - - - - - - - - - - -
    Subclasses of Equivalence in nars.language
    - classEquivalenceAfter - -
    -          Temporal Implication relation, predicate after subject.
    - classEquivalenceWhen - -
    -          Temporal Equivalence relation, concurrent.
    -  -

    - @@ -138,21 +114,12 @@

    - - - - - +          Try to make a new compound from two components.
    Methods in nars.language that return Equivalence
    static EquivalenceEquivalence.make(Term subject, - Term predicate) - -
    -          Try to make a new compound from two components.
    -static EquivalenceEquivalence.make(Term subject, +Equivalence.make(Term subject, Term predicate, - TemporalRules.Relation temporalOrder) + TemporalValue order)
    -           
      diff --git a/nars-dist/javadoc/nars/language/class-use/ImageExt.html b/nars-dist/javadoc/nars/language/class-use/ImageExt.html index 83ddab0e..1c816d60 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageExt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImageExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ImageInt.html b/nars-dist/javadoc/nars/language/class-use/ImageInt.html index 5ece24d6..ad30db67 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageInt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImageInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Implication.html b/nars-dist/javadoc/nars/language/class-use/Implication.html index 11dfc5ac..03927cf6 100644 --- a/nars-dist/javadoc/nars/language/class-use/Implication.html +++ b/nars-dist/javadoc/nars/language/class-use/Implication.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Implication (NARS Document) - + @@ -152,38 +152,6 @@

     

    - - - - - - - - - - - - - - - - -
    Subclasses of Implication in nars.language
    - classImplicationAfter - -
    -          Temporal Implication relation, predicate after subject.
    - classImplicationBefore - -
    -          Temporal Implication relation, predicate before subject.
    - classImplicationWhen - -
    -          Temporal Implication relation, concurrent.
    -  -

    - @@ -191,21 +159,12 @@

    - - - - - +          Try to make a new compound from two components.
    Methods in nars.language that return Implication
    static ImplicationImplication.make(Term subject, - Term predicate) - -
    -          Try to make a new compound from two components.
    -static ImplicationImplication.make(Term subject, +Implication.make(Term subject, Term predicate, - TemporalRules.Relation temporalOrder) + TemporalValue order)
    -           
      diff --git a/nars-dist/javadoc/nars/language/class-use/Inheritance.html b/nars-dist/javadoc/nars/language/class-use/Inheritance.html index 7a8a1e27..ce98c38a 100644 --- a/nars-dist/javadoc/nars/language/class-use/Inheritance.html +++ b/nars-dist/javadoc/nars/language/class-use/Inheritance.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Inheritance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Instance.html b/nars-dist/javadoc/nars/language/class-use/Instance.html index 9b1b1f89..6f63391c 100644 --- a/nars-dist/javadoc/nars/language/class-use/Instance.html +++ b/nars-dist/javadoc/nars/language/class-use/Instance.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Instance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html index e1d4188f..e1be74f4 100644 --- a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.InstanceProperty (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html index 2c14ac7c..4c881f29 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.IntersectionExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html index f667c101..27319c28 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.IntersectionInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Negation.html b/nars-dist/javadoc/nars/language/class-use/Negation.html index 4fdb49c6..329ee6fb 100644 --- a/nars-dist/javadoc/nars/language/class-use/Negation.html +++ b/nars-dist/javadoc/nars/language/class-use/Negation.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Negation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Product.html b/nars-dist/javadoc/nars/language/class-use/Product.html index f8490f38..a8a683aa 100644 --- a/nars-dist/javadoc/nars/language/class-use/Product.html +++ b/nars-dist/javadoc/nars/language/class-use/Product.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Product (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Property.html b/nars-dist/javadoc/nars/language/class-use/Property.html index 4a3d275a..4be78fc8 100644 --- a/nars-dist/javadoc/nars/language/class-use/Property.html +++ b/nars-dist/javadoc/nars/language/class-use/Property.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Property (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/SetExt.html b/nars-dist/javadoc/nars/language/class-use/SetExt.html index 85e21b6c..f1fd9d33 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetExt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.SetExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/SetInt.html b/nars-dist/javadoc/nars/language/class-use/SetInt.html index 361bca70..97e6f905 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetInt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.SetInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Similarity.html b/nars-dist/javadoc/nars/language/class-use/Similarity.html index d3728a5d..9c77d2e6 100644 --- a/nars-dist/javadoc/nars/language/class-use/Similarity.html +++ b/nars-dist/javadoc/nars/language/class-use/Similarity.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Similarity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Statement.html b/nars-dist/javadoc/nars/language/class-use/Statement.html index 239e6865..178755f7 100644 --- a/nars-dist/javadoc/nars/language/class-use/Statement.html +++ b/nars-dist/javadoc/nars/language/class-use/Statement.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Statement (NARS Document) - + @@ -341,22 +341,6 @@

     class -EquivalenceAfter - -
    -          Temporal Implication relation, predicate after subject. - - - - class -EquivalenceWhen - -
    -          Temporal Equivalence relation, concurrent. - - - - class Implication
    @@ -365,30 +349,6 @@

     class -ImplicationAfter - -
    -          Temporal Implication relation, predicate after subject. - - - - class -ImplicationBefore - -
    -          Temporal Implication relation, predicate before subject. - - - - class -ImplicationWhen - -
    -          Temporal Implication relation, concurrent. - - - - class Inheritance
    @@ -450,10 +410,10 @@

    static Statement -Statement.make(Statement statement, +Statement.make(Statement statement, Term subj, Term pred, - TemporalRules.Relation order) + TemporalValue t)
              Make a Statement from given components and temporal information, called by the rules @@ -498,10 +458,10 @@

    static Statement -Statement.makeSym(Statement statement, +Statement.makeSym(Statement statement, Term subj, Term pred, - TemporalRules.Relation order) + TemporalValue t)
              Make a symmetric Statement from given components and temporal information, called by the rules @@ -527,10 +487,10 @@

    static Statement -Statement.make(Statement statement, +Statement.make(Statement statement, Term subj, Term pred, - TemporalRules.Relation order) + TemporalValue t)
              Make a Statement from given components and temporal information, called by the rules @@ -538,10 +498,10 @@

    static Statement -Statement.makeSym(Statement statement, +Statement.makeSym(Statement statement, Term subj, Term pred, - TemporalRules.Relation order) + TemporalValue t)
              Make a symmetric Statement from given components and temporal information, called by the rules diff --git a/nars-dist/javadoc/nars/language/class-use/Term.html b/nars-dist/javadoc/nars/language/class-use/Term.html index 3b4cb604..87cce043 100644 --- a/nars-dist/javadoc/nars/language/class-use/Term.html +++ b/nars-dist/javadoc/nars/language/class-use/Term.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Term (NARS Document) - + @@ -214,11 +214,11 @@

    static Sentence -Sentence.make(Sentence oldS, +Sentence.make(Sentence oldS, Term term, - TemporalRules.Relation tense, TruthValue truth, - Stamp stamp) + Stamp stamp, + TemporalValue tense)
              Make a derived Sentence from a template and some initial values. @@ -226,11 +226,11 @@

    static Sentence -Sentence.make(Term term, +Sentence.make(Term term, char punc, - TemporalRules.Relation tense, TruthValue truth, - Stamp stamp) + Stamp stamp, + TemporalValue tense)
              Make a Sentence from an input String. @@ -267,9 +267,8 @@

              Constructor -Judgment(Term term, +Judgment(Term term, char punc, - TemporalRules.Relation s, TruthValue t, Stamp b) @@ -277,9 +276,8 @@

              Constructor -Question(Term term, +Question(Term term, char punc, - TemporalRules.Relation t, Stamp s)
    @@ -624,22 +622,6 @@

     class -ConjunctionParallel - -
    -          A parallel conjunction of Statements. - - - - class -ConjunctionSequence - -
    -          A sequential conjunction of Statements. - - - - class DifferenceExt
    @@ -672,22 +654,6 @@

     class -EquivalenceAfter - -
    -          Temporal Implication relation, predicate after subject. - - - - class -EquivalenceWhen - -
    -          Temporal Equivalence relation, concurrent. - - - - class ImageExt
    @@ -712,30 +678,6 @@

     class -ImplicationAfter - -
    -          Temporal Implication relation, predicate after subject. - - - - class -ImplicationBefore - -
    -          Temporal Implication relation, predicate before subject. - - - - class -ImplicationWhen - -
    -          Temporal Implication relation, concurrent. - - - - class Inheritance
    @@ -901,30 +843,6 @@

    static Term -Conjunction.make(java.util.ArrayList<Term> argList) - -
    -          Try to make a new compound from a list of components. - - - -static Term -ConjunctionParallel.make(java.util.ArrayList<Term> argList) - -
    -          Try to make a new compound from a list of components. - - - -static Term -ConjunctionSequence.make(java.util.ArrayList<Term> argument) - -
    -          Try to make a new compound from a list of components. - - - -static Term DifferenceExt.make(java.util.ArrayList<Term> argList)
    @@ -1031,6 +949,15 @@

    static Term +Conjunction.make(java.util.ArrayList<Term> argList, + TemporalValue order) + +
    +          Try to make a new compound from a list of components. + + + +static Term CompoundTerm.make(CompoundTerm compound, java.util.ArrayList<Term> components) @@ -1123,33 +1050,6 @@

    static Term -Conjunction.make(Term term1, - Term term2) - -
    -          Try to make a new compound from two components. - - - -static Term -ConjunctionParallel.make(Term term1, - Term term2) - -
    -          Try to make a new compound from two components. - - - -static Term -ConjunctionSequence.make(Term term1, - Term term2) - -
    -            - - - -static Term DifferenceExt.make(Term t1, Term t2) @@ -1195,18 +1095,12 @@

    static Term -Conjunction.make(java.util.TreeSet<Term> set) - -
    -          Try to make a new compound from a set of components. - - - -static Term -ConjunctionParallel.make(java.util.TreeSet<Term> set) +Conjunction.make(Term term1, + Term term2, + TemporalValue order)
    -          Try to make a new compound from a set of components. +          Try to make a new compound from two components. @@ -1245,6 +1139,15 @@

    static Term SetInt.make(java.util.TreeSet<Term> set) +
    +          Try to make a new compound from a set of components. + + + +static Term +Conjunction.make(java.util.TreeSet<Term> set, + TemporalValue order) +
              Try to make a new compound from a set of components. @@ -1437,6 +1340,22 @@

    +static boolean +Conjunction.isParallel(Term t) + +
    +          Whether the Term is a parallel conjunction + + + +static boolean +Conjunction.isSequence(Term t) + +
    +          Whether the Term is a sequential conjunction + + + static Term Product.make(CompoundTerm image, Term component, @@ -1498,10 +1417,10 @@

    static Statement -Statement.make(Statement statement, +Statement.make(Statement statement, Term subj, Term pred, - TemporalRules.Relation order) + TemporalValue t)
              Make a Statement from given components and temporal information, called by the rules @@ -1543,33 +1462,6 @@

    static Term -Conjunction.make(Term term1, - Term term2) - -
    -          Try to make a new compound from two components. - - - -static Term -ConjunctionParallel.make(Term term1, - Term term2) - -
    -          Try to make a new compound from two components. - - - -static Term -ConjunctionSequence.make(Term term1, - Term term2) - -
    -            - - - -static Term DifferenceExt.make(Term t1, Term t2) @@ -1596,69 +1488,6 @@

    -static Equivalence -Equivalence.make(Term subject, - Term predicate) - -
    -          Try to make a new compound from two components. - - - -static EquivalenceAfter -EquivalenceAfter.make(Term subject, - Term predicate) - -
    -          Try to make a new compound from two components. - - - -static EquivalenceWhen -EquivalenceWhen.make(Term subject, - Term predicate) - -
    -          Try to make a new compound from two components. - - - -static Implication -Implication.make(Term subject, - Term predicate) - -
    -          Try to make a new compound from two components. - - - -static ImplicationAfter -ImplicationAfter.make(Term subject, - Term predicate) - -
    -          Try to make a new compound from two components. - - - -static ImplicationBefore -ImplicationBefore.make(Term subject, - Term predicate) - -
    -          Try to make a new compound from two components. - - - -static ImplicationWhen -ImplicationWhen.make(Term subject, - Term predicate) - -
    -          Try to make a new compound from two components. - - - static Inheritance Inheritance.make(Term subject, Term predicate) @@ -1717,28 +1546,38 @@

    Similarity.make(Term subject, Term predicate) +
    +          Try to make a new compound from two components. + + + +static Term +Conjunction.make(Term term1, + Term term2, + TemporalValue order) +
              Try to make a new compound from two components. static Equivalence -Equivalence.make(Term subject, +Equivalence.make(Term subject, Term predicate, - TemporalRules.Relation temporalOrder) + TemporalValue order)
    -            +          Try to make a new compound from two components. static Implication -Implication.make(Term subject, +Implication.make(Term subject, Term predicate, - TemporalRules.Relation temporalOrder) + TemporalValue order)
    -            +          Try to make a new compound from two components. @@ -1753,10 +1592,10 @@

    static Statement -Statement.makeSym(Statement statement, +Statement.makeSym(Statement statement, Term subj, Term pred, - TemporalRules.Relation order) + TemporalValue t)
              Make a symmetric Statement from given components and temporal information, called by the rules @@ -1836,30 +1675,6 @@

    static Term -Conjunction.make(java.util.ArrayList<Term> argList) - -
    -          Try to make a new compound from a list of components. - - - -static Term -ConjunctionParallel.make(java.util.ArrayList<Term> argList) - -
    -          Try to make a new compound from a list of components. - - - -static Term -ConjunctionSequence.make(java.util.ArrayList<Term> argument) - -
    -          Try to make a new compound from a list of components. - - - -static Term DifferenceExt.make(java.util.ArrayList<Term> argList)
    @@ -1966,6 +1781,15 @@

    static Term +Conjunction.make(java.util.ArrayList<Term> argList, + TemporalValue order) + +
    +          Try to make a new compound from a list of components. + + + +static Term CompoundTerm.make(CompoundTerm compound, java.util.ArrayList<Term> components) @@ -1984,15 +1808,15 @@

    static Term -Conjunction.make(java.util.TreeSet<Term> set) +Disjunction.make(java.util.TreeSet<Term> set)
    -          Try to make a new compound from a set of components. +          Try to make a new Disjunction from a set of components. static Term -ConjunctionParallel.make(java.util.TreeSet<Term> set) +IntersectionExt.make(java.util.TreeSet<Term> set)
              Try to make a new compound from a set of components. @@ -2000,15 +1824,7 @@

    static Term -Disjunction.make(java.util.TreeSet<Term> set) - -
    -          Try to make a new Disjunction from a set of components. - - - -static Term -IntersectionExt.make(java.util.TreeSet<Term> set) +IntersectionInt.make(java.util.TreeSet<Term> set)
              Try to make a new compound from a set of components. @@ -2016,7 +1832,7 @@

    static Term -IntersectionInt.make(java.util.TreeSet<Term> set) +SetExt.make(java.util.TreeSet<Term> set)
              Try to make a new compound from a set of components. @@ -2024,7 +1840,7 @@

    static Term -SetExt.make(java.util.TreeSet<Term> set) +SetInt.make(java.util.TreeSet<Term> set)
              Try to make a new compound from a set of components. @@ -2032,7 +1848,8 @@

    static Term -SetInt.make(java.util.TreeSet<Term> set) +Conjunction.make(java.util.TreeSet<Term> set, + TemporalValue order)
              Try to make a new compound from a set of components. @@ -2100,54 +1917,24 @@

              Constructor called from subclasses constructors to clone the fields -Conjunction(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -Conjunction(java.lang.String n, +Conjunction(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, - short i) + short i, + TemporalValue order)
              Constructor with full values, called by clone -ConjunctionParallel(java.lang.String n, - java.util.ArrayList<Term> arg) +Conjunction(java.lang.String n, + java.util.ArrayList<Term> arg, + TemporalValue order)
              Constructor with partial values, called by make -ConjunctionParallel(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -ConjunctionSequence(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          constructor with partial values, called by make - - -ConjunctionSequence(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - DifferenceExt(java.lang.String n, java.util.ArrayList<Term> arg) @@ -2196,54 +1983,24 @@

              Constructor with full values, called by clone -Equivalence(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -Equivalence(java.lang.String n, +Equivalence(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, - short i) + short i, + TemporalValue order)
              Constructor with full values, called by clone -EquivalenceAfter(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          constructor with partial values, called by make - - -EquivalenceAfter(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -EquivalenceWhen(java.lang.String n, - java.util.ArrayList<Term> arg) +Equivalence(java.lang.String n, + java.util.ArrayList<Term> arg, + TemporalValue order)
              Constructor with partial values, called by make -EquivalenceWhen(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - ImageExt(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, @@ -2280,70 +2037,24 @@

              constructor with partial values, called by make -Implication(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -Implication(java.lang.String n, +Implication(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -ImplicationAfter(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          constructor with partial values, called by make - - -ImplicationAfter(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -ImplicationBefore(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -ImplicationBefore(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) + short i, + TemporalValue order)

              Constructor with full values, called by clone -ImplicationWhen(java.lang.String n, - java.util.ArrayList<Term> arg) +Implication(java.lang.String n, + java.util.ArrayList<Term> arg, + TemporalValue order)
              Constructor with partial values, called by make -ImplicationWhen(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - Inheritance(java.lang.String n, java.util.ArrayList<Term> arg) diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html index 90c02aba..2add1153 100644 --- a/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html +++ b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Variable.VarType (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.html b/nars-dist/javadoc/nars/language/class-use/Variable.html index 2c3423cd..5d2ed9b0 100644 --- a/nars-dist/javadoc/nars/language/class-use/Variable.html +++ b/nars-dist/javadoc/nars/language/class-use/Variable.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Variable (NARS Document) - + @@ -182,28 +182,11 @@

              Constructor called from subclasses constructors to clone the fields -Conjunction(java.lang.String n, +Conjunction(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -ConjunctionParallel(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -ConjunctionSequence(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) + short i, + TemporalValue order)

              Constructor with full values, called by clone @@ -236,28 +219,11 @@

              Constructor with full values, called by clone -Equivalence(java.lang.String n, +Equivalence(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -EquivalenceAfter(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -EquivalenceWhen(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) + short i, + TemporalValue order)

              Constructor with full values, called by clone @@ -283,37 +249,11 @@

              Constructor with full values, called by clone -Implication(java.lang.String n, +Implication(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -ImplicationAfter(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -ImplicationBefore(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -ImplicationWhen(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) + short i, + TemporalValue order)

              Constructor with full values, called by clone diff --git a/nars-dist/javadoc/nars/language/package-frame.html b/nars-dist/javadoc/nars/language/package-frame.html index 45cd9adb..79f584e7 100644 --- a/nars-dist/javadoc/nars/language/package-frame.html +++ b/nars-dist/javadoc/nars/language/package-frame.html @@ -2,13 +2,13 @@ - + nars.language (NARS Document) - + @@ -18,17 +18,6 @@ nars.language - - - - -
    -Interfaces  - -
    -Temporal
    - - - +
    @@ -39,10 +28,6 @@
    Conjunction
    -ConjunctionParallel -
    -ConjunctionSequence -
    DifferenceExt
    DifferenceInt @@ -51,22 +36,12 @@
    Equivalence
    -EquivalenceAfter -
    -EquivalenceWhen -
    ImageExt
    ImageInt
    Implication
    -ImplicationAfter -
    -ImplicationBefore -
    -ImplicationWhen -
    Inheritance
    Instance diff --git a/nars-dist/javadoc/nars/language/package-summary.html b/nars-dist/javadoc/nars/language/package-summary.html index f1b5bd02..8199b8c1 100644 --- a/nars-dist/javadoc/nars/language/package-summary.html +++ b/nars-dist/javadoc/nars/language/package-summary.html @@ -2,13 +2,13 @@ - + nars.language (NARS Document) - + @@ -90,20 +90,6 @@

              Description

    - - - - - - - - -
    -Interface Summary
    TemporalAn interface for compound terms with temporal information in it
    -  - -

    - - - - - - - - - @@ -142,14 +120,6 @@

    - - - - - - - - @@ -162,18 +132,6 @@

    - - - - - - - - - - - - @@ -284,17 +242,17 @@

    Package Specification

    | --] // Property | {-] // InstanceProperty | ==> // Implication - | =/> // ImplicationAfter - | =|> // ImplicationWhen - | =\> // ImplicationBefore + | =/> // Implication (After) + | =|> // Implication (When) + | =\> // Implication (Before) | <=> // Equivalence - | </> // EquivalenceAfter - | <|> // EquivalenceWhen + | </> // Equivalence (After) + | <|> // Equivalence (When) <compound-statement> ::= (-- <statement>) // Negation | (|| <statement> <statement>+) // Disjunction | (&& <statement> <statement>+) // Conjunction - | (&/ <statement> <statement>+) // ConjunctionSequence - | (&| <statement> <statement>+) // ConjunctionParallel + | (&/ <statement> <statement>+) // Conjunction (Sequence) + | (&| <statement> <statement>+) // Conjunction (Parallel) <compound-term> ::= {<term>+} // SetExt | [<term>+] // SetInt | (& <term> <term>+) // IntersectionExt diff --git a/nars-dist/javadoc/nars/language/package-tree.html b/nars-dist/javadoc/nars/language/package-tree.html index 838831f8..d9d43648 100644 --- a/nars-dist/javadoc/nars/language/package-tree.html +++ b/nars-dist/javadoc/nars/language/package-tree.html @@ -2,13 +2,13 @@ - + nars.language Class Hierarchy (NARS Document) - + @@ -96,31 +96,13 @@

  • nars.language.Term (implements java.lang.Cloneable, java.lang.Comparable<T>)

    -Interface Hierarchy -

    - -

    Enum Hierarchy

      diff --git a/nars-dist/javadoc/nars/language/package-use.html b/nars-dist/javadoc/nars/language/package-use.html index 8f4ef4f3..b4bf0a04 100644 --- a/nars-dist/javadoc/nars/language/package-use.html +++ b/nars-dist/javadoc/nars/language/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.language (NARS Document) - + @@ -213,30 +213,12 @@

                A CompoundTerm is a Term with internal (syntactic) structure

  • - - - - - - - - - - - - - - - - - - - - - + + + + +static TemporalValue - @@ -207,7 +207,7 @@

    +private static TaskBuffer + + + + - +
    @@ -118,14 +104,6 @@

    Conjunction of statements
    ConjunctionParallelA parallel conjunction of Statements.
    ConjunctionSequenceA sequential conjunction of Statements.
    DifferenceExt A compound term whose extension is the difference of the extensions of its components
    A Statement about an Equivalence relation.
    EquivalenceAfterTemporal Implication relation, predicate after subject.
    EquivalenceWhenTemporal Equivalence relation, concurrent.
    ImageExt An extension image.
    A Statement about an Inheritance relation.
    ImplicationAfterTemporal Implication relation, predicate after subject.
    ImplicationBeforeTemporal Implication relation, predicate before subject.
    ImplicationWhenTemporal Implication relation, concurrent.
    Inheritance A Statement about an Inheritance relation.
    Conjunction - -
    -          Conjunction of statements
    Equivalence
              A Statement about an Equivalence relation.
    EquivalenceAfter - -
    -          Temporal Implication relation, predicate after subject.
    EquivalenceWhen - -
    -          Temporal Equivalence relation, concurrent.
    ImageExt
    @@ -255,24 +237,6 @@

              A Statement about an Inheritance relation.

    ImplicationAfter - -
    -          Temporal Implication relation, predicate after subject.
    ImplicationBefore - -
    -          Temporal Implication relation, predicate before subject.
    ImplicationWhen - -
    -          Temporal Implication relation, concurrent.
    Inheritance
    @@ -298,12 +262,6 @@

    and a relation symbol in between.

    Temporal - -
    -          An interface for compound terms with temporal information in it
    Term
    diff --git a/nars-dist/javadoc/nars/main/Center.html b/nars-dist/javadoc/nars/main/Center.html index 2260d981..e0a0eaeb 100644 --- a/nars-dist/javadoc/nars/main/Center.html +++ b/nars-dist/javadoc/nars/main/Center.html @@ -2,13 +2,13 @@ - + Center (NARS Document) - + @@ -187,6 +187,15 @@

    +static longgetTime() + +
    +          Get the current time from the clock + Called in nars.entity.Stamp
    static void reset() @@ -376,6 +385,21 @@

    +
    + +

    +getTime

    +
    +public static long getTime()
    +
    +
    Get the current time from the clock + Called in nars.entity.Stamp +

    +

    + +
    Returns:
    The current time
    +
    +

    diff --git a/nars-dist/javadoc/nars/main/Memory.html b/nars-dist/javadoc/nars/main/Memory.html index 03b790d0..7c3215fb 100644 --- a/nars-dist/javadoc/nars/main/Memory.html +++ b/nars-dist/javadoc/nars/main/Memory.html @@ -2,13 +2,13 @@ - + Memory (NARS Document) - + @@ -167,7 +167,7 @@

    -static TemporalRules.Relation currentTense
    @@ -192,7 +192,7 @@

    private static TaskBuffernovelTaskBuffer +novelTasks
              New tasks with novel composed terms, for delayed and selective processing
    -static java.util.ArrayList<Task> recentEvents
    @@ -313,6 +313,14 @@

    +private static voideventProcessing(Task event1) + +
    +          Simple temporal regularity discovery [To be refined]
    static void executedTask(Task task) @@ -503,10 +511,10 @@


    -

    -novelTaskBuffer

    +

    +novelTasks

    -private static TaskBuffer novelTaskBuffer
    +private static TaskBuffer novelTasks
    New tasks with novel composed terms, for delayed and selective processing

    @@ -518,7 +526,7 @@

    recentEvents

    -public static java.util.ArrayList<Task> recentEvents
    +private static TaskBuffer recentEvents
    List of recent events, for temporal learning

    @@ -602,7 +610,7 @@

    currentTense

    -public static TemporalRules.Relation currentTense
    +public static TemporalValue currentTense
    Shortcut to the derived tense

    @@ -935,6 +943,21 @@


    +

    +eventProcessing

    +
    +private static void eventProcessing(Task event1)
    +
    +
    Simple temporal regularity discovery [To be refined] +

    + called in Memory.immediateProcess +

    +

    +
    Parameters:
    event1 - A new event
    +
    +
    +
    +

    conceptsStartPlay

    diff --git a/nars-dist/javadoc/nars/main/NARS.html b/nars-dist/javadoc/nars/main/NARS.html
    index 21bb60c6..6e5d73f0 100644
    --- a/nars-dist/javadoc/nars/main/NARS.html
    +++ b/nars-dist/javadoc/nars/main/NARS.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     NARS (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/main/Parameters.html b/nars-dist/javadoc/nars/main/Parameters.html
    index c6e94728..0cadb835 100644
    --- a/nars-dist/javadoc/nars/main/Parameters.html
    +++ b/nars-dist/javadoc/nars/main/Parameters.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Parameters (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/main/class-use/Center.html b/nars-dist/javadoc/nars/main/class-use/Center.html
    index a6ed998c..fa12d60d 100644
    --- a/nars-dist/javadoc/nars/main/class-use/Center.html
    +++ b/nars-dist/javadoc/nars/main/class-use/Center.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Class nars.main.Center (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/main/class-use/Memory.html b/nars-dist/javadoc/nars/main/class-use/Memory.html
    index fbe996c3..cffd1e5e 100644
    --- a/nars-dist/javadoc/nars/main/class-use/Memory.html
    +++ b/nars-dist/javadoc/nars/main/class-use/Memory.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Class nars.main.Memory (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/main/class-use/NARS.html b/nars-dist/javadoc/nars/main/class-use/NARS.html
    index 8b94c631..ac191df4 100644
    --- a/nars-dist/javadoc/nars/main/class-use/NARS.html
    +++ b/nars-dist/javadoc/nars/main/class-use/NARS.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Class nars.main.NARS (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/main/class-use/Parameters.html b/nars-dist/javadoc/nars/main/class-use/Parameters.html
    index c1de0dd4..84d1d826 100644
    --- a/nars-dist/javadoc/nars/main/class-use/Parameters.html
    +++ b/nars-dist/javadoc/nars/main/class-use/Parameters.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Class nars.main.Parameters (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/main/package-frame.html b/nars-dist/javadoc/nars/main/package-frame.html
    index 7528c350..be2b1de3 100644
    --- a/nars-dist/javadoc/nars/main/package-frame.html
    +++ b/nars-dist/javadoc/nars/main/package-frame.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     nars.main (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/main/package-summary.html b/nars-dist/javadoc/nars/main/package-summary.html
    index a92b0bda..53ca3622 100644
    --- a/nars-dist/javadoc/nars/main/package-summary.html
    +++ b/nars-dist/javadoc/nars/main/package-summary.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     nars.main (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/main/package-tree.html b/nars-dist/javadoc/nars/main/package-tree.html
    index 1ab093a8..43b92469 100644
    --- a/nars-dist/javadoc/nars/main/package-tree.html
    +++ b/nars-dist/javadoc/nars/main/package-tree.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     nars.main Class Hierarchy (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/main/package-use.html b/nars-dist/javadoc/nars/main/package-use.html
    index 21f72017..7101b496 100644
    --- a/nars-dist/javadoc/nars/main/package-use.html
    +++ b/nars-dist/javadoc/nars/main/package-use.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Package nars.main (NARS Document)
     
     
    -
    +
     
     
     
    diff --git a/nars-dist/javadoc/nars/operation/Break.html b/nars-dist/javadoc/nars/operation/Break.html
    index af7f2625..515b5668 100644
    --- a/nars-dist/javadoc/nars/operation/Break.html
    +++ b/nars-dist/javadoc/nars/operation/Break.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Break (NARS Document)
     
     
    -
    +
     
     
     
    @@ -181,7 +181,7 @@ 

    Methods inherited from class nars.language.Term
    clone, compareTo, equals, getComplexity, getConstantName, getName, getTemporalOrder, hashCode, isConstant, toStringclone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, toString
      diff --git a/nars-dist/javadoc/nars/operation/GoTo.html b/nars-dist/javadoc/nars/operation/GoTo.html index a6ef9083..451177d8 100644 --- a/nars-dist/javadoc/nars/operation/GoTo.html +++ b/nars-dist/javadoc/nars/operation/GoTo.html @@ -2,13 +2,13 @@ - + GoTo (NARS Document) - + @@ -181,7 +181,7 @@

    Methods inherited from class nars.language.Term
    clone, compareTo, equals, getComplexity, getConstantName, getName, getTemporalOrder, hashCode, isConstant, toStringclone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, toString
      diff --git a/nars-dist/javadoc/nars/operation/Open.html b/nars-dist/javadoc/nars/operation/Open.html index 00fc8af1..a2a0ab19 100644 --- a/nars-dist/javadoc/nars/operation/Open.html +++ b/nars-dist/javadoc/nars/operation/Open.html @@ -2,13 +2,13 @@ - + Open (NARS Document) - + @@ -181,7 +181,7 @@

    Methods inherited from class nars.language.Term -clone, compareTo, equals, getComplexity, getConstantName, getName, getTemporalOrder, hashCode, isConstant, toString +clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, toString   diff --git a/nars-dist/javadoc/nars/operation/Operator.html b/nars-dist/javadoc/nars/operation/Operator.html index 90783e1b..f27b57ad 100644 --- a/nars-dist/javadoc/nars/operation/Operator.html +++ b/nars-dist/javadoc/nars/operation/Operator.html @@ -2,13 +2,13 @@ - + Operator (NARS Document) - + @@ -201,7 +201,7 @@

    Methods inherited from class nars.language.Term -clone, compareTo, equals, getComplexity, getConstantName, getName, getTemporalOrder, hashCode, isConstant, toString +clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, toString   diff --git a/nars-dist/javadoc/nars/operation/Pick.html b/nars-dist/javadoc/nars/operation/Pick.html index 4d39ca87..57a5d9ce 100644 --- a/nars-dist/javadoc/nars/operation/Pick.html +++ b/nars-dist/javadoc/nars/operation/Pick.html @@ -2,13 +2,13 @@ - + Pick (NARS Document) - + @@ -181,7 +181,7 @@

    Methods inherited from class nars.language.Term -clone, compareTo, equals, getComplexity, getConstantName, getName, getTemporalOrder, hashCode, isConstant, toString +clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, toString   diff --git a/nars-dist/javadoc/nars/operation/class-use/Break.html b/nars-dist/javadoc/nars/operation/class-use/Break.html index 5121caf7..8ae438ba 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Break.html +++ b/nars-dist/javadoc/nars/operation/class-use/Break.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Break (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/GoTo.html b/nars-dist/javadoc/nars/operation/class-use/GoTo.html index 24d087b4..2cd25e74 100644 --- a/nars-dist/javadoc/nars/operation/class-use/GoTo.html +++ b/nars-dist/javadoc/nars/operation/class-use/GoTo.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.GoTo (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Open.html b/nars-dist/javadoc/nars/operation/class-use/Open.html index f271bda3..b2ea87a3 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Open.html +++ b/nars-dist/javadoc/nars/operation/class-use/Open.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Open (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Operator.html b/nars-dist/javadoc/nars/operation/class-use/Operator.html index 9ccba2a6..b5635d9c 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Operator.html +++ b/nars-dist/javadoc/nars/operation/class-use/Operator.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Operator (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Pick.html b/nars-dist/javadoc/nars/operation/class-use/Pick.html index 44f6179d..14fc724e 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Pick.html +++ b/nars-dist/javadoc/nars/operation/class-use/Pick.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Pick (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-frame.html b/nars-dist/javadoc/nars/operation/package-frame.html index e633401e..3aa33a75 100644 --- a/nars-dist/javadoc/nars/operation/package-frame.html +++ b/nars-dist/javadoc/nars/operation/package-frame.html @@ -2,13 +2,13 @@ - + nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-summary.html b/nars-dist/javadoc/nars/operation/package-summary.html index 6fdf97c6..747cdd03 100644 --- a/nars-dist/javadoc/nars/operation/package-summary.html +++ b/nars-dist/javadoc/nars/operation/package-summary.html @@ -2,13 +2,13 @@ - + nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-tree.html b/nars-dist/javadoc/nars/operation/package-tree.html index 18fae682..1ae208b8 100644 --- a/nars-dist/javadoc/nars/operation/package-tree.html +++ b/nars-dist/javadoc/nars/operation/package-tree.html @@ -2,13 +2,13 @@ - + nars.operation Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-use.html b/nars-dist/javadoc/nars/operation/package-use.html index 4d47dc82..3f0ad0e9 100644 --- a/nars-dist/javadoc/nars/operation/package-use.html +++ b/nars-dist/javadoc/nars/operation/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/Bag.html b/nars-dist/javadoc/nars/storage/Bag.html index 35c03b9f..2ddebeca 100644 --- a/nars-dist/javadoc/nars/storage/Bag.html +++ b/nars-dist/javadoc/nars/storage/Bag.html @@ -2,13 +2,13 @@ - + Bag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/ConceptBag.html b/nars-dist/javadoc/nars/storage/ConceptBag.html index 0c1503b8..7274cca6 100644 --- a/nars-dist/javadoc/nars/storage/ConceptBag.html +++ b/nars-dist/javadoc/nars/storage/ConceptBag.html @@ -2,13 +2,13 @@ - + ConceptBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/Distributor.html b/nars-dist/javadoc/nars/storage/Distributor.html index b6675d39..be360afc 100644 --- a/nars-dist/javadoc/nars/storage/Distributor.html +++ b/nars-dist/javadoc/nars/storage/Distributor.html @@ -2,13 +2,13 @@ - + Distributor (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TaskBuffer.html b/nars-dist/javadoc/nars/storage/TaskBuffer.html index d483dc79..91fbd7a2 100644 --- a/nars-dist/javadoc/nars/storage/TaskBuffer.html +++ b/nars-dist/javadoc/nars/storage/TaskBuffer.html @@ -2,13 +2,13 @@ - + TaskBuffer (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/TaskLinkBag.html index da6aa5ad..85e5e0b0 100644 --- a/nars-dist/javadoc/nars/storage/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TaskLinkBag.html @@ -2,13 +2,13 @@ - + TaskLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TermLinkBag.html b/nars-dist/javadoc/nars/storage/TermLinkBag.html index 547f41d4..5a67b1fa 100644 --- a/nars-dist/javadoc/nars/storage/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TermLinkBag.html @@ -2,13 +2,13 @@ - + TermLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/Bag.html b/nars-dist/javadoc/nars/storage/class-use/Bag.html index ebc97992..b9ce1384 100644 --- a/nars-dist/javadoc/nars/storage/class-use/Bag.html +++ b/nars-dist/javadoc/nars/storage/class-use/Bag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.Bag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html index 23653203..6cc70782 100644 --- a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.ConceptBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/Distributor.html b/nars-dist/javadoc/nars/storage/class-use/Distributor.html index 24165654..51e36dda 100644 --- a/nars-dist/javadoc/nars/storage/class-use/Distributor.html +++ b/nars-dist/javadoc/nars/storage/class-use/Distributor.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.Distributor (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html index 977dc168..2f511caa 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html +++ b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TaskBuffer (NARS Document) - + @@ -114,11 +114,19 @@

    private static TaskBuffer -Memory.novelTaskBuffer +Memory.novelTasks
              New tasks with novel composed terms, for delayed and selective processing + + +private static TaskBuffer +Memory.recentEvents + +
    +          List of recent events, for temporal learning +  

    diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html index f5fe3df8..bd389d88 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TaskLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html index eae7588d..006f5c6d 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TermLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-frame.html b/nars-dist/javadoc/nars/storage/package-frame.html index 54b38dc1..a0ea1883 100644 --- a/nars-dist/javadoc/nars/storage/package-frame.html +++ b/nars-dist/javadoc/nars/storage/package-frame.html @@ -2,13 +2,13 @@ - + nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-summary.html b/nars-dist/javadoc/nars/storage/package-summary.html index 9d7fe1d5..f0059cdd 100644 --- a/nars-dist/javadoc/nars/storage/package-summary.html +++ b/nars-dist/javadoc/nars/storage/package-summary.html @@ -2,13 +2,13 @@ - + nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-tree.html b/nars-dist/javadoc/nars/storage/package-tree.html index 61f9598b..2d27a7b4 100644 --- a/nars-dist/javadoc/nars/storage/package-tree.html +++ b/nars-dist/javadoc/nars/storage/package-tree.html @@ -2,13 +2,13 @@ - + nars.storage Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-use.html b/nars-dist/javadoc/nars/storage/package-use.html index 18a866d3..151fef95 100644 --- a/nars-dist/javadoc/nars/storage/package-use.html +++ b/nars-dist/javadoc/nars/storage/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/overview-frame.html b/nars-dist/javadoc/overview-frame.html index 3e97fd7c..ec510172 100644 --- a/nars-dist/javadoc/overview-frame.html +++ b/nars-dist/javadoc/overview-frame.html @@ -2,13 +2,13 @@ - + Overview List (NARS Document) - + diff --git a/nars-dist/javadoc/overview-summary.html b/nars-dist/javadoc/overview-summary.html index ae4685ff..1b2e87c9 100644 --- a/nars-dist/javadoc/overview-summary.html +++ b/nars-dist/javadoc/overview-summary.html @@ -2,13 +2,13 @@ - + Overview (NARS Document) - + diff --git a/nars-dist/javadoc/overview-tree.html b/nars-dist/javadoc/overview-tree.html index b510297e..852c8278 100644 --- a/nars-dist/javadoc/overview-tree.html +++ b/nars-dist/javadoc/overview-tree.html @@ -2,13 +2,13 @@ - + Class Hierarchy (NARS Document) - + @@ -139,24 +139,11 @@

  • nars.entity.Stamp (implements java.lang.Cloneable)
  • nars.inference.StructuralRules
  • nars.inference.SyllogisticRules
  • nars.io.Symbols -
  • nars.inference.TemporalRules
  • nars.language.Term (implements java.lang.Cloneable, java.lang.Comparable<T>) +
  • nars.inference.TemporalRules
  • nars.entity.TemporalValue
  • nars.language.Term (implements java.lang.Cloneable, java.lang.Comparable<T>)

    -Interface Hierarchy -

    - -

    Enum Hierarchy


    diff --git a/nars-dist/javadoc/serialized-form.html b/nars-dist/javadoc/serialized-form.html index 7f2d1a2e..955102eb 100644 --- a/nars-dist/javadoc/serialized-form.html +++ b/nars-dist/javadoc/serialized-form.html @@ -2,13 +2,13 @@ - + Serialized Form (NARS Document) - + From 9ce13321d60f95891c7ba79c3074892dc5e44c10 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sat, 15 Aug 2009 16:13:51 +0000 Subject: [PATCH 009/206] New version renamed to 1.2.0, with some modifications --- nars/inference/MatchingRules.java | 2 +- nars/inference/SyllogisticRules.java | 16 +++------------- nars/language/Statement.java | 3 +++ nars/main/NARS.java | 2 +- 4 files changed, 8 insertions(+), 15 deletions(-) diff --git a/nars/inference/MatchingRules.java b/nars/inference/MatchingRules.java index 30a46254..70d794c1 100644 --- a/nars/inference/MatchingRules.java +++ b/nars/inference/MatchingRules.java @@ -147,7 +147,7 @@ public static void matchAsymSym(Sentence asym, Sentence sym, int figure) { TemporalValue order1 = asym.getContent().getOrder(); TemporalValue order2 = sym.getContent().getOrder(); TemporalValue order = TemporalRules.syllogistic(order1, order2, figure); - if (order == null) { + if ((order1 != order2) && (order == null)) { return; } if (Memory.currentTask.getSentence().isJudgment()) { diff --git a/nars/inference/SyllogisticRules.java b/nars/inference/SyllogisticRules.java index adf271ee..6ba59d64 100644 --- a/nars/inference/SyllogisticRules.java +++ b/nars/inference/SyllogisticRules.java @@ -120,13 +120,8 @@ static void abdIndCom(Term term1, Term term2, Sentence taskSentence, Judgment be // truth3 = TruthFunctions.temporalInduction(truth3); // } Statement statement1, statement2, statement3; - if (order == null) { - statement1 = Statement.make(st1, term1, term2); - statement2 = Statement.make(st1, term2, term1); - } else { - statement1 = Statement.make(st1, term1, term2, order); - statement2 = Statement.make(st1, term2, term1, TemporalValue.getReverse(order)); - } + statement1 = Statement.make(st1, term1, term2, order); + statement2 = Statement.make(st1, term2, term1, TemporalValue.getReverse(order)); statement3 = Statement.makeSym(st1, term1, term2, order); Memory.doublePremiseTask(budget1, statement1, truth1); Memory.doublePremiseTask(budget2, statement2, truth2); @@ -223,12 +218,7 @@ static void resemblance(Term term1, Term term2, Judgment belief, Sentence senten TemporalValue order1 = st1.getOrder(); TemporalValue order2 = st2.getOrder(); TemporalValue order = TemporalRules.syllogistic(order1, order2, figure); - Term statement; - if (order == null) { - statement = Statement.make(st1, term1, term2); - } else { - statement = Statement.make(st1, term1, term2, order); - } + Term statement = Statement.make(st1, term1, term2, order); Memory.doublePremiseTask(budget, statement, truth); } diff --git a/nars/language/Statement.java b/nars/language/Statement.java index d7b23dce..75217448 100644 --- a/nars/language/Statement.java +++ b/nars/language/Statement.java @@ -133,6 +133,9 @@ public static Statement make(Statement statement, Term subj, Term pred) { * @return The Statement built */ public static Statement make(Statement statement, Term subj, Term pred, TemporalValue t) { + if (t == null) { + return make(statement, subj, pred); + } if (statement instanceof Implication) { return Implication.make(subj, pred, t); } diff --git a/nars/main/NARS.java b/nars/main/NARS.java index 9a7edef7..6c37ed69 100644 --- a/nars/main/NARS.java +++ b/nars/main/NARS.java @@ -34,7 +34,7 @@ public class NARS extends Applet implements Runnable { * The information about the version and date of the project. */ public static final String INFO = - " Open-NARS Version 1.1.3 August 2009 \n"; + " Open-NARS Version 1.2.0 August 2009 \n"; /** * The project websites. */ From c511d176d1c411a125ada90d09b2b8cccc636b18 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sat, 15 Aug 2009 16:14:42 +0000 Subject: [PATCH 010/206] Open-nars 1.2.0 JAR file From a161fc85ec5d845e01614991401f5245ad8879e4 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sat, 29 Aug 2009 14:17:16 +0000 Subject: [PATCH 011/206] A few changes by Pei and Jeff --- nars/entity/Concept.java | 13 ++++++++----- nars/gui/TermWindow.java | 2 +- nars/inference/SyllogisticRules.java | 9 ++++++--- nars/io/StringParser.java | 10 ---------- nars/main/Memory.java | 10 +++++++--- 5 files changed, 22 insertions(+), 22 deletions(-) diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index 69c0a1bb..5c6f1216 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -257,7 +257,7 @@ private void tryUpdate(Judgment judg) { if (judg.getTense() != null) { if (judg.getEventTime() < presentBelief.getEventTime()) { return; - } + } if (judg.getTruth().getExpDifAbs(presentBelief.getTruth()) > 0.5) { presentBelief = judg; } else if (judg.noOverlapping(presentBelief)) { @@ -265,7 +265,7 @@ private void tryUpdate(Judgment judg) { } else if (presentBelief.getTruth().getConfidence() < judg.getTruth().getConfidence()) { presentBelief = judg; } - } + } } } } @@ -454,13 +454,16 @@ public void fire() { /* ---------- display ---------- */ /** * Start displaying contents and links, called from ConceptWindow only + * @param showLinks Whether to display the task links */ - public void startPlay() { + public void startPlay(boolean showLinks) { window = new ConceptWindow(this); showing = true; window.post(displayContent()); - taskLinks.startPlay("Task Links in " + term); - termLinks.startPlay("Term Links in " + term); + if (showLinks) { + taskLinks.startPlay("Task Links in " + term); + termLinks.startPlay("Term Links in " + term); + } } /** diff --git a/nars/gui/TermWindow.java b/nars/gui/TermWindow.java index 39fa39a2..8e4a02f2 100644 --- a/nars/gui/TermWindow.java +++ b/nars/gui/TermWindow.java @@ -88,7 +88,7 @@ public void actionPerformed(ActionEvent e) { String name = termField.getText().trim(); Concept concept = Memory.nameToConcept(name); if (concept != null) { - concept.startPlay(); + concept.startPlay(true); } } else if (b == hideButton) { setVisible(false); diff --git a/nars/inference/SyllogisticRules.java b/nars/inference/SyllogisticRules.java index 6ba59d64..778a779a 100644 --- a/nars/inference/SyllogisticRules.java +++ b/nars/inference/SyllogisticRules.java @@ -122,7 +122,7 @@ static void abdIndCom(Term term1, Term term2, Sentence taskSentence, Judgment be Statement statement1, statement2, statement3; statement1 = Statement.make(st1, term1, term2, order); statement2 = Statement.make(st1, term2, term1, TemporalValue.getReverse(order)); - statement3 = Statement.makeSym(st1, term1, term2, order); + statement3 = Statement.makeSym(st1, term1, term2, order); Memory.doublePremiseTask(budget1, statement1, truth1); Memory.doublePremiseTask(budget2, statement2, truth2); Memory.doublePremiseTask(budget3, statement3, truth3); @@ -246,8 +246,9 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int s) { } else { return; } - if ((content instanceof Statement) && ((Statement) content).invalid()) + if ((content instanceof Statement) && ((Statement) content).invalid()) { return; + } Sentence taskSentence = Memory.currentTask.getSentence(); Sentence beliefSentence = Memory.currentBelief; TruthValue beliefTruth = beliefSentence.getTruth(); @@ -286,7 +287,9 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int s) { TemporalValue tense0 = subSentence.getTense(); TemporalValue order0 = statement.getOrder(); TemporalValue tense; - if (side == 0) { + if (order0 == null) { + tense = tense0; + } else if (side == 0) { tense = TemporalRules.tenseSyllogistic(tense0, subSentence.getCreationTime(), order0); } else { tense = TemporalRules.tenseSyllogistic(tense0, subSentence.getCreationTime(), TemporalValue.getReverse(order0)); diff --git a/nars/io/StringParser.java b/nars/io/StringParser.java index 3c5105a7..de6dc4fb 100644 --- a/nars/io/StringParser.java +++ b/nars/io/StringParser.java @@ -142,16 +142,6 @@ private static String parseTense(StringBuffer s) { } return t; } - - private static int tenseToOrder(String t) { - if (t.equals(Symbols.TENSE_PAST)) { - return -1; - } else if (t.equals(Symbols.TENSE_PRESENT)) { - return 0; - } else { // (t.equals(Symbols.TENSE_FUTURE)) { - return 1; - } - } /** * Return the postfix of a task string that contains a TruthValue diff --git a/nars/main/Memory.java b/nars/main/Memory.java index cc6b0b7d..352c8f4f 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -39,7 +39,6 @@ public class Memory { private static ConceptBag concepts; /** Operators (built-in terms) table. Accessed by name */ private static HashMap operators; - /* There is no global Term table, which may ask for unlimited space. */ /** List of inference newTasks, to be processed in the next working cycle */ private static ArrayList newTasks; @@ -47,7 +46,6 @@ public class Memory { private static TaskBuffer novelTasks; /** List of recent events, for temporal learning */ private static TaskBuffer recentEvents; - /* ---------- global variables used to reduce method arguments ---------- */ /** Shortcut to the selected Term */ public static Term currentTerm; @@ -233,7 +231,7 @@ public static void activatedTask(BudgetValue budget, Sentence sentence, boolean float minSilent = Center.mainWindow.silentW.value() / 100.0f; if (s > minSilent) { // only report significient derived Tasks report(task.getSentence(), false); - } + } } newTasks.add(task); novelTasks.refresh(); @@ -308,6 +306,12 @@ private static void processTask() { task = newTasks.remove(0); if (task.getSentence().isInput() || (termToConcept(task.getContent()) != null)) { // new input or existing concept immediateProcess(task); + if (task.getSentence().isInput() && (task.getSentence() instanceof Question)) { + Concept concept = Memory.nameToConcept(task.getSentence().getContent().getName()); + if (concept != null) { + concept.startPlay(false); + } + } } else { novelTasks.putIn(task); // delayed processing } From 521c85d871c815f980c8333eb899cb670779b71f Mon Sep 17 00:00:00 2001 From: jefft0 Date: Sat, 29 Aug 2009 18:52:07 +0000 Subject: [PATCH 012/206] In startPlay, check if the window already exists before creating a new one. --- nars/entity/Concept.java | 6 ++++-- nars/storage/Bag.java | 4 +++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index 5c6f1216..5ee43fcd 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -453,11 +453,13 @@ public void fire() { /* ---------- display ---------- */ /** - * Start displaying contents and links, called from ConceptWindow only + * Start displaying contents and links, called from ConceptWindow or Memory.processTask only * @param showLinks Whether to display the task links */ public void startPlay(boolean showLinks) { - window = new ConceptWindow(this); + if (window == null || !window.isVisible()) { + window = new ConceptWindow(this); + } showing = true; window.post(displayContent()); if (showLinks) { diff --git a/nars/storage/Bag.java b/nars/storage/Bag.java index ab3e9a86..dfae096c 100644 --- a/nars/storage/Bag.java +++ b/nars/storage/Bag.java @@ -279,7 +279,9 @@ protected void outOfBase(Type oldItem) { * @param title The title of the window */ public void startPlay(String title) { - window = new BagWindow(this, title); + if (window == null || !window.isVisible()) { + window = new BagWindow(this, title); + } showing = true; window.post(toString()); } From 0f8c822c470a17c4751622204ea057d6bf0e1da2 Mon Sep 17 00:00:00 2001 From: jefft0 Date: Sat, 29 Aug 2009 20:51:04 +0000 Subject: [PATCH 013/206] Revert change to startPlay to allow multiple instances of the window for comparison. --- nars/entity/Concept.java | 4 +--- nars/storage/Bag.java | 4 +--- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index 5ee43fcd..7672ad0e 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -457,9 +457,7 @@ public void fire() { * @param showLinks Whether to display the task links */ public void startPlay(boolean showLinks) { - if (window == null || !window.isVisible()) { - window = new ConceptWindow(this); - } + window = new ConceptWindow(this); showing = true; window.post(displayContent()); if (showLinks) { diff --git a/nars/storage/Bag.java b/nars/storage/Bag.java index dfae096c..22b7f80a 100644 --- a/nars/storage/Bag.java +++ b/nars/storage/Bag.java @@ -279,9 +279,7 @@ protected void outOfBase(Type oldItem) { * @param title The title of the window */ public void startPlay(String title) { - if (window == null || !window.isVisible()) { - window = new BagWindow(this, title); - } + window = new BagWindow(this, title); showing = true; window.post(toString()); } From 2c57085ddcf6cb3ff0dfb0951980327827cdc36b Mon Sep 17 00:00:00 2001 From: jefft0 Date: Sat, 29 Aug 2009 22:05:05 +0000 Subject: [PATCH 014/206] Added button "Play in New Window". Offset the screen location of each new instance. --- nars/gui/ConceptWindow.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/nars/gui/ConceptWindow.java b/nars/gui/ConceptWindow.java index dba5df70..6fbc21ac 100644 --- a/nars/gui/ConceptWindow.java +++ b/nars/gui/ConceptWindow.java @@ -31,11 +31,13 @@ public class ConceptWindow extends NarsFrame implements ActionListener { /** Control buttons */ - private Button playButton, stopButton, closeButton; + private Button playButton, stopButton, playInNewWindowButton, closeButton; /** Display area */ private TextArea text; /** The concept to be displayed */ private Concept concept; + /** Used to adjust the screen position */ + private static int instanceCount = 0; /** * Constructor @@ -74,12 +76,19 @@ public ConceptWindow(Concept concept) { stopButton.addActionListener(this); add(stopButton); + playInNewWindowButton = new Button("Play in New Window"); + gridbag.setConstraints(playInNewWindowButton, c); + playInNewWindowButton.addActionListener(this); + add(playInNewWindowButton); + closeButton = new Button("Close"); gridbag.setConstraints(closeButton, c); closeButton.addActionListener(this); add(closeButton); - setBounds(400, 60, 400, 270); + // Offset the screen location of each new instance. + setBounds(400 + (instanceCount % 10) * 10, 60 + (instanceCount % 10) * 20, 400, 270); + ++instanceCount; setVisible(true); } @@ -101,6 +110,9 @@ public void actionPerformed(ActionEvent e) { concept.play(); } else if (s == stopButton) { concept.stop(); + } else if (s == playInNewWindowButton) { + concept.stop(); + concept.startPlay(false); } else if (s == closeButton) { concept.stop(); dispose(); From 69fdaceb9bad384ba96443624c2a5bba01ba38a2 Mon Sep 17 00:00:00 2001 From: jefft0 Date: Sun, 30 Aug 2009 23:58:20 +0000 Subject: [PATCH 015/206] In structuralDecompose2, check for null return from Statement.make. --- nars/inference/StructuralRules.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index 0c8c65d8..3fa4ab56 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -128,6 +128,9 @@ static void structuralDecompose2(Statement statement) { } else { content = Statement.make(statement, t1, t2); } + if (content == null) { + return; + } Task task = Memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); From 87aaff9fad9c1877ffd86b66230fd3bedfb1d8cb Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Mon, 31 Aug 2009 14:32:04 +0000 Subject: [PATCH 016/206] fix several bugs found by Jeff --- nars/entity/Concept.java | 5 +++-- nars/inference/CompositionalRules.java | 6 ++++-- nars/inference/StructuralRules.java | 6 +++--- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index 7672ad0e..12d3550c 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -294,8 +294,9 @@ private void addToTable(Judgment newJudgment, ArrayList table, int capacity) { break; } } - if (table.size() == capacity) { - table.remove(capacity - 1); + if (table.size() >= capacity) { + while (table.size() > capacity) + table.remove(table.size() - 1); } else if (i == table.size()) { table.add(newJudgment); } diff --git a/nars/inference/CompositionalRules.java b/nars/inference/CompositionalRules.java index 701c6d2c..dba9aa71 100644 --- a/nars/inference/CompositionalRules.java +++ b/nars/inference/CompositionalRules.java @@ -210,8 +210,10 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } } } - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth); + if (truth != null) { + BudgetValue budget = BudgetFunctions.compoundForward(truth, content); + Memory.doublePremiseTask(budget, content, truth); + } } /** diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index 3fa4ab56..20df1cdc 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -128,9 +128,9 @@ static void structuralDecompose2(Statement statement) { } else { content = Statement.make(statement, t1, t2); } - if (content == null) { - return; - } + if (content == null) { + return; + } Task task = Memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); From 66636c192b69ac5acefb1b9b85d8f4d7d3cf1505 Mon Sep 17 00:00:00 2001 From: jefft0 Date: Tue, 1 Sep 2009 16:55:22 +0000 Subject: [PATCH 017/206] Handle event windowClosing so that the close button on the window works. --- nars/gui/BagWindow.java | 15 ++++++++++--- nars/gui/ConceptWindow.java | 22 +++++++++++++++++-- nars/gui/InferenceWindow.java | 14 ++++++++++-- nars/gui/InputWindow.java | 13 ++++++++++-- nars/gui/MainWindow.java | 13 ++++++++++-- nars/gui/MessageDialog.java | 40 ++++++++++++++++++++++++++++++++--- nars/gui/NarsFrame.java | 33 ++++++++++++++++++++++++++++- nars/gui/ParameterWindow.java | 13 ++++++++++-- nars/gui/TermWindow.java | 11 +++++++++- 9 files changed, 156 insertions(+), 18 deletions(-) diff --git a/nars/gui/BagWindow.java b/nars/gui/BagWindow.java index 1fbf2a67..84ae4754 100644 --- a/nars/gui/BagWindow.java +++ b/nars/gui/BagWindow.java @@ -131,12 +131,21 @@ public void actionPerformed(ActionEvent e) { } else if (source == stopButton) { bag.stop(); } else if (source == closeButton) { - bag.stop(); - dispose(); - counter--; + close(); } } + private void close() { + bag.stop(); + dispose(); + counter--; + } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } + /** * Handling scrollbar movement * @param e The AdjustmentEvent diff --git a/nars/gui/ConceptWindow.java b/nars/gui/ConceptWindow.java index 6fbc21ac..3f4e910e 100644 --- a/nars/gui/ConceptWindow.java +++ b/nars/gui/ConceptWindow.java @@ -100,6 +100,15 @@ public void post(String str) { text.setText(str); } + /** + * This is called when Concept removes this as its window. + */ + public void detachFromConcept() { + // The Play and Stop buttons no longer do anything, so disable. + playButton.setEnabled(false); + stopButton.setEnabled(false); + } + /** * Handling button click * @param e The ActionEvent @@ -114,8 +123,17 @@ public void actionPerformed(ActionEvent e) { concept.stop(); concept.startPlay(false); } else if (s == closeButton) { - concept.stop(); - dispose(); + close(); } } + + private void close() { + concept.stop(); + dispose(); + } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } } diff --git a/nars/gui/InferenceWindow.java b/nars/gui/InferenceWindow.java index 5f870596..394fe312 100644 --- a/nars/gui/InferenceWindow.java +++ b/nars/gui/InferenceWindow.java @@ -22,6 +22,7 @@ import java.awt.*; import java.awt.event.*; + import nars.io.Record; /** @@ -103,11 +104,20 @@ public void actionPerformed(ActionEvent e) { } else if (s == stopButton) { Record.stop(); } else if (s == hideButton) { - Record.stop(); - dispose(); + close(); } } + private void close() { + Record.stop(); + dispose(); + } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } + /** * Change background color to remind the on-going file saving */ diff --git a/nars/gui/InputWindow.java b/nars/gui/InputWindow.java index d495c83b..953e8445 100644 --- a/nars/gui/InputWindow.java +++ b/nars/gui/InputWindow.java @@ -99,9 +99,18 @@ public void actionPerformed(ActionEvent e) { } else if (b == clearButton) { inputText.setText(""); } else if (b == closeButton) { - setVisible(false); - } + close(); + } + } + + private void close() { + setVisible(false); } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } /** * Get one input lines diff --git a/nars/gui/MainWindow.java b/nars/gui/MainWindow.java index 1386bdee..b9fe0cec 100644 --- a/nars/gui/MainWindow.java +++ b/nars/gui/MainWindow.java @@ -221,8 +221,7 @@ public void actionPerformed(ActionEvent e) { } else if (obj == walkButton) { Center.setStoper(1); } else if (obj == exitButton) { - setVisible(false); - System.exit(0); + close(); } } else if (obj instanceof MenuItem) { String label = e.getActionCommand(); @@ -274,4 +273,14 @@ public void actionPerformed(ActionEvent e) { } } } + + private void close() { + setVisible(false); + System.exit(0); + } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } } diff --git a/nars/gui/MessageDialog.java b/nars/gui/MessageDialog.java index 91fe44d6..7cf44a02 100644 --- a/nars/gui/MessageDialog.java +++ b/nars/gui/MessageDialog.java @@ -27,7 +27,7 @@ /** * Pop-up message for the user to accept */ -public class MessageDialog extends Dialog implements ActionListener { +public class MessageDialog extends Dialog implements ActionListener, WindowListener { protected Button button; protected TextArea text; @@ -52,6 +52,7 @@ public MessageDialog(Frame parent, String message) { this.add("South", p); setModal(true); setBounds(200, 250, 400, 180); + addWindowListener(this); setVisible(true); } @@ -61,8 +62,41 @@ public MessageDialog(Frame parent, String message) { */ public void actionPerformed(ActionEvent e) { if (e.getSource() == button) { - this.setVisible(false); - this.dispose(); + close(); } } + + private void close() { + this.setVisible(false); + this.dispose(); + } + + @Override + public void windowActivated(WindowEvent arg0) { + } + + @Override + public void windowClosed(WindowEvent arg0) { + } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } + + @Override + public void windowDeactivated(WindowEvent arg0) { + } + + @Override + public void windowDeiconified(WindowEvent arg0) { + } + + @Override + public void windowIconified(WindowEvent arg0) { + } + + @Override + public void windowOpened(WindowEvent arg0) { + } } \ No newline at end of file diff --git a/nars/gui/NarsFrame.java b/nars/gui/NarsFrame.java index fcfd69ef..9da6bd62 100644 --- a/nars/gui/NarsFrame.java +++ b/nars/gui/NarsFrame.java @@ -22,11 +22,12 @@ package nars.gui; import java.awt.*; +import java.awt.event.*; /** * Specify shared properties of NARS windows */ -public abstract class NarsFrame extends Frame { +public abstract class NarsFrame extends Frame implements WindowListener { /** Color for the background of the main window */ static final Color MAIN_WINDOW_COLOR = new Color(120, 120, 255); /** Color for the background of the windows with unique instantiation */ @@ -45,6 +46,7 @@ public abstract class NarsFrame extends Frame { /** Default constructor */ NarsFrame() { super(); + addWindowListener(this); } /** @@ -54,5 +56,34 @@ public abstract class NarsFrame extends Frame { NarsFrame(String title) { super(" " + title); setFont(NarsFont); + addWindowListener(this); } + + @Override + public void windowActivated(WindowEvent arg0) { + } + + @Override + public void windowClosed(WindowEvent arg0) { + } + + @Override + public void windowClosing(WindowEvent arg0) { + } + + @Override + public void windowDeactivated(WindowEvent arg0) { + } + + @Override + public void windowDeiconified(WindowEvent arg0) { + } + + @Override + public void windowIconified(WindowEvent arg0) { + } + + @Override + public void windowOpened(WindowEvent arg0) { + } } diff --git a/nars/gui/ParameterWindow.java b/nars/gui/ParameterWindow.java index 403da21e..909a9a58 100644 --- a/nars/gui/ParameterWindow.java +++ b/nars/gui/ParameterWindow.java @@ -98,11 +98,20 @@ public void actionPerformed(ActionEvent e) { valueBar.setValue(currentValue); valueLabel.setText(String.valueOf(currentValue)); } else if (s == hideButton) { - previousValue = currentValue; - setVisible(false); + close(); } } + private void close() { + previousValue = currentValue; + setVisible(false); + } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } + /** * Handling scrollbar movement * @param e The AdjustmentEvent diff --git a/nars/gui/TermWindow.java b/nars/gui/TermWindow.java index 8e4a02f2..b23ebcab 100644 --- a/nars/gui/TermWindow.java +++ b/nars/gui/TermWindow.java @@ -91,7 +91,16 @@ public void actionPerformed(ActionEvent e) { concept.startPlay(true); } } else if (b == hideButton) { - setVisible(false); + close(); } } + + private void close() { + setVisible(false); + } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } } From 8be970c6aab742660882c3ed523d48585ff9d841 Mon Sep 17 00:00:00 2001 From: jefft0 Date: Tue, 1 Sep 2009 16:57:16 +0000 Subject: [PATCH 018/206] In startPlay, if there is already a ConceptWindow, call detachFromConcept to disable its play buttons. --- nars/entity/Concept.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index 12d3550c..c1cda14c 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -458,6 +458,9 @@ public void fire() { * @param showLinks Whether to display the task links */ public void startPlay(boolean showLinks) { + if (window != null && window.isVisible()){ + window.detachFromConcept(); + } window = new ConceptWindow(this); showing = true; window.post(displayContent()); From 244134f54217069ec0a8287fa0b3a7c2cc96c71f Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Fri, 4 Sep 2009 21:48:23 +0000 Subject: [PATCH 019/206] Add a return to putIn and putBack in storage.Bag (fix Issue 5) --- nars/entity/Concept.java | 27 +++++++++++++++------------ nars/main/Memory.java | 15 +++++++++++++-- nars/storage/Bag.java | 10 +++++++--- 3 files changed, 35 insertions(+), 17 deletions(-) diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index c1cda14c..601d5d82 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -295,8 +295,9 @@ private void addToTable(Judgment newJudgment, ArrayList table, int capacity) { } } if (table.size() >= capacity) { - while (table.size() > capacity) - table.remove(table.size() - 1); + while (table.size() > capacity) { + table.remove(table.size() - 1); + } } else if (i == table.size()) { table.add(newJudgment); } @@ -332,12 +333,14 @@ public void buildTermLinks(BudgetValue budget) { if (template.getType() != TermLink.TRANSFORM) { t = template.getTarget(); concept = Memory.getConcept(t); - termLink1 = new TermLink(t, template, subBudget); - insertTermLink(termLink1); // this termLink to that - termLink2 = new TermLink(term, template, subBudget); - concept.insertTermLink(termLink2); // that termLink to this - if (t instanceof CompoundTerm) { - concept.buildTermLinks(subBudget); + if (concept != null) { + termLink1 = new TermLink(t, template, subBudget); + insertTermLink(termLink1); // this termLink to that + termLink2 = new TermLink(term, template, subBudget); + concept.insertTermLink(termLink2); // that termLink to this + if (t instanceof CompoundTerm) { + concept.buildTermLinks(subBudget); + } } } } @@ -458,10 +461,10 @@ public void fire() { * @param showLinks Whether to display the task links */ public void startPlay(boolean showLinks) { - if (window != null && window.isVisible()){ - window.detachFromConcept(); - } - window = new ConceptWindow(this); + if (window != null && window.isVisible()) { + window.detachFromConcept(); + } + window = new ConceptWindow(this); showing = true; window.post(displayContent()); if (showLinks) { diff --git a/nars/main/Memory.java b/nars/main/Memory.java index 352c8f4f..0a661ba1 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -133,7 +133,10 @@ public static Concept getConcept(Term term) { Concept concept = concepts.get(n); if (concept == null) { concept = new Concept(term); // the only place to make a new Concept - concepts.putIn(concept); + boolean created = concepts.putIn(concept); + if (!created) { + return null; + } } return concept; } @@ -347,6 +350,9 @@ private static void immediateProcess(Task task) { Record.append("!!! Insert: " + task + "\n"); Term content = task.getContent(); Concept c = getConcept(content); + if (c == null) { + return; + } c.directProcess(task); if (task.aboveThreshold()) { // still need to be processed continuedProcess(task, content); @@ -368,6 +374,9 @@ private static void immediateProcess(Task task) { private static void continuedProcess(Task task, Term content) { TaskLink taskLink; Concept contentConcept = getConcept(content); + if (contentConcept == null) { + return; + } BudgetValue budget = task.getBudget(); taskLink = new TaskLink(task, null, budget); // link type: SELF contentConcept.insertTaskLink(taskLink); @@ -384,7 +393,9 @@ private static void continuedProcess(Task task, Term content) { taskLink = new TaskLink(task, termLink, subBudget); componentTerm = termLink.getTarget(); componentConcept = getConcept(componentTerm); - componentConcept.insertTaskLink(taskLink); + if (componentConcept != null) { + componentConcept.insertTaskLink(taskLink); + } } } contentConcept.buildTermLinks(budget); // recursively insert TermLink diff --git a/nars/storage/Bag.java b/nars/storage/Bag.java index 22b7f80a..5f83d1e8 100644 --- a/nars/storage/Bag.java +++ b/nars/storage/Bag.java @@ -133,8 +133,9 @@ public Type get(String key) { /** * Add a new Item into the Bag * @param newItem The new Item + * @return Whether the new Item is added into the Bag */ - public void putIn(Type newItem) { + public boolean putIn(Type newItem) { String newKey = newItem.getKey(); Type oldItem = nameTable.put(newKey, newItem); if (oldItem != null) { // merge duplications @@ -145,6 +146,9 @@ public void putIn(Type newItem) { if (overflowItem != null) { // remove overflow String overflowKey = overflowItem.getKey(); nameTable.remove(overflowKey); + return (overflowItem != newItem); + } else { + return true; } } @@ -154,9 +158,9 @@ public void putIn(Type newItem) { * The only place where the forgetting rate is applied * @param oldItem The Item to put back */ - public void putBack(Type oldItem) { + public boolean putBack(Type oldItem) { BudgetFunctions.forget(oldItem.getBudget(), forgetRate(), RELATIVE_THRESHOLD); - putIn(oldItem); + return putIn(oldItem); } /** From e761ad1db3c2cbe457e9fdf54f578743338d69b5 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Fri, 4 Sep 2009 22:25:59 +0000 Subject: [PATCH 020/206] In nars.inference.CompositionalRules.introVarDep, do nothing if the two premises contain the same statement (Issue 6). --- nars/inference/CompositionalRules.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nars/inference/CompositionalRules.java b/nars/inference/CompositionalRules.java index dba9aa71..f083893a 100644 --- a/nars/inference/CompositionalRules.java +++ b/nars/inference/CompositionalRules.java @@ -278,6 +278,9 @@ static void decomposeStatement(CompoundTerm compound, Term component, boolean co * @param index The location of the shared term: 0 for subject, 1 for predicate */ private static Conjunction introVarDep(Statement premise1, Statement premise2, int index) { + if (premise1.equals(premise2)) { + return null; + } Statement state1, state2; Variable var1 = new Variable(Symbols.VARIABLE_TAG + "0()"); Variable var2 = new Variable(Symbols.VARIABLE_TAG + "0()"); From 473dee02c46252780256492d59acbf1354f8df0e Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sat, 5 Sep 2009 02:37:31 +0000 Subject: [PATCH 021/206] Add restriction to analogy in compounds (Issue 1) --- nars/inference/CompositionalRules.java | 6 ++---- nars/inference/RuleTables.java | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/nars/inference/CompositionalRules.java b/nars/inference/CompositionalRules.java index f083893a..1f4d6e57 100644 --- a/nars/inference/CompositionalRules.java +++ b/nars/inference/CompositionalRules.java @@ -210,10 +210,8 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } } } - if (truth != null) { - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth); - } + BudgetValue budget = BudgetFunctions.compoundForward(truth, content); + Memory.doublePremiseTask(budget, content, truth); } /** diff --git a/nars/inference/RuleTables.java b/nars/inference/RuleTables.java index 23ec144f..62032f62 100644 --- a/nars/inference/RuleTables.java +++ b/nars/inference/RuleTables.java @@ -471,7 +471,7 @@ private static void compoundAndStatement(CompoundTerm compound, short index, Sta if (!(compound instanceof SetExt) && !(compound instanceof SetInt)) { StructuralRules.structuralCompose2(compound, index, statement, side); } // {A --> B, A @ (A&C)} |- (A&C) --> (B&C) - } else if (statement instanceof Similarity) { + } else if ((statement instanceof Similarity) && !(compound instanceof Conjunction)) { StructuralRules.structuralCompose2(compound, index, statement, side); } // {A <-> B, A @ (A&C)} |- (A&C) <-> (B&C) } From 5679c35fd0bd607ea1931d7146b542050ddfe955 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sat, 5 Sep 2009 17:42:00 +0000 Subject: [PATCH 022/206] In variable substitution, consider the communitativity of CompoundTerm, like Conjunction [Issue 7] --- nars/language/CompoundTerm.java | 25 +++++++++++- nars/language/Variable.java | 71 +++++++++++++++++++++++++++------ 2 files changed, 81 insertions(+), 15 deletions(-) diff --git a/nars/language/CompoundTerm.java b/nars/language/CompoundTerm.java index 363f5a24..41490091 100644 --- a/nars/language/CompoundTerm.java +++ b/nars/language/CompoundTerm.java @@ -87,6 +87,14 @@ protected CompoundTerm(String n, ArrayList arg) { markVariables(); name = makeName(); } + + /** + * Change the name of a CompoundTerm, called after variable substitution + * @param s The new name + */ + protected void setName(String s) { + name = s; + } /** * The complexity of the term is the sum of those of the components plus 1 @@ -138,6 +146,9 @@ public static Term make(CompoundTerm compound, ArrayList components) { if (compound instanceof Conjunction) { return Conjunction.make(components, ((Conjunction) compound).getOrder()); } + if (compound instanceof Statement) { + return Statement.make(((Statement) compound).operator(), components.get(0), components.get(1)); + } return null; } @@ -262,9 +273,12 @@ protected static String makeCompoundName(String op, ArrayList arg) { StringBuffer name = new StringBuffer(); name.append(Symbols.COMPOUND_TERM_OPENER); name.append(op); - for (int i = 0; i < arg.size(); i++) { + for (Term t : arg) { name.append(Symbols.ARGUMENT_SEPARATOR); - name.append(arg.get(i).getName()); + if (t instanceof CompoundTerm) { + ((CompoundTerm) t).setName(((CompoundTerm) t).makeName()); + } + name.append(t.getName()); } name.append(Symbols.COMPOUND_TERM_CLOSER); return name.toString(); @@ -622,6 +636,8 @@ private String makeVarName(int size, Variable v) { /** * Substitute a variable component according to a given substitution + *

    + * This method cannot be changed into a static method retuning a new object with a different reference * @param subs The substitution * @param first Whether it is the first term in the mapping */ @@ -640,10 +656,15 @@ public void substituteComponent(HashMap subs, boolean first) { ((CompoundTerm) t1).substituteComponent(subs, first); } } + if (this.isCommutative()) { + TreeSet s = new TreeSet(components); + components = new ArrayList(s); + } markVariables(); name = makeName(); } + /* ----- link CompoundTerm and its components ----- */ /** * Build TermLink templates to constant components and subcomponents diff --git a/nars/language/Variable.java b/nars/language/Variable.java index 2ad41bab..274c47e2 100644 --- a/nars/language/Variable.java +++ b/nars/language/Variable.java @@ -120,12 +120,12 @@ public void setName(String n) { public VarType getType() { return type; } - + /** * Set the scope of the variable * @param t The new scope */ - public void setScope (CompoundTerm t) { + public void setScope(CompoundTerm t) { scope = t; } @@ -198,9 +198,7 @@ public boolean isConstant() { * @return The matching result */ public static boolean match(VarType type1, VarType type2) { - return ((type1 == type2) - || (type1 == VarType.ALL) || (type1 == VarType.QUERY) || (type1 == VarType.ANONYMOUS) - || (type2 == VarType.ALL) || (type2 == VarType.QUERY) || (type2 == VarType.ANONYMOUS)); + return ((type1 == type2) || (type1 == VarType.ALL) || (type1 == VarType.QUERY) || (type1 == VarType.ANONYMOUS) || (type2 == VarType.ALL) || (type2 == VarType.QUERY) || (type2 == VarType.ANONYMOUS)); } /** @@ -220,8 +218,7 @@ public static boolean unify(VarType type, Term t1, Term t2, Term compound1, Term return false; } HashMap substitute = findSubstitute(type, t1, t2, new HashMap()); // find substitution - if (substitute == null) // not unifiable - { + if (substitute == null) { // not unifiable return false; } if (!substitute.isEmpty()) { @@ -268,23 +265,71 @@ private static HashMap findSubstitute(VarType type, Term term1, Te if (!term1.getClass().equals(term2.getClass())) { return null; } - if (!(((CompoundTerm) term1).size() == ((CompoundTerm) term2).size())) { + CompoundTerm cTerm1 = (CompoundTerm) term1; + CompoundTerm cTerm2 = (CompoundTerm) term2; + if (cTerm1.size() != (cTerm2).size()) { return null; } - for (int i = 0; i < ((CompoundTerm) term1).size(); i++) { - t1 = ((CompoundTerm) term1).componentAt(i); - t2 = ((CompoundTerm) term2).componentAt(i); - HashMap newSubs = findSubstitute(type, t1, t2, subs); + HashMap newSubs; + if (cTerm1.isCommutative()) { + newSubs = findSubstitute(type, cTerm1.cloneComponents(), cTerm2.cloneComponents(), subs); if (newSubs == null) { return null; + } else { + subs.putAll(newSubs); + } + } else { + for (int i = 0; i < cTerm1.size(); i++) { + t1 = cTerm1.componentAt(i); + t2 = cTerm2.componentAt(i); + newSubs = findSubstitute(type, t1, t2, subs); + if (newSubs == null) { + return null; + } else { + subs.putAll(newSubs); + } } - subs.putAll(newSubs); } return subs; } return null; } + /** + * To recursively find a substitution that can unify two sets of Term in any order + * @param type The type of Variable to be substituted + * @param list1 The first Term set to be unified + * @param list2 The second Term set to be unified + * @param subs The substitution formed so far + * @return The substitution that unifies the two lists + */ + private static HashMap findSubstitute(VarType type, ArrayList list1, ArrayList list2, HashMap subs) { + if (list1.size() == 0) { + return subs; + } + Term t1 = list1.get(0); + Term t2; + HashMap newSub, newSubFirst, newSubRest; + for (int i = 0; i < list2.size(); i++) { + newSub = (HashMap) subs.clone(); + t2 = list2.get(i); + newSubFirst = findSubstitute(type, t1, t2, newSub); + if (newSubFirst != null) { + newSub.putAll(newSubFirst); + ArrayList newList1 = (ArrayList) list1.clone(); + newList1.remove(0); + ArrayList newList2 = (ArrayList) list2.clone(); + newList2.remove(i); + newSubRest = findSubstitute(type, newList1, newList2, newSub); + if (newSubRest != null) { + newSub.putAll(newSubRest); + return newSub; + } + } + } + return null; + } + /** * To find a substitution that can unify a Vriable and a Term * @param type The type of Variable to be substituted From 1060b23c03b8f03cb926207c1a57f726ec59daed Mon Sep 17 00:00:00 2001 From: jefft0 Date: Mon, 7 Sep 2009 07:31:27 +0000 Subject: [PATCH 023/206] Make InvalidInputException and parseTerm public so they can be used by TermWindow. --- nars/io/StringParser.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nars/io/StringParser.java b/nars/io/StringParser.java index de6dc4fb..7dd63ec3 100644 --- a/nars/io/StringParser.java +++ b/nars/io/StringParser.java @@ -35,7 +35,7 @@ public abstract class StringParser extends Symbols { /** * All kinds of invalid input lines */ - private static class InvalidInputException extends Exception { + public static class InvalidInputException extends Exception { /** * An invalid input line. @@ -248,7 +248,7 @@ private static BudgetValue parseBudget(String s, char punctuation, TruthValue tr * @throws nars.io.StringParser.InvalidInputException the String cannot be parsed into a Term * @return the Term generated from the String */ - private static Term parseTerm(String s0) throws InvalidInputException { + public static Term parseTerm(String s0) throws InvalidInputException { String s = s0.trim(); if (s.length() == 0) { throw new InvalidInputException("missing content"); From 1c317b5bc0d75ca33dd55a3cf4fd326aa8e387ec Mon Sep 17 00:00:00 2001 From: jefft0 Date: Mon, 7 Sep 2009 07:34:18 +0000 Subject: [PATCH 024/206] When the Show button is clicked, use StringParser.parseTerm so the user doesn't have to type the exact internal syntax. --- nars/gui/TermWindow.java | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/nars/gui/TermWindow.java b/nars/gui/TermWindow.java index b23ebcab..6f43a88c 100644 --- a/nars/gui/TermWindow.java +++ b/nars/gui/TermWindow.java @@ -24,6 +24,7 @@ import java.awt.event.*; import nars.entity.Concept; +import nars.io.StringParser; import nars.main.Memory; /** @@ -85,11 +86,13 @@ public class TermWindow extends NarsFrame implements ActionListener { public void actionPerformed(ActionEvent e) { Button b = (Button) e.getSource(); if (b == playButton) { - String name = termField.getText().trim(); - Concept concept = Memory.nameToConcept(name); - if (concept != null) { - concept.startPlay(true); - } + try { + Concept concept = Memory.nameToConcept(StringParser.parseTerm(termField.getText()).getName()); + if (concept != null) { + concept.startPlay(true); + } + } catch (StringParser.InvalidInputException exception) { + } } else if (b == hideButton) { close(); } From b49683b6ff499b9078cee7d652787efb99bc29f8 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Fri, 11 Sep 2009 14:01:54 +0000 Subject: [PATCH 025/206] Added a type checking condition for the casting in RuleTables.detachmentWithVar [Issue 10] --- nars/inference/RuleTables.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nars/inference/RuleTables.java b/nars/inference/RuleTables.java index 62032f62..72ac074b 100644 --- a/nars/inference/RuleTables.java +++ b/nars/inference/RuleTables.java @@ -374,7 +374,7 @@ private static void detachmentWithVar(Sentence mainSentence, Sentence subSentenc SyllogisticRules.detachment(mainSentence, subSentence, index); } else if (Variable.unify(Variable.VarType.INDEPENDENT, component, content, statement, content)) { SyllogisticRules.detachment(mainSentence, subSentence, index); - } else if ((statement instanceof Implication) && (Memory.currentTask.getSentence().isJudgment())) { + } else if ((statement instanceof Implication) && (statement.getPredicate() instanceof Statement) && (Memory.currentTask.getSentence().isJudgment())) { Statement s2 = (Statement) statement.getPredicate(); if (s2.getSubject().equals(((Statement) content).getSubject())) { SyllogisticRules.introVarIndInner((Statement) content, s2, statement); // tense??? From 66480475ffdb459a886cbef27c83ca390a8ff739 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Fri, 11 Sep 2009 19:04:43 +0000 Subject: [PATCH 026/206] Add null truth-value checking in decomposeCompound [Issue 8] --- nars/inference/CompositionalRules.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/nars/inference/CompositionalRules.java b/nars/inference/CompositionalRules.java index 1f4d6e57..02f8d413 100644 --- a/nars/inference/CompositionalRules.java +++ b/nars/inference/CompositionalRules.java @@ -210,8 +210,10 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } } } - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth); + if (truth != null) { + BudgetValue budget = BudgetFunctions.compoundForward(truth, content); + Memory.doublePremiseTask(budget, content, truth); + } } /** @@ -356,13 +358,12 @@ static void introVarDepInner(CompoundTerm compound, Term component, Term premise TruthValue truth = null; if (sentence instanceof Goal) { truth = TruthFunctions.intersection(belief.getTruth(), sentence.getTruth()); // [To be refined] - } - else if (sentence instanceof Judgment) { + } else if (sentence instanceof Judgment) { truth = TruthFunctions.intersection(belief.getTruth(), sentence.getTruth()); } else { assert (sentence instanceof Question); return; - } + } BudgetValue budget = BudgetFunctions.compoundForward(truth, content); Memory.doublePremiseTask(budget, content, truth); } From 682178dafadf3577e314f3237a6aaffb61be44e3 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Fri, 11 Sep 2009 19:57:48 +0000 Subject: [PATCH 027/206] Pass the "structural" flag to revision conclusions [Issue 11], plus fix a typo --- nars/entity/Task.java | 15 +++++++-------- nars/inference/MatchingRules.java | 2 +- nars/inference/RuleTables.java | 6 +++--- nars/inference/StructuralRules.java | 2 +- nars/main/Memory.java | 24 +++++++++++++++++++++--- 5 files changed, 33 insertions(+), 16 deletions(-) diff --git a/nars/entity/Task.java b/nars/entity/Task.java index 89479c1d..d75b43d4 100644 --- a/nars/entity/Task.java +++ b/nars/entity/Task.java @@ -20,7 +20,6 @@ */ package nars.entity; -import nars.inference.TemporalRules; import nars.language.Term; import nars.main.NARS; @@ -30,8 +29,8 @@ public class Task extends Item { /** The sentence of the Task */ private Sentence sentence; - /** Whether it is derived by a structual rule */ - protected boolean structual = false; // + /** Whether it is derived by a structural rule */ + protected boolean structural = false; // /** * Constructor @@ -72,15 +71,15 @@ public TemporalValue getTense() { * Check if a Task is derived by a StructuralRule * @return Whether the Task is derived by a StructuralRule */ - public boolean isStructual() { - return structual; + public boolean isStructural() { + return structural; } /** * Record if a Task is derived by a StructuralRule */ - public void setStructual() { - structual = true; + public void setStructural() { + structural = true; } /** @@ -89,7 +88,7 @@ public void setStructual() { */ public void merge(Item that) { super.merge(that); - structual = (structual || ((Task) that).isStructual()); + structural = (structural || ((Task) that).isStructural()); } /** diff --git a/nars/inference/MatchingRules.java b/nars/inference/MatchingRules.java index 70d794c1..7a6131aa 100644 --- a/nars/inference/MatchingRules.java +++ b/nars/inference/MatchingRules.java @@ -70,7 +70,7 @@ public static boolean revision(Task task, Judgment oldBelief, boolean feedbackTo TruthValue truth = TruthFunctions.revision(tTruth, bTruth); BudgetValue budget = BudgetFunctions.revise(tTruth, bTruth, truth, task, feedbackToLinks); Term content = newBelief.getContent(); - Memory.doublePremiseTask(budget, content, truth); + Memory.revisionTask(budget, content, truth, task.isStructural()); return true; } else { return false; diff --git a/nars/inference/RuleTables.java b/nars/inference/RuleTables.java index 72ac074b..78f79c95 100644 --- a/nars/inference/RuleTables.java +++ b/nars/inference/RuleTables.java @@ -420,7 +420,7 @@ private static void compoundAndSelf(CompoundTerm compound, Term component, boole } else if (compound.containComponent(component)) { StructuralRules.structuralCompound(compound, component, compoundTask); } - } else if ((compound instanceof Negation) && !Memory.currentTask.isStructual()) { + } else if ((compound instanceof Negation) && !Memory.currentTask.isStructural()) { if (compoundTask) { StructuralRules.transformNegation(((Negation) compound).componentAt(0)); } else { @@ -465,7 +465,7 @@ private static void compoundAndStatement(CompoundTerm compound, short index, Sta } } } else { - if (!task.isStructual() && task.getSentence().isJudgment()) { + if (!task.isStructural() && task.getSentence().isJudgment()) { if (statement instanceof Inheritance) { StructuralRules.structuralCompose1(compound, index, statement); if (!(compound instanceof SetExt) && !(compound instanceof SetInt)) { @@ -486,7 +486,7 @@ private static void compoundAndStatement(CompoundTerm compound, short index, Sta * @param side The location of the current term in the statement */ private static void componentAndStatement(CompoundTerm compound, short index, Statement statement, short side) { - if (!Memory.currentTask.isStructual()) { + if (!Memory.currentTask.isStructural()) { if (statement instanceof Inheritance) { StructuralRules.structuralDecompose1(compound, index, statement); if (!(compound instanceof SetExt) && !(compound instanceof SetInt)) { diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index 20df1cdc..0b9f2142 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -409,7 +409,7 @@ static void structuralCompound(CompoundTerm compound, Term component, boolean co } Term content = (compoundTask ? component : compound); Task task = Memory.currentTask; - if (task.isStructual()) { + if (task.isStructural()) { return; } Sentence sentence = task.getSentence(); diff --git a/nars/main/Memory.java b/nars/main/Memory.java index 0a661ba1..94dc3d2a 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -255,6 +255,24 @@ public static void doublePremiseTask(BudgetValue budget, Term content, TruthValu } } + /** + * The final operations of the revision rules, called from MatchingRules + * @param budget The budget value of the new task + * @param content The content of the new task + * @param truth The truth value of the new task + * @param structural Whether the old Task is derived by structural rules + */ + public static void revisionTask(BudgetValue budget, Term content, TruthValue truth, boolean structural) { + if (content != null) { + Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, currentStamp, currentTense); + Task newTask = new Task(newSentence, budget); + if (structural) { + newTask.setStructural(); + } + derivedTask(newTask); + } + } + /** * Shared final operations by all single-premise rules, called in StructuralRules * @param budget The budget value of the new task @@ -265,7 +283,7 @@ public static void singlePremiseTask(BudgetValue budget, Term content, TruthValu Sentence sentence = currentTask.getSentence(); Sentence newSentence = Sentence.make(sentence, content, truth, sentence.getStamp(), sentence.getTense()); Task newTask = new Task(newSentence, budget); - newTask.setStructual(); + newTask.setStructural(); derivedTask(newTask); } @@ -282,7 +300,7 @@ public static void convertedJudgment(TruthValue truth, BudgetValue budget) { Stamp stamp = Memory.currentBelief.getStamp(); Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, truth, stamp, tense); Task newTask = new Task(newJudgment, budget); - newTask.setStructual(); + newTask.setStructural(); derivedTask(newTask); } @@ -389,7 +407,7 @@ private static void continuedProcess(Task task, Term content) { Term componentTerm; Concept componentConcept; for (TermLink termLink : termLinks) { - if (!(task.isStructual() && (termLink.getType() == TermLink.TRANSFORM))) { // avoid circular transform + if (!(task.isStructural() && (termLink.getType() == TermLink.TRANSFORM))) { // avoid circular transform taskLink = new TaskLink(task, termLink, subBudget); componentTerm = termLink.getTarget(); componentConcept = getConcept(componentTerm); From 1d42312ae5c099f79d023bfe998ce834657d5308 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Fri, 11 Sep 2009 19:59:26 +0000 Subject: [PATCH 028/206] Add function to InferenceWindow: the display stops at the next occurrence of a given String or Term (parsed) --- nars/gui/InferenceWindow.java | 54 +++++++++++++++--- nars/gui/TermWindow.java | 24 ++++---- nars/io/StringParser.java | 103 ++++++++++++++++++---------------- 3 files changed, 111 insertions(+), 70 deletions(-) diff --git a/nars/gui/InferenceWindow.java b/nars/gui/InferenceWindow.java index 394fe312..c2c185e7 100644 --- a/nars/gui/InferenceWindow.java +++ b/nars/gui/InferenceWindow.java @@ -23,17 +23,24 @@ import java.awt.*; import java.awt.event.*; -import nars.io.Record; +import nars.io.*; +import nars.language.Term; /** * Window displying inference log */ -public class InferenceWindow extends NarsFrame implements ActionListener { +public class InferenceWindow extends NarsFrame implements ActionListener, ItemListener { /** Control buttons */ private Button playButton, stopButton, hideButton; /** Display area */ private TextArea text; + /** String to be catched */ + private TextField watchText; + /** Type of catched text */ + private Choice watchType; + /** Type of catched text */ + private String watched = ""; /** * Constructor @@ -60,6 +67,19 @@ public InferenceWindow() { c.weighty = 0.0; c.gridwidth = 1; + + watchText = new TextField(20); + gridbag.setConstraints(watchText, c); + add(watchText); + + watchType = new Choice(); + watchType.add("No Watch"); + watchType.add("Watch Term"); + watchType.add("Watch String"); + gridbag.setConstraints(watchType, c); + watchType.addItemListener(this); + add(watchType); + playButton = new Button("Play"); gridbag.setConstraints(playButton, c); playButton.addActionListener(this); @@ -91,6 +111,9 @@ public void clear() { */ public void append(String str) { text.append(str); + if (!watched.equals("") && (str.indexOf(watched) != -1)) { + Record.stop(); + } } /** @@ -104,7 +127,22 @@ public void actionPerformed(ActionEvent e) { } else if (s == stopButton) { Record.stop(); } else if (s == hideButton) { - close(); + close(); + } + } + + public void itemStateChanged(ItemEvent event) { + String request = watchText.getText().trim(); + if (!request.equals("")) { + int i = watchType.getSelectedIndex(); + if (i == 1) { + Term term = StringParser.parseTerm(request); + if (term != null) { + watched = term.getName(); + } + } else if (i == 2) { + watched = request; + } } } @@ -112,11 +150,11 @@ private void close() { Record.stop(); dispose(); } - - @Override - public void windowClosing(WindowEvent arg0) { - close(); - } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } /** * Change background color to remind the on-going file saving diff --git a/nars/gui/TermWindow.java b/nars/gui/TermWindow.java index 6f43a88c..cf71e234 100644 --- a/nars/gui/TermWindow.java +++ b/nars/gui/TermWindow.java @@ -31,6 +31,7 @@ * Window accept a Term, then display the content of the corresponding Concept */ public class TermWindow extends NarsFrame implements ActionListener { + /** Display label */ private Label termLabel; /** Input field for term name */ @@ -86,24 +87,21 @@ public class TermWindow extends NarsFrame implements ActionListener { public void actionPerformed(ActionEvent e) { Button b = (Button) e.getSource(); if (b == playButton) { - try { - Concept concept = Memory.nameToConcept(StringParser.parseTerm(termField.getText()).getName()); - if (concept != null) { - concept.startPlay(true); - } - } catch (StringParser.InvalidInputException exception) { - } + Concept concept = Memory.nameToConcept(StringParser.parseTerm(termField.getText()).getName()); + if (concept != null) { + concept.startPlay(true); + } } else if (b == hideButton) { - close(); + close(); } } private void close() { setVisible(false); } - - @Override - public void windowClosing(WindowEvent arg0) { - close(); - } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } } diff --git a/nars/io/StringParser.java b/nars/io/StringParser.java index 7dd63ec3..b6252bd4 100644 --- a/nars/io/StringParser.java +++ b/nars/io/StringParser.java @@ -35,17 +35,17 @@ public abstract class StringParser extends Symbols { /** * All kinds of invalid input lines */ - public static class InvalidInputException extends Exception { + private static class InvalidInputException extends Exception { /** * An invalid input line. * @param s type of error */ - public InvalidInputException(String s) { + InvalidInputException(String s) { super(s); } } - + /** * Parse a line of input experience *

    @@ -59,19 +59,19 @@ public static void parseExperience(StringBuffer buffer) { if (prefix.equals(OUTPUT_LINE)) { return; } else if (prefix.equals(INPUT_LINE)) { - buffer.delete(0, i+1); - } + buffer.delete(0, i + 1); + } } - char c = buffer.charAt(buffer.length()-1); + char c = buffer.charAt(buffer.length() - 1); if (c == STAMP_CLOSER) { int j = buffer.lastIndexOf(STAMP_OPENER + ""); - buffer.delete(j-1, buffer.length()); + buffer.delete(j - 1, buffer.length()); } parseTask(buffer.toString().trim()); } /** - * The only public (static) method of the class, called from InputWindow or locally. + * Enter a new Task in String into the memory, called from InputWindow or locally. * @param s the single-line input String */ public static void parseTask(String s) { @@ -87,10 +87,11 @@ public static void parseTask(String s) { Term content = parseTerm(str.substring(0, last)); Stamp stamp = new Stamp(); Sentence sentence = null; - if (tense.length() == 0) + if (tense.length() == 0) { sentence = Sentence.make(content, punc, truth, stamp, null); - else + } else { sentence = Sentence.make(content, punc, truth, stamp, new TemporalValue(tense)); + } if (sentence == null) { throw new InvalidInputException("invalid sentence"); } @@ -245,49 +246,53 @@ private static BudgetValue parseBudget(String s, char punctuation, TruthValue tr * 4. is a Statement (including higher-order Statement); * 5. otherwise it is a simple term. * @param s0 the String to be parsed - * @throws nars.io.StringParser.InvalidInputException the String cannot be parsed into a Term * @return the Term generated from the String */ - public static Term parseTerm(String s0) throws InvalidInputException { + public static Term parseTerm(String s0) { String s = s0.trim(); - if (s.length() == 0) { - throw new InvalidInputException("missing content"); - } - Term t = Memory.nameToListedTerm(s); // existing constant or operator - if (t != null) { - return t; - } // existing Term - int index = s.length() - 1; - char first = s.charAt(0); - char last = s.charAt(index); - switch (first) { - case COMPOUND_TERM_OPENER: - if (last == COMPOUND_TERM_CLOSER) { - return parseCompoundTerm(s.substring(1, index)); - } else { - throw new InvalidInputException("missing CompoundTerm closer"); - } - case SET_EXT_OPENER: - if (last == SET_EXT_CLOSER) { - return SetExt.make(parseArguments(s.substring(1, index) + ARGUMENT_SEPARATOR)); - } else { - throw new InvalidInputException("missing ExtensionSet closer"); - } - case SET_INT_OPENER: - if (last == SET_INT_CLOSER) { - return SetInt.make(parseArguments(s.substring(1, index) + ARGUMENT_SEPARATOR)); - } else { - throw new InvalidInputException("missing IntensionSet closer"); - } - case STATEMENT_OPENER: - if (last == STATEMENT_CLOSER) { - return parseStatement(s.substring(1, index)); - } else { - throw new InvalidInputException("missing Statement closer"); - } - default: - return parseSimpleTerm(s); + try { + if (s.length() == 0) { + throw new InvalidInputException("missing content"); + } + Term t = Memory.nameToListedTerm(s); // existing constant or operator + if (t != null) { + return t; + } // existing Term + int index = s.length() - 1; + char first = s.charAt(0); + char last = s.charAt(index); + switch (first) { + case COMPOUND_TERM_OPENER: + if (last == COMPOUND_TERM_CLOSER) { + return parseCompoundTerm(s.substring(1, index)); + } else { + throw new InvalidInputException("missing CompoundTerm closer"); + } + case SET_EXT_OPENER: + if (last == SET_EXT_CLOSER) { + return SetExt.make(parseArguments(s.substring(1, index) + ARGUMENT_SEPARATOR)); + } else { + throw new InvalidInputException("missing ExtensionSet closer"); + } + case SET_INT_OPENER: + if (last == SET_INT_CLOSER) { + return SetInt.make(parseArguments(s.substring(1, index) + ARGUMENT_SEPARATOR)); + } else { + throw new InvalidInputException("missing IntensionSet closer"); + } + case STATEMENT_OPENER: + if (last == STATEMENT_CLOSER) { + return parseStatement(s.substring(1, index)); + } else { + throw new InvalidInputException("missing Statement closer"); + } + default: + return parseSimpleTerm(s); + } + } catch (InvalidInputException e) { + System.out.println(" !!! INVALID INPUT: " + s + " --- " + e.getMessage()); } + return null; } /** From ba279358e4283702f7d84525a6009e7dd20a0f8e Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Fri, 11 Sep 2009 20:00:22 +0000 Subject: [PATCH 029/206] Change parameters to speed up testing --- nars/main/NARS.java | 8 ++++---- nars/main/Parameters.java | 9 ++++++--- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/nars/main/NARS.java b/nars/main/NARS.java index 6c37ed69..886a5e98 100644 --- a/nars/main/NARS.java +++ b/nars/main/NARS.java @@ -96,10 +96,10 @@ public void stop() { public void run() { Thread thisThread = Thread.currentThread(); while (narsThread == thisThread) { - try { - Thread.sleep(10); - } catch (InterruptedException e){ - } +// try { +// Thread.sleep(10); +// } catch (InterruptedException e){ +// } Center.tick(); } } diff --git a/nars/main/Parameters.java b/nars/main/Parameters.java index 97469eb5..508b77d7 100644 --- a/nars/main/Parameters.java +++ b/nars/main/Parameters.java @@ -33,7 +33,8 @@ public class Parameters { /** TermLink decay rate in TermLinkBag, in [1, 99]. */ public static final int TERM_LINK_FORGETTING_CYCLE = 50; /** Silent threshold for task reporting, in [0, 100]. */ - public static final int SILENT_LEVEL = 1; // spontaneous report +// public static final int SILENT_LEVEL = 1; // spontaneous report + public static final int SILENT_LEVEL = 100; // spontaneous report /* ---------- time management ---------- */ /** Task decay rate in TaskBuffer, in [1, 99]. */ @@ -91,11 +92,13 @@ public class Parameters { /* ---------- avoiding repeated reasoning ---------- */ /** Maximum length of Stamp, a power of 2 */ - public static final int MAXMUM_STAMP_LENGTH = 16; +// public static final int MAXMUM_STAMP_LENGTH = 16; + public static final int MAXMUM_STAMP_LENGTH = 8; /** Remember recently used TermLink on a Task */ public static final int TERM_LINK_RECORD_LENGTH = 10; /** Maximum number of beliefs kept in a Concept */ - public static final int MAXMUM_BELIEF_LENGTH = 8; +// public static final int MAXMUM_BELIEF_LENGTH = 8; + public static final int MAXMUM_BELIEF_LENGTH = 5; /** Maximum number of goals kept in a Concept */ public static final int MAXMUM_GOALS_LENGTH = 5; } From 0a60f38cfcf194394154f6f50d444d72544f8bf5 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sun, 13 Sep 2009 00:14:55 +0000 Subject: [PATCH 030/206] Confidence 1.0000 will be automatically changed into 0.9999 --- nars/entity/TruthValue.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/nars/entity/TruthValue.java b/nars/entity/TruthValue.java index 52026591..2b563c9b 100644 --- a/nars/entity/TruthValue.java +++ b/nars/entity/TruthValue.java @@ -31,9 +31,9 @@ public class TruthValue { // implements Cloneable { /** The charactor that separates the factors in a truth value */ private static final char SEPARATOR = Symbols.VALUE_SEPARATOR; /** The frequency factor of the truth value */ - protected ShortFloat frequency; + private ShortFloat frequency; /** The confidence factor of the truth value */ - protected ShortFloat confidence; + private ShortFloat confidence; /** * Constructor with two ShortFloats @@ -42,7 +42,7 @@ public class TruthValue { // implements Cloneable { */ public TruthValue(float f, float c) { frequency = new ShortFloat(f); - confidence = new ShortFloat(c); + confidence = (c < 1) ? new ShortFloat(c) : new ShortFloat(0.9999f); } /** @@ -123,6 +123,12 @@ public String toString() { * @return The String */ public String toString2() { - return DELIMITER + frequency.toString2() + SEPARATOR + confidence.toString2() + DELIMITER; + String s1 = DELIMITER + frequency.toString2() + SEPARATOR; + String s2 = confidence.toString2(); + if (s2.equals("1.00")) { + return s1 + "0.99" + DELIMITER; + } else { + return s1 + s2 + DELIMITER; + } } } From 9f363d5cd92820578696b20f2161c4ba0c6f083a Mon Sep 17 00:00:00 2001 From: jefft0 Date: Sun, 13 Sep 2009 07:54:20 +0000 Subject: [PATCH 031/206] Change Judgment to take (possibly null) premises in order to display the derivation. In ConceptWindow, added "Derivation" Checkbox. --- nars/entity/Concept.java | 7 +++-- nars/entity/Goal.java | 2 +- nars/entity/Judgment.java | 24 +++++++++++++++-- nars/entity/Sentence.java | 26 +++++++++++++------ nars/gui/ConceptWindow.java | 27 ++++++++++++++++--- nars/inference/CompositionalRules.java | 13 +++++----- nars/inference/MatchingRules.java | 6 ++--- nars/inference/StructuralRules.java | 16 ++++++------ nars/inference/SyllogisticRules.java | 36 +++++++++++++------------- nars/inference/TemporalRules.java | 2 +- nars/io/StringParser.java | 4 +-- nars/main/Memory.java | 26 ++++++++++++++----- 12 files changed, 128 insertions(+), 61 deletions(-) diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index 601d5d82..7526cd38 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -492,11 +492,14 @@ public void stop() { * Collect direct belief, questions, and goals for display * @return String representation of direct content */ - private String displayContent() { + public String displayContent() { StringBuffer buffer = new StringBuffer(); if (presentBelief != null) { buffer.append(" Present Belief:\n"); - buffer.append(presentBelief + "\n"); + if (presentBelief instanceof Judgment && window != null && window.getShowDerivation()) + buffer.append(((Judgment)presentBelief).toStringWithPremises("")); + else + buffer.append(presentBelief + "\n"); } if (pastRecords.size() > 0) { buffer.append("\n Beliefs:\n"); diff --git a/nars/entity/Goal.java b/nars/entity/Goal.java index ed5b9562..5086ae6c 100644 --- a/nars/entity/Goal.java +++ b/nars/entity/Goal.java @@ -37,7 +37,7 @@ public class Goal extends Judgment { * @param s The stamp */ public Goal(Term term, char punc, TruthValue t, Stamp s) { - super(term, punc, t, s); + super(term, punc, t, s, null, null); } } diff --git a/nars/entity/Judgment.java b/nars/entity/Judgment.java index 10b929d1..877b24a7 100644 --- a/nars/entity/Judgment.java +++ b/nars/entity/Judgment.java @@ -22,25 +22,36 @@ import nars.io.Symbols; import nars.language.Term; +import nars.main.Memory; import nars.main.Parameters; /** * A Judgment is an piece of new knowledge to be absorbed. */ public class Judgment extends Sentence { - + public Judgment _premise1 = null; + public Judgment _premise2 = null; + /** * Constructor * @param term The content * @param punc The punctuation * @param t The truth value * @param b The stamp + * @param premise1 The first premise to record in the new Judgment. May be null. + * This is only used for display. It is not used in processing. + * @param premise2 The second premise to record in the new Judgment. May be null. + * This is only used for display. It is not used in processing. */ - public Judgment(Term term, char punc, TruthValue t, Stamp b) { + public Judgment(Term term, char punc, TruthValue t, Stamp b, Sentence premise1, Sentence premise2) { content = term; punctuation = punc; truth = t; stamp = b; + if (premise1 instanceof Judgment) + _premise1 = (Judgment)premise1; + if (premise2 instanceof Judgment) + _premise2 = (Judgment)premise2; } /** @@ -93,5 +104,14 @@ public boolean isFuture() { long eventTime = stamp.getCreationTime() + temporalOrder.getDelta(); return eventTime > nars.main.Center.getTime(); } + + public String toStringWithPremises(String indentation) { + String result = indentation + toString() + "\n"; + if (_premise1 != null) + result = result + _premise1.toStringWithPremises(indentation + " "); + if (_premise2 != null) + result = result + _premise2.toStringWithPremises(indentation + " "); + return result; + } } diff --git a/nars/entity/Sentence.java b/nars/entity/Sentence.java index caf43934..1532c271 100644 --- a/nars/entity/Sentence.java +++ b/nars/entity/Sentence.java @@ -52,19 +52,22 @@ public abstract class Sentence implements Cloneable { * Make a Sentence from an input String. Called by StringParser. * @param term The content of the sentence * @param punc The puncuation (and therefore, type) of the sentence - * @param tense The tense of the sntense * @param truth The truth value of the sentence, if it is a Judgment (or Goal) * @param stamp The stamp of the truth value (for Judgment or Goal) + * @param tense The tense of the sentence + * @param premise1 The first premise to record in the new Judgment. May be null. + * @param premise2 The second premise to record in the new Judgment. May be null. * @return the Sentence generated from the arguments */ - public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, TemporalValue tense) { + public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, TemporalValue tense, + Sentence premise1, Sentence premise2) { if (term instanceof CompoundTerm) { ((CompoundTerm) term).renameVariables(); } Sentence s = null; switch (punc) { case Symbols.JUDGMENT_MARK: - s = new Judgment(term, punc, truth, stamp); + s = new Judgment(term, punc, truth, stamp, premise1, premise2); s.temporalOrder = tense; break; case Symbols.GOAL_MARK: @@ -82,14 +85,17 @@ public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, /** * Make a derived Sentence from a template and some initial values. Called by Memory. - * @param term The content of the sentence * @param oldS A sample sentence providing the type of the new sentence - * @param tense The tense of the sentence + * @param term The content of the sentence * @param truth The truth value of the sentence, if it is a Judgment (or Goal) * @param stamp The stamp of the truth value (for Judgment or Goal) + * @param tense The tense of the sentence + * @param premise1 The first premise to record in the new Judgment. May be null. + * @param premise2 The second premise to record in the new Judgment. May be null. * @return the Sentence generated from the arguments */ - public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, TemporalValue tense) { + public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, TemporalValue tense, + Sentence premise1, Sentence premise2) { if (term instanceof CompoundTerm) { ((CompoundTerm) term).renameVariables(); } @@ -100,7 +106,7 @@ public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp st } else if (oldS instanceof Goal) { s = new Goal(term, Symbols.GOAL_MARK, truth, stamp); } else { - s = new Judgment(term, Symbols.JUDGMENT_MARK, truth, stamp); + s = new Judgment(term, Symbols.JUDGMENT_MARK, truth, stamp, premise1, premise2); s.temporalOrder = tense; } return s; @@ -112,7 +118,11 @@ public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp st */ @Override public Object clone() { - return make(content, punctuation, truth, stamp, temporalOrder); + if (this instanceof Judgment) + return make(content, punctuation, truth, stamp, temporalOrder, + ((Judgment)this)._premise1, ((Judgment)this)._premise2); + else + return make(content, punctuation, truth, stamp, temporalOrder, null, null); } /** diff --git a/nars/gui/ConceptWindow.java b/nars/gui/ConceptWindow.java index 3f4e910e..72814cac 100644 --- a/nars/gui/ConceptWindow.java +++ b/nars/gui/ConceptWindow.java @@ -22,16 +22,19 @@ import java.awt.*; import java.awt.event.*; +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; import nars.entity.Concept; /** * Window displaying the content of a Concept, such as beliefs, goals, and questions */ -public class ConceptWindow extends NarsFrame implements ActionListener { +public class ConceptWindow extends NarsFrame implements ActionListener, ItemListener { /** Control buttons */ private Button playButton, stopButton, playInNewWindowButton, closeButton; + private Checkbox showDerivationCheckbox; /** Display area */ private TextArea text; /** The concept to be displayed */ @@ -76,6 +79,11 @@ public ConceptWindow(Concept concept) { stopButton.addActionListener(this); add(stopButton); + showDerivationCheckbox = new Checkbox("Derivation", true); + gridbag.setConstraints(showDerivationCheckbox, c); + showDerivationCheckbox.addItemListener(this); + add(showDerivationCheckbox); + playInNewWindowButton = new Button("Play in New Window"); gridbag.setConstraints(playInNewWindowButton, c); playInNewWindowButton.addActionListener(this); @@ -104,9 +112,10 @@ public void post(String str) { * This is called when Concept removes this as its window. */ public void detachFromConcept() { - // The Play and Stop buttons no longer do anything, so disable. + // The Play and Stop buttons and Derivation checkbox no longer do anything, so disable. playButton.setEnabled(false); stopButton.setEnabled(false); + showDerivationCheckbox.setEnabled(false); } /** @@ -133,7 +142,19 @@ private void close() { } @Override - public void windowClosing(WindowEvent arg0) { + public void windowClosing(WindowEvent e) { close(); } + + public boolean getShowDerivation() { + return showDerivationCheckbox.getState(); + } + + @Override + public void itemStateChanged(ItemEvent e) { + if (e.getSource() == showDerivationCheckbox) { + // Redisplay. displayContent will check getShowDerivation(). + post(concept.displayContent()); + } + } } diff --git a/nars/inference/CompositionalRules.java b/nars/inference/CompositionalRules.java index 02f8d413..fb1190c3 100644 --- a/nars/inference/CompositionalRules.java +++ b/nars/inference/CompositionalRules.java @@ -123,7 +123,7 @@ private static void processComposed(Statement statement, Term subject, Term pred return; } BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, Memory.currentTask.getSentence(), Memory.currentBelief); } /** @@ -212,7 +212,7 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } if (truth != null) { BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, sentence, belief); } } @@ -267,7 +267,7 @@ static void decomposeStatement(CompoundTerm compound, Term component, boolean co return; } BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, sentence, belief); } /* ---------------- dependent variable and conjunction ---------------- */ @@ -318,7 +318,8 @@ private static void introVarDepOuter(Statement premise1, Statement premise2, int TruthValue v2 = Memory.currentBelief.getTruth(); TruthValue truth = TruthFunctions.intersection(v1, v2); BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, + Memory.currentTask.getSentence(), Memory.currentBelief); } } @@ -365,7 +366,7 @@ static void introVarDepInner(CompoundTerm compound, Term component, Term premise return; } BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, sentence, belief); } /** @@ -393,6 +394,6 @@ static void abdVarDepOuter(CompoundTerm compound, Term component, boolean compou } budget = BudgetFunctions.compoundForward(truth, content); } - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, sentence, belief); } } diff --git a/nars/inference/MatchingRules.java b/nars/inference/MatchingRules.java index 7a6131aa..a9072141 100644 --- a/nars/inference/MatchingRules.java +++ b/nars/inference/MatchingRules.java @@ -70,7 +70,7 @@ public static boolean revision(Task task, Judgment oldBelief, boolean feedbackTo TruthValue truth = TruthFunctions.revision(tTruth, bTruth); BudgetValue budget = BudgetFunctions.revise(tTruth, bTruth, truth, task, feedbackToLinks); Term content = newBelief.getContent(); - Memory.revisionTask(budget, content, truth, task.isStructural()); + Memory.revisionTask(budget, content, truth, task.isStructural(), oldBelief, newBelief); return true; } else { return false; @@ -182,7 +182,7 @@ private static void inferToSym(Judgment judgment1, Judgment judgment2) { TruthValue value2 = judgment2.getTruth(); TruthValue truth = TruthFunctions.intersection(value1, value2); BudgetValue budget = BudgetFunctions.forward(truth); - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, judgment1, judgment2); } /** @@ -198,7 +198,7 @@ private static void inferToAsym(Judgment asym, Judgment sym, TemporalValue order Statement content = Statement.make(statement, sub, pre, order); TruthValue truth = TruthFunctions.reduceConjunction(sym.getTruth(), asym.getTruth()); BudgetValue budget = BudgetFunctions.forward(truth); - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, sym, asym); } /* -------------------- one-premise inference rules -------------------- */ diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index 0b9f2142..6cdb2212 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -89,7 +89,7 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta } budget = BudgetFunctions.compoundForward(truth, content); } - Memory.singlePremiseTask(budget, content, truth); + Memory.singlePremiseTask(budget, content, truth, sentence); } /** @@ -148,7 +148,7 @@ static void structuralDecompose2(Statement statement) { } budget = BudgetFunctions.compoundForward(truth, content); } - Memory.singlePremiseTask(budget, content, truth); + Memory.singlePremiseTask(budget, content, truth, sentence); } /** @@ -270,7 +270,7 @@ private static void structuralStatement(Term subject, Term predicate, TruthValue return; } BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.singlePremiseTask(budget, content, truth); + Memory.singlePremiseTask(budget, content, truth, Memory.currentTask.getSentence()); } /* -------------------- set transform -------------------- */ @@ -310,7 +310,7 @@ static void transformSetRelation(CompoundTerm compound, Statement statement, sho } else { budget = BudgetFunctions.compoundForward(truth, content); } - Memory.singlePremiseTask(budget, content, truth); + Memory.singlePremiseTask(budget, content, truth, sentence); } /* -------------------- products and images transform -------------------- */ @@ -392,7 +392,7 @@ static void transformProductImage(Inheritance inh, CompoundTerm oldContent, shor } else { budget = BudgetFunctions.compoundForward(truth, content); } - Memory.singlePremiseTask(budget, content, truth); + Memory.singlePremiseTask(budget, content, truth, sentence); } /* --------------- Disjunction and Conjunction transform --------------- */ @@ -425,7 +425,7 @@ static void structuralCompound(CompoundTerm compound, Term component, boolean co } budget = BudgetFunctions.forward(truth); } - Memory.singlePremiseTask(budget, content, truth); + Memory.singlePremiseTask(budget, content, truth, sentence); } /* --------------- Negation related rules --------------- */ @@ -446,7 +446,7 @@ static void transformNegation(Term content) { } else { budget = BudgetFunctions.compoundForward(truth, content); } - Memory.singlePremiseTask(budget, content, truth); + Memory.singlePremiseTask(budget, content, truth, sentence); } /** @@ -473,6 +473,6 @@ static void contraposition(Statement statement) { } budget = BudgetFunctions.compoundForward(truth, content); } - Memory.singlePremiseTask(budget, content, truth); + Memory.singlePremiseTask(budget, content, truth, sentence); } } diff --git a/nars/inference/SyllogisticRules.java b/nars/inference/SyllogisticRules.java index 778a779a..e2a05260 100644 --- a/nars/inference/SyllogisticRules.java +++ b/nars/inference/SyllogisticRules.java @@ -68,8 +68,8 @@ static void dedExe(Term term1, Term term2, Sentence sentence, Judgment belief) { TemporalValue order = TemporalRules.syllogistic(order1, order2); Statement content1 = Statement.make((Statement) sentence.getContent(), term1, term2, order); Statement content2 = Statement.make((Statement) sentence.getContent(), term2, term1, TemporalValue.getReverse(order)); - Memory.doublePremiseTask(budget1, content1, truth1); - Memory.doublePremiseTask(budget2, content2, truth2); + Memory.doublePremiseTask(budget1, content1, truth1, sentence, belief); + Memory.doublePremiseTask(budget2, content2, truth2, belief, sentence); } /** @@ -123,13 +123,13 @@ static void abdIndCom(Term term1, Term term2, Sentence taskSentence, Judgment be statement1 = Statement.make(st1, term1, term2, order); statement2 = Statement.make(st1, term2, term1, TemporalValue.getReverse(order)); statement3 = Statement.makeSym(st1, term1, term2, order); - Memory.doublePremiseTask(budget1, statement1, truth1); - Memory.doublePremiseTask(budget2, statement2, truth2); - Memory.doublePremiseTask(budget3, statement3, truth3); + Memory.doublePremiseTask(budget1, statement1, truth1, taskSentence, belief); + Memory.doublePremiseTask(budget2, statement2, truth2, belief, taskSentence); + Memory.doublePremiseTask(budget3, statement3, truth3, taskSentence, belief); if (statement1.isConstant()) { - Memory.doublePremiseTask(budget1, introVarInd(belief, taskSentence, figure, true), truth1); - Memory.doublePremiseTask(budget2, introVarInd(taskSentence, belief, figure, true), truth2); - Memory.doublePremiseTask(budget3, introVarInd(taskSentence, belief, figure, false), truth3); + Memory.doublePremiseTask(budget1, introVarInd(belief, taskSentence, figure, true), truth1, belief, taskSentence); + Memory.doublePremiseTask(budget2, introVarInd(taskSentence, belief, figure, true), truth2, taskSentence, belief); + Memory.doublePremiseTask(budget3, introVarInd(taskSentence, belief, figure, false), truth3, taskSentence, belief); } } @@ -185,7 +185,7 @@ static void analogy(Term term1, Term term2, Sentence asym, Sentence sym, int fig return; } Term content = Statement.make(asymSt, term1, term2, order); - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, asym, sym); } /** @@ -219,7 +219,7 @@ static void resemblance(Term term1, Term term2, Judgment belief, Sentence senten TemporalValue order2 = st2.getOrder(); TemporalValue order = TemporalRules.syllogistic(order1, order2, figure); Term statement = Statement.make(st1, term1, term2, order); - Memory.doublePremiseTask(budget, statement, truth); + Memory.doublePremiseTask(budget, statement, truth, belief, sentence); } /* --------------- rules used only in conditional inference --------------- */ @@ -295,7 +295,7 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int s) { tense = TemporalRules.tenseSyllogistic(tense0, subSentence.getCreationTime(), TemporalValue.getReverse(order0)); } Memory.currentTense = tense; - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, mainSentence, subSentence); } /** @@ -396,7 +396,7 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, budget = BudgetFunctions.forward(truth); } Memory.currentTense = tense; - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); } /** @@ -459,7 +459,7 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s } budget = BudgetFunctions.forward(truth); } - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, sentence, belief); } if (term2 != null) { if (term1 != null) { @@ -482,7 +482,7 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s budget = BudgetFunctions.forward(truth); } Memory.currentTense = null; - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, sentence, belief); } return true; } @@ -576,7 +576,7 @@ static void introVarIndInner(Statement premise1, Statement premise2, CompoundTer return; } BudgetValue budget = BudgetFunctions.forward(truth); - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); } /** @@ -639,8 +639,8 @@ public static void temporalIndCom(Task task1, Task task2, TemporalValue order) { BudgetValue budget2 = BudgetFunctions.temporalIndCom(task1.getBudget(), task2.getBudget(), truth2); BudgetValue budget3 = BudgetFunctions.temporalIndCom(task1.getBudget(), task2.getBudget(), truth3); Memory.currentTense = new TemporalValue(0); - Memory.doublePremiseTask(budget1, statement1, truth1); - Memory.doublePremiseTask(budget2, statement2, truth2); - Memory.doublePremiseTask(budget3, statement3, truth3); + Memory.doublePremiseTask(budget1, statement1, truth1, judg1, judg2); + Memory.doublePremiseTask(budget2, statement2, truth2, judg2, judg1); + Memory.doublePremiseTask(budget3, statement3, truth3, judg1, judg2); } } diff --git a/nars/inference/TemporalRules.java b/nars/inference/TemporalRules.java index e99cdec6..9acfdd96 100644 --- a/nars/inference/TemporalRules.java +++ b/nars/inference/TemporalRules.java @@ -126,7 +126,7 @@ public static boolean temporalRevision(Judgment newBelief, Judgment oldBelief, l BudgetValue budget = BudgetFunctions.revise(tTruth, bTruth, truth, Memory.currentTask, feedbackToLinks); Term content = newBelief.getContent(); Memory.currentTense = new TemporalValue((int) (time - Center.getTime())); - Memory.doublePremiseTask(budget, content, truth); + Memory.doublePremiseTask(budget, content, truth, oldBelief, newBelief); return true; } diff --git a/nars/io/StringParser.java b/nars/io/StringParser.java index b6252bd4..2781ff99 100644 --- a/nars/io/StringParser.java +++ b/nars/io/StringParser.java @@ -88,9 +88,9 @@ public static void parseTask(String s) { Stamp stamp = new Stamp(); Sentence sentence = null; if (tense.length() == 0) { - sentence = Sentence.make(content, punc, truth, stamp, null); + sentence = Sentence.make(content, punc, truth, stamp, null, null, null); } else { - sentence = Sentence.make(content, punc, truth, stamp, new TemporalValue(tense)); + sentence = Sentence.make(content, punc, truth, stamp, new TemporalValue(tense), null, null); } if (sentence == null) { throw new InvalidInputException("invalid sentence"); diff --git a/nars/main/Memory.java b/nars/main/Memory.java index 94dc3d2a..fa58d896 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -246,10 +246,14 @@ public static void activatedTask(BudgetValue budget, Sentence sentence, boolean * @param budget The budget value of the new task * @param content The content of the new task * @param truth The truth value of the new task + * @param premise1 The first premise to record in the new Judgment + * @param premise2 The second premise to record in the new Judgment */ - public static void doublePremiseTask(BudgetValue budget, Term content, TruthValue truth) { + public static void doublePremiseTask(BudgetValue budget, Term content, TruthValue truth, + Sentence premise1, Sentence premise2) { if (content != null) { - Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, currentStamp, currentTense); + Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, currentStamp, currentTense, + premise1, premise2); Task newTask = new Task(newSentence, budget); derivedTask(newTask); } @@ -261,10 +265,14 @@ public static void doublePremiseTask(BudgetValue budget, Term content, TruthValu * @param content The content of the new task * @param truth The truth value of the new task * @param structural Whether the old Task is derived by structural rules + * @param premise1 The first premise to record in the new Judgment. May be null. + * @param premise2 The second premise to record in the new Judgment. May be null. */ - public static void revisionTask(BudgetValue budget, Term content, TruthValue truth, boolean structural) { + public static void revisionTask(BudgetValue budget, Term content, TruthValue truth, boolean structural, + Sentence premise1, Sentence premise2) { if (content != null) { - Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, currentStamp, currentTense); + Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, currentStamp, currentTense, + premise1, premise2); Task newTask = new Task(newSentence, budget); if (structural) { newTask.setStructural(); @@ -278,10 +286,13 @@ public static void revisionTask(BudgetValue budget, Term content, TruthValue tru * @param budget The budget value of the new task * @param content The content of the new task * @param truth The truth value of the new task + * @param premise The premise to record in the new Judgment */ - public static void singlePremiseTask(BudgetValue budget, Term content, TruthValue truth) { + public static void singlePremiseTask(BudgetValue budget, Term content, TruthValue truth, + Sentence premise) { Sentence sentence = currentTask.getSentence(); - Sentence newSentence = Sentence.make(sentence, content, truth, sentence.getStamp(), sentence.getTense()); + Sentence newSentence = Sentence.make(sentence, content, truth, sentence.getStamp(), sentence.getTense(), + premise, null); Task newTask = new Task(newSentence, budget); newTask.setStructural(); derivedTask(newTask); @@ -298,7 +309,8 @@ public static void convertedJudgment(TruthValue truth, BudgetValue budget) { Term content = Memory.currentTask.getContent(); TemporalValue tense = Memory.currentBelief.getTense(); Stamp stamp = Memory.currentBelief.getStamp(); - Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, truth, stamp, tense); + Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, truth, stamp, tense, + Memory.currentTask.getSentence(), null); Task newTask = new Task(newJudgment, budget); newTask.setStructural(); derivedTask(newTask); From b45674374ec9a666a69ef559e0799d8163df656c Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sun, 13 Sep 2009 15:50:21 +0000 Subject: [PATCH 032/206] Add "instanceof" checking before casting. [Issue 12] --- nars/inference/StructuralRules.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index 6cdb2212..4ec27d5e 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -265,12 +265,14 @@ static void structuralDecompose1(CompoundTerm compound, short index, Statement s */ private static void structuralStatement(Term subject, Term predicate, TruthValue truth) { Task task = Memory.currentTask; - Term content = Statement.make((Statement) task.getContent(), subject, predicate); - if (content == null) { - return; + Term oldContent = task.getContent(); + if (oldContent instanceof Statement) { + Term content = Statement.make((Statement) oldContent, subject, predicate); + if (content != null) { + BudgetValue budget = BudgetFunctions.compoundForward(truth, content); + Memory.singlePremiseTask(budget, content, truth, Memory.currentTask.getSentence()); + } } - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.singlePremiseTask(budget, content, truth, Memory.currentTask.getSentence()); } /* -------------------- set transform -------------------- */ From 4c6245c7b028fa2469e994c300f4437008459f63 Mon Sep 17 00:00:00 2001 From: jefft0 Date: Mon, 14 Sep 2009 01:12:26 +0000 Subject: [PATCH 033/206] Fix bug: In convertedJudgment, the premise is Memory.currentBelief, not Memory.currentTask. --- nars/main/Memory.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nars/main/Memory.java b/nars/main/Memory.java index fa58d896..edc8ad7f 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -310,7 +310,7 @@ public static void convertedJudgment(TruthValue truth, BudgetValue budget) { TemporalValue tense = Memory.currentBelief.getTense(); Stamp stamp = Memory.currentBelief.getStamp(); Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, truth, stamp, tense, - Memory.currentTask.getSentence(), null); + Memory.currentBelief, null); Task newTask = new Task(newJudgment, budget); newTask.setStructural(); derivedTask(newTask); From 089e9b2fea870c8f8f6a1a0623f93a48c17b7f5f Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Fri, 18 Sep 2009 15:30:00 +0000 Subject: [PATCH 034/206] Variable.unify must always works on cloned task or belief. [Issue 16] --- nars/entity/Sentence.java | 15 ++++++++------- nars/inference/RuleTables.java | 3 ++- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/nars/entity/Sentence.java b/nars/entity/Sentence.java index 1532c271..8640f255 100644 --- a/nars/entity/Sentence.java +++ b/nars/entity/Sentence.java @@ -60,7 +60,7 @@ public abstract class Sentence implements Cloneable { * @return the Sentence generated from the arguments */ public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, TemporalValue tense, - Sentence premise1, Sentence premise2) { + Sentence premise1, Sentence premise2) { if (term instanceof CompoundTerm) { ((CompoundTerm) term).renameVariables(); } @@ -95,7 +95,7 @@ public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, * @return the Sentence generated from the arguments */ public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, TemporalValue tense, - Sentence premise1, Sentence premise2) { + Sentence premise1, Sentence premise2) { if (term instanceof CompoundTerm) { ((CompoundTerm) term).renameVariables(); } @@ -118,11 +118,12 @@ public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp st */ @Override public Object clone() { - if (this instanceof Judgment) - return make(content, punctuation, truth, stamp, temporalOrder, - ((Judgment)this)._premise1, ((Judgment)this)._premise2); - else - return make(content, punctuation, truth, stamp, temporalOrder, null, null); + if (this instanceof Judgment) { + return make((Term) content.clone(), punctuation, truth, stamp, temporalOrder, + ((Judgment) this)._premise1, ((Judgment) this)._premise2); + } else { + return make((Term) content.clone(), punctuation, truth, stamp, temporalOrder, null, null); + } } /** diff --git a/nars/inference/RuleTables.java b/nars/inference/RuleTables.java index 78f79c95..3f331fd7 100644 --- a/nars/inference/RuleTables.java +++ b/nars/inference/RuleTables.java @@ -365,7 +365,8 @@ private static void symmetricSymmetric(Judgment belief, Sentence taskSentence, i * @param subSentence The premise that is the subject or predicate of the first one * @param index The location of the second premise in the first */ - private static void detachmentWithVar(Sentence mainSentence, Sentence subSentence, int index) { + private static void detachmentWithVar(Sentence originalMainSentence, Sentence subSentence, int index) { + Sentence mainSentence = (Sentence) originalMainSentence.clone(); // for substitution Statement statement = (Statement) mainSentence.getContent(); Term component = statement.componentAt(index); Term content = subSentence.getContent(); From e74a0dcc3ee1cb39c7b44dbe8e2231a0cc6b618b Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Fri, 18 Sep 2009 16:03:06 +0000 Subject: [PATCH 035/206] Conclusions from single-premise rules get the correct creationTime. [Issue 15] --- nars/entity/Stamp.java | 18 ++++++++++++++++++ nars/main/Memory.java | 4 ++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/nars/entity/Stamp.java b/nars/entity/Stamp.java index e44ecd70..9855bf67 100644 --- a/nars/entity/Stamp.java +++ b/nars/entity/Stamp.java @@ -50,6 +50,16 @@ public Stamp() { list = new long[length]; list[0] = current; } + /** + * Generate a new stamp from an existing one, with the same list but different creation time + *

    + * For single-premise rules + * @param old The stamp of the single premise + */ + public Stamp(Stamp old) { + length = old.length(); + list = old.getList(); + } /** * Generate a new stamp for derived sentence by merging the two from parents @@ -122,6 +132,14 @@ long get(int i) { return list[i]; } + /** + * Get the list, called in this class only + * @return The list of numbers + */ + long[] getList() { + return list; + } + /** * Convert the list into a set */ diff --git a/nars/main/Memory.java b/nars/main/Memory.java index edc8ad7f..0920b948 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -291,7 +291,7 @@ public static void revisionTask(BudgetValue budget, Term content, TruthValue tru public static void singlePremiseTask(BudgetValue budget, Term content, TruthValue truth, Sentence premise) { Sentence sentence = currentTask.getSentence(); - Sentence newSentence = Sentence.make(sentence, content, truth, sentence.getStamp(), sentence.getTense(), + Sentence newSentence = Sentence.make(sentence, content, truth, new Stamp(sentence.getStamp()), sentence.getTense(), premise, null); Task newTask = new Task(newSentence, budget); newTask.setStructural(); @@ -308,7 +308,7 @@ public static void singlePremiseTask(BudgetValue budget, Term content, TruthValu public static void convertedJudgment(TruthValue truth, BudgetValue budget) { Term content = Memory.currentTask.getContent(); TemporalValue tense = Memory.currentBelief.getTense(); - Stamp stamp = Memory.currentBelief.getStamp(); + Stamp stamp = new Stamp(Memory.currentBelief.getStamp()); Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, truth, stamp, tense, Memory.currentBelief, null); Task newTask = new Task(newJudgment, budget); From 2991012b1169e5f6b71660bee93527c505c825f3 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sat, 19 Sep 2009 01:23:53 +0000 Subject: [PATCH 036/206] New function: directly express negative judgments as negations --- nars/entity/Concept.java | 37 +++++++++++++++++++++++------ nars/inference/StructuralRules.java | 2 +- 2 files changed, 31 insertions(+), 8 deletions(-) diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index 7526cd38..7eee8ce2 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -83,9 +83,6 @@ public Concept(Term tm) { if (tm instanceof CompoundTerm) { termLinkTemplates = ((CompoundTerm) tm).prepareComponentLinks(); checkRevisibility(); -// if (tm instanceof Temporal) { -// markEventComponents(); -// } } } @@ -399,6 +396,14 @@ public ArrayList getTermLinkTemplates() { return termLinkTemplates; } + /** + * Get the present belief + * @return The present belief + */ + public Judgment getBelief() { + return presentBelief; + } + /** * Select a belief to interact with the given task in inference *

    @@ -439,6 +444,7 @@ public void fire() { RuleTables.transformTask(task, tLink); // to turn this into structural inference as below? return; } + generateNegation(task); int termLinkCount = Parameters.MAX_REASONED_TERM_LINK; while (Memory.noResult() && (termLinkCount > 0)) { TermLink termLink = termLinks.takeOut(tLink); @@ -455,6 +461,22 @@ public void fire() { taskLinks.putBack(tLink); } + /** + * Directly express a negative judgment as a negation + * @param task The task to be processed + */ + private void generateNegation(Task task) { + if (task.getSentence() instanceof Judgment) { + Sentence s = task.getSentence(); + if (s.getTruth().getFrequency() < 0.5) { + Term t = Negation.make(s.getContent()); + if (t != null) { + StructuralRules.transformNegation(t); + } + } + } + } + /* ---------- display ---------- */ /** * Start displaying contents and links, called from ConceptWindow or Memory.processTask only @@ -496,10 +518,11 @@ public String displayContent() { StringBuffer buffer = new StringBuffer(); if (presentBelief != null) { buffer.append(" Present Belief:\n"); - if (presentBelief instanceof Judgment && window != null && window.getShowDerivation()) - buffer.append(((Judgment)presentBelief).toStringWithPremises("")); - else - buffer.append(presentBelief + "\n"); + if (presentBelief instanceof Judgment && window != null && window.getShowDerivation()) { + buffer.append(((Judgment) presentBelief).toStringWithPremises("")); + } else { + buffer.append(presentBelief + "\n"); + } } if (pastRecords.size() > 0) { buffer.append("\n Beliefs:\n"); diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index 4ec27d5e..0bea8ff8 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -435,7 +435,7 @@ static void structuralCompound(CompoundTerm compound, Term component, boolean co * {A, A@(--, A)} |- (--, A) * @param content The premise */ - static void transformNegation(Term content) { + public static void transformNegation(Term content) { Task task = Memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); From 99329099f87a2759c49d9822c91e7bd12bbdf007 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sat, 19 Sep 2009 01:26:02 +0000 Subject: [PATCH 037/206] New function: add a "correlation discount" to the confidence of the conclusions produced by the CompositionalRules --- nars/inference/CompositionalRules.java | 100 ++++++++++++++++++++----- nars/inference/TruthFunctions.java | 21 +++++- 2 files changed, 100 insertions(+), 21 deletions(-) diff --git a/nars/inference/CompositionalRules.java b/nars/inference/CompositionalRules.java index fb1190c3..cebe00a9 100644 --- a/nars/inference/CompositionalRules.java +++ b/nars/inference/CompositionalRules.java @@ -68,6 +68,7 @@ static void composeCompound(Sentence taskSentence, Judgment belief, int index) { Term t4 = null; TruthValue v1 = taskSentence.getTruth(); TruthValue v2 = belief.getTruth(); + float discount = estimateCorrelation(content1, component1, component2); if (index == 0) { if (content1 instanceof Inheritance) { t1 = IntersectionInt.make(component1, component2); @@ -80,10 +81,10 @@ static void composeCompound(Sentence taskSentence, Judgment belief, int index) { t3 = Conjunction.make(component1, Negation.make(component2), null); t4 = Conjunction.make(component2, Negation.make(component1), null); } - processComposed(content1, component, t1, TruthFunctions.union(v1, v2)); - processComposed(content1, component, t2, TruthFunctions.intersection(v1, v2)); - processComposed(content1, component, t3, TruthFunctions.difference(v1, v2)); - processComposed(content1, component, t4, TruthFunctions.difference(v2, v1)); + processComposed(content1, component, t1, TruthFunctions.union(v1, v2, discount)); + processComposed(content1, component, t2, TruthFunctions.intersection(v1, v2, discount)); + processComposed(content1, component, t3, TruthFunctions.difference(v1, v2, discount)); + processComposed(content1, component, t4, TruthFunctions.difference(v2, v1, discount)); } else { if (content1 instanceof Inheritance) { t1 = IntersectionExt.make(component1, component2); @@ -96,10 +97,10 @@ static void composeCompound(Sentence taskSentence, Judgment belief, int index) { t3 = Disjunction.make(component1, Negation.make(component2)); t4 = Disjunction.make(component2, Negation.make(component1)); } - processComposed(content1, t1, component, TruthFunctions.union(v1, v2)); - processComposed(content1, t2, component, TruthFunctions.intersection(v1, v2)); - processComposed(content1, t3, component, TruthFunctions.difference(v1, v2)); - processComposed(content1, t4, component, TruthFunctions.difference(v2, v1)); + processComposed(content1, t1, component, TruthFunctions.union(v1, v2, discount)); + processComposed(content1, t2, component, TruthFunctions.intersection(v1, v2, discount)); + processComposed(content1, t3, component, TruthFunctions.difference(v1, v2, discount)); + processComposed(content1, t4, component, TruthFunctions.difference(v2, v1, discount)); } } if (content1.isConstant()) { @@ -107,6 +108,33 @@ static void composeCompound(Sentence taskSentence, Judgment belief, int index) { } } + /** + * Estimate the correlation between the two components in a compound + * @param content One of the premises + * @param component1 One component + * @param component2 The other component + * @return The correlation discount, 1 means no correlation found, 0 for full correlation + */ + private static float estimateCorrelation(Statement content, Term component1, Term component2) { + Statement s = null; + if (content instanceof Inheritance) { + s = Similarity.make(component1, component2); + } else if (content instanceof Implication) { + s = Equivalence.make(component1, component2, null); + } + if (s != null) { + Concept c = Memory.termToConcept(s); + if (c != null) { + Sentence b = c.getBelief(); + if (b != null) { + TruthValue tc = b.getTruth(); + return 1 - Math.abs(2 * tc.getExpectation() - 1); + } + } + } + return 1; + } + /** * Finish composing compound term * @param statement Type of the content @@ -139,25 +167,32 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter if (term2 == null) { return; } + Task task = Memory.currentTask; Sentence sentence = task.getSentence(); Judgment belief = Memory.currentBelief; Statement oldContent = (Statement) task.getContent(); - TruthValue v1, v2; + TruthValue v1, + v2; if (compoundTask) { v1 = sentence.getTruth(); - v2 = belief.getTruth(); + v2 = + belief.getTruth(); } else { v1 = belief.getTruth(); - v2 = sentence.getTruth(); + v2 = + sentence.getTruth(); } + TruthValue truth = null; Term content; + if (index == 0) { content = Statement.make(oldContent, term1, term2); if (content == null) { return; } + if (oldContent instanceof Inheritance) { if (compound instanceof IntersectionExt) { truth = TruthFunctions.reduceConjunction(v1, v2); @@ -173,6 +208,7 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } else { truth = TruthFunctions.reduceConjunctionNeg(v1, v2); } + } } else if (oldContent instanceof Implication) { if (compound instanceof Conjunction) { @@ -180,12 +216,14 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } else if (compound instanceof Disjunction) { truth = TruthFunctions.reduceDisjunction(v1, v2); } + } } else { content = Statement.make(oldContent, term2, term1); if (content == null) { return; } + if (oldContent instanceof Inheritance) { if (compound instanceof IntersectionInt) { truth = TruthFunctions.reduceConjunction(v1, v2); @@ -201,6 +239,7 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } else { truth = TruthFunctions.reduceConjunctionNeg(v1, v2); } + } } else if (oldContent instanceof Implication) { if (compound instanceof Disjunction) { @@ -208,12 +247,14 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } else if (compound instanceof Conjunction) { truth = TruthFunctions.reduceDisjunction(v1, v2); } + } } if (truth != null) { BudgetValue budget = BudgetFunctions.compoundForward(truth, content); Memory.doublePremiseTask(budget, content, truth, sentence, belief); } + } /** @@ -229,19 +270,24 @@ static void decomposeStatement(CompoundTerm compound, Term component, boolean co if (sentence instanceof Question) { return; } + Judgment belief = Memory.currentBelief; Term content = CompoundTerm.reduceComponents(compound, component); if (content == null) { return; } + TruthValue v1, v2; if (compoundTask) { v1 = sentence.getTruth(); - v2 = belief.getTruth(); + v2 = + belief.getTruth(); } else { v1 = belief.getTruth(); - v2 = sentence.getTruth(); + v2 = + sentence.getTruth(); } + TruthValue truth = null; if (compound instanceof Conjunction) { if (sentence instanceof Goal) { @@ -250,9 +296,11 @@ static void decomposeStatement(CompoundTerm compound, Term component, boolean co } else { return; } + } else if (sentence instanceof Judgment) { truth = TruthFunctions.reduceConjunction(v1, v2); } + } else if (compound instanceof Disjunction) { if (sentence instanceof Goal) { if (compoundTask) { @@ -260,12 +308,15 @@ static void decomposeStatement(CompoundTerm compound, Term component, boolean co } else { return; } + } else if (sentence instanceof Judgment) { truth = TruthFunctions.reduceDisjunction(v1, v2); } + } else { return; } + BudgetValue budget = BudgetFunctions.compoundForward(truth, content); Memory.doublePremiseTask(budget, content, truth, sentence, belief); } @@ -281,16 +332,20 @@ private static Conjunction introVarDep(Statement premise1, Statement premise2, i if (premise1.equals(premise2)) { return null; } + Statement state1, state2; Variable var1 = new Variable(Symbols.VARIABLE_TAG + "0()"); Variable var2 = new Variable(Symbols.VARIABLE_TAG + "0()"); if (index == 0) { state1 = Statement.make(premise1, var1, premise1.getPredicate()); - state2 = Statement.make(premise2, var2, premise2.getPredicate()); + state2 = + Statement.make(premise2, var2, premise2.getPredicate()); } else { state1 = Statement.make(premise1, premise1.getSubject(), var1); - state2 = Statement.make(premise2, premise2.getSubject(), var2); + state2 = + Statement.make(premise2, premise2.getSubject(), var2); } + TemporalValue tense1 = Memory.currentTask.getTense(); TemporalValue tense2 = Memory.currentBelief.getTense(); if (tense1 == tense2) { @@ -300,9 +355,11 @@ private static Conjunction introVarDep(Statement premise1, Statement premise2, i } else { return (Conjunction) Conjunction.make(state1, state2, null); } + } else { return null; } + } /** @@ -318,9 +375,10 @@ private static void introVarDepOuter(Statement premise1, Statement premise2, int TruthValue v2 = Memory.currentBelief.getTruth(); TruthValue truth = TruthFunctions.intersection(v1, v2); BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth, - Memory.currentTask.getSentence(), Memory.currentBelief); + Memory.doublePremiseTask(budget, content, truth, + Memory.currentTask.getSentence(), Memory.currentBelief); } + } /** @@ -333,6 +391,7 @@ static void introVarDepInner(CompoundTerm compound, Term component, Term premise if (!(component instanceof Statement) || !(component.getClass() == premise.getClass())) { return; } + Statement premise1 = (Statement) premise; Statement premise2 = (Statement) component; int index; @@ -343,10 +402,12 @@ static void introVarDepInner(CompoundTerm compound, Term component, Term premise } else { return; } + Term innerContent = introVarDep(premise1, premise2, index); if (innerContent == null) { return; } + Task task = Memory.currentTask; Sentence sentence = task.getSentence(); Judgment belief = Memory.currentBelief; @@ -356,6 +417,7 @@ static void introVarDepInner(CompoundTerm compound, Term component, Term premise } else if (compound instanceof Conjunction) { content = CompoundTerm.replaceComponent(compound, component, innerContent); } + TruthValue truth = null; if (sentence instanceof Goal) { truth = TruthFunctions.intersection(belief.getTruth(), sentence.getTruth()); // [To be refined] @@ -365,6 +427,7 @@ static void introVarDepInner(CompoundTerm compound, Term component, Term premise assert (sentence instanceof Question); return; } + BudgetValue budget = BudgetFunctions.compoundForward(truth, content); Memory.doublePremiseTask(budget, content, truth, sentence, belief); } @@ -384,6 +447,7 @@ static void abdVarDepOuter(CompoundTerm compound, Term component, boolean compou TruthValue v2 = belief.getTruth(); TruthValue truth = null; BudgetValue budget; + if (sentence instanceof Question) { budget = (compoundTask ? BudgetFunctions.backward(v2) : BudgetFunctions.backwardWeak(v2)); } else { @@ -392,8 +456,10 @@ static void abdVarDepOuter(CompoundTerm compound, Term component, boolean compou } else { truth = (compoundTask ? TruthFunctions.existAnalogy(v1, v2) : TruthFunctions.existAnalogy(v2, v1)); } + budget = BudgetFunctions.compoundForward(truth, content); } + Memory.doublePremiseTask(budget, content, truth, sentence, belief); } } diff --git a/nars/inference/TruthFunctions.java b/nars/inference/TruthFunctions.java index e7f67ded..6145d883 100644 --- a/nars/inference/TruthFunctions.java +++ b/nars/inference/TruthFunctions.java @@ -332,13 +332,17 @@ static TruthValue desireInd(TruthValue v1, TruthValue v2) { * @return Truth value of the conclusion */ static TruthValue union(TruthValue v1, TruthValue v2) { + return union(v1, v2, 1); + } + + static TruthValue union(TruthValue v1, TruthValue v2, float discount) { float f1 = v1.getFrequency(); float f2 = v2.getFrequency(); float c1 = v1.getConfidence(); float c2 = v2.getConfidence(); float f = or(f1, f2); float c = or(and(f1, c1), and(f2, c2)) + and(1 - f1, 1 - f2, c1, c2); - return new TruthValue(f, c); + return new TruthValue(f, c * discount); } /** @@ -348,13 +352,17 @@ static TruthValue union(TruthValue v1, TruthValue v2) { * @return Truth value of the conclusion */ static TruthValue intersection(TruthValue v1, TruthValue v2) { + return intersection(v1, v2, 1); + } + + static TruthValue intersection(TruthValue v1, TruthValue v2, float discount) { float f1 = v1.getFrequency(); float f2 = v2.getFrequency(); float c1 = v1.getConfidence(); float c2 = v2.getConfidence(); float f = and(f1, f2); float c = or(and(1 - f1, c1), and(1 - f2, c2)) + and(f1, f2, c1, c2); - return new TruthValue(f, c); + return new TruthValue(f, c * discount); } /** @@ -365,7 +373,12 @@ static TruthValue intersection(TruthValue v1, TruthValue v2) { */ static TruthValue difference(TruthValue v1, TruthValue v2) { TruthValue v0 = negation(v2); - return intersection(v1, v0); + return intersection(v1, v0, 1); + } + + static TruthValue difference(TruthValue v1, TruthValue v2, float discount) { + TruthValue v0 = negation(v2); + return intersection(v1, v0, discount); } /** @@ -386,7 +399,7 @@ static TruthValue reduceDisjunction(TruthValue v1, TruthValue v2) { * @return Truth value of the conclusion */ static TruthValue reduceConjunction(TruthValue v1, TruthValue v2) { - TruthValue v0 = intersection(negation(v1), v2); + TruthValue v0 = intersection(negation(v1), v2, 1); return negation(implying(v0)); } From 49cc619bccaabe306037223b414ea6859afe9b04 Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sat, 19 Sep 2009 18:45:52 +0000 Subject: [PATCH 038/206] Confidence discount added to inference.StructuralRules --- nars/inference/StructuralRules.java | 40 +++++++++++++++++++++-- nars/inference/TruthFunctions.java | 49 ++++++++++++++++++++++++++--- 2 files changed, 82 insertions(+), 7 deletions(-) diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index 0bea8ff8..ae07b164 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -51,14 +51,17 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta if (((side == 0) && components.contains(pred)) || ((side == 1) && components.contains(sub))) { return; } + float discount; if (side == 0) { sub = compound; components.set(index, pred); pred = CompoundTerm.make(compound, components); + discount = estimateCorrelation(pred); } else { components.set(index, sub); sub = CompoundTerm.make(compound, components); pred = compound; + discount = estimateCorrelation(sub); } if ((sub == null) || (pred == null)) { return; @@ -81,10 +84,10 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta } else { if (compound.size() > 1) { if (sentence.isJudgment()) { - truth = TruthFunctions.implying(truth); + truth = TruthFunctions.implying(truth, discount); } else { assert (sentence instanceof Goal); - truth = TruthFunctions.implied(truth); + truth = TruthFunctions.implied(truth, discount); } } budget = BudgetFunctions.compoundForward(truth, content); @@ -92,6 +95,39 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta Memory.singlePremiseTask(budget, content, truth, sentence); } + /** + * Estimate the correlation between the two components in a compound + * @param content One of the premises + * @param component1 One component + * @param component2 The other component + * @return The correlation discount, 1 means no correlation found, 0 for full correlation + */ + private static float estimateCorrelation(Term term) { + if (term instanceof CompoundTerm) { + CompoundTerm compound = (CompoundTerm) term; + if (compound.size() == 2) { + Statement s = null; + if ((compound instanceof IntersectionExt) || (compound instanceof IntersectionInt) + || (compound instanceof DifferenceExt) || (compound instanceof DifferenceInt)) { + s = Similarity.make(compound.componentAt(0), compound.componentAt(1)); + } else if ((compound instanceof Disjunction) || (compound instanceof Conjunction)) { + s = Equivalence.make(compound.componentAt(0), compound.componentAt(1), null); + } + if (s != null) { + Concept c = Memory.termToConcept(s); + if (c != null) { + Sentence b = c.getBelief(); + if (b != null) { + TruthValue tc = b.getTruth(); + return 1 - Math.abs(2 * tc.getExpectation() - 1); + } + } + } + } + } + return 1; + } + /** * {<(S&T) --> (P&T)>, S@(S&T)} |- P> * @param statement The premise diff --git a/nars/inference/TruthFunctions.java b/nars/inference/TruthFunctions.java index 6145d883..8f161ce1 100644 --- a/nars/inference/TruthFunctions.java +++ b/nars/inference/TruthFunctions.java @@ -75,9 +75,19 @@ static TruthValue contraposition(TruthValue v1) { * @return Truth value of the conclusion */ static TruthValue implying(TruthValue v1) { + return implying(v1, 1); + } + + /** + * { B>, A} |- B + * @param v1 Truth value of the premise + * @param discount Confidence discount factor for new CompoundTerm + * @return Truth value of the conclusion + */ + static TruthValue implying(TruthValue v1, float discount) { float f1 = v1.getFrequency(); float c1 = v1.getConfidence(); - float c = and(f1, c1); + float c = and(f1, c1) * discount; return new TruthValue(f1, c); } @@ -87,9 +97,19 @@ static TruthValue implying(TruthValue v1) { * @return Truth value of the conclusion */ static TruthValue implied(TruthValue v1) { + return implied(v1, 1); + } + + /** + * { B>, B} |- A + * @param v1 Truth value of the premise + * @param discount Confidence discount factor for new CompoundTerm + * @return Truth value of the conclusion + */ + static TruthValue implied(TruthValue v1, float discount) { float f1 = v1.getFrequency(); float c1 = v1.getConfidence(); - float c = w2c(c1); + float c = w2c(c1) * discount; return new TruthValue(f1, c); } @@ -174,9 +194,7 @@ static TruthValue analogy(TruthValue v1, TruthValue v2) { float c1 = v1.getConfidence(); float c2 = v2.getConfidence(); float f = and(f1, f2); -// float c0 = and(f2, c2); -// float c = and(c1, c0, c0); - float c = and(c1, c2, f2); // 09-05-06 + float c = and(c1, c2, f2); return new TruthValue(f, c); } @@ -335,6 +353,13 @@ static TruthValue union(TruthValue v1, TruthValue v2) { return union(v1, v2, 1); } + /** + * { S>, P>} |- (S|P)> + * @param v1 Truth value of the first premise + * @param v2 Truth value of the second premise + * @param discount Confidence discount factor for new CompoundTerm + * @return Truth value of the conclusion + */ static TruthValue union(TruthValue v1, TruthValue v2, float discount) { float f1 = v1.getFrequency(); float f2 = v2.getFrequency(); @@ -355,6 +380,13 @@ static TruthValue intersection(TruthValue v1, TruthValue v2) { return intersection(v1, v2, 1); } + /** + * { S>, P>} |- (S&P)> + * @param v1 Truth value of the first premise + * @param v2 Truth value of the second premise + * @param discount Confidence discount factor for new CompoundTerm + * @return Truth value of the conclusion + */ static TruthValue intersection(TruthValue v1, TruthValue v2, float discount) { float f1 = v1.getFrequency(); float f2 = v2.getFrequency(); @@ -376,6 +408,13 @@ static TruthValue difference(TruthValue v1, TruthValue v2) { return intersection(v1, v0, 1); } + /** + * { S>, P>} |- (S-P)> + * @param v1 Truth value of the first premise + * @param v2 Truth value of the second premise + * @param discount Confidence discount factor for new CompoundTerm + * @return Truth value of the conclusion + */ static TruthValue difference(TruthValue v1, TruthValue v2, float discount) { TruthValue v0 = negation(v2); return intersection(v1, v0, discount); From da52f7d9a68ff20569e6783bb0c639d98592d35d Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Thu, 24 Sep 2009 23:32:58 +0000 Subject: [PATCH 039/206] Fixed the bug in the revision function which implicitly assumes NEAR_FUTURE == 1. [Issue 18] --- nars/inference/TruthFunctions.java | 13 +++++++------ nars/inference/UtilityFunctions.java | 9 +++++++++ 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/nars/inference/TruthFunctions.java b/nars/inference/TruthFunctions.java index 8f161ce1..f72aa23d 100644 --- a/nars/inference/TruthFunctions.java +++ b/nars/inference/TruthFunctions.java @@ -135,10 +135,11 @@ static TruthValue revision(TruthValue v1, TruthValue v2) { float f2 = v2.getFrequency(); float c1 = v1.getConfidence(); float c2 = v2.getConfidence(); - float w1 = c1 / (1 - c1); - float w2 = c2 / (1 - c2); - float f = (w1 * f1 + w2 * f2) / (w1 + w2); - float c = w2c(w1 + w2); + float w1 = c2w(c1); + float w2 = c2w(c2); + float w = w1 + w2; + float f = (w1 * f1 + w2 * f2) / w; + float c = w2c(w); return new TruthValue(f, c); } @@ -156,8 +157,8 @@ static TruthValue temporalRevision(TruthValue v1, TruthValue v2, long t1, long t float f2 = v2.getFrequency(); float c1 = v1.getConfidence(); float c2 = v2.getConfidence(); - float w1 = c1 / (1 - c1); - float w2 = c2 / (1 - c2); + float w1 = c2w(c1); + float w2 = c2w(c2); float d1 = w1 / (Math.abs(t - t1) + 1); float d2 = w2 / (Math.abs(t - t2) + 1); float f = (d1 * f1 + d2 * f2) / (d1 + d2); diff --git a/nars/inference/UtilityFunctions.java b/nars/inference/UtilityFunctions.java index 5408c3ce..ab10278e 100644 --- a/nars/inference/UtilityFunctions.java +++ b/nars/inference/UtilityFunctions.java @@ -87,5 +87,14 @@ public static float aveGeo(float... arr) { public static float w2c(float w) { return w / (w + Parameters.NEAR_FUTURE); } + + /** + * A function to convert confidence to weight + * @param c confidence, in [0, 1) + * @return The corresponding weight of evidence, a non-negative real number + */ + public static float c2w(float c) { + return Parameters.NEAR_FUTURE * c / (1 - c); + } } From f0337bd9e118372112e47d1fd1ffed8032ccf28c Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Sun, 11 Oct 2009 14:43:24 +0000 Subject: [PATCH 040/206] Decrease the contribution of analytical truths to empirical judgments [Issue 17] --- nars/inference/TruthFunctions.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nars/inference/TruthFunctions.java b/nars/inference/TruthFunctions.java index f72aa23d..39d7ed3f 100644 --- a/nars/inference/TruthFunctions.java +++ b/nars/inference/TruthFunctions.java @@ -75,7 +75,7 @@ static TruthValue contraposition(TruthValue v1) { * @return Truth value of the conclusion */ static TruthValue implying(TruthValue v1) { - return implying(v1, 1); + return implying(v1, w2c(1)); } /** @@ -97,7 +97,7 @@ static TruthValue implying(TruthValue v1, float discount) { * @return Truth value of the conclusion */ static TruthValue implied(TruthValue v1) { - return implied(v1, 1); + return implied(v1, w2c(1)); } /** From e35286f24770930c2945640ed571d7e4acef96de Mon Sep 17 00:00:00 2001 From: jefft0 Date: Sun, 11 Oct 2009 18:09:50 +0000 Subject: [PATCH 041/206] For the ConceptWindow, in addition to "present" belief, show "perfect" belief which is the best belief with frequency 1.0 or 0.0. --- nars/entity/Concept.java | 44 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index 7eee8ce2..f50817a8 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -57,6 +57,7 @@ public final class Concept extends Item { private ArrayList predictions; // event only /** Most recent and confidence judgment */ private Judgment presentBelief = null; + private Judgment perfectBelief = null; /** Whether truth value of judgments can be revised */ private boolean revisible = true; // /** Whether the content of the concept is being displayed */ @@ -265,6 +266,39 @@ private void tryUpdate(Judgment judg) { } } } + + if (judg.getTruth().getFrequency() == 1.0 || judg.getTruth().getFrequency() == 0.0) { + if (perfectBelief == null) { + perfectBelief = judg; + } else { + if (perfectBelief.getTense() == null) { + if (judg.getTense() == null) { + if (perfectBelief.getTruth().getConfidence() < judg.getTruth().getConfidence()) { + perfectBelief = judg; + } + } else { // judg.getTense() != null + if (judg.getEventTime() == Center.getTime()) { + perfectBelief = judg; + } + } + } else { // presentBelief.getTense() != null + if (judg.getTense() != null) { + if (judg.getEventTime() < perfectBelief.getEventTime()) { + return; + } + if (judg.getTruth().getExpDifAbs(perfectBelief.getTruth()) > 0.5) { + perfectBelief = judg; + // Don't do temporalRevision since it has side effects. + //} else if (judg.noOverlapping(perfectBelief)) { + // TemporalRules.temporalRevision(judg, perfectBelief, Center.getTime(), false); + } + else if (perfectBelief.getTruth().getConfidence() < judg.getTruth().getConfidence()) { + perfectBelief = judg; + } + } + } + } + } } /** @@ -517,13 +551,21 @@ public void stop() { public String displayContent() { StringBuffer buffer = new StringBuffer(); if (presentBelief != null) { - buffer.append(" Present Belief:\n"); + buffer.append(presentBelief == perfectBelief ? " Present & Perfect Belief:\n" : " Present Belief:\n"); if (presentBelief instanceof Judgment && window != null && window.getShowDerivation()) { buffer.append(((Judgment) presentBelief).toStringWithPremises("")); } else { buffer.append(presentBelief + "\n"); } } + if (perfectBelief != null && perfectBelief != presentBelief) { + buffer.append(" Perfect Belief:\n"); + if (perfectBelief instanceof Judgment && window != null && window.getShowDerivation()) { + buffer.append(((Judgment) perfectBelief).toStringWithPremises("")); + } else { + buffer.append(perfectBelief + "\n"); + } + } if (pastRecords.size() > 0) { buffer.append("\n Beliefs:\n"); for (Sentence s : pastRecords) { From e36f151974b3dcf1a85802a898abe7d65079226d Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Mon, 11 Jan 2010 15:46:32 +0000 Subject: [PATCH 042/206] Open-nars 1.3.0. Major changes: (1) tense-related inference, (2) theorem-related inference. --- nars/entity/Concept.java | 292 ++++++++----------------- nars/entity/Judgment.java | 70 +++--- nars/entity/Question.java | 9 +- nars/entity/Sentence.java | 53 ++--- nars/entity/Stamp.java | 146 +++++++++---- nars/entity/Task.java | 8 - nars/entity/TemporalValue.java | 115 ---------- nars/gui/ConceptWindow.java | 52 ++--- nars/inference/BudgetFunctions.java | 18 +- nars/inference/CompositionalRules.java | 196 ++++++----------- nars/inference/MatchingRules.java | 123 ++++++----- nars/inference/RuleTables.java | 14 +- nars/inference/StructuralRules.java | 105 ++++----- nars/inference/SyllogisticRules.java | 183 +++++++--------- nars/inference/TemporalRules.java | 155 ------------- nars/inference/TruthFunctions.java | 218 +++++++----------- nars/inference/UtilityFunctions.java | 4 +- nars/io/StringParser.java | 23 +- nars/language/CompoundTerm.java | 23 +- nars/language/Conjunction.java | 65 +++--- nars/language/Equivalence.java | 94 ++++++-- nars/language/Implication.java | 107 ++++++--- nars/language/Statement.java | 61 +++--- nars/language/Term.java | 20 +- nars/main/Memory.java | 59 +++-- nars/main/NARS.java | 35 +-- nars/main/Parameters.java | 11 +- nars/overview.html | 2 +- 28 files changed, 919 insertions(+), 1342 deletions(-) delete mode 100644 nars/entity/TemporalValue.java delete mode 100644 nars/inference/TemporalRules.java diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index f50817a8..2b156363 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -48,18 +48,15 @@ public final class Concept extends Item { /** Link templates of TermLink, only in concepts with CompoundTerm */ private ArrayList termLinkTemplates; /** Question directly asked about the term */ - private ArrayList pendingQuestions; + private ArrayList questions; /** Goals directly requested on the term */ - private ArrayList pendingGoals; + private ArrayList goals; /** Judgments directly made about the term, with non-future tense */ - private ArrayList pastRecords; - /** Judgments directly made about the term, with future tense */ - private ArrayList predictions; // event only + private ArrayList beliefs; /** Most recent and confidence judgment */ - private Judgment presentBelief = null; - private Judgment perfectBelief = null; +// private Judgment perfectBelief = null; // stored for demo and debugging purpose only /** Whether truth value of judgments can be revised */ - private boolean revisible = true; // + private boolean revisible = true; /** Whether the content of the concept is being displayed */ private boolean showing = false; /** The display window */ @@ -75,10 +72,9 @@ public Concept(Term tm) { super(); key = tm.toString(); term = tm; - pendingQuestions = new ArrayList(); - pendingGoals = new ArrayList(); - pastRecords = new ArrayList(); - predictions = new ArrayList(); + questions = new ArrayList(); + goals = new ArrayList(); + beliefs = new ArrayList(); taskLinks = new TaskLinkBag(); termLinks = new TermLinkBag(); if (tm instanceof CompoundTerm) { @@ -113,7 +109,7 @@ public void directProcess(Task task) { processJudgment((Judgment) sentence, task); } if (showing) { - window.post(displayContent()); // show changes + window.post(displayContent()); } } @@ -124,24 +120,17 @@ public void directProcess(Task task) { */ private void processQuestion(Question ques, Task task) { boolean duplicate = false; - for (Question q : pendingQuestions) { // keep the existing one for answer information - if (q.equals(ques)) { + for (Question q : questions) { + if (q.getContent().equals(ques.getContent()) && (q.getEventTime() == ques.getEventTime())) { duplicate = true; + break; } } if (!duplicate) { - pendingQuestions.add(ques); + questions.add(ques); } - if ((ques.temporalOrder == null) || ques.temporalOrder.getDelta() < 0) { - for (Judgment judg : pastRecords) { - MatchingRules.trySolution(ques, judg, task); // look for better answer - } - } else if (ques.temporalOrder.getDelta() > 0) { - for (Judgment judg : predictions) { - MatchingRules.trySolution(ques, judg, task); // look for better answer - } - } else if (presentBelief != null) { - MatchingRules.trySolution(ques, presentBelief, task); + for (Judgment judg : beliefs) { + MatchingRules.trySolution(ques, judg, task); } } @@ -153,28 +142,28 @@ private void processQuestion(Question ques, Task task) { private void processGoal(Goal goal, Task task) { boolean revised = false; if (revisible) { - revised = reviseTable(goal, task, pendingGoals); // revise desire - if (revised) { // don't process this goal, but the revised version + revised = reviseTable(goal, goals); + if (revised) { return; } } - if (presentBelief != null) { - MatchingRules.trySolution(goal, presentBelief, task); // reality check + for (Judgment judg : beliefs) { + MatchingRules.trySolution(goal, judg, task); } - Term content = goal.getContent(); - if ((task.getPriority() >= Parameters.PRIORITY_THRESHOLD) && (content instanceof Inheritance)) { - Term pred = ((Inheritance) content).getPredicate(); - if (pred instanceof Operator) { - float netDesire = goal.getTruth().getExpectation(); - if (netDesire > Parameters.DECISION_THRESHOLD) { - ((Operator) pred).call(task); - task.setPriority(0.0f); // each call is executed once - return; + if (task.aboveThreshold()) { + Term content = goal.getContent(); + if (content instanceof Inheritance) { + Term pred = ((Inheritance) content).getPredicate(); + if (pred instanceof Operator) { + float netDesire = goal.getTruth().getExpectation(); + if (netDesire > Parameters.DECISION_THRESHOLD) { + ((Operator) pred).call(task); + task.setPriority(0.0f); // each operation call is executed once + return; + } } } - } - if (task.aboveThreshold()) { - addToTable(goal, pendingGoals, Parameters.MAXMUM_GOALS_LENGTH); // indirectly archiving + addToTable(goal, goals, Parameters.MAXMUM_GOALS_LENGTH); Question ques = new Question(goal); Memory.activatedTask(task.getBudget(), ques, false); } @@ -187,118 +176,51 @@ private void processGoal(Goal goal, Task task) { */ private void processJudgment(Judgment judg, Task task) { if (revisible) { - boolean revised; - if (judg.isFuture()) { - revised = reviseTable(judg, task, predictions); - } else { - revised = reviseTable(judg, task, pastRecords); - } - if (!revised) { - tryUpdate(judg); - } + reviseTable(judg, beliefs); } if (task.aboveThreshold()) { - for (Question ques : pendingQuestions) { + for (Question ques : questions) { MatchingRules.trySolution(ques, judg, task); } - for (Goal goal : pendingGoals) { + for (Goal goal : goals) { MatchingRules.trySolution(goal, judg, task); } - if (judg.isFuture()) { - addToTable(judg, predictions, Parameters.MAXMUM_BELIEF_LENGTH); - } else { - addToTable(judg, pastRecords, Parameters.MAXMUM_BELIEF_LENGTH); - } + addToTable(judg, beliefs, Parameters.MAXMUM_BELIEF_LENGTH); +// generateNegation(task); // may be recovered in the future } } /** - * Revise existing beliefs or goals + * Directly express a negative judgment as a negation * @param task The task to be processed - * @param table The table to be revised - * @return Whether the new belief triggered a temporalRevision */ - private boolean reviseTable(Judgment newSentence, Task task, ArrayList table) { - boolean revised = false; - Judgment belief; - for (int i = table.size() - 1; i >= 0; i--) { - belief = (Judgment) table.get(i); - if ((table == predictions) && !newSentence.isFuture()) { - table.remove(i); - addToTable(belief, pastRecords, Parameters.MAXMUM_BELIEF_LENGTH); - } else if (belief.noOverlapping(newSentence)) { - revised |= MatchingRules.revision(task, belief, false); - } - } - return revised; - } +// private void generateNegation(Task task) { +// if (task.getSentence() instanceof Judgment) { +// Sentence s = task.getSentence(); +// if (s.getTruth().getFrequency() < 0.5) { +// Term t = Negation.make(s.getContent()); +// if (t != null) { +// StructuralRules.transformNegation(t); +// } +// } +// } +// } /** - * To temporalRevision the presentBelief - * @param judg The new belief + * Revise existing beliefs or goals + * @param judg The judgment (belief or goal) to be processed + * @param table The table to be revised + * @return Whether the new belief triggered a revision */ - private void tryUpdate(Judgment judg) { - if (presentBelief == null) { - presentBelief = judg; - } else { // presentBelief != null - if (presentBelief.getTense() == null) { - if (judg.getTense() == null) { - if (presentBelief.getTruth().getConfidence() < judg.getTruth().getConfidence()) { - presentBelief = judg; - } - } else { // judg.getTense() != null - if (judg.getEventTime() == Center.getTime()) { - presentBelief = judg; - } - } - } else { // presentBelief.getTense() != null - if (judg.getTense() != null) { - if (judg.getEventTime() < presentBelief.getEventTime()) { - return; - } - if (judg.getTruth().getExpDifAbs(presentBelief.getTruth()) > 0.5) { - presentBelief = judg; - } else if (judg.noOverlapping(presentBelief)) { - TemporalRules.temporalRevision(judg, presentBelief, Center.getTime(), false); - } else if (presentBelief.getTruth().getConfidence() < judg.getTruth().getConfidence()) { - presentBelief = judg; - } - } + private boolean reviseTable(Judgment judg, ArrayList table) { + boolean revised = false; + for (Object belief : table) { + if (judg.noOverlapping((Judgment) belief)) { + MatchingRules.revision(judg, (Judgment) belief, false); + revised = true; } } - - if (judg.getTruth().getFrequency() == 1.0 || judg.getTruth().getFrequency() == 0.0) { - if (perfectBelief == null) { - perfectBelief = judg; - } else { - if (perfectBelief.getTense() == null) { - if (judg.getTense() == null) { - if (perfectBelief.getTruth().getConfidence() < judg.getTruth().getConfidence()) { - perfectBelief = judg; - } - } else { // judg.getTense() != null - if (judg.getEventTime() == Center.getTime()) { - perfectBelief = judg; - } - } - } else { // presentBelief.getTense() != null - if (judg.getTense() != null) { - if (judg.getEventTime() < perfectBelief.getEventTime()) { - return; - } - if (judg.getTruth().getExpDifAbs(perfectBelief.getTruth()) > 0.5) { - perfectBelief = judg; - // Don't do temporalRevision since it has side effects. - //} else if (judg.noOverlapping(perfectBelief)) { - // TemporalRules.temporalRevision(judg, perfectBelief, Center.getTime(), false); - } - else if (perfectBelief.getTruth().getConfidence() < judg.getTruth().getConfidence()) { - perfectBelief = judg; - } - } - } - } - } + return revised; } /** @@ -314,9 +236,9 @@ private void addToTable(Judgment newJudgment, ArrayList table, int capacity) { Judgment judgment2; float rank2; int i; - for (i = 0; i < table.size(); i++) { // go through everyone + for (i = 0; i < table.size(); i++) { judgment2 = (Judgment) table.get(i); - rank2 = BudgetFunctions.rankBelief(judgment2); // previous belief + rank2 = BudgetFunctions.rankBelief(judgment2); if (rank1 >= rank2) { if (newJudgment.equivalentTo(judgment2)) { return; @@ -344,7 +266,7 @@ private void addToTable(Judgment newJudgment, ArrayList table, int capacity) { public void insertTaskLink(TaskLink taskLink) { BudgetValue budget = taskLink.getBudget(); taskLinks.putIn(taskLink); - Memory.activateConcept(this, budget); // activate the concept + Memory.activateConcept(this, budget); } /** @@ -356,6 +278,7 @@ public void insertTaskLink(TaskLink taskLink) { public void buildTermLinks(BudgetValue budget) { Term t; Concept concept; + TermLink termLink1, termLink2; if (termLinkTemplates.size() > 0) { BudgetValue subBudget = BudgetFunctions.distributeAmongLinks(budget, termLinkTemplates.size()); @@ -412,7 +335,7 @@ public String toString() { // called from concept bag } /** - * Recalculate the quality of the concept [to be refined] + * Recalculate the quality of the concept [to be refined to show extension/intension balance] * @return The quality value */ @Override @@ -430,14 +353,6 @@ public ArrayList getTermLinkTemplates() { return termLinkTemplates; } - /** - * Get the present belief - * @return The present belief - */ - public Judgment getBelief() { - return presentBelief; - } - /** * Select a belief to interact with the given task in inference *

    @@ -450,11 +365,19 @@ public Judgment getBelief() { public Judgment getBelief(Task task) { Sentence taskSentence = task.getSentence(); Judgment belief; - for (int i = 0; i < pastRecords.size(); i++) { - belief = pastRecords.get(i); - if (belief.noOverlapping(taskSentence)) { - Record.append(" * Selected Belief: " + belief + "\n"); - return belief; + for (int i = 0; i < beliefs.size(); i++) { + belief = beliefs.get(i); + Record.append(" * Selected Belief: " + belief + "\n"); + if (taskSentence.noOverlapping(belief)) { + long time1 = taskSentence.getEventTime(); + long time2 = belief.getEventTime(); + if ((time1 == time2) || (time2 == Stamp.ALWAYS) || (taskSentence instanceof Goal)) { + return belief; + } + Judgment belief2 = (Judgment) belief.clone(); + TruthValue v = TruthFunctions.temporalCasting(belief.getTruth(), time2, time1, taskSentence.getCreationTime()); + belief2.setTruth(v); + return belief2; } } return null; @@ -473,12 +396,11 @@ public void fire() { Memory.currentBeliefLink = null; Record.append(" * Selected TaskLink: " + tLink + "\n"); Task task = tLink.getTargetTask(); - Memory.currentTask = task; + Memory.currentTask = task; // one of the two places where this variable is set if (tLink.getType() == TermLink.TRANSFORM) { RuleTables.transformTask(task, tLink); // to turn this into structural inference as below? return; } - generateNegation(task); int termLinkCount = Parameters.MAX_REASONED_TERM_LINK; while (Memory.noResult() && (termLinkCount > 0)) { TermLink termLink = termLinks.takeOut(tLink); @@ -495,22 +417,6 @@ public void fire() { taskLinks.putBack(tLink); } - /** - * Directly express a negative judgment as a negation - * @param task The task to be processed - */ - private void generateNegation(Task task) { - if (task.getSentence() instanceof Judgment) { - Sentence s = task.getSentence(); - if (s.getTruth().getFrequency() < 0.5) { - Term t = Negation.make(s.getContent()); - if (t != null) { - StructuralRules.transformNegation(t); - } - } - } - } - /* ---------- display ---------- */ /** * Start displaying contents and links, called from ConceptWindow or Memory.processTask only @@ -550,43 +456,29 @@ public void stop() { */ public String displayContent() { StringBuffer buffer = new StringBuffer(); - if (presentBelief != null) { - buffer.append(presentBelief == perfectBelief ? " Present & Perfect Belief:\n" : " Present Belief:\n"); - if (presentBelief instanceof Judgment && window != null && window.getShowDerivation()) { - buffer.append(((Judgment) presentBelief).toStringWithPremises("")); - } else { - buffer.append(presentBelief + "\n"); - } - } - if (perfectBelief != null && perfectBelief != presentBelief) { - buffer.append(" Perfect Belief:\n"); - if (perfectBelief instanceof Judgment && window != null && window.getShowDerivation()) { - buffer.append(((Judgment) perfectBelief).toStringWithPremises("")); - } else { - buffer.append(perfectBelief + "\n"); - } - } - if (pastRecords.size() > 0) { +// if (perfectBelief != null && perfectBelief != presentBelief) { +// buffer.append(" Perfect Belief:\n"); +// if (perfectBelief instanceof Judgment && window != null && window.getShowDerivation()) { +// buffer.append(((Judgment) perfectBelief).toStringWithPremises("")); +// } else { +// buffer.append(perfectBelief + "\n"); +// } +// } + if (beliefs.size() > 0) { buffer.append("\n Beliefs:\n"); - for (Sentence s : pastRecords) { - buffer.append(s + "\n"); - } - } - if (predictions.size() > 0) { - buffer.append("\n Predictions:\n"); - for (Sentence s : predictions) { + for (Sentence s : beliefs) { buffer.append(s + "\n"); } } - if (pendingGoals.size() > 0) { + if (goals.size() > 0) { buffer.append("\n Goals:\n"); - for (Sentence s : pendingGoals) { + for (Sentence s : goals) { buffer.append(s + "\n"); } } - if (pendingQuestions.size() > 0) { + if (questions.size() > 0) { buffer.append("\n Question:\n"); - for (Sentence s : pendingQuestions) { + for (Sentence s : questions) { buffer.append(s + "\n"); } } diff --git a/nars/entity/Judgment.java b/nars/entity/Judgment.java index 877b24a7..8bb7b71c 100644 --- a/nars/entity/Judgment.java +++ b/nars/entity/Judgment.java @@ -22,16 +22,16 @@ import nars.io.Symbols; import nars.language.Term; -import nars.main.Memory; import nars.main.Parameters; /** * A Judgment is an piece of new knowledge to be absorbed. */ public class Judgment extends Sentence { - public Judgment _premise1 = null; - public Judgment _premise2 = null; - + + public Judgment _premise1 = null; + public Judgment _premise2 = null; + /** * Constructor * @param term The content @@ -48,10 +48,12 @@ public Judgment(Term term, char punc, TruthValue t, Stamp b, Sentence premise1, punctuation = punc; truth = t; stamp = b; - if (premise1 instanceof Judgment) - _premise1 = (Judgment)premise1; - if (premise2 instanceof Judgment) - _premise2 = (Judgment)premise2; + if (premise1 instanceof Judgment) { + _premise1 = (Judgment) premise1; + } + if (premise2 instanceof Judgment) { + _premise2 = (Judgment) premise2; + } } /** @@ -61,9 +63,8 @@ public Judgment(Term term, char punc, TruthValue t, Stamp b, Sentence premise1, public Judgment(Goal g) { content = g.cloneContent(); punctuation = Symbols.JUDGMENT_MARK; - temporalOrder = new TemporalValue(0); truth = new TruthValue(1.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); - stamp = new Stamp(); + stamp = new Stamp(0, true); } /** @@ -75,43 +76,24 @@ public Judgment(Goal g) { */ boolean equivalentTo(Judgment that) { assert content.equals(that.getContent()); - return (truth.equals(that.getTruth()) && stamp.equals(that.getStamp()) - && TemporalValue.equal(temporalOrder, that.getTense())); + return (truth.equals(that.getTruth()) && stamp.equals(that.getStamp())); } - /** - * Evaluate the quality of the judgment as a solution to a problem - * @param problem A goal or question - * @return The quality of the judgment as the solution - */ - public float solutionQuality(Sentence problem) { - if (problem instanceof Goal) { - return truth.getExpectation(); - } else if (problem.getContent().isConstant()) { // "yes/no" question - return truth.getConfidence(); - } else { // "what" question or goal - return truth.getExpectation() / content.getComplexity(); - } + public void setTruth(TruthValue v) { + truth = v; } - + /** - * Check if the judgment predict a future event - * @return Whether the judgment has a future sense + * To display the premises used to derive a judgment */ - public boolean isFuture() { - if (temporalOrder == null) - return false; - long eventTime = stamp.getCreationTime() + temporalOrder.getDelta(); - return eventTime > nars.main.Center.getTime(); - } - - public String toStringWithPremises(String indentation) { - String result = indentation + toString() + "\n"; - if (_premise1 != null) - result = result + _premise1.toStringWithPremises(indentation + " "); - if (_premise2 != null) - result = result + _premise2.toStringWithPremises(indentation + " "); - return result; - } +// public String toStringWithPremises(String indentation) { +// String result = indentation + toString() + "\n"; +// if (_premise1 != null) { +// result = result + _premise1.toStringWithPremises(indentation + " "); +// } +// if (_premise2 != null) { +// result = result + _premise2.toStringWithPremises(indentation + " "); +// } +// return result; +// } } - diff --git a/nars/entity/Question.java b/nars/entity/Question.java index 1380bbc2..331c5fb1 100644 --- a/nars/entity/Question.java +++ b/nars/entity/Question.java @@ -30,7 +30,7 @@ public class Question extends Sentence { /** - * COnstructor + * Constructor * @param term The content * @param punc The punctuation * @param s The stamp @@ -42,13 +42,12 @@ public Question(Term term, char punc, Stamp s) { } /** - * Construct a Judgment to indicate an operation just executed - * @param g The goal that trigger the execution + * Construct a question to check whether a goal has been achieved + * @param g The goal that trigger the question */ public Question(Goal g) { content = g.cloneContent(); punctuation = Symbols.QUESTION_MARK; - temporalOrder = new TemporalValue(0); - stamp = new Stamp(); + stamp = new Stamp(0, true); } } diff --git a/nars/entity/Sentence.java b/nars/entity/Sentence.java index 8640f255..40e7f71f 100644 --- a/nars/entity/Sentence.java +++ b/nars/entity/Sentence.java @@ -43,10 +43,6 @@ public abstract class Sentence implements Cloneable { protected boolean input = false; /** For Question and Goal: best solution found so far */ protected Judgment bestSolution = null; - /** - * Temporal order between the components - */ - protected TemporalValue temporalOrder = null; /** * Make a Sentence from an input String. Called by StringParser. @@ -54,13 +50,11 @@ public abstract class Sentence implements Cloneable { * @param punc The puncuation (and therefore, type) of the sentence * @param truth The truth value of the sentence, if it is a Judgment (or Goal) * @param stamp The stamp of the truth value (for Judgment or Goal) - * @param tense The tense of the sentence * @param premise1 The first premise to record in the new Judgment. May be null. * @param premise2 The second premise to record in the new Judgment. May be null. * @return the Sentence generated from the arguments */ - public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, TemporalValue tense, - Sentence premise1, Sentence premise2) { + public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, Sentence premise1, Sentence premise2) { if (term instanceof CompoundTerm) { ((CompoundTerm) term).renameVariables(); } @@ -68,14 +62,12 @@ public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, switch (punc) { case Symbols.JUDGMENT_MARK: s = new Judgment(term, punc, truth, stamp, premise1, premise2); - s.temporalOrder = tense; break; case Symbols.GOAL_MARK: s = new Goal(term, punc, truth, stamp); break; case Symbols.QUESTION_MARK: s = new Question(term, punc, stamp); - s.temporalOrder = tense; break; default: return null; @@ -89,12 +81,11 @@ public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, * @param term The content of the sentence * @param truth The truth value of the sentence, if it is a Judgment (or Goal) * @param stamp The stamp of the truth value (for Judgment or Goal) - * @param tense The tense of the sentence * @param premise1 The first premise to record in the new Judgment. May be null. * @param premise2 The second premise to record in the new Judgment. May be null. * @return the Sentence generated from the arguments */ - public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, TemporalValue tense, + public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, Sentence premise1, Sentence premise2) { if (term instanceof CompoundTerm) { ((CompoundTerm) term).renameVariables(); @@ -102,12 +93,10 @@ public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp st Sentence s = null; if (oldS instanceof Question) { s = new Question(term, Symbols.QUESTION_MARK, stamp); - s.temporalOrder = tense; } else if (oldS instanceof Goal) { s = new Goal(term, Symbols.GOAL_MARK, truth, stamp); } else { s = new Judgment(term, Symbols.JUDGMENT_MARK, truth, stamp, premise1, premise2); - s.temporalOrder = tense; } return s; } @@ -119,10 +108,10 @@ public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp st @Override public Object clone() { if (this instanceof Judgment) { - return make((Term) content.clone(), punctuation, truth, stamp, temporalOrder, + return make((Term) content.clone(), punctuation, truth, stamp, ((Judgment) this)._premise1, ((Judgment) this)._premise2); } else { - return make((Term) content.clone(), punctuation, truth, stamp, temporalOrder, null, null); + return make((Term) content.clone(), punctuation, truth, stamp, null, null); } } @@ -150,14 +139,6 @@ public void setContent(Term t) { content = t; } - /** - * Get the tense of the Sentence - * @return The tense of the Sentence - */ - public TemporalValue getTense() { - return temporalOrder; - } - /** * Get the truth value of the sentence * @return Truth value, null for question @@ -206,13 +187,13 @@ public Judgment getBestSolution() { } /** - * Set the best-so-far solution for a Question or Goal + * Set the best-so-far solution for a Question or Goal, and report answer for input question * @param judg The solution to be remembered */ public void setBestSolution(Judgment judg) { bestSolution = judg; if (input) { - Memory.report(judg, false); // report answer to input question + Memory.report(judg, false); } } @@ -222,8 +203,8 @@ public void setBestSolution(Judgment judg) { * @return Whether the two have overlapping stamps */ public boolean noOverlapping(Sentence that) { - Memory.currentStamp = Stamp.make(stamp, that.getStamp()); - return (Memory.currentStamp != null); + Memory.newStamp = Stamp.make(stamp, that.getStamp()); + return (Memory.newStamp != null); } /** @@ -235,9 +216,6 @@ public String toKey() { StringBuffer s = new StringBuffer(); s.append(content.getName()); s.append(punctuation + " "); - if (temporalOrder != null) { - s.append(temporalOrder.getDelta() + " "); - } if (truth != null) { s.append(truth.toString()); } @@ -252,7 +230,7 @@ public String toKey() { @Override public String toString() { StringBuffer s = new StringBuffer(); - s.append(content.getName()); + s.append(content.toString()); s.append(punctuation + " "); s.append(tenseToString()); if (truth != null) { @@ -292,12 +270,11 @@ public String toString2() { * Get a String representation of the tense of the sentence * @return The String */ - public String tenseToString() { - TemporalValue t = getTense(); - if (t == null) { + private String tenseToString() { + if (!isTemporal()) { return ""; } - int delta = (int) (getEventTime() - Center.getTime()); + long delta = getEventTime() - Center.getTime(); if (delta > 0) { return Symbols.TENSE_FUTURE + " "; } @@ -320,6 +297,10 @@ public long getCreationTime() { * @return The occurrence time of the event */ public long getEventTime() { - return getCreationTime() + getTense().getDelta(); + return getStamp().getEventTime(); + } + + public boolean isTemporal() { + return (getEventTime() != Stamp.ALWAYS); } } diff --git a/nars/entity/Stamp.java b/nars/entity/Stamp.java index 9855bf67..17d70366 100644 --- a/nars/entity/Stamp.java +++ b/nars/entity/Stamp.java @@ -24,41 +24,90 @@ import nars.io.Symbols; import nars.main.*; -import nars.inference.*; /** - * Each Sentence has a get of serial numbers of a constant length attached. - * The input sentence gets a unique number. - * The derived sentences inherits from its parents, then cut at the length limit. + * Each Sentence has a time stamp, consisting the following components: + * (1) The creation time of the sentence, + * (2) The time when the truth-value is supported, + * (3) A trail of serial numbers of sentence, from which the sentence is derived. + * Each input sentence gets a unique serial number. + * The derived sentences inherits serial numbers from its parents, cut at the length limit. */ public class Stamp implements Cloneable { + /** serial number, for the whole system */ private static long current = 0; + /** special value, for time-independent truth-values */ + public static final long ALWAYS = Long.MIN_VALUE; /** serial numbers */ - private long[] list; - /** current stamp length */ + private long[] trail; + /** trail length */ private int length; /** creation time of the stamp */ - private final long creationTime = nars.main.Center.getTime(); + private long creationTime; + /** creation time of the stamp */ + private long eventTime; /** - * Generate a new stamp, with a new serial number, for input sentence + * Generate a new stamp, with a new serial number, for new sentence without tense */ public Stamp() { current++; length = 1; - list = new long[length]; - list[0] = current; + trail = new long[length]; + trail[0] = current; + creationTime = Center.getTime(); + eventTime = ALWAYS; + } + + /** + * Generate a new stamp, with a new serial number, for new sentence with numeric tense + * @param time The time of the event + * @param relative Whether the time is absolute or relative + */ + public Stamp(long time, boolean relative) { + current++; + length = 1; + trail = new long[length]; + trail[0] = current; + creationTime = Center.getTime(); + if (relative) { + eventTime = creationTime + time; + } else { + eventTime = time; + } } + /** - * Generate a new stamp from an existing one, with the same list but different creation time + * Generate a new stamp, with a new serial number, for input sentence with symbolic tense + * @param tense The String representing input tense + */ + public Stamp(String tense) { + current++; + length = 1; + trail = new long[length]; + trail[0] = current; + creationTime = Center.getTime(); + if (tense.equals(Symbols.TENSE_PAST)) { + eventTime = creationTime - 1; + } else if (tense.equals(Symbols.TENSE_FUTURE)) { + eventTime = creationTime + 1; + } else { + eventTime = creationTime; + } + } + + /** + * Generate a new stamp from an existing one, with the same trail but different creation time *

    * For single-premise rules * @param old The stamp of the single premise */ public Stamp(Stamp old) { length = old.length(); - list = old.getList(); + trail = old.getList(); + creationTime = Center.getTime(); + eventTime = old.getEventTime(); } /** @@ -67,28 +116,36 @@ public Stamp(Stamp old) { * @param first The first Stamp * @param second The second Stamp */ - private Stamp(Stamp first, Stamp second) { + private Stamp(Stamp first, Stamp second, long time) { int i1, i2, j; i1 = i2 = j = 0; length = Math.min(first.length() + second.length(), Parameters.MAXMUM_STAMP_LENGTH); - list = new long[length]; + trail = new long[length]; while (i2 < second.length() && j < length) { - list[j] = first.get(i1); + trail[j] = first.get(i1); i1++; j++; - list[j] = second.get(i2); + trail[j] = second.get(i2); i2++; j++; } while (i1 < first.length() && j < length) { - list[j] = first.get(i1); + trail[j] = first.get(i1); i1++; j++; } + creationTime = Center.getTime(); + if (Memory.currentTask.getSentence() instanceof Goal) { + eventTime = ALWAYS; + } else { + eventTime = time; + } } /** * Try to merge two Stamps, return null if have overlap + *

    + * By default, the event time of the first stamp is used in the result * @param first The first Stamp * @param second The second Stamp * @return The merged Stamp, or null @@ -102,9 +159,9 @@ public static Stamp make(Stamp first, Stamp second) { } } if (first.length() > second.length()) { - return new Stamp(first, second); + return new Stamp(first, second, first.getEventTime()); } else { - return new Stamp(second, first); + return new Stamp(second, first, first.getEventTime()); } } @@ -116,7 +173,7 @@ public static void init() { } /** - * Return the length of the list + * Return the length of the trail * @return Length of the Stamp */ public int length() { @@ -124,35 +181,35 @@ public int length() { } /** - * Get a number from the list by index, called in this class only + * Get a number from the trail by index, called in this class only * @param i The index * @return The number at the index */ long get(int i) { - return list[i]; + return trail[i]; } /** - * Get the list, called in this class only - * @return The list of numbers + * Get the trail, called in this class only + * @return The trail of numbers */ long[] getList() { - return list; + return trail; } /** - * Convert the list into a set + * Convert the trail into a set */ TreeSet toSet() { TreeSet set = new TreeSet(); for (int i = 0; i < length; i++) { - set.add(list[i]); + set.add(trail[i]); } return set; } /** - * Check if two stamps contains the same set of numbers + * Check if two stamps contains the same content * @param that The Stamp to be compared * @return Whether the two have contain the same elements */ @@ -161,6 +218,9 @@ public boolean equals(Object that) { if (!(that instanceof Stamp)) { return false; } + if ((creationTime != ((Stamp) that).getCreationTime()) || eventTime != ((Stamp) that).getEventTime()) { + return false; + } TreeSet set1 = toSet(); TreeSet set2 = ((Stamp) that).toSet(); return (set1.containsAll(set2) && set2.containsAll(set1)); @@ -185,13 +245,21 @@ public long getCreationTime() { } /** - * Compare two Stamps for their temporal order - * @param that The Stamp to be compared - * @return The temporal order + * Get the eventTime of the truth-value + * @return The event time */ - public TemporalValue orderWith(Stamp that) { - int delta = (int) (creationTime - that.getCreationTime()); - return new TemporalValue(delta); + public long getEventTime() { + return eventTime; + } + + /** + * Adjust the eventTime of the truth-value + * @param d The direction and extent of the change + */ + public void adjustEventTime(int d) { + if (eventTime != ALWAYS) { + eventTime += d; + } } /** @@ -200,11 +268,15 @@ public TemporalValue orderWith(Stamp that) { */ @Override public String toString() { - StringBuffer buffer = new StringBuffer(" " + Symbols.STAMP_OPENER + creationTime + Symbols.STAMP_STARTER + " "); + StringBuffer buffer = new StringBuffer(" " + Symbols.STAMP_OPENER + creationTime); + if (eventTime != ALWAYS) { + buffer.append(" " + Symbols.STAMP_STARTER + " " + eventTime); + } + buffer.append(" " + Symbols.STAMP_STARTER + " "); for (int i = 0; i < length; i++) { - buffer.append(Long.toString(list[i])); + buffer.append(Long.toString(trail[i])); if (i < (length - 1)) { - buffer.append(Symbols.STAMP_SEPARATOR + ""); + buffer.append(Symbols.STAMP_SEPARATOR); } else { buffer.append(Symbols.STAMP_CLOSER + " "); } diff --git a/nars/entity/Task.java b/nars/entity/Task.java index d75b43d4..2b8c7116 100644 --- a/nars/entity/Task.java +++ b/nars/entity/Task.java @@ -59,14 +59,6 @@ public Term getContent() { return sentence.getContent(); } - /** - * Directly get the tense of the sentence - * @return The tense of the sentence - */ - public TemporalValue getTense() { - return sentence.getTense(); - } - /** * Check if a Task is derived by a StructuralRule * @return Whether the Task is derived by a StructuralRule diff --git a/nars/entity/TemporalValue.java b/nars/entity/TemporalValue.java deleted file mode 100644 index 4cd512fd..00000000 --- a/nars/entity/TemporalValue.java +++ /dev/null @@ -1,115 +0,0 @@ -/* - * TemporalValue.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ - -package nars.entity; - -import nars.io.Symbols; - -/** - * Temporal information, in terms of the internal clock of the system. - * In an Implication or Equivalence, the value indicates the interval from the first event to the second. - * In a Conjunction, the value can only be 0 (parallel) or 1 (suquential). - * In a Sentence, the value indicates the interval from when the sentence is created to when the event happens. - * @author Pei Wang - */ -public class TemporalValue { - private int delta; - - /** - * Constructor, with a given number - * @param t The temporal difference of the item - */ - public TemporalValue(int t) { - delta = t; - } - - /** - * Constructor, with a String representation - * @param s The temporal difference of the item as a String - */ - public TemporalValue(String s) { - if (s.equals(Symbols.TENSE_FUTURE) || s.equals(Symbols.SEQUENCE_OPERATOR) - || s.equals(Symbols.IMPLICATION_AFTER_RELATION) || s.equals(Symbols.EQUIVALENCE_AFTER_RELATION)) - delta = 1; - else if (s.equals(Symbols.TENSE_PAST) || s.equals(Symbols.IMPLICATION_BEFORE_RELATION)) - delta = -1; - else - delta = 0; - } - - /** - * Directly report the time difference - * @return The delta value - */ - public int getDelta() { - return delta; - } - - /** - * Get the reverse temporal difference of a given one - * @param t The given temporal value - * @return The reverse temporal value - */ - public static TemporalValue getReverse(TemporalValue t) { - if (t == null) { - return null; - } else { - return new TemporalValue(0 - t.getDelta()); - } - } - - /** - * Check if two temporal values have the same content - * @param t1 The first temporal value - * @param t2 The second temporal value - * @return If the two dicuate the same temporal relation - */ - public static boolean equal(TemporalValue t1, TemporalValue t2) { - if (t1 == t2) { - return true; - } - if ((t1 == null) || (t2 == null)) { - return false; - } - return (t1.getDelta() == t2.getDelta()); - } - - /** - * Check if the first temporal valie is closer to the given time than the second - * @param t1 The first temporal value - * @param t2 The second temporal value - * @param t The target temporal value - * @return If the first is closer to the target - */ - public static boolean closer(TemporalValue t1, TemporalValue t2, TemporalValue t) { - if (t1 != null) { - if (t2 == null) { - return true; - } else { - int time1 = t1.getDelta(); - int time2 = t2.getDelta(); - int time = t.getDelta(); - return (Math.abs(time1 - time) < Math.abs(time2 - time)); - } - } - return false; - } -} diff --git a/nars/gui/ConceptWindow.java b/nars/gui/ConceptWindow.java index 72814cac..3fafbcde 100644 --- a/nars/gui/ConceptWindow.java +++ b/nars/gui/ConceptWindow.java @@ -22,8 +22,8 @@ import java.awt.*; import java.awt.event.*; -import java.beans.PropertyChangeEvent; -import java.beans.PropertyChangeListener; +//import java.beans.PropertyChangeEvent; +//import java.beans.PropertyChangeListener; import nars.entity.Concept; @@ -33,7 +33,7 @@ public class ConceptWindow extends NarsFrame implements ActionListener, ItemListener { /** Control buttons */ - private Button playButton, stopButton, playInNewWindowButton, closeButton; + private Button playButton, stopButton, playInNewWindowButton, closeButton; private Checkbox showDerivationCheckbox; /** Display area */ private TextArea text; @@ -112,12 +112,12 @@ public void post(String str) { * This is called when Concept removes this as its window. */ public void detachFromConcept() { - // The Play and Stop buttons and Derivation checkbox no longer do anything, so disable. - playButton.setEnabled(false); - stopButton.setEnabled(false); - showDerivationCheckbox.setEnabled(false); + // The Play and Stop buttons and Derivation checkbox no longer do anything, so disable. + playButton.setEnabled(false); + stopButton.setEnabled(false); + showDerivationCheckbox.setEnabled(false); } - + /** * Handling button click * @param e The ActionEvent @@ -132,7 +132,7 @@ public void actionPerformed(ActionEvent e) { concept.stop(); concept.startPlay(false); } else if (s == closeButton) { - close(); + close(); } } @@ -140,21 +140,21 @@ private void close() { concept.stop(); dispose(); } - - @Override - public void windowClosing(WindowEvent e) { - close(); - } - - public boolean getShowDerivation() { - return showDerivationCheckbox.getState(); - } - - @Override - public void itemStateChanged(ItemEvent e) { - if (e.getSource() == showDerivationCheckbox) { - // Redisplay. displayContent will check getShowDerivation(). - post(concept.displayContent()); - } - } + + @Override + public void windowClosing(WindowEvent e) { + close(); + } + + public boolean getShowDerivation() { + return showDerivationCheckbox.getState(); + } + + @Override + public void itemStateChanged(ItemEvent e) { + if (e.getSource() == showDerivationCheckbox) { + // Redisplay. displayContent will check getShowDerivation(). + post(concept.displayContent()); + } + } } diff --git a/nars/inference/BudgetFunctions.java b/nars/inference/BudgetFunctions.java index 5b163697..fca13c0d 100644 --- a/nars/inference/BudgetFunctions.java +++ b/nars/inference/BudgetFunctions.java @@ -21,7 +21,7 @@ package nars.inference; import nars.entity.*; -import nars.language.Term; +import nars.language.*; import nars.main.Memory; /** @@ -73,7 +73,7 @@ static BudgetValue solutionEval(Sentence problem, Judgment solution, Task task) boolean judgmentTask = task.getSentence().isJudgment(); float quality; if (problem instanceof Question) { - quality = solution.solutionQuality((Question) problem); + quality = MatchingRules.solutionQuality((Question) problem, solution); } else { assert (problem instanceof Goal); quality = solution.getTruth().getExpectation(); @@ -98,11 +98,11 @@ static BudgetValue solutionEval(Sentence problem, Judgment solution, Task task) * @param tTruth The truth value of the judgment in the task * @param bTruth The truth value of the belief * @param truth The truth value of the conclusion of revision - * @param task The task to be immediatedly or continuely processed * @return The budget for the new task */ - static BudgetValue revise(TruthValue tTruth, TruthValue bTruth, TruthValue truth, Task task, boolean feedbackToLinks) { + static BudgetValue revise(TruthValue tTruth, TruthValue bTruth, TruthValue truth, boolean feedbackToLinks) { float difT = truth.getExpDifAbs(tTruth); + Task task = Memory.currentTask; task.decPriority(1 - difT); task.decDurability(1 - difT); if (feedbackToLinks) { @@ -261,11 +261,13 @@ public static BudgetValue compoundBackwardWeak(Term content) { * @return Budget of the conclusion task */ private static BudgetValue budgetInference(float qual, int complexity) { - TaskLink tLink = Memory.currentTaskLink; - TermLink bLink = Memory.currentBeliefLink; - float priority = tLink.getPriority(); - float durability = tLink.getDurability(); + Item t = Memory.currentTaskLink; + if (t == null) + t = Memory.currentTask; + float priority = t.getPriority(); + float durability = t.getDurability(); float quality = (float) (qual / Math.sqrt(complexity)); + TermLink bLink = Memory.currentBeliefLink; if (bLink != null) { priority = aveAri(priority, bLink.getPriority()); durability = aveAri(durability, bLink.getDurability()); diff --git a/nars/inference/CompositionalRules.java b/nars/inference/CompositionalRules.java index cebe00a9..8e7659b2 100644 --- a/nars/inference/CompositionalRules.java +++ b/nars/inference/CompositionalRules.java @@ -11,7 +11,7 @@ * (at your option) any later version. * * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of + * but WITHOUT ANY WARRANTY; without even the abduction warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * @@ -50,91 +50,61 @@ static void composeCompound(Sentence taskSentence, Judgment belief, int index) { if (content1.getClass() != content2.getClass()) { return; } - if (TemporalRules.sameTime((Judgment) taskSentence, belief)) { - Term component1, component2; - component1 = content1.componentAt(1 - index); - component2 = content2.componentAt(1 - index); - Term component = content1.componentAt(index); - if ((component1 instanceof CompoundTerm) && ((CompoundTerm) component1).containAllComponents(component2)) { - decomposeCompound((CompoundTerm) component1, component2, component, index, true); - return; - } else if ((component2 instanceof CompoundTerm) && ((CompoundTerm) component2).containAllComponents(component1)) { - decomposeCompound((CompoundTerm) component2, component1, component, index, false); - return; + Term component1, component2; + component1 = content1.componentAt(1 - index); + component2 = content2.componentAt(1 - index); + Term component = content1.componentAt(index); + if ((component1 instanceof CompoundTerm) && ((CompoundTerm) component1).containAllComponents(component2)) { + decomposeCompound((CompoundTerm) component1, component2, component, index, true); + return; + } else if ((component2 instanceof CompoundTerm) && ((CompoundTerm) component2).containAllComponents(component1)) { + decomposeCompound((CompoundTerm) component2, component1, component, index, false); + return; + } + Term t1 = null; + Term t2 = null; + Term t3 = null; + Term t4 = null; + TruthValue v1 = taskSentence.getTruth(); + TruthValue v2 = belief.getTruth(); + if (index == 0) { + if (content1 instanceof Inheritance) { + t1 = IntersectionInt.make(component1, component2); + t2 = IntersectionExt.make(component1, component2); + t3 = DifferenceExt.make(component1, component2); + t4 = DifferenceExt.make(component2, component1); + } else if (content1 instanceof Implication) { + t1 = Disjunction.make(component1, component2); + t2 = Conjunction.make(component1, component2, -1); + t3 = Conjunction.make(component1, Negation.make(component2), -1); + t4 = Conjunction.make(component2, Negation.make(component1), -1); } - Term t1 = null; - Term t2 = null; - Term t3 = null; - Term t4 = null; - TruthValue v1 = taskSentence.getTruth(); - TruthValue v2 = belief.getTruth(); - float discount = estimateCorrelation(content1, component1, component2); - if (index == 0) { - if (content1 instanceof Inheritance) { - t1 = IntersectionInt.make(component1, component2); - t2 = IntersectionExt.make(component1, component2); - t3 = DifferenceExt.make(component1, component2); - t4 = DifferenceExt.make(component2, component1); - } else if (content1 instanceof Implication) { - t1 = Disjunction.make(component1, component2); - t2 = Conjunction.make(component1, component2, null); - t3 = Conjunction.make(component1, Negation.make(component2), null); - t4 = Conjunction.make(component2, Negation.make(component1), null); - } - processComposed(content1, component, t1, TruthFunctions.union(v1, v2, discount)); - processComposed(content1, component, t2, TruthFunctions.intersection(v1, v2, discount)); - processComposed(content1, component, t3, TruthFunctions.difference(v1, v2, discount)); - processComposed(content1, component, t4, TruthFunctions.difference(v2, v1, discount)); - } else { - if (content1 instanceof Inheritance) { - t1 = IntersectionExt.make(component1, component2); - t2 = IntersectionInt.make(component1, component2); - t3 = DifferenceInt.make(component1, component2); - t4 = DifferenceInt.make(component2, component1); - } else if (content1 instanceof Implication) { - t1 = Conjunction.make(component1, component2, null); - t2 = Disjunction.make(component1, component2); - t3 = Disjunction.make(component1, Negation.make(component2)); - t4 = Disjunction.make(component2, Negation.make(component1)); - } - processComposed(content1, t1, component, TruthFunctions.union(v1, v2, discount)); - processComposed(content1, t2, component, TruthFunctions.intersection(v1, v2, discount)); - processComposed(content1, t3, component, TruthFunctions.difference(v1, v2, discount)); - processComposed(content1, t4, component, TruthFunctions.difference(v2, v1, discount)); + processComposed(content1, component, t1, TruthFunctions.union(v1, v2)); + processComposed(content1, component, t2, TruthFunctions.intersection(v1, v2)); + processComposed(content1, component, t3, TruthFunctions.difference(v1, v2)); + processComposed(content1, component, t4, TruthFunctions.difference(v2, v1)); + } else { + if (content1 instanceof Inheritance) { + t1 = IntersectionExt.make(component1, component2); + t2 = IntersectionInt.make(component1, component2); + t3 = DifferenceInt.make(component1, component2); + t4 = DifferenceInt.make(component2, component1); + } else if (content1 instanceof Implication) { + t1 = Conjunction.make(component1, component2, -1); + t2 = Disjunction.make(component1, component2); + t3 = Disjunction.make(component1, Negation.make(component2)); + t4 = Disjunction.make(component2, Negation.make(component1)); } + processComposed(content1, t1, component, TruthFunctions.union(v1, v2)); + processComposed(content1, t2, component, TruthFunctions.intersection(v1, v2)); + processComposed(content1, t3, component, TruthFunctions.difference(v1, v2)); + processComposed(content1, t4, component, TruthFunctions.difference(v2, v1)); } - if (content1.isConstant()) { + if (content1.containNoVariable()) { // even closed veraibles are not allowed introVarDepOuter(content1, content2, index); } } - /** - * Estimate the correlation between the two components in a compound - * @param content One of the premises - * @param component1 One component - * @param component2 The other component - * @return The correlation discount, 1 means no correlation found, 0 for full correlation - */ - private static float estimateCorrelation(Statement content, Term component1, Term component2) { - Statement s = null; - if (content instanceof Inheritance) { - s = Similarity.make(component1, component2); - } else if (content instanceof Implication) { - s = Equivalence.make(component1, component2, null); - } - if (s != null) { - Concept c = Memory.termToConcept(s); - if (c != null) { - Sentence b = c.getBelief(); - if (b != null) { - TruthValue tc = b.getTruth(); - return 1 - Math.abs(2 * tc.getExpectation() - 1); - } - } - } - return 1; - } - /** * Finish composing compound term * @param statement Type of the content @@ -183,16 +153,13 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter v2 = sentence.getTruth(); } - TruthValue truth = null; Term content; - if (index == 0) { content = Statement.make(oldContent, term1, term2); if (content == null) { return; } - if (oldContent instanceof Inheritance) { if (compound instanceof IntersectionExt) { truth = TruthFunctions.reduceConjunction(v1, v2); @@ -208,7 +175,6 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } else { truth = TruthFunctions.reduceConjunctionNeg(v1, v2); } - } } else if (oldContent instanceof Implication) { if (compound instanceof Conjunction) { @@ -216,14 +182,12 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } else if (compound instanceof Disjunction) { truth = TruthFunctions.reduceDisjunction(v1, v2); } - } } else { content = Statement.make(oldContent, term2, term1); if (content == null) { return; } - if (oldContent instanceof Inheritance) { if (compound instanceof IntersectionInt) { truth = TruthFunctions.reduceConjunction(v1, v2); @@ -239,7 +203,6 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } else { truth = TruthFunctions.reduceConjunctionNeg(v1, v2); } - } } else if (oldContent instanceof Implication) { if (compound instanceof Disjunction) { @@ -247,14 +210,12 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } else if (compound instanceof Conjunction) { truth = TruthFunctions.reduceDisjunction(v1, v2); } - } } if (truth != null) { BudgetValue budget = BudgetFunctions.compoundForward(truth, content); Memory.doublePremiseTask(budget, content, truth, sentence, belief); } - } /** @@ -270,24 +231,19 @@ static void decomposeStatement(CompoundTerm compound, Term component, boolean co if (sentence instanceof Question) { return; } - Judgment belief = Memory.currentBelief; Term content = CompoundTerm.reduceComponents(compound, component); if (content == null) { return; } - TruthValue v1, v2; if (compoundTask) { v1 = sentence.getTruth(); - v2 = - belief.getTruth(); + v2 = belief.getTruth(); } else { v1 = belief.getTruth(); - v2 = - sentence.getTruth(); + v2 = sentence.getTruth(); } - TruthValue truth = null; if (compound instanceof Conjunction) { if (sentence instanceof Goal) { @@ -296,11 +252,9 @@ static void decomposeStatement(CompoundTerm compound, Term component, boolean co } else { return; } - } else if (sentence instanceof Judgment) { truth = TruthFunctions.reduceConjunction(v1, v2); } - } else if (compound instanceof Disjunction) { if (sentence instanceof Goal) { if (compoundTask) { @@ -308,15 +262,12 @@ static void decomposeStatement(CompoundTerm compound, Term component, boolean co } else { return; } - } else if (sentence instanceof Judgment) { truth = TruthFunctions.reduceDisjunction(v1, v2); } - } else { return; } - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); Memory.doublePremiseTask(budget, content, truth, sentence, belief); } @@ -332,34 +283,32 @@ private static Conjunction introVarDep(Statement premise1, Statement premise2, i if (premise1.equals(premise2)) { return null; } - Statement state1, state2; Variable var1 = new Variable(Symbols.VARIABLE_TAG + "0()"); Variable var2 = new Variable(Symbols.VARIABLE_TAG + "0()"); if (index == 0) { state1 = Statement.make(premise1, var1, premise1.getPredicate()); - state2 = - Statement.make(premise2, var2, premise2.getPredicate()); + state2 = Statement.make(premise2, var2, premise2.getPredicate()); } else { state1 = Statement.make(premise1, premise1.getSubject(), var1); - state2 = - Statement.make(premise2, premise2.getSubject(), var2); + state2 = Statement.make(premise2, premise2.getSubject(), var2); } - - TemporalValue tense1 = Memory.currentTask.getTense(); - TemporalValue tense2 = Memory.currentBelief.getTense(); - if (tense1 == tense2) { - Memory.currentTense = tense1; - if ((tense1 != null) && (tense1.getDelta() == 0)) { - return (Conjunction) Conjunction.make(state1, state2, tense1); + long time1 = Memory.currentTask.getSentence().getEventTime(); // which is which??? + long time2 = Memory.currentBelief.getEventTime(); + Term c; + if ((time1 == Stamp.ALWAYS) || (time2 == Stamp.ALWAYS)) { + c = Conjunction.make(state1, state2, -1); + } else { + int dif = (int) (time2 - time1); + if (dif == 0) { + c = Conjunction.make(state1, state2, 0); + } else if (dif > 0) { + c = Conjunction.make(state1, state2, 1); } else { - return (Conjunction) Conjunction.make(state1, state2, null); + c = Conjunction.make(state2, state1, 1); } - - } else { - return null; } - + return (Conjunction) c; } /** @@ -378,7 +327,6 @@ private static void introVarDepOuter(Statement premise1, Statement premise2, int Memory.doublePremiseTask(budget, content, truth, Memory.currentTask.getSentence(), Memory.currentBelief); } - } /** @@ -391,7 +339,6 @@ static void introVarDepInner(CompoundTerm compound, Term component, Term premise if (!(component instanceof Statement) || !(component.getClass() == premise.getClass())) { return; } - Statement premise1 = (Statement) premise; Statement premise2 = (Statement) component; int index; @@ -402,12 +349,10 @@ static void introVarDepInner(CompoundTerm compound, Term component, Term premise } else { return; } - Term innerContent = introVarDep(premise1, premise2, index); if (innerContent == null) { return; } - Task task = Memory.currentTask; Sentence sentence = task.getSentence(); Judgment belief = Memory.currentBelief; @@ -417,7 +362,6 @@ static void introVarDepInner(CompoundTerm compound, Term component, Term premise } else if (compound instanceof Conjunction) { content = CompoundTerm.replaceComponent(compound, component, innerContent); } - TruthValue truth = null; if (sentence instanceof Goal) { truth = TruthFunctions.intersection(belief.getTruth(), sentence.getTruth()); // [To be refined] @@ -427,7 +371,6 @@ static void introVarDepInner(CompoundTerm compound, Term component, Term premise assert (sentence instanceof Question); return; } - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); Memory.doublePremiseTask(budget, content, truth, sentence, belief); } @@ -438,7 +381,7 @@ static void introVarDepInner(CompoundTerm compound, Term component, Term premise * @param component The part of the compound to be removed * @param compoundTask Whether the compound comes from the task */ - static void abdVarDepOuter(CompoundTerm compound, Term component, boolean compoundTask) { + static void anaVarDepOuter(CompoundTerm compound, Term component, boolean compoundTask) { Term content = CompoundTerm.reduceComponents(compound, component); Task task = Memory.currentTask; Sentence sentence = task.getSentence(); @@ -447,19 +390,16 @@ static void abdVarDepOuter(CompoundTerm compound, Term component, boolean compou TruthValue v2 = belief.getTruth(); TruthValue truth = null; BudgetValue budget; - if (sentence instanceof Question) { budget = (compoundTask ? BudgetFunctions.backward(v2) : BudgetFunctions.backwardWeak(v2)); } else { if (sentence instanceof Goal) { truth = (compoundTask ? TruthFunctions.desireStrong(v1, v2) : TruthFunctions.desireWeak(v1, v2)); } else { - truth = (compoundTask ? TruthFunctions.existAnalogy(v1, v2) : TruthFunctions.existAnalogy(v2, v1)); + truth = (compoundTask ? TruthFunctions.anonymousAnalogy(v1, v2) : TruthFunctions.anonymousAnalogy(v2, v1)); } - budget = BudgetFunctions.compoundForward(truth, content); } - Memory.doublePremiseTask(budget, content, truth, sentence, belief); } } diff --git a/nars/inference/MatchingRules.java b/nars/inference/MatchingRules.java index a9072141..ce678b65 100644 --- a/nars/inference/MatchingRules.java +++ b/nars/inference/MatchingRules.java @@ -11,7 +11,7 @@ * (at your option) any later version. * * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of + * but WITHOUT ANY WARRANTY; without even the abduction warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * @@ -28,8 +28,8 @@ * Directly process a task by a oldBelief, with only two Terms in both. * In matching, the new task is compared with all existing direct Tasks in that Concept, to carry out: *

    - * temporalRevision: between judgments on non-overlapping evidence; - * temporalRevision: between judgments; + * revision: between judgments on non-overlapping evidence; + * revision: between judgments; * satisfy: between a Judgment and a Question/Goal; * merge: between items of the same type and stamp; * conversion: between different inheritance relations. @@ -47,9 +47,9 @@ public final class MatchingRules { public static void match(Task task, Judgment belief) { Sentence sentence = task.getSentence(); if (sentence.isJudgment()) { - revision(task, belief, true); + revision((Judgment) sentence, belief, true); } else { - trySolution(sentence, belief, null); + trySolution(sentence, belief, task); } } @@ -57,24 +57,27 @@ public static void match(Task task, Judgment belief) { * Belief revision *

    * called from Concept.reviseTable and match - * @param task The task containing new belief + * @param newBelief The new belief in task * @param oldBelief The previous belief with the same content * @param feedbackToLinks Whether to send feedback to the links - * @return Whether temporalRevision happened */ - public static boolean revision(Task task, Judgment oldBelief, boolean feedbackToLinks) { - Judgment newBelief = (Judgment) task.getSentence(); - if (TemporalRules.sameTime(newBelief, oldBelief)) { - TruthValue tTruth = newBelief.getTruth(); - TruthValue bTruth = oldBelief.getTruth(); - TruthValue truth = TruthFunctions.revision(tTruth, bTruth); - BudgetValue budget = BudgetFunctions.revise(tTruth, bTruth, truth, task, feedbackToLinks); - Term content = newBelief.getContent(); - Memory.revisionTask(budget, content, truth, task.isStructural(), oldBelief, newBelief); - return true; - } else { - return false; + public static void revision(Judgment newBelief, Judgment oldBelief, boolean feedbackToLinks) { + long time1 = newBelief.getEventTime(); + long time2 = oldBelief.getEventTime(); + TruthValue newTruth = newBelief.getTruth(); + TruthValue oldTruth = oldBelief.getTruth(); + if ((time1 != time2) && (time2 >= 0)) { + oldTruth = TruthFunctions.temporalCasting(oldTruth, time2, time1, Memory.currentTask.getSentence().getCreationTime()); + Term term1 = newBelief.getContent(); + Term term2 = oldBelief.getContent(); + if (term2.isTemporal() && (!term1.isTemporal() || (term2.getOrder() != term1.getOrder()))) { + oldTruth = TruthFunctions.temporalCasting(oldTruth, term2.getOrder(), term1.getOrder(), 0); + } } + TruthValue truth = TruthFunctions.revision(newTruth, oldTruth); + BudgetValue budget = BudgetFunctions.revise(newTruth, oldTruth, truth, feedbackToLinks); + Term content = newBelief.getContent(); + Memory.revisionTask(budget, content, truth, oldBelief, newBelief); } /** @@ -85,32 +88,39 @@ public static boolean revision(Task task, Judgment oldBelief, boolean feedbackTo */ public static void trySolution(Sentence problem, Judgment belief, Task task) { Judgment oldBest = problem.getBestSolution(); - if (betterSolution(belief, oldBest, problem)) { - problem.setBestSolution(belief); - BudgetValue budget = BudgetFunctions.solutionEval(problem, belief, task); - if ((budget != null) && budget.aboveThreshold()) { - Memory.activatedTask(budget, belief, problem.isInput()); + if (oldBest != null) { + float oldQ = solutionQuality(problem, oldBest); + float newQ = solutionQuality(problem, belief); + if (oldQ >= newQ) { + return; } } + problem.setBestSolution(belief); + BudgetValue budget = BudgetFunctions.solutionEval(problem, belief, task); + if ((budget != null) && budget.aboveThreshold()) { + Memory.activatedTask(budget, belief, problem.isInput()); + } } /** - * Compare the quality of two solutions - * @param newSol A new solution - * @param oldSol A old solution - * @param problem The problem - * @return Whether the new one is better + * Evaluate the quality of the judgment as a solution to a problem + * @param problem A goal or question + * @param solution The solution to be evaluated + * @return The quality of the judgment as the solution */ - private static boolean betterSolution(Judgment newSol, Judgment oldSol, Sentence problem) { - if (oldSol == null) { - return true; - } else { - if ((problem instanceof Question) && (problem.getTense() != null)) { - if(TemporalValue.closer(newSol.getTense(), oldSol.getTense(), problem.getTense())) { - return true; - } - } - return (newSol.solutionQuality(problem) > oldSol.solutionQuality(problem)); + public static float solutionQuality(Sentence problem, Judgment solution) { + long t1 = problem.getEventTime(); + long t2 = solution.getEventTime(); + TruthValue truth = solution.getTruth(); + if ((t2 != Stamp.ALWAYS) && (t1 != t2)) { + truth = TruthFunctions.temporalCasting(truth, t2, t1, problem.getCreationTime()); + } + if (problem instanceof Goal) { + return truth.getExpectation(); + } else if (problem.getContent().isConstant()) { // "yes/no" question + return truth.getConfidence(); + } else { // "what" question or goal + return truth.getExpectation() / solution.getContent().getComplexity(); } } @@ -121,14 +131,6 @@ private static boolean betterSolution(Judgment newSol, Judgment oldSol, Sentence public static void matchReverse() { Task task = Memory.currentTask; Judgment belief = Memory.currentBelief; - TemporalValue t1 = task.getContent().getOrder(); - TemporalValue t2 = belief.getContent().getOrder(); - if (((t1 == null) && (t2 != null)) || ((t1 != null) && (t2 == null))) { - return; - } - if ((t1 != t2) && (t1.getDelta() + t2.getDelta() != 0)) { - return; - } Sentence sentence = task.getSentence(); if (sentence.isJudgment()) { inferToSym((Judgment) sentence, belief); @@ -144,10 +146,10 @@ public static void matchReverse() { * @param figure location of the shared term */ public static void matchAsymSym(Sentence asym, Sentence sym, int figure) { - TemporalValue order1 = asym.getContent().getOrder(); - TemporalValue order2 = sym.getContent().getOrder(); - TemporalValue order = TemporalRules.syllogistic(order1, order2, figure); - if ((order1 != order2) && (order == null)) { + int order1 = asym.getContent().getOrder(); + int order2 = sym.getContent().getOrder(); + int order = SyllogisticRules.temporalSyllogism(order1, order2, figure); + if ((order1 != order2) && (order == 0)) { return; } if (Memory.currentTask.getSentence().isJudgment()) { @@ -172,11 +174,12 @@ private static void inferToSym(Judgment judgment1, Judgment judgment2) { if (s1 instanceof Inheritance) { content = Similarity.make(t1, t2); } else { - TemporalValue order = s1.getOrder(); - if ((order != null) && order.getDelta() < 0) - content = Equivalence.make(t1, t2, TemporalValue.getReverse(order)); - else - content = Equivalence.make(t1, t2, order); + int order = s1.getOrder(); + if (order < 0) { + content = Equivalence.make(t1, t2, true, - order); + } else { + content = Equivalence.make(t1, t2, judgment1.isTemporal(), order); + } } TruthValue value1 = judgment1.getTruth(); TruthValue value2 = judgment2.getTruth(); @@ -191,11 +194,11 @@ private static void inferToSym(Judgment judgment1, Judgment judgment2) { * @param asym The asymmetric premise * @param sym The symmetric premise */ - private static void inferToAsym(Judgment asym, Judgment sym, TemporalValue order) { + private static void inferToAsym(Judgment asym, Judgment sym, int order) { Statement statement = (Statement) asym.getContent(); Term sub = statement.getPredicate(); Term pre = statement.getSubject(); - Statement content = Statement.make(statement, sub, pre, order); + Statement content = Statement.make(statement, sub, pre, sym.isTemporal(), order); TruthValue truth = TruthFunctions.reduceConjunction(sym.getTruth(), asym.getTruth()); BudgetValue budget = BudgetFunctions.forward(truth); Memory.doublePremiseTask(budget, content, truth, sym, asym); @@ -220,9 +223,9 @@ private static void conversion() { private static void convertRelation() { TruthValue truth = Memory.currentBelief.getTruth(); if (((Statement) Memory.currentTask.getContent()).isCommutative()) { - truth = TruthFunctions.implied(truth); + truth = TruthFunctions.abduction(truth, 1.0f); } else { - truth = TruthFunctions.implying(truth); + truth = TruthFunctions.deduction(truth, 1.0f); } BudgetValue budget = BudgetFunctions.forward(truth); Memory.convertedJudgment(truth, budget); diff --git a/nars/inference/RuleTables.java b/nars/inference/RuleTables.java index 3f331fd7..5900dba5 100644 --- a/nars/inference/RuleTables.java +++ b/nars/inference/RuleTables.java @@ -264,11 +264,6 @@ private static void asymmetricAsymmetric(Sentence sentence, Judgment belief, int * @param figure The location of the shared term */ private static void asymmetricSymmetric(Sentence asym, Sentence sym, int figure) { - if (asym.getTense() == sym.getTense()) { - Memory.currentTense = asym.getTense(); - } else { - return; - } Statement asymSt = (Statement) asym.cloneContent(); Statement symSt = (Statement) sym.cloneContent(); Term t1, t2; @@ -327,11 +322,6 @@ private static void asymmetricSymmetric(Sentence asym, Sentence sym, int figure) * @param figure The location of the shared term */ private static void symmetricSymmetric(Judgment belief, Sentence taskSentence, int figure) { - if (taskSentence.getTense() == belief.getTense()) { - Memory.currentTense = taskSentence.getTense(); - } else { - return; - } Statement s1 = (Statement) belief.cloneContent(); Statement s2 = (Statement) taskSentence.cloneContent(); switch (figure) { @@ -361,7 +351,7 @@ private static void symmetricSymmetric(Judgment belief, Sentence taskSentence, i /* ----- conditional inferences ----- */ /** * The detachment rule, with variable unification - * @param mainSentence The premise that is an Implication or Equivalence + * @param originalMainSentence The premise that is an Implication or Equivalence * @param subSentence The premise that is the subject or predicate of the first one * @param index The location of the second premise in the first */ @@ -459,7 +449,7 @@ private static void compoundAndStatement(CompoundTerm compound, short index, Sta if (component.getClass() == statement.getClass()) { if ((compound instanceof Conjunction) && (Memory.currentBelief != null)) { if (Variable.unify(Variable.VarType.DEPENDENT, component, statement, compound, statement)) { - CompositionalRules.abdVarDepOuter(compound, component, statement.equals(beliefTerm)); + CompositionalRules.anaVarDepOuter(compound, component, statement.equals(beliefTerm)); } else if (task.getSentence().isJudgment()) { SyllogisticRules.introVarIndInner(statement, (Statement) component, compound); CompositionalRules.introVarDepInner(compound, component, statement); diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index ae07b164..d80f226b 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -11,7 +11,7 @@ * (at your option) any later version. * * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of + * but WITHOUT ANY WARRANTY; without even the abduction warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * @@ -24,7 +24,7 @@ import nars.entity.*; import nars.language.*; -import nars.main.Memory; +import nars.main.*; /** * Single-premise inference rules involving compound terms. @@ -32,6 +32,8 @@ */ public final class StructuralRules { + private static final float RELIANCE = Parameters.RELIANCE; + /* -------------------- transform between compounds and components -------------------- */ /** * { P>, S@(S&T)} |- <(S&T) --> (P&T)> @@ -51,17 +53,14 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta if (((side == 0) && components.contains(pred)) || ((side == 1) && components.contains(sub))) { return; } - float discount; if (side == 0) { sub = compound; components.set(index, pred); pred = CompoundTerm.make(compound, components); - discount = estimateCorrelation(pred); } else { components.set(index, sub); sub = CompoundTerm.make(compound, components); pred = compound; - discount = estimateCorrelation(sub); } if ((sub == null) || (pred == null)) { return; @@ -84,10 +83,9 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta } else { if (compound.size() > 1) { if (sentence.isJudgment()) { - truth = TruthFunctions.implying(truth, discount); + truth = TruthFunctions.deduction(truth, RELIANCE); } else { - assert (sentence instanceof Goal); - truth = TruthFunctions.implied(truth, discount); + return; } } budget = BudgetFunctions.compoundForward(truth, content); @@ -95,39 +93,6 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta Memory.singlePremiseTask(budget, content, truth, sentence); } - /** - * Estimate the correlation between the two components in a compound - * @param content One of the premises - * @param component1 One component - * @param component2 The other component - * @return The correlation discount, 1 means no correlation found, 0 for full correlation - */ - private static float estimateCorrelation(Term term) { - if (term instanceof CompoundTerm) { - CompoundTerm compound = (CompoundTerm) term; - if (compound.size() == 2) { - Statement s = null; - if ((compound instanceof IntersectionExt) || (compound instanceof IntersectionInt) - || (compound instanceof DifferenceExt) || (compound instanceof DifferenceInt)) { - s = Similarity.make(compound.componentAt(0), compound.componentAt(1)); - } else if ((compound instanceof Disjunction) || (compound instanceof Conjunction)) { - s = Equivalence.make(compound.componentAt(0), compound.componentAt(1), null); - } - if (s != null) { - Concept c = Memory.termToConcept(s); - if (c != null) { - Sentence b = c.getBelief(); - if (b != null) { - TruthValue tc = b.getTruth(); - return 1 - Math.abs(2 * tc.getExpectation() - 1); - } - } - } - } - } - return 1; - } - /** * {<(S&T) --> (P&T)>, S@(S&T)} |- P> * @param statement The premise @@ -176,10 +141,10 @@ static void structuralDecompose2(Statement statement) { } else { if (sub.size() > 1) { if (sentence.isJudgment()) { - truth = TruthFunctions.implied(truth); + return; } else { assert (sentence instanceof Goal); - truth = TruthFunctions.implying(truth); + truth = TruthFunctions.deduction(truth, RELIANCE); } } budget = BudgetFunctions.compoundForward(truth, content); @@ -213,35 +178,37 @@ static void structuralCompose1(CompoundTerm compound, short index, Statement sta Task task = Memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); + TruthValue truthDed = TruthFunctions.deduction(truth, RELIANCE); + TruthValue truthNDed = TruthFunctions.negation(TruthFunctions.deduction(truth, RELIANCE)); Term subj = statement.getSubject(); Term pred = statement.getPredicate(); if (component.equals(subj)) { if (compound instanceof IntersectionExt) { - structuralStatement(compound, pred, TruthFunctions.implying(truth)); + structuralStatement(compound, pred, truthDed); } else if (compound instanceof IntersectionInt) { - structuralStatement(compound, pred, TruthFunctions.implied(truth)); + return; } else if ((compound instanceof DifferenceExt) && (index == 0)) { - structuralStatement(compound, pred, TruthFunctions.implying(truth)); + structuralStatement(compound, pred, truthDed); } else if (compound instanceof DifferenceInt) { if (index == 0) { - structuralStatement(compound, pred, TruthFunctions.implied(truth)); + return; } else { - structuralStatement(compound, pred, TruthFunctions.negImply(truth)); + structuralStatement(compound, pred, truthNDed); } } } else if (component.equals(pred)) { if (compound instanceof IntersectionExt) { - structuralStatement(subj, compound, TruthFunctions.implied(truth)); + return; } else if (compound instanceof IntersectionInt) { - structuralStatement(subj, compound, TruthFunctions.implying(truth)); + structuralStatement(subj, compound, truthDed); } else if (compound instanceof DifferenceExt) { if (index == 0) { - structuralStatement(subj, compound, TruthFunctions.implied(truth)); + return; } else { - structuralStatement(subj, compound, TruthFunctions.negImply(truth)); + structuralStatement(subj, compound, truthNDed); } } else if ((compound instanceof DifferenceInt) && (index == 0)) { - structuralStatement(subj, compound, TruthFunctions.implying(truth)); + structuralStatement(subj, compound, truthDed); } } } @@ -260,35 +227,37 @@ static void structuralDecompose1(CompoundTerm compound, short index, Statement s Task task = Memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); + TruthValue truthDed = TruthFunctions.deduction(truth, RELIANCE); + TruthValue truthNDed = TruthFunctions.negation(TruthFunctions.deduction(truth, RELIANCE)); Term subj = statement.getSubject(); Term pred = statement.getPredicate(); if (compound.equals(subj)) { if (compound instanceof IntersectionExt) { - structuralStatement(component, pred, TruthFunctions.implied(truth)); + return; } else if (compound instanceof IntersectionInt) { - structuralStatement(component, pred, TruthFunctions.implying(truth)); + structuralStatement(component, pred, truthDed); } else if ((compound instanceof DifferenceExt) && (index == 0)) { - structuralStatement(component, pred, TruthFunctions.implied(truth)); + return; } else if (compound instanceof DifferenceInt) { if (index == 0) { - structuralStatement(component, pred, TruthFunctions.implying(truth)); + structuralStatement(component, pred, truthDed); } else { - structuralStatement(component, pred, TruthFunctions.negImply(truth)); + structuralStatement(component, pred, truthNDed); } } } else if (compound.equals(pred)) { if (compound instanceof IntersectionExt) { - structuralStatement(subj, component, TruthFunctions.implying(truth)); + structuralStatement(subj, component, truthDed); } else if (compound instanceof IntersectionInt) { - structuralStatement(subj, component, TruthFunctions.implied(truth)); + return; } else if (compound instanceof DifferenceExt) { if (index == 0) { - structuralStatement(subj, component, TruthFunctions.implying(truth)); + structuralStatement(subj, component, truthDed); } else { - structuralStatement(subj, component, TruthFunctions.negImply(truth)); + structuralStatement(subj, component, truthNDed); } } else if ((compound instanceof DifferenceInt) && (index == 0)) { - structuralStatement(subj, component, TruthFunctions.implied(truth)); + return; } } } @@ -408,7 +377,7 @@ static void transformProductImage(Inheritance inh, CompoundTerm oldContent, shor componentList = ((CompoundTerm) condition).cloneComponents(); componentList.set(indices[1], newInh); Term newCond = CompoundTerm.make((CompoundTerm) condition, componentList); - content = Implication.make(newCond, ((Statement) oldContent).getPredicate(), null); + content = Implication.make(newCond, ((Statement) oldContent).getPredicate(), false, 0); } else { componentList = oldContent.cloneComponents(); componentList.set(indices[0], newInh); @@ -457,9 +426,11 @@ static void structuralCompound(CompoundTerm compound, Term component, boolean co budget = BudgetFunctions.compoundBackward(content); } else { if ((sentence.isJudgment()) == (compoundTask == (compound instanceof Conjunction))) { - truth = TruthFunctions.implying(truth); + truth = TruthFunctions.deduction(truth, RELIANCE); + } else if (sentence instanceof Goal) { + truth = TruthFunctions.abduction(truth, RELIANCE); } else { - truth = TruthFunctions.implied(truth); + return; } budget = BudgetFunctions.forward(truth); } @@ -494,9 +465,9 @@ public static void transformNegation(Term content) { static void contraposition(Statement statement) { Term subj = statement.getSubject(); Term pred = statement.getPredicate(); - Term content = Statement.make(statement, Negation.make(pred), Negation.make(subj), TemporalValue.getReverse(statement.getOrder())); Task task = Memory.currentTask; Sentence sentence = task.getSentence(); + Term content = Statement.make(statement, Negation.make(pred), Negation.make(subj), sentence.isTemporal(), -statement.getOrder()); TruthValue truth = sentence.getTruth(); BudgetValue budget; if (sentence instanceof Question) { diff --git a/nars/inference/SyllogisticRules.java b/nars/inference/SyllogisticRules.java index e2a05260..24faa648 100644 --- a/nars/inference/SyllogisticRules.java +++ b/nars/inference/SyllogisticRules.java @@ -11,7 +11,7 @@ * (at your option) any later version. * * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of + * but WITHOUT ANY WARRANTY; without even the abduction warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * @@ -63,11 +63,13 @@ static void dedExe(Term term1, Term term2, Sentence sentence, Judgment belief) { budget1 = BudgetFunctions.forward(truth1); budget2 = BudgetFunctions.forward(truth2); } - TemporalValue order1 = sentence.getContent().getOrder(); - TemporalValue order2 = belief.getContent().getOrder(); - TemporalValue order = TemporalRules.syllogistic(order1, order2); - Statement content1 = Statement.make((Statement) sentence.getContent(), term1, term2, order); - Statement content2 = Statement.make((Statement) sentence.getContent(), term2, term1, TemporalValue.getReverse(order)); + int order1 = sentence.getContent().getOrder(); + int order2 = belief.getContent().getOrder(); + int order = temporalSyllogism(order1, order2, 21); + boolean temporal = (sentence.isTemporal() || belief.isTemporal()); + Statement content = (Statement) sentence.getContent(); + Statement content1 = Statement.make(content, term1, term2, temporal, order); + Statement content2 = Statement.make(content, term2, term1, temporal, -order); Memory.doublePremiseTask(budget1, content1, truth1, sentence, belief); Memory.doublePremiseTask(budget2, content2, truth2, belief, sentence); } @@ -110,19 +112,14 @@ static void abdIndCom(Term term1, Term term2, Sentence taskSentence, Judgment be budget2 = BudgetFunctions.forward(truth2); budget3 = BudgetFunctions.forward(truth3); } - TemporalValue order1 = st1.getOrder(); - TemporalValue order2 = st2.getOrder(); - TemporalValue order = TemporalRules.syllogistic(order1, order2, figure); -// if (tense == null) { -// tense = TemporalValue.WHEN; -// truth1 = TruthFunctions.temporalInduction(truth1); -// truth2 = TruthFunctions.temporalInduction(truth2); -// truth3 = TruthFunctions.temporalInduction(truth3); -// } + int order1 = st1.getOrder(); + int order2 = st2.getOrder(); + int order = temporalSyllogism(order1, order2, figure); + boolean temporal = (taskSentence.isTemporal() || belief.isTemporal()); Statement statement1, statement2, statement3; - statement1 = Statement.make(st1, term1, term2, order); - statement2 = Statement.make(st1, term2, term1, TemporalValue.getReverse(order)); - statement3 = Statement.makeSym(st1, term1, term2, order); + statement1 = Statement.make(st1, term1, term2, temporal, order); + statement2 = Statement.make(st1, term2, term1, temporal, -order); + statement3 = Statement.makeSym(st1, term1, term2, temporal, order); Memory.doublePremiseTask(budget1, statement1, truth1, taskSentence, belief); Memory.doublePremiseTask(budget2, statement2, truth2, belief, taskSentence); Memory.doublePremiseTask(budget3, statement3, truth3, taskSentence, belief); @@ -169,22 +166,23 @@ static void analogy(Term term1, Term term2, Sentence asym, Sentence sym, int fig } budget = BudgetFunctions.forward(truth); } - TemporalValue order1 = asymSt.getOrder(); - TemporalValue order2 = symSt.getOrder(); - TemporalValue order; + int order1 = asymSt.getOrder(); + int order2 = symSt.getOrder(); + int order; switch (figure) { case 11: case 12: - order = TemporalRules.syllogistic(order2, order1, figure); + order = temporalSyllogism(order2, order1, figure); break; case 21: case 22: - order = TemporalRules.syllogistic(order1, order2, figure); + order = temporalSyllogism(order1, order2, figure); break; default: return; } - Term content = Statement.make(asymSt, term1, term2, order); + boolean temporal = (asym.isTemporal() || sym.isTemporal()); + Term content = Statement.make(asymSt, term1, term2, temporal, order); Memory.doublePremiseTask(budget, content, truth, asym, sym); } @@ -204,7 +202,6 @@ static void resemblance(Term term1, Term term2, Judgment belief, Sentence senten Statement st2 = (Statement) sentence.getContent(); TruthValue truth = null; BudgetValue budget; - Task task = Memory.currentTask; if (sentence instanceof Question) { budget = BudgetFunctions.backward(belief.getTruth()); } else { @@ -215,10 +212,11 @@ static void resemblance(Term term1, Term term2, Judgment belief, Sentence senten } budget = BudgetFunctions.forward(truth); } - TemporalValue order1 = st1.getOrder(); - TemporalValue order2 = st2.getOrder(); - TemporalValue order = TemporalRules.syllogistic(order1, order2, figure); - Term statement = Statement.make(st1, term1, term2, order); + int order1 = st1.getOrder(); + int order2 = st2.getOrder(); + int order = temporalSyllogism(order1, order2, figure); + boolean temporal = (sentence.isTemporal() || belief.isTemporal()); + Term statement = Statement.make(st1, term1, term2, temporal, order); Memory.doublePremiseTask(budget, statement, truth, belief, sentence); } @@ -228,20 +226,16 @@ static void resemblance(Term term1, Term term2, Judgment belief, Sentence senten * {< S> ==> P>>, P>} |- S> * @param mainSentence The implication/equivalence premise * @param subSentence The premise on part of s1 - * @param s The location of s2 in s1 + * @param side The location of s2 in s1 */ - static void detachment(Sentence mainSentence, Sentence subSentence, int s) { + static void detachment(Sentence mainSentence, Sentence subSentence, int side) { Statement statement = (Statement) mainSentence.getContent(); Term subject = statement.getSubject(); Term predicate = statement.getPredicate(); - Term term = subSentence.getContent(); Term content; - int side; - if (term.equals(subject)) { - side = 0; + if (side == 0) { // term.equals(subject)) { content = predicate; - } else if (term.equals(predicate)) { - side = 1; + } else if (side == 1) { // term.equals(predicate)) { content = subject; } else { return; @@ -275,7 +269,7 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int s) { } } else { if (statement instanceof Equivalence) { - truth = TruthFunctions.analogy(truth1, truth2); + truth = TruthFunctions.analogy(truth2, truth1); } else if (side == 0) { truth = TruthFunctions.deduction(truth1, truth2); } else { @@ -284,17 +278,12 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int s) { } budget = BudgetFunctions.forward(truth); } - TemporalValue tense0 = subSentence.getTense(); - TemporalValue order0 = statement.getOrder(); - TemporalValue tense; - if (order0 == null) { - tense = tense0; - } else if (side == 0) { - tense = TemporalRules.tenseSyllogistic(tense0, subSentence.getCreationTime(), order0); + int dif = statement.getOrder(); + if (side == 0) { + Memory.newStamp.adjustEventTime(dif); } else { - tense = TemporalRules.tenseSyllogistic(tense0, subSentence.getCreationTime(), TemporalValue.getReverse(order0)); + Memory.newStamp.adjustEventTime(- dif); } - Memory.currentTense = tense; Memory.doublePremiseTask(budget, content, truth, mainSentence, subSentence); } @@ -314,23 +303,6 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, boolean deduction = (side != 0); HashMap substitute = Variable.findSubstitute(Variable.VarType.ALL, premise2, belief.getContent()); boolean conditionalTask = (substitute != null); - TemporalValue tense1 = (conditionalTask ? taskSentence.getTense() : belief.getTense()); - TemporalValue tense2 = (conditionalTask ? belief.getTense() : taskSentence.getTense()); - TemporalValue order1 = premise1.getOrder(); - TemporalValue order2 = premise2.getOrder(); - if ((side == -1) && (tense2 != null) && (tense2.getDelta() > 0)) { - return; - } - if ((side == 0) && (order2 != null) && (order2.getDelta() > 0)) { - return; - } - if ((side == 1) && (order2 != null) && (order2.getDelta() < 0)) { - return; - } - TemporalValue tense = TemporalRules.syllogistic(tense1, tense2); - if (tense != null) { - tense = new TemporalValue(0); - } Term commonComponent; Term newComponent = null; if (side == 0) { @@ -360,8 +332,10 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, } } Term content; + boolean temporal = (taskSentence.isTemporal() || belief.isTemporal()); + int order = premise1.getOrder() + premise2.getOrder(); if (newCondition != null) { - content = Statement.make(premise1, newCondition, premise1.getPredicate(), order1); + content = Statement.make(premise1, newCondition, premise1.getPredicate(), temporal, order); } else { content = premise1.getPredicate(); } @@ -395,7 +369,6 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, } budget = BudgetFunctions.forward(truth); } - Memory.currentTense = tense; Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); } @@ -414,8 +387,8 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s if (!(cond1 instanceof Conjunction) && !(cond2 instanceof Conjunction)) { return false; } - TemporalValue order1 = st1.getOrder(); - TemporalValue order2 = st2.getOrder(); + int order1 = st1.getOrder(); + int order2 = st2.getOrder(); if (order1 != order2) { return false; } @@ -433,6 +406,7 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s Task task = Memory.currentTask; Sentence sentence = task.getSentence(); Judgment belief = Memory.currentBelief; + boolean temporal = (sentence.isTemporal() || belief.isTemporal()); TruthValue value1 = sentence.getTruth(); TruthValue value2 = belief.getTruth(); boolean keepOrder = (Variable.findSubstitute(Variable.VarType.INDEPENDENT, st1, task.getContent()) != null); @@ -441,7 +415,7 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s BudgetValue budget; if (term1 != null) { if (term2 != null) { - content = Statement.make(st2, term2, term1, order2); + content = Statement.make(st2, term2, term1, temporal, order2); } else { content = term1; } @@ -463,7 +437,7 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s } if (term2 != null) { if (term1 != null) { - content = Statement.make(st1, term1, term2, order1); + content = Statement.make(st1, term1, term2, temporal, order1); } else { content = term2; } @@ -481,7 +455,6 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s } budget = BudgetFunctions.forward(truth); } - Memory.currentTense = null; Memory.doublePremiseTask(budget, content, truth, sentence, belief); } return true; @@ -509,17 +482,15 @@ private static Statement introVarInd(Sentence sentence1, Sentence sentence2, int state1 = Statement.make(premise1, premise1.getSubject(), v1); state2 = Statement.make(premise2, premise2.getSubject(), v2); } - TemporalValue tense1 = sentence1.getTense(); - TemporalValue tense2 = sentence2.getTense(); - TemporalValue tense = TemporalRules.tenseInduction(tense1, tense2); - if (tense == null) { - return null; - } + long time1 = sentence1.getEventTime(); // override Concept.getBelief? + long time2 = sentence2.getEventTime(); + int dif = (int) (time2 - time1); + boolean temporal = (sentence1.isTemporal() && sentence2.isTemporal()); Statement content; if (isImplication) { - content = Implication.make(state1, state2, tense); + content = Implication.make(state1, state2, temporal, dif); } else { - content = Equivalence.make(state1, state2, tense); + content = Equivalence.make(state1, state2, temporal, dif); } return content; } @@ -554,23 +525,17 @@ static void introVarIndInner(Statement premise1, Statement premise2, CompoundTer } Sentence belief = Memory.currentBelief; Term compound, content; - TemporalValue tense; TruthValue truth; if (premise1.equals(taskSentence.getContent())) { - truth = TruthFunctions.abduction(taskSentence.getTruth(), belief.getTruth()); - tense = TemporalRules.tenseInduction(taskSentence.getTense(), belief.getTense()); + truth = TruthFunctions.induction(belief.getTruth(), taskSentence.getTruth()); } else { - truth = TruthFunctions.abduction(belief.getTruth(), taskSentence.getTruth()); - tense = TemporalRules.tenseInduction(belief.getTense(), taskSentence.getTense()); + truth = TruthFunctions.induction(taskSentence.getTruth(), belief.getTruth()); } - if (tense == null) { - return; - } - if ((oldCompound instanceof Implication) && (tense == oldCompound.getOrder())) { + if (oldCompound instanceof Implication) { compound = Statement.make((Statement) oldCompound, oldCompound.componentAt(0), state2); content = Statement.make((Statement) oldCompound, state1, compound); } else if (oldCompound instanceof Conjunction) { - compound = Implication.make(state1, state2, tense); + compound = Implication.make(state1, state2, false, 0); content = CompoundTerm.replaceComponent(oldCompound, premise2, compound); } else { return; @@ -583,16 +548,10 @@ static void introVarIndInner(Statement premise1, Statement premise2, CompoundTer * { S>, P>} |- { P>,

    S>, P>} * @param task1 The first premise * @param task2 The second premise - * @param order Temporal order of the terms in conclusion */ - public static void temporalIndCom(Task task1, Task task2, TemporalValue order) { + public static void temporalIndCom(Task task1, Task task2) { Judgment judg1 = (Judgment) task1.getSentence(); Judgment judg2 = (Judgment) task2.getSentence(); - Stamp stamp = Stamp.make(judg1.getStamp(), judg2.getStamp()); - if (stamp == null) { - return; - } - Memory.currentStamp = stamp; Term term1 = judg1.getContent(); Term term2 = judg2.getContent(); if ((term1 instanceof Inheritance) && (term2 instanceof Inheritance)) { @@ -627,9 +586,12 @@ public static void temporalIndCom(Task task1, Task task2, TemporalValue order) { } } } - Statement statement1 = Implication.make(term1, term2, order); - Statement statement2 = Implication.make(term2, term1, TemporalValue.getReverse(order)); - Statement statement3 = Equivalence.make(term1, term2, order); + long time1 = judg1.getEventTime(); + long time2 = judg2.getEventTime(); + int distance = (int) (time2 - time1); + Statement statement1 = Implication.make(term1, term2, true, distance); + Statement statement2 = Implication.make(term2, term1, true, -distance); + Statement statement3 = Equivalence.make(term1, term2, true, distance); TruthValue value1 = judg1.getTruth(); TruthValue value2 = judg2.getTruth(); TruthValue truth1 = TruthFunctions.induction(value1, value2); @@ -638,9 +600,30 @@ public static void temporalIndCom(Task task1, Task task2, TemporalValue order) { BudgetValue budget1 = BudgetFunctions.temporalIndCom(task1.getBudget(), task2.getBudget(), truth1); BudgetValue budget2 = BudgetFunctions.temporalIndCom(task1.getBudget(), task2.getBudget(), truth2); BudgetValue budget3 = BudgetFunctions.temporalIndCom(task1.getBudget(), task2.getBudget(), truth3); - Memory.currentTense = new TemporalValue(0); Memory.doublePremiseTask(budget1, statement1, truth1, judg1, judg2); Memory.doublePremiseTask(budget2, statement2, truth2, judg2, judg1); Memory.doublePremiseTask(budget3, statement3, truth3, judg1, judg2); } + + /** + * Temporal inference in syllogism, with figure + * @param r1 The first premise, containing the subject of the conclusion + * @param r2 The second premise, containing the predicate of the conclusion + * @param figure The location of the shared term + * @return The temporal order in the conclusion + */ + public static int temporalSyllogism(int r1, int r2, int figure) { + switch (figure) { + case 11: + return -r1 + r2; + case 12: + return -r1 - r2; + case 21: + return r1 + r2; + case 22: + return r1 - r2; + default: + return 0; + } + } } diff --git a/nars/inference/TemporalRules.java b/nars/inference/TemporalRules.java deleted file mode 100644 index 9acfdd96..00000000 --- a/nars/inference/TemporalRules.java +++ /dev/null @@ -1,155 +0,0 @@ -/* - * TemporalRules.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ -package nars.inference; - -import java.util.*; - -import nars.entity.*; -import nars.main.*; -import nars.language.Term; -/** - * Temporal inference rules - *

    - * These rules are independent of the semantic and symtactic inference rules. - */ -public class TemporalRules { - - /** - * Temporal relationships among three terms - * @param r12 Temporal TemporalValueship from term1 to term2 - * @param r23 Temporal TemporalValueship from term2 to term3 - * @return Temporal TemporalValueship from term1 to term3 - */ - public static TemporalValue syllogistic(TemporalValue r12, TemporalValue r23) { - if ((r12 == null) && (r23 == null)) { - return null; - } - int i12 = (r12 == null) ? 0 : r12.getDelta(); - int i23 = (r23 == null) ? 0 : r23.getDelta(); - int i13 = i12 + i23; - return new TemporalValue(i13); - } - - /** - * Temporal relationships among three terms, with creasion time - * @param r12 Temporal TemporalValueship from term1 to term2 - * @param time1 Creation time of the first premise - * @param r23 Temporal TemporalValueship from term2 to term3 - * @return Temporal TemporalValueship from term1 to term3 - */ - public static TemporalValue tenseSyllogistic(TemporalValue r12, long time1, TemporalValue r23) { - if ((r12 == null) && (r23 == null)) { - return null; - } - int i12 = (r12 == null) ? 0 : r12.getDelta(); - int i23 = (r23 == null) ? 0 : r23.getDelta(); - int i13 = (int) (time1 + i12 + i23 - Center.getTime()); - return new TemporalValue(i13); - } - - /** - * Temporal inference in syllogism, with figure - * @param r1 The first premise, containing the subject of the conclusion - * @param r2 The second premise, containing the predicate of the conclusion - * @param figure The location of the shared term - * @return The temporal order in the conclusion - */ - public static TemporalValue syllogistic(TemporalValue r1, TemporalValue r2, int figure) { - if ((r1 == null) && (r2 == null)) { - return null; - } - switch (figure) { - case 11: - return syllogistic(TemporalValue.getReverse(r1), r2); - case 12: - return syllogistic(TemporalValue.getReverse(r1), TemporalValue.getReverse(r2)); - case 21: - return syllogistic(r1, r2); - case 22: - return syllogistic(r1, TemporalValue.getReverse(r2)); - default: - return null; - } - } - - // called in variable introduction - /** - * The temporal inference on tenses - * @param tense1 The tense of the first premise - * @param tense2 The tense of the second premise - * @return The tense of the conclusion - */ - public static TemporalValue tenseInduction(TemporalValue tense1, TemporalValue tense2) { - if ((tense1 == null) || (tense2 == null)) { - return null; - } - int i1 = tense1.getDelta(); - int i2 = tense2.getDelta(); - int i = i2 - i1; - return new TemporalValue(i); - } - - /** - * Belief temporalRevision - *

    - * called from Concept.reviseTable and match - * @param newBelief The new belief - * @param oldBelief The previous belief with the same content - * @param time The target time of the statement - * @param feedbackToLinks Whether to send feedback to the links - * @return Whether temporalRevision happened - */ - public static boolean temporalRevision(Judgment newBelief, Judgment oldBelief, long time, boolean feedbackToLinks) { - TruthValue tTruth = newBelief.getTruth(); - TruthValue bTruth = oldBelief.getTruth(); - long time1 = newBelief.getCreationTime(); - long time2 = oldBelief.getCreationTime(); - TruthValue truth = TruthFunctions.temporalRevision(tTruth, bTruth, time1, time2, time); - BudgetValue budget = BudgetFunctions.revise(tTruth, bTruth, truth, Memory.currentTask, feedbackToLinks); - Term content = newBelief.getContent(); - Memory.currentTense = new TemporalValue((int) (time - Center.getTime())); - Memory.doublePremiseTask(budget, content, truth, oldBelief, newBelief); - return true; - } - - /** - * If the two beliefs have compatible temporal information - * @param belief1 - * @param belief2 - * @return If the two can be considered as about the same time - */ - public static boolean sameTime(Judgment belief1, Judgment belief2) { - TemporalValue tense1 = belief1.getTense(); - TemporalValue tense2 = belief2.getTense(); - if ((tense1 == null) || (tense2 == null)) { - Memory.currentTense = null; - } else { - long time1 = belief1.getEventTime(); - long time2 = belief2.getEventTime(); - if (time1 != time2) { - return false; - } - long time = Center.getTime(); - Memory.currentTense = new TemporalValue((int) (time1 - time)); - } - return true; - } -} diff --git a/nars/inference/TruthFunctions.java b/nars/inference/TruthFunctions.java index 39d7ed3f..51867034 100644 --- a/nars/inference/TruthFunctions.java +++ b/nars/inference/TruthFunctions.java @@ -11,25 +11,23 @@ * (at your option) any later version. * * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of + * but WITHOUT ANY WARRANTY; without even the abduction warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Open-NARS. If not, see . */ - package nars.inference; -import nars.entity.TruthValue; +import nars.entity.*; /** * All truth-value (and desire-value) functions used in inference rules */ public final class TruthFunctions extends UtilityFunctions { - - /* ----- Single argument functions, called in MatchingRules ----- */ + /* ----- Single argument functions, called in MatchingRules ----- */ /** * { B>} |- A> * @param v1 Truth value of the premise @@ -42,9 +40,8 @@ static TruthValue conversion(TruthValue v1) { float c = w2c(w); return new TruthValue(1, c); } - - /* ----- Single argument functions, called in StructuralRules ----- */ + /* ----- Single argument functions, called in StructuralRules ----- */ /** * {A} |- (--A) * @param v1 Truth value of the premise @@ -55,7 +52,7 @@ static TruthValue negation(TruthValue v1) { float c = v1.getConfidence(); return new TruthValue(f, c); } - + /** * { B>} |- <(--, B) ==> (--, A)> * @param v1 Truth value of the premise @@ -64,66 +61,12 @@ static TruthValue negation(TruthValue v1) { static TruthValue contraposition(TruthValue v1) { float f1 = v1.getFrequency(); float c1 = v1.getConfidence(); - float w = and(1-f1, c1); + float w = and(1 - f1, c1); float c = w2c(w); return new TruthValue(0, c); } - - /** - * { B>, A} |- B - * @param v1 Truth value of the premise - * @return Truth value of the conclusion - */ - static TruthValue implying(TruthValue v1) { - return implying(v1, w2c(1)); - } - - /** - * { B>, A} |- B - * @param v1 Truth value of the premise - * @param discount Confidence discount factor for new CompoundTerm - * @return Truth value of the conclusion - */ - static TruthValue implying(TruthValue v1, float discount) { - float f1 = v1.getFrequency(); - float c1 = v1.getConfidence(); - float c = and(f1, c1) * discount; - return new TruthValue(f1, c); - } - - /** - * { B>, B} |- A - * @param v1 Truth value of the premise - * @return Truth value of the conclusion - */ - static TruthValue implied(TruthValue v1) { - return implied(v1, w2c(1)); - } - - /** - * { B>, B} |- A - * @param v1 Truth value of the premise - * @param discount Confidence discount factor for new CompoundTerm - * @return Truth value of the conclusion - */ - static TruthValue implied(TruthValue v1, float discount) { - float f1 = v1.getFrequency(); - float c1 = v1.getConfidence(); - float c = w2c(c1) * discount; - return new TruthValue(f1, c); - } - - /** - * { (--, B)>, A} |- B - * @param v1 Truth value of the premise - * @return Truth value of the conclusion - */ - static TruthValue negImply(TruthValue v1) { - return negation(implying(v1)); - } /* ----- double argument functions, called in MatchingRules ----- */ - /** * { P>, P>} |- P> * @param v1 Truth value of the first premise @@ -144,30 +87,27 @@ static TruthValue revision(TruthValue v1, TruthValue v2) { } /** - * Revision weighted by time difference - * @param v1 Truth value of the first premise - * @param v2 Truth value of the second premise - * @param t1 Creation time of the first truth value - * @param t2 Creation time of the second truth value - * @param t Target time of the resulting truth value - * @return Truth value of the conclusion + * Casting truth-value v1 from moment t1 to moment t2, with respect to time t + * @param v1 Truth value of the premise to be casted + * @param t1 Source time + * @param t2 Target time + * @param t Reference time + * @return Truth value after temporal discount */ - static TruthValue temporalRevision(TruthValue v1, TruthValue v2, long t1, long t2, long t) { + public static TruthValue temporalCasting(TruthValue v1, long t1, long t2, long t) { float f1 = v1.getFrequency(); - float f2 = v2.getFrequency(); float c1 = v1.getConfidence(); - float c2 = v2.getConfidence(); - float w1 = c2w(c1); - float w2 = c2w(c2); - float d1 = w1 / (Math.abs(t - t1) + 1); - float d2 = w2 / (Math.abs(t - t2) + 1); - float f = (d1 * f1 + d2 * f2) / (d1 + d2); - float c = w2c(w1 + w2); - return new TruthValue(f, c); + float c = w2c(c1); + if (t2 != Stamp.ALWAYS) { + float c2 = c1 * (1 - Math.abs(t1 - t2) / (float) (Math.abs(t - t1) + Math.abs(t - t2))); + if (c2 > c) { + c = c2; + } + } + return new TruthValue(f1, c); } /* ----- double argument functions, called in SyllogisticRules ----- */ - /** * { M>, P>} |- P> * @param v1 Truth value of the first premise @@ -183,6 +123,20 @@ static TruthValue deduction(TruthValue v1, TruthValue v2) { float c = and(c1, c2, f); return new TruthValue(f, c); } + + /** + * {M, P>} |- P + * @param v1 Truth value of the first premise + * @param reliance Confidence of the second (analytical) premise + * @return Truth value of the conclusion + */ + static TruthValue deduction(TruthValue v1, float reliance) { + float f1 = v1.getFrequency(); + float c1 = v1.getConfidence(); + float c = and(f1, c1, reliance); + return new TruthValue(f1, c); + } + /** * { M>, P>} |- P> * @param v1 Truth value of the first premise @@ -198,7 +152,7 @@ static TruthValue analogy(TruthValue v1, TruthValue v2) { float c = and(c1, c2, f2); return new TruthValue(f, c); } - + /** * { M>, P>} |- P> * @param v1 Truth value of the first premise @@ -214,7 +168,7 @@ static TruthValue resemblance(TruthValue v1, TruthValue v2) { float c = and(c1, c2, or(f1, f2)); return new TruthValue(f, c); } - + /** * { M>,

    M>} |- P> * @param v1 Truth value of the first premise @@ -230,7 +184,21 @@ static TruthValue abduction(TruthValue v1, TruthValue v2) { float c = w2c(w); return new TruthValue(f1, c); } - + + /** + * {M,

    M>} |- P + * @param v1 Truth value of the first premise + * @param reliance Confidence of the second (analytical) premise + * @return Truth value of the conclusion + */ + static TruthValue abduction(TruthValue v1, float reliance) { + float f1 = v1.getFrequency(); + float c1 = v1.getConfidence(); + float w = and(c1, reliance); + float c = w2c(w); + return new TruthValue(f1, c); + } + /** * { S>, P>} |- P> * @param v1 Truth value of the first premise @@ -240,7 +208,7 @@ static TruthValue abduction(TruthValue v1, TruthValue v2) { static TruthValue induction(TruthValue v1, TruthValue v2) { return abduction(v2, v1); } - + /** * { S>,

    M>} |- P> * @param v1 Truth value of the first premise @@ -256,7 +224,7 @@ static TruthValue exemplification(TruthValue v1, TruthValue v2) { float c = w2c(w); return new TruthValue(1, c); } - + /** * { S>, P>} |- P> * @param v1 Truth value of the first premise @@ -269,15 +237,13 @@ static TruthValue comparison(TruthValue v1, TruthValue v2) { float c1 = v1.getConfidence(); float c2 = v2.getConfidence(); float f0 = or(f1, f2); - float f = (f0 == 0) ? 0 : (and(f1, f2) / f0) ; + float f = (f0 == 0) ? 0 : (and(f1, f2) / f0); float w = and(f0, c1, c2); float c = w2c(w); return new TruthValue(f, c); } - - + /* ----- desire-value functions, called in SyllogisticRules ----- */ - /** * A function specially designed for desire value [To be refined] * @param v1 Truth value of the first premise @@ -293,7 +259,7 @@ static TruthValue desireStrong(TruthValue v1, TruthValue v2) { float c = and(c1, c2, f2); return new TruthValue(f, c); } - + /** * A function specially designed for desire value [To be refined] * @param v1 Truth value of the first premise @@ -309,7 +275,7 @@ static TruthValue desireWeak(TruthValue v1, TruthValue v2) { float c = and(c1, c2, f2, w2c(1.0f)); return new TruthValue(f, c); } - + /** * A function specially designed for desire value [To be refined] * @param v1 Truth value of the first premise @@ -325,7 +291,7 @@ static TruthValue desireDed(TruthValue v1, TruthValue v2) { float c = and(c1, c2); return new TruthValue(f, c); } - + /** * A function specially designed for desire value [To be refined] * @param v1 Truth value of the first premise @@ -341,9 +307,8 @@ static TruthValue desireInd(TruthValue v1, TruthValue v2) { float c = w2c(w); return new TruthValue(f1, c); } - + /* ----- double argument functions, called in CompositionalRules ----- */ - /** * { S>, P>} |- (S|P)> * @param v1 Truth value of the first premise @@ -351,53 +316,31 @@ static TruthValue desireInd(TruthValue v1, TruthValue v2) { * @return Truth value of the conclusion */ static TruthValue union(TruthValue v1, TruthValue v2) { - return union(v1, v2, 1); - } - - /** - * { S>, P>} |- (S|P)> - * @param v1 Truth value of the first premise - * @param v2 Truth value of the second premise - * @param discount Confidence discount factor for new CompoundTerm - * @return Truth value of the conclusion - */ - static TruthValue union(TruthValue v1, TruthValue v2, float discount) { float f1 = v1.getFrequency(); float f2 = v2.getFrequency(); float c1 = v1.getConfidence(); float c2 = v2.getConfidence(); float f = or(f1, f2); float c = or(and(f1, c1), and(f2, c2)) + and(1 - f1, 1 - f2, c1, c2); - return new TruthValue(f, c * discount); - } - - /** - * { S>, P>} |- (S&P)> - * @param v1 Truth value of the first premise - * @param v2 Truth value of the second premise - * @return Truth value of the conclusion - */ - static TruthValue intersection(TruthValue v1, TruthValue v2) { - return intersection(v1, v2, 1); + return new TruthValue(f, c); } /** * { S>, P>} |- (S&P)> * @param v1 Truth value of the first premise * @param v2 Truth value of the second premise - * @param discount Confidence discount factor for new CompoundTerm * @return Truth value of the conclusion */ - static TruthValue intersection(TruthValue v1, TruthValue v2, float discount) { + static TruthValue intersection(TruthValue v1, TruthValue v2) { float f1 = v1.getFrequency(); float f2 = v2.getFrequency(); float c1 = v1.getConfidence(); float c2 = v2.getConfidence(); float f = and(f1, f2); float c = or(and(1 - f1, c1), and(1 - f2, c2)) + and(f1, f2, c1, c2); - return new TruthValue(f, c * discount); + return new TruthValue(f, c); } - + /** * { S>, P>} |- (S-P)> * @param v1 Truth value of the first premise @@ -406,21 +349,9 @@ static TruthValue intersection(TruthValue v1, TruthValue v2, float discount) { */ static TruthValue difference(TruthValue v1, TruthValue v2) { TruthValue v0 = negation(v2); - return intersection(v1, v0, 1); + return intersection(v1, v0); } - /** - * { S>, P>} |- (S-P)> - * @param v1 Truth value of the first premise - * @param v2 Truth value of the second premise - * @param discount Confidence discount factor for new CompoundTerm - * @return Truth value of the conclusion - */ - static TruthValue difference(TruthValue v1, TruthValue v2, float discount) { - TruthValue v0 = negation(v2); - return intersection(v1, v0, discount); - } - /** * {(||, A, B), (--, B)} |- A * @param v1 Truth value of the first premise @@ -429,9 +360,9 @@ static TruthValue difference(TruthValue v1, TruthValue v2, float discount) { */ static TruthValue reduceDisjunction(TruthValue v1, TruthValue v2) { TruthValue v0 = intersection(v1, negation(v2)); - return implying(v0); + return deduction(v0, 1f); } - + /** * {(--, (&&, A, B)), B} |- (--, A) * @param v1 Truth value of the first premise @@ -439,10 +370,10 @@ static TruthValue reduceDisjunction(TruthValue v1, TruthValue v2) { * @return Truth value of the conclusion */ static TruthValue reduceConjunction(TruthValue v1, TruthValue v2) { - TruthValue v0 = intersection(negation(v1), v2, 1); - return negation(implying(v0)); + TruthValue v0 = intersection(negation(v1), v2); + return negation(deduction(v0, 1f)); } - + /** * {(--, (&&, A, (--, B))), (--, B)} |- (--, A) * @param v1 Truth value of the first premise @@ -452,14 +383,17 @@ static TruthValue reduceConjunction(TruthValue v1, TruthValue v2) { static TruthValue reduceConjunctionNeg(TruthValue v1, TruthValue v2) { return reduceConjunction(v1, negation(v2)); } - + /** * {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P> * @param v1 Truth value of the first premise * @param v2 Truth value of the second premise * @return Truth value of the conclusion */ - static TruthValue existAnalogy(TruthValue v1, TruthValue v2) { - return abduction(v1, v2); + static TruthValue anonymousAnalogy(TruthValue v1, TruthValue v2) { + float f1 = v1.getFrequency(); + float c1 = v1.getConfidence(); + TruthValue v0 = new TruthValue(f1, w2c(c1)); + return analogy(v2, v0); } } diff --git a/nars/inference/UtilityFunctions.java b/nars/inference/UtilityFunctions.java index ab10278e..7335ea4c 100644 --- a/nars/inference/UtilityFunctions.java +++ b/nars/inference/UtilityFunctions.java @@ -85,7 +85,7 @@ public static float aveGeo(float... arr) { * @return The corresponding confidence, in [0, 1) */ public static float w2c(float w) { - return w / (w + Parameters.NEAR_FUTURE); + return w / (w + Parameters.HORIZON); } /** @@ -94,7 +94,7 @@ public static float w2c(float w) { * @return The corresponding weight of evidence, a non-negative real number */ public static float c2w(float c) { - return Parameters.NEAR_FUTURE * c / (1 - c); + return Parameters.HORIZON * c / (1 - c); } } diff --git a/nars/io/StringParser.java b/nars/io/StringParser.java index 2781ff99..a9ef0f1b 100644 --- a/nars/io/StringParser.java +++ b/nars/io/StringParser.java @@ -83,15 +83,15 @@ public static void parseTask(String s) { String str = buffer.toString().trim(); int last = str.length() - 1; char punc = str.charAt(last); - TruthValue truth = parseTruth(truthString, punc); - Term content = parseTerm(str.substring(0, last)); - Stamp stamp = new Stamp(); - Sentence sentence = null; - if (tense.length() == 0) { - sentence = Sentence.make(content, punc, truth, stamp, null, null, null); + Stamp stamp; + if (tense.length() > 0) { + stamp = new Stamp(tense); } else { - sentence = Sentence.make(content, punc, truth, stamp, new TemporalValue(tense), null, null); + stamp = new Stamp(); } + TruthValue truth = parseTruth(truthString, punc); + Term content = parseTerm(str.substring(0, last)); + Sentence sentence = Sentence.make(content, punc, truth, stamp, null, null); if (sentence == null) { throw new InvalidInputException("invalid sentence"); } @@ -152,18 +152,15 @@ private static String parseTense(StringBuffer s) { */ private static String getTruthString(StringBuffer s) throws InvalidInputException { int last = s.length() - 1; - if (s.charAt(last) != TRUTH_VALUE_MARK) // use default - { + if (s.charAt(last) != TRUTH_VALUE_MARK) { // use default return null; } int first = s.indexOf(TRUTH_VALUE_MARK + ""); // looking for the beginning - if (first == last) // no matching closer - { + if (first == last) { // no matching closer throw new InvalidInputException("missing truth mark"); } String truthString = s.substring(first + 1, last).trim(); - if (truthString.length() == 0) // empty usage - { + if (truthString.length() == 0) { // empty usage throw new InvalidInputException("empty truth"); } s.delete(first, last + 1); // remaining input to be processed outside diff --git a/nars/language/CompoundTerm.java b/nars/language/CompoundTerm.java index 41490091..e0ce4d5a 100644 --- a/nars/language/CompoundTerm.java +++ b/nars/language/CompoundTerm.java @@ -192,10 +192,13 @@ public static Term make(String op, ArrayList arg) { return Disjunction.make(arg); } if (op.equals(Symbols.CONJUNCTION_OPERATOR)) { - return Conjunction.make(arg, null); + return Conjunction.make(arg, -1); } - if (op.equals(Symbols.SEQUENCE_OPERATOR) || op.equals(Symbols.PARALLEL_OPERATOR)) { - return Conjunction.make(arg, new TemporalValue(op)); + if (op.equals(Symbols.SEQUENCE_OPERATOR)) { + return Conjunction.make(arg, 1); + } + if (op.equals(Symbols.PARALLEL_OPERATOR)) { + return Conjunction.make(arg, 0); } } if (isBuiltInOperator(op)) { @@ -364,13 +367,20 @@ public int getComplexity() { public boolean isConstant() { return (openVariables == null); } + /** + * check if the term contains any variable + * @return if the name contains no variable + */ + public boolean containNoVariable() { + return (name.indexOf(Symbols.VARIABLE_TAG) < 0); + } /** * Check if the order of the components matters *

    - * commutative CompoundTerms: Sets, Intersections; - * communative Statements: Similarity, Equivalence, EquivalenceWhen; - * communative CompoundStatements: Disjunction, Conjunction, ConjunctionParallel + * commutative CompoundTerms: Sets, Intersections + * communative Statements: Similarity, Equivalence (except the one with a temporal order) + * communative CompoundStatements: Disjunction, Conjunction (except the one with a temporal order) * @return The default value is false */ public boolean isCommutative() { @@ -726,4 +736,3 @@ private void prepareComponentLinks(ArrayList componentLinks, short typ } } } - diff --git a/nars/language/Conjunction.java b/nars/language/Conjunction.java index af614bef..a0f76ae6 100644 --- a/nars/language/Conjunction.java +++ b/nars/language/Conjunction.java @@ -22,7 +22,6 @@ import java.util.*; -import nars.entity.TemporalValue; import nars.io.Symbols; import nars.main.Memory; @@ -32,9 +31,9 @@ public class Conjunction extends CompoundTerm { /** - * Temporal order between the components + * Temporal order between the components: 1 for sequential, 0 for parallel, -1 for N/A */ - private TemporalValue temporalOrder = null; + private int temporalOrder = -1; /** * Constructor with partial values, called by make @@ -42,9 +41,10 @@ public class Conjunction extends CompoundTerm { * @param arg The component list of the term * @param order The temporal order of the components */ - protected Conjunction(String n, ArrayList arg, TemporalValue order) { + protected Conjunction(String n, ArrayList arg, int order) { super(n, arg); temporalOrder = order; + name = makeName(); // repeat to get the temporal operator } /** @@ -55,9 +55,10 @@ protected Conjunction(String n, ArrayList arg, TemporalValue order) { * @param i Syntactic complexity of the compound * @param order The temporal order of the components */ - protected Conjunction(String n, ArrayList cs, ArrayList open, short i, TemporalValue order) { + protected Conjunction(String n, ArrayList cs, ArrayList open, short i, int order) { super(n, cs, open, i); temporalOrder = order; + name = makeName(); // repeat to get the temporal operator } /** @@ -82,14 +83,11 @@ public String operator() { * @param t The given temporal value * @return String representation of the order */ - public static String getConjunctionSymbol(TemporalValue t) { - if (t == null) + public static String getConjunctionSymbol(int t) { + if (t == -1) return Symbols.CONJUNCTION_OPERATOR; - int delta = t.getDelta(); - if (delta > 0) + if (t == 1) return Symbols.SEQUENCE_OPERATOR; - if (delta < 0) - return "ERROR: UNKNOWN CONJUNCTION"; return Symbols.PARALLEL_OPERATOR; } @@ -99,7 +97,7 @@ public static String getConjunctionSymbol(TemporalValue t) { */ @Override public boolean isCommutative() { - return ((temporalOrder == null) || (temporalOrder.getDelta() == 0)); + return (temporalOrder < 1); } @@ -108,7 +106,7 @@ public boolean isCommutative() { * @return Temporal order of the components */ @Override - public TemporalValue getOrder() { + public int getOrder() { return temporalOrder; } @@ -118,14 +116,7 @@ public TemporalValue getOrder() { * @return If the term is a paralel conjunction */ public static boolean isParallel(Term t) { - if (t instanceof Conjunction) { - Conjunction c = (Conjunction) t; - TemporalValue temp = c.getOrder(); - if (temp != null && (temp.getDelta() == 0)) { - return true; - } - } - return false; + return ((t instanceof Conjunction) && (((Conjunction) t).getOrder() == 0)); } /** @@ -134,14 +125,12 @@ public static boolean isParallel(Term t) { * @return If the term is a sequential conjunction */ public static boolean isSequence(Term t) { - if (t instanceof Conjunction) { - Conjunction c = (Conjunction) t; - TemporalValue temp = c.getOrder(); - if (temp != null && (temp.getDelta() == 1)) { - return true; - } - } - return false; + return ((t instanceof Conjunction) && (((Conjunction) t).getOrder() == 1)); + } + + @Override + public boolean isTemporal() { + return (temporalOrder >= 0); } /** @@ -150,9 +139,13 @@ public static boolean isSequence(Term t) { * @param argList the list of arguments * @param order The temporal order of the components */ - public static Term make(ArrayList argList, TemporalValue order) { - if ((order != null) && (order.getDelta() > 0)) { - String name = makeCompoundName(Symbols.SEQUENCE_OPERATOR, argList); + public static Term make(ArrayList argList, int order) { + if (order == 1) { + String name; + if (argList.size() == 1) { + return argList.get(0); + } + name = makeCompoundName(Symbols.SEQUENCE_OPERATOR, argList); Term t = Memory.nameToListedTerm(name); return (t != null) ? t : new Conjunction(name, argList, order); } else { @@ -167,7 +160,7 @@ public static Term make(ArrayList argList, TemporalValue order) { * @param order The temporal order of the components * @return the Term generated from the arguments */ - public static Term make(TreeSet set, TemporalValue order) { + public static Term make(TreeSet set, int order) { if (set.isEmpty()) { return null; } // special case: no component @@ -190,8 +183,8 @@ public static Term make(TreeSet set, TemporalValue order) { * @return A compound generated or a term it reduced to */ @SuppressWarnings("unchecked") - public static Term make(Term term1, Term term2, TemporalValue order) { - if ((order != null) && order.getDelta() > 0) { + public static Term make(Term term1, Term term2, int order) { + if (order == 1) { ArrayList argument; if (isSequence(term2)) { // to be refined to check other cases argument = ((CompoundTerm) term2).cloneComponents(); @@ -204,7 +197,7 @@ public static Term make(Term term1, Term term2, TemporalValue order) { return make(argument, order); } else { // to be refined to check other cases TreeSet set; - if ((order != null) && (order.getDelta() == 0)) { + if (order == 0) { if (isParallel(term1)) { set = new TreeSet(((CompoundTerm) term1).cloneComponents()); if (isParallel(term2)) { diff --git a/nars/language/Equivalence.java b/nars/language/Equivalence.java index 17cc39a9..f94c7da9 100644 --- a/nars/language/Equivalence.java +++ b/nars/language/Equivalence.java @@ -22,7 +22,6 @@ import java.util.*; -import nars.entity.TemporalValue; import nars.io.Symbols; import nars.main.Memory; @@ -32,9 +31,22 @@ public class Equivalence extends Statement { /** - * Temporal order between the components + * Whether there is a temporal order between the components */ - private TemporalValue temporalOrder = null; + private boolean isTemporal = false; + /** + * Temporal distance between the components + */ + private int temporalDistance = 0; + + /** + * Constructor with partial values, called by make + * @param n The name of the term + * @param arg The component list of the term + */ + protected Equivalence(String n, ArrayList arg) { + super(n, arg); + } /** * Constructor with partial values, called by make @@ -42,9 +54,22 @@ public class Equivalence extends Statement { * @param arg The component list of the term * @param order The temporal order of the components */ - protected Equivalence(String n, ArrayList arg, TemporalValue order) { + protected Equivalence(String n, ArrayList arg, int order) { super(n, arg); - temporalOrder = order; + isTemporal = true; + temporalDistance = order; + name = makeName(); // repeat to get the temporal operator + } + + /** + * Constructor with full values, called by clone + * @param n The name of the term + * @param cs Component list + * @param open Open variable list + * @param i Syntactic complexity of the compound + */ + protected Equivalence(String n, ArrayList cs, ArrayList open, short i) { + super(n, cs, open, i); } /** @@ -55,9 +80,11 @@ protected Equivalence(String n, ArrayList arg, TemporalValue order) { * @param i Syntactic complexity of the compound * @param order The temporal order of the components */ - protected Equivalence(String n, ArrayList cs, ArrayList open, short i, TemporalValue order) { + protected Equivalence(String n, ArrayList cs, ArrayList open, short i, int order) { super(n, cs, open, i); - temporalOrder = order; + isTemporal = true; + temporalDistance = order; + name = makeName(); // repeat to get the temporal operator } /** @@ -66,17 +93,24 @@ protected Equivalence(String n, ArrayList cs, ArrayList open, sh */ @SuppressWarnings("unchecked") public Object clone() { - return new Equivalence(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity, temporalOrder); + if (isTemporal) { + return new Equivalence(name, (ArrayList) cloneList(components), + (ArrayList) cloneList(openVariables), complexity, temporalDistance); + } else { + return new Equivalence(name, (ArrayList) cloneList(components), + (ArrayList) cloneList(openVariables), complexity); + } } /** * Try to make a new compound from two components. Called by the inference rules. * @param subject The first compoment * @param predicate The second compoment + * @param temporal Whether the components are temporally related * @param order The temporal order of the components * @return A compound generated or null */ - public static Equivalence make(Term subject, Term predicate, TemporalValue order) { // to be extended to check if subject is Conjunction + public static Equivalence make(Term subject, Term predicate, boolean temporal, int order) { // to be extended to check if subject is Conjunction if ((subject instanceof Implication) || (subject instanceof Equivalence)) { return null; } @@ -87,24 +121,28 @@ public static Equivalence make(Term subject, Term predicate, TemporalValue order return null; } Term interm; - if ((subject.compareTo(predicate) > 0) && ((order == null) || (order.getDelta() == 0))) { + if ((subject.compareTo(predicate) > 0) && (order == 0)) { interm = subject; subject = predicate; predicate = interm; - } else if ((order != null) && (order.getDelta() < 0)) { + } else if (order < 0) { interm = subject; subject = predicate; predicate = interm; - order = TemporalValue.getReverse(order); + order = 0 - order; } - String sym = getEquivalenceSymbol(order); + String sym = getEquivalenceSymbol(temporal, order); String name = makeStatementName(subject, sym, predicate); Term t = Memory.nameToListedTerm(name); if (t != null) { return (Equivalence) t; } ArrayList argument = argumentsToList(subject, predicate); - return new Equivalence(name, argument, order); + if (temporal) { + return new Equivalence(name, argument, order); + } else { + return new Equivalence(name, argument); + } } /** @@ -112,7 +150,7 @@ public static Equivalence make(Term subject, Term predicate, TemporalValue order * @return the operator of the term */ public String operator() { - return getEquivalenceSymbol(temporalOrder); + return getEquivalenceSymbol(isTemporal, temporalDistance); } /** @@ -121,7 +159,7 @@ public String operator() { */ @Override public boolean isCommutative() { - return ((temporalOrder == null) || (temporalOrder.getDelta() == 0)); + return (temporalDistance == 0); } /** @@ -129,23 +167,31 @@ public boolean isCommutative() { * @return the temporal order of the components */ @Override - public TemporalValue getOrder() { - return temporalOrder; + public int getOrder() { + return temporalDistance; } /** * Get the symbole of the relation by tense - * @param t The tense of the statement + * @param temporal Whether the components are temprally related + * @param distance The temporal distance between the components * @return The String representation of the relation */ - public static String getEquivalenceSymbol(TemporalValue t) { - if (t == null) + public static String getEquivalenceSymbol(boolean temporal, int distance) { + if (!temporal) { return Symbols.EQUIVALENCE_RELATION; - int delta = t.getDelta(); - if (delta > 0) + } + if (distance > 0) { return Symbols.EQUIVALENCE_AFTER_RELATION; - if (delta < 0) + } + if (distance < 0) { return "ERROR: UNKNOWN EQUIVALENCE"; + } return Symbols.EQUIVALENCE_WHEN_RELATION; } + + @Override + public boolean isTemporal() { + return isTemporal; + } } diff --git a/nars/language/Implication.java b/nars/language/Implication.java index 7bff77f9..fe5e439c 100644 --- a/nars/language/Implication.java +++ b/nars/language/Implication.java @@ -22,7 +22,6 @@ import java.util.*; -import nars.entity.TemporalValue; import nars.io.Symbols; import nars.main.Memory; @@ -30,20 +29,47 @@ * A Statement about an Inheritance relation. */ public class Implication extends Statement { - + /** - * Temporal order between the components + * Whether there is a temporal order between the components */ - private TemporalValue temporalOrder = null; + private boolean isTemporal = false; + /** + * Temporal distance between the components + */ + private int temporalDistance = 0; + + /** + * Constructor with partial values, called by make + * @param n The name of the term + * @param arg The component list of the term + */ + protected Implication(String n, ArrayList arg) { + super(n, arg); + } + /** * Constructor with partial values, called by make * @param n The name of the term * @param arg The component list of the term * @param order The temporal order of the components */ - protected Implication(String n, ArrayList arg, TemporalValue order) { + protected Implication(String n, ArrayList arg, int order) { super(n, arg); - temporalOrder = order; + isTemporal = true; + temporalDistance = order; + name = makeName(); // repeat to get the temporal operator + } + + /** + * Constructor with full values, called by clone + * @param n The name of the term + * @param cs Component list + * @param open Open variable list + * @param i Syntactic complexity of the compound + */ + protected Implication(String n, ArrayList cs, ArrayList open, short i) { + super(n, cs, open, i); } /** @@ -54,9 +80,11 @@ protected Implication(String n, ArrayList arg, TemporalValue order) { * @param i Syntactic complexity of the compound * @param order The temporal order of the components */ - protected Implication(String n, ArrayList cs, ArrayList open, short i, TemporalValue order) { + protected Implication(String n, ArrayList cs, ArrayList open, short i, int order) { super(n, cs, open, i); - temporalOrder = order; + isTemporal = true; + temporalDistance = order; + name = makeName(); // repeat to get the temporal operator } /** @@ -65,22 +93,31 @@ protected Implication(String n, ArrayList cs, ArrayList open, sh */ @SuppressWarnings("unchecked") public Object clone() { - return new Implication(name, (ArrayList) cloneList(components), (ArrayList) cloneList(openVariables), complexity, temporalOrder); + if (isTemporal) { + return new Implication(name, (ArrayList) cloneList(components), + (ArrayList) cloneList(openVariables), complexity, temporalDistance); + } else { + return new Implication(name, (ArrayList) cloneList(components), + (ArrayList) cloneList(openVariables), complexity); + } } /** * Try to make a new compound from two components. Called by the inference rules. * @param subject The first compoment * @param predicate The second compoment + * @param temporal Whether there is a temporal relation * @param order The temporal order of the components * @return A compound generated or a term it reduced to */ - public static Implication make(Term subject, Term predicate, TemporalValue order) { - if ((subject instanceof Implication) || (subject instanceof Equivalence) || (predicate instanceof Equivalence)) + public static Implication make(Term subject, Term predicate, boolean temporal, int order) { + if ((subject instanceof Implication) || (subject instanceof Equivalence) || (predicate instanceof Equivalence)) { return null; - if (invalidStatement(subject, predicate)) + } + if (invalidStatement(subject, predicate)) { return null; - String sym = getSymbol(order); + } + String sym = temporal ? getSymbol(order) : Symbols.IMPLICATION_RELATION; String name = makeStatementName(subject, sym, predicate); Term t = Memory.nameToListedTerm(name); if (t != null) { @@ -88,11 +125,21 @@ public static Implication make(Term subject, Term predicate, TemporalValue order } if (predicate instanceof Implication) { Term oldCondition = ((Implication) predicate).getSubject(); - Term newCondition = Conjunction.make(subject, oldCondition, order); - return make(newCondition, ((Implication) predicate).getPredicate(), order); + Term newCondition; + if (temporal) { + newCondition = Conjunction.make(subject, oldCondition, order); + return make(newCondition, ((Implication) predicate).getPredicate(), true, order); + } else { + newCondition = Conjunction.make(subject, oldCondition, -1); + return make(newCondition, ((Implication) predicate).getPredicate(), false, 0); + } } else { ArrayList argument = argumentsToList(subject, predicate); - return new Implication(name, argument, order); + if (temporal) { + return new Implication(name, argument, order); + } else { + return new Implication(name, argument); + } } } @@ -101,17 +148,19 @@ public static Implication make(Term subject, Term predicate, TemporalValue order * @return the operator of the term */ public String operator() { - return getSymbol(temporalOrder); + if (isTemporal) { + return getSymbol(temporalDistance); + } + return Symbols.IMPLICATION_RELATION; } - - + /** * Get the order of the components. * @return the order within the term */ @Override - public TemporalValue getOrder() { - return temporalOrder; + public int getOrder() { + return temporalDistance; } /** @@ -119,14 +168,18 @@ public TemporalValue getOrder() { * @param t The temporal value to be represented * @return The the String representation */ - public static String getSymbol(TemporalValue t) { - if (t == null) - return Symbols.IMPLICATION_RELATION; - int delta = t.getDelta(); - if (delta > 0) + public static String getSymbol(int t) { + if (t > 0) { return Symbols.IMPLICATION_AFTER_RELATION; - if (delta < 0) + } + if (t < 0) { return Symbols.IMPLICATION_BEFORE_RELATION; + } return Symbols.IMPLICATION_WHEN_RELATION; } + + @Override + public boolean isTemporal() { + return isTemporal; + } } diff --git a/nars/language/Statement.java b/nars/language/Statement.java index 75217448..7f47bf03 100644 --- a/nars/language/Statement.java +++ b/nars/language/Statement.java @@ -23,7 +23,6 @@ import java.util.ArrayList; import nars.io.Symbols; -import nars.entity.TemporalValue; /** * A statement is a compound term, consisting of a subject, a predicate, @@ -84,19 +83,25 @@ public static Statement make(String relation, Term subject, Term predicate) { return InstanceProperty.make(subject, predicate); } if (relation.equals(Symbols.IMPLICATION_RELATION)) { - return Implication.make(subject, predicate, null); + return Implication.make(subject, predicate, false, 0); } if (relation.equals(Symbols.EQUIVALENCE_RELATION)) { - return Equivalence.make(subject, predicate, null); + return Equivalence.make(subject, predicate, false, 0); } - if (relation.equals(Symbols.IMPLICATION_AFTER_RELATION) || - relation.equals(Symbols.IMPLICATION_WHEN_RELATION) || - relation.equals(Symbols.IMPLICATION_BEFORE_RELATION)) { - return Implication.make(subject, predicate, new TemporalValue(relation)); + if (relation.equals(Symbols.IMPLICATION_AFTER_RELATION)) { + return Implication.make(subject, predicate, true, 1); } - if (relation.equals(Symbols.EQUIVALENCE_AFTER_RELATION) || - relation.equals(Symbols.EQUIVALENCE_WHEN_RELATION)) { - return Equivalence.make(subject, predicate, new TemporalValue(relation)); + if (relation.equals(Symbols.IMPLICATION_WHEN_RELATION)) { + return Implication.make(subject, predicate, true, 0); + } + if (relation.equals(Symbols.IMPLICATION_BEFORE_RELATION)) { + return Implication.make(subject, predicate, true, -1); + } + if (relation.equals(Symbols.EQUIVALENCE_AFTER_RELATION)) { + return Equivalence.make(subject, predicate, true, 1); + } + if (relation.equals(Symbols.EQUIVALENCE_WHEN_RELATION)) { + return Equivalence.make(subject, predicate, true, 0); } return null; } @@ -116,10 +121,10 @@ public static Statement make(Statement statement, Term subj, Term pred) { return Similarity.make(subj, pred); } if (statement instanceof Implication) { - return Implication.make(subj, pred, null); + return Implication.make(subj, pred, ((Implication) statement).isTemporal(), statement.getOrder()); } if (statement instanceof Equivalence) { - return Equivalence.make(subj, pred, null); + return Equivalence.make(subj, pred, ((Equivalence) statement).isTemporal(), statement.getOrder()); } return null; } @@ -129,24 +134,25 @@ public static Statement make(Statement statement, Term subj, Term pred) { * @param statement A sample statement providing the class type * @param subj The first component * @param pred The second component - * @param t The temporal order of the statement + * @param temporal Whether there is a temporal relation between the components + * @param distance The temporal distance between the components * @return The Statement built */ - public static Statement make(Statement statement, Term subj, Term pred, TemporalValue t) { - if (t == null) { + public static Statement make(Statement statement, Term subj, Term pred, boolean temporal, int distance) { + if (!temporal) { return make(statement, subj, pred); } if (statement instanceof Implication) { - return Implication.make(subj, pred, t); + return Implication.make(subj, pred, true, distance); } if (statement instanceof Equivalence) { - if (t.getDelta() < 0) { - return Equivalence.make(pred, subj, TemporalValue.getReverse(t)); + if (distance < 0) { + return Equivalence.make(pred, subj, true, 0 - distance); } else { - return Equivalence.make(subj, pred, t); + return Equivalence.make(subj, pred, true, distance); } } - return null; + return make(statement, subj, pred); } /** @@ -154,19 +160,22 @@ public static Statement make(Statement statement, Term subj, Term pred, Temporal * @param statement A sample asymmetric statement providing the class type * @param subj The first component * @param pred The second component - * @param t The temporal order of the statement + * @param temporal Whether there is a temporal relation between the components + * @param distance The temporal distance between the components * @return The Statement built */ - public static Statement makeSym(Statement statement, Term subj, Term pred, TemporalValue t) { + public static Statement makeSym(Statement statement, Term subj, Term pred, boolean temporal, int distance) { if (statement instanceof Inheritance) { return Similarity.make(subj, pred); } if (statement instanceof Implication) { - if ((t != null) && (t.getDelta() < 0)) { - return Equivalence.make(pred, subj, TemporalValue.getReverse(t)); - } else { - return Equivalence.make(subj, pred, t); + if (!temporal) { + return Equivalence.make(subj, pred, false, distance); + } + if (distance < 0) { + return Equivalence.make(pred, subj, true, 0 - distance); } + return Equivalence.make(subj, pred, true, distance); } return null; } diff --git a/nars/language/Term.java b/nars/language/Term.java index 6adc0008..3a861c08 100644 --- a/nars/language/Term.java +++ b/nars/language/Term.java @@ -20,8 +20,6 @@ */ package nars.language; -import nars.entity.TemporalValue; - /** * Term is the basic component of Narsese, and the object of processing in NARS. *

    @@ -54,7 +52,7 @@ public Term(String name) { * @return The name of the term as a String */ @Override - public final String toString() { + public String toString() { return name; } @@ -132,10 +130,18 @@ public boolean isConstant() { } /** - * Get the temporal order in a term, which is null by default - * @return The default temporal order + * Whether there is a temporal order in the term, which is false by default + * @return The default value + */ + public boolean isTemporal() { + return false; + } + + /** + * Obtain the temporal order in the term + * @return The default value */ - public TemporalValue getOrder() { - return null; + public int getOrder() { + return 0; } } diff --git a/nars/main/Memory.java b/nars/main/Memory.java index 0920b948..d4e6dd6b 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -58,9 +58,7 @@ public class Memory { /** Shortcut to the selected belief */ public static Judgment currentBelief; /** Shortcut to the derived Stamp */ - public static Stamp currentStamp; - /** Shortcut to the derived tense */ - public static TemporalValue currentTense; + public static Stamp newStamp; /* ---------- initialization ---------- */ /** @@ -249,11 +247,10 @@ public static void activatedTask(BudgetValue budget, Sentence sentence, boolean * @param premise1 The first premise to record in the new Judgment * @param premise2 The second premise to record in the new Judgment */ - public static void doublePremiseTask(BudgetValue budget, Term content, TruthValue truth, - Sentence premise1, Sentence premise2) { + public static void doublePremiseTask(BudgetValue budget, Term content, TruthValue truth, + Sentence premise1, Sentence premise2) { if (content != null) { - Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, currentStamp, currentTense, - premise1, premise2); + Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, newStamp, premise1, premise2); Task newTask = new Task(newSentence, budget); derivedTask(newTask); } @@ -264,17 +261,15 @@ public static void doublePremiseTask(BudgetValue budget, Term content, TruthValu * @param budget The budget value of the new task * @param content The content of the new task * @param truth The truth value of the new task - * @param structural Whether the old Task is derived by structural rules * @param premise1 The first premise to record in the new Judgment. May be null. * @param premise2 The second premise to record in the new Judgment. May be null. */ - public static void revisionTask(BudgetValue budget, Term content, TruthValue truth, boolean structural, - Sentence premise1, Sentence premise2) { + public static void revisionTask(BudgetValue budget, Term content, TruthValue truth, + Sentence premise1, Sentence premise2) { if (content != null) { - Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, currentStamp, currentTense, - premise1, premise2); + Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, newStamp, premise1, premise2); Task newTask = new Task(newSentence, budget); - if (structural) { + if (currentTask.isStructural()) { newTask.setStructural(); } derivedTask(newTask); @@ -288,11 +283,9 @@ public static void revisionTask(BudgetValue budget, Term content, TruthValue tru * @param truth The truth value of the new task * @param premise The premise to record in the new Judgment */ - public static void singlePremiseTask(BudgetValue budget, Term content, TruthValue truth, - Sentence premise) { + public static void singlePremiseTask(BudgetValue budget, Term content, TruthValue truth, Sentence premise) { Sentence sentence = currentTask.getSentence(); - Sentence newSentence = Sentence.make(sentence, content, truth, new Stamp(sentence.getStamp()), sentence.getTense(), - premise, null); + Sentence newSentence = Sentence.make(sentence, content, truth, new Stamp(sentence.getStamp()), premise, null); Task newTask = new Task(newSentence, budget); newTask.setStructural(); derivedTask(newTask); @@ -307,10 +300,8 @@ public static void singlePremiseTask(BudgetValue budget, Term content, TruthValu */ public static void convertedJudgment(TruthValue truth, BudgetValue budget) { Term content = Memory.currentTask.getContent(); - TemporalValue tense = Memory.currentBelief.getTense(); Stamp stamp = new Stamp(Memory.currentBelief.getStamp()); - Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, truth, stamp, tense, - Memory.currentBelief, null); + Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, truth, stamp, Memory.currentBelief, null); Task newTask = new Task(newJudgment, budget); newTask.setStructural(); derivedTask(newTask); @@ -339,12 +330,12 @@ private static void processTask() { task = newTasks.remove(0); if (task.getSentence().isInput() || (termToConcept(task.getContent()) != null)) { // new input or existing concept immediateProcess(task); - if (task.getSentence().isInput() && (task.getSentence() instanceof Question)) { - Concept concept = Memory.nameToConcept(task.getSentence().getContent().getName()); - if (concept != null) { - concept.startPlay(false); - } - } +// if (task.getSentence().isInput() && (task.getSentence() instanceof Question)) { +// Concept concept = Memory.nameToConcept(task.getSentence().getContent().getName()); +// if (concept != null) { +// concept.startPlay(false); +// } +// } } else { novelTasks.putIn(task); // delayed processing } @@ -376,7 +367,10 @@ private static void processConcept() { * @param task the task to be accepted */ private static void immediateProcess(Task task) { - currentTask = task; + currentTask = task; // one of the two places where this variable is set + currentBelief = null; + currentTaskLink = null; + currentBeliefLink = null; Record.append("!!! Insert: " + task + "\n"); Term content = task.getContent(); Concept c = getConcept(content); @@ -387,7 +381,7 @@ private static void immediateProcess(Task task) { if (task.aboveThreshold()) { // still need to be processed continuedProcess(task, content); Sentence s = task.getSentence(); - if (s.isJudgment() && (s.getTense() != null)) { + if (s.isJudgment() && s.isTemporal()) { eventProcessing(task); } } @@ -442,11 +436,10 @@ private static void continuedProcess(Task task, Term content) { */ private static void eventProcessing(Task event1) { Task event2 = recentEvents.takeOut(); - if ((event2 != null) && event1.getSentence().noOverlapping(event2.getSentence())) { - long time1 = event1.getSentence().getEventTime(); - long time2 = event2.getSentence().getEventTime(); - TemporalValue order = new TemporalValue((int) (time2 - time1)); - SyllogisticRules.temporalIndCom(event1, event2, order); + if (event2 != null) { + if (event1.getSentence().noOverlapping(event2.getSentence())) { + SyllogisticRules.temporalIndCom(event1, event2); + } recentEvents.putBack(event2); } recentEvents.putIn(event1); diff --git a/nars/main/NARS.java b/nars/main/NARS.java index 886a5e98..0717460e 100644 --- a/nars/main/NARS.java +++ b/nars/main/NARS.java @@ -30,26 +30,27 @@ * Manage the internal working thread. Communicate with Center only. */ public class NARS extends Applet implements Runnable { + /** * The information about the version and date of the project. */ public static final String INFO = - " Open-NARS Version 1.2.0 August 2009 \n"; + " Open-NARS Version 1.3.0 January 2010 \n"; /** * The project websites. */ public static final String WEBSITE = - " Open-NARS website: http://code.google.com/p/open-nars/ \n" + - " NARS website: http://nars.wang.googlepages.com/ "; + " Open-NARS website: http://code.google.com/p/open-nars/ \n" + + " NARS website: http://sites.google.com/site/narswang/ "; /** * Flag to distinguish the two running modes of the project. */ - private static boolean standAlone = false; // application or applet +// private static boolean standAlone = false; // application or applet /** * The internal working thread of the system. */ Thread narsThread = null; - + /** * The entry point of the standalone application. *

    @@ -57,12 +58,12 @@ public class NARS extends Applet implements Runnable { * @param args no arguments are used */ public static void main(String args[]) { - standAlone = true; +// standAlone = true; NARS nars = new NARS(); nars.init(); nars.start(); } - + /** * Initialize the system at the control center. */ @@ -70,7 +71,7 @@ public static void main(String args[]) { public void init() { Center.start(); } - + /** * Start the thread if necessary, called when the page containing the applet first appears on the screen. */ @@ -81,7 +82,7 @@ public void start() { narsThread.start(); } } - + /** * Called when the page containing the applet is no longer on the screen. */ @@ -89,21 +90,21 @@ public void start() { public void stop() { narsThread = null; } - + /** * Repeatedly execute NARS working cycle. This method is called when the Runnable's thread is started. */ public void run() { Thread thisThread = Thread.currentThread(); while (narsThread == thisThread) { -// try { -// Thread.sleep(10); -// } catch (InterruptedException e){ -// } + try { + Thread.sleep(2); + } catch (InterruptedException e) { + } Center.tick(); } } - + /** * Whether the project running as an application. * @return true for application; false for applet. @@ -112,7 +113,7 @@ public static boolean isStandAlone() { return true; // make the application and the applet identical, for now // return standAlone; } - + /** * Provide system information for the applet. * @return The string containing the information about the applet. @@ -121,4 +122,4 @@ public static boolean isStandAlone() { public String getAppletInfo() { return INFO; } -} \ No newline at end of file +} diff --git a/nars/main/Parameters.java b/nars/main/Parameters.java index 508b77d7..19972274 100644 --- a/nars/main/Parameters.java +++ b/nars/main/Parameters.java @@ -33,8 +33,7 @@ public class Parameters { /** TermLink decay rate in TermLinkBag, in [1, 99]. */ public static final int TERM_LINK_FORGETTING_CYCLE = 50; /** Silent threshold for task reporting, in [0, 100]. */ -// public static final int SILENT_LEVEL = 1; // spontaneous report - public static final int SILENT_LEVEL = 100; // spontaneous report + public static final int SILENT_LEVEL = 1; /* ---------- time management ---------- */ /** Task decay rate in TaskBuffer, in [1, 99]. */ @@ -45,8 +44,10 @@ public class Parameters { public static final int MAX_REASONED_TERM_LINK = 3; /* ---------- logical parameters ---------- */ - /** Horizon, the amount of evidence coming in the near future. */ - public static final int NEAR_FUTURE = 1; // or 2, can be float + /** Evidential Horizon, the amount of future evidence to be considered. */ + public static final int HORIZON = 1; // or 2, can be float + /** Reliance factor, the empirical confidence of analytical truth. */ + public static final float RELIANCE = (float) 0.9; // the same as default confidence /** The desireability threthold for an operation to be executed. */ public static final float DECISION_THRESHOLD = (float) 0.66; /** Range of temporal induction in input events. */ @@ -92,12 +93,10 @@ public class Parameters { /* ---------- avoiding repeated reasoning ---------- */ /** Maximum length of Stamp, a power of 2 */ -// public static final int MAXMUM_STAMP_LENGTH = 16; public static final int MAXMUM_STAMP_LENGTH = 8; /** Remember recently used TermLink on a Task */ public static final int TERM_LINK_RECORD_LENGTH = 10; /** Maximum number of beliefs kept in a Concept */ -// public static final int MAXMUM_BELIEF_LENGTH = 8; public static final int MAXMUM_BELIEF_LENGTH = 5; /** Maximum number of goals kept in a Concept */ public static final int MAXMUM_GOALS_LENGTH = 5; diff --git a/nars/overview.html b/nars/overview.html index 4c994842..08c9690f 100644 --- a/nars/overview.html +++ b/nars/overview.html @@ -7,7 +7,7 @@

    Package Specification

    - The code for distribution is NARS.jar, in Java 1.6.0_03. + The code for distribution is NARS.jar, in Java 1.6.0_17.

    It works both as an application (with full functionality) and an applet (with restricted functionality and display). From 03571568bb05e525643f7bb1e53a1dcd34291e8a Mon Sep 17 00:00:00 2001 From: "NARS.Wang" Date: Mon, 11 Jan 2010 15:50:25 +0000 Subject: [PATCH 043/206] Open-nars 1.3.0. distribution files: jar, javadoc, examples --- nars-dist/Examples/Example-NAL1-abridged.txt | 79 +-- nars-dist/Examples/Example-NAL1-complete.txt | 98 ++-- nars-dist/Examples/Example-NAL2-abridged.txt | 141 ++++-- nars-dist/Examples/Example-NAL2-complete.txt | 154 +++--- nars-dist/Examples/Example-NAL3-abridged.txt | 151 +++--- nars-dist/Examples/Example-NAL3-complete.txt | 212 +++----- nars-dist/Examples/Example-NAL4-abridged.txt | 122 +++-- nars-dist/Examples/Example-NAL4-complete.txt | 79 ++- nars-dist/Examples/Example-NAL5-abridged.txt | 248 ++++----- nars-dist/Examples/Example-NAL5-complete.txt | 276 +++++----- nars-dist/Examples/Example-NAL6-abridged.txt | 158 +++--- nars-dist/Examples/Example-NAL6-complete.txt | 232 +++++---- nars-dist/Examples/Example-NAL7-abridged.txt | 102 ++-- nars-dist/Examples/Example-NAL7-complete.txt | 227 +++++---- .../Examples/Example-NAL8-1-abridged.txt | 132 ++--- .../Examples/Example-NAL8-1-complete.txt | 477 +++++++++++++----- .../Examples/Example-NAL8-2-abridged.txt | 22 +- .../Examples/Example-NAL8-2-complete.txt | 98 +++- .../Examples/Example-NAL8-3-abridged.txt | 18 +- .../Examples/Example-NAL8-3-complete.txt | 87 ++-- .../Examples/Example-NAL8-4-abridged.txt | 52 +- .../Examples/Example-NAL8-4-complete.txt | 122 +++-- .../Examples/Example-NAL8-5-abridged.txt | 41 +- .../Examples/Example-NAL8-5-complete.txt | 101 ++-- nars-dist/javadoc/allclasses-frame.html | 8 +- nars-dist/javadoc/allclasses-noframe.html | 8 +- nars-dist/javadoc/constant-values.html | 76 ++- nars-dist/javadoc/deprecated-list.html | 4 +- nars-dist/javadoc/help-doc.html | 4 +- nars-dist/javadoc/index-files/index-1.html | 26 +- nars-dist/javadoc/index-files/index-10.html | 10 +- nars-dist/javadoc/index-files/index-11.html | 8 +- nars-dist/javadoc/index-files/index-12.html | 15 +- nars-dist/javadoc/index-files/index-13.html | 26 +- nars-dist/javadoc/index-files/index-14.html | 17 +- nars-dist/javadoc/index-files/index-15.html | 11 +- nars-dist/javadoc/index-files/index-16.html | 28 +- nars-dist/javadoc/index-files/index-17.html | 15 +- nars-dist/javadoc/index-files/index-18.html | 23 +- nars-dist/javadoc/index-files/index-19.html | 65 ++- nars-dist/javadoc/index-files/index-2.html | 14 +- nars-dist/javadoc/index-files/index-20.html | 65 +-- nars-dist/javadoc/index-files/index-21.html | 8 +- nars-dist/javadoc/index-files/index-22.html | 8 +- nars-dist/javadoc/index-files/index-23.html | 84 ++- nars-dist/javadoc/index-files/index-3.html | 51 +- nars-dist/javadoc/index-files/index-4.html | 19 +- nars-dist/javadoc/index-files/index-5.html | 29 +- nars-dist/javadoc/index-files/index-6.html | 11 +- nars-dist/javadoc/index-files/index-7.html | 44 +- nars-dist/javadoc/index-files/index-8.html | 11 +- nars-dist/javadoc/index-files/index-9.html | 61 ++- nars-dist/javadoc/index.html | 2 +- .../javadoc/nars/entity/BudgetValue.html | 4 +- nars-dist/javadoc/nars/entity/Concept.html | 121 ++--- nars-dist/javadoc/nars/entity/Goal.html | 23 +- nars-dist/javadoc/nars/entity/Item.html | 4 +- nars-dist/javadoc/nars/entity/Judgment.html | 114 +++-- nars-dist/javadoc/nars/entity/Question.html | 18 +- nars-dist/javadoc/nars/entity/Sentence.html | 103 ++-- nars-dist/javadoc/nars/entity/ShortFloat.html | 4 +- nars-dist/javadoc/nars/entity/Stamp.html | 242 +++++++-- nars-dist/javadoc/nars/entity/Task.html | 54 +- nars-dist/javadoc/nars/entity/TaskLink.html | 8 +- nars-dist/javadoc/nars/entity/TermLink.html | 8 +- nars-dist/javadoc/nars/entity/TruthValue.html | 12 +- .../nars/entity/class-use/BudgetValue.html | 30 +- .../nars/entity/class-use/Concept.html | 4 +- .../javadoc/nars/entity/class-use/Goal.html | 8 +- .../javadoc/nars/entity/class-use/Item.html | 4 +- .../nars/entity/class-use/Judgment.html | 94 ++-- .../nars/entity/class-use/Question.html | 6 +- .../nars/entity/class-use/Sentence.html | 105 +++- .../nars/entity/class-use/ShortFloat.html | 8 +- .../javadoc/nars/entity/class-use/Stamp.html | 43 +- .../javadoc/nars/entity/class-use/Task.html | 41 +- .../nars/entity/class-use/TaskLink.html | 4 +- .../nars/entity/class-use/TermLink.html | 4 +- .../nars/entity/class-use/TruthValue.html | 210 ++++---- .../javadoc/nars/entity/package-frame.html | 6 +- .../javadoc/nars/entity/package-summary.html | 13 +- .../javadoc/nars/entity/package-tree.html | 6 +- .../javadoc/nars/entity/package-use.html | 38 +- nars-dist/javadoc/nars/gui/BagWindow.html | 59 ++- nars-dist/javadoc/nars/gui/ConceptWindow.html | 187 ++++++- .../javadoc/nars/gui/InferenceWindow.html | 143 +++++- nars-dist/javadoc/nars/gui/InputWindow.html | 59 ++- nars-dist/javadoc/nars/gui/MainWindow.html | 59 ++- nars-dist/javadoc/nars/gui/MessageDialog.html | 184 ++++++- nars-dist/javadoc/nars/gui/NarsFrame.html | 179 ++++++- .../javadoc/nars/gui/ParameterWindow.html | 59 ++- nars-dist/javadoc/nars/gui/TermWindow.html | 59 ++- .../javadoc/nars/gui/class-use/BagWindow.html | 4 +- .../nars/gui/class-use/ConceptWindow.html | 4 +- .../nars/gui/class-use/InferenceWindow.html | 4 +- .../nars/gui/class-use/InputWindow.html | 4 +- .../nars/gui/class-use/MainWindow.html | 4 +- .../nars/gui/class-use/MessageDialog.html | 4 +- .../javadoc/nars/gui/class-use/NarsFrame.html | 4 +- .../nars/gui/class-use/ParameterWindow.html | 4 +- .../nars/gui/class-use/TermWindow.html | 4 +- nars-dist/javadoc/nars/gui/package-frame.html | 4 +- .../javadoc/nars/gui/package-summary.html | 4 +- nars-dist/javadoc/nars/gui/package-tree.html | 13 +- nars-dist/javadoc/nars/gui/package-use.html | 4 +- .../nars/inference/BudgetFunctions.html | 14 +- .../nars/inference/CompositionalRules.html | 12 +- .../javadoc/nars/inference/MatchingRules.html | 65 ++- .../javadoc/nars/inference/RuleTables.html | 10 +- .../nars/inference/StructuralRules.html | 52 +- .../nars/inference/SyllogisticRules.html | 52 +- .../nars/inference/TruthFunctions.html | 182 +++---- .../nars/inference/UtilityFunctions.html | 26 +- .../inference/class-use/BudgetFunctions.html | 4 +- .../class-use/CompositionalRules.html | 4 +- .../inference/class-use/MatchingRules.html | 4 +- .../nars/inference/class-use/RuleTables.html | 4 +- .../inference/class-use/StructuralRules.html | 4 +- .../inference/class-use/SyllogisticRules.html | 4 +- .../inference/class-use/TruthFunctions.html | 4 +- .../inference/class-use/UtilityFunctions.html | 4 +- .../javadoc/nars/inference/package-frame.html | 6 +- .../nars/inference/package-summary.html | 8 +- .../javadoc/nars/inference/package-tree.html | 6 +- .../javadoc/nars/inference/package-use.html | 4 +- nars-dist/javadoc/nars/io/ExperienceIO.html | 4 +- nars-dist/javadoc/nars/io/Record.html | 4 +- .../StringParser.InvalidInputException.html | 6 +- nars-dist/javadoc/nars/io/StringParser.html | 36 +- nars-dist/javadoc/nars/io/Symbols.html | 4 +- .../nars/io/class-use/ExperienceIO.html | 4 +- .../javadoc/nars/io/class-use/Record.html | 4 +- .../StringParser.InvalidInputException.html | 12 +- .../nars/io/class-use/StringParser.html | 4 +- .../javadoc/nars/io/class-use/Symbols.html | 4 +- nars-dist/javadoc/nars/io/package-frame.html | 4 +- .../javadoc/nars/io/package-summary.html | 4 +- nars-dist/javadoc/nars/io/package-tree.html | 4 +- nars-dist/javadoc/nars/io/package-use.html | 4 +- .../javadoc/nars/language/CompoundTerm.html | 59 ++- .../javadoc/nars/language/Conjunction.html | 90 ++-- .../javadoc/nars/language/DifferenceExt.html | 8 +- .../javadoc/nars/language/DifferenceInt.html | 8 +- .../javadoc/nars/language/Disjunction.html | 8 +- .../javadoc/nars/language/Equivalence.html | 158 ++++-- nars-dist/javadoc/nars/language/ImageExt.html | 8 +- nars-dist/javadoc/nars/language/ImageInt.html | 8 +- .../javadoc/nars/language/Implication.html | 154 ++++-- .../javadoc/nars/language/Inheritance.html | 10 +- nars-dist/javadoc/nars/language/Instance.html | 10 +- .../nars/language/InstanceProperty.html | 10 +- .../nars/language/IntersectionExt.html | 8 +- .../nars/language/IntersectionInt.html | 8 +- nars-dist/javadoc/nars/language/Negation.html | 8 +- nars-dist/javadoc/nars/language/Product.html | 8 +- nars-dist/javadoc/nars/language/Property.html | 10 +- nars-dist/javadoc/nars/language/SetExt.html | 8 +- nars-dist/javadoc/nars/language/SetInt.html | 8 +- .../javadoc/nars/language/Similarity.html | 10 +- .../javadoc/nars/language/Statement.html | 32 +- nars-dist/javadoc/nars/language/Term.html | 41 +- .../nars/language/Variable.VarType.html | 4 +- nars-dist/javadoc/nars/language/Variable.html | 34 +- .../nars/language/class-use/CompoundTerm.html | 6 +- .../nars/language/class-use/Conjunction.html | 4 +- .../language/class-use/DifferenceExt.html | 4 +- .../language/class-use/DifferenceInt.html | 4 +- .../nars/language/class-use/Disjunction.html | 4 +- .../nars/language/class-use/Equivalence.html | 9 +- .../nars/language/class-use/ImageExt.html | 4 +- .../nars/language/class-use/ImageInt.html | 4 +- .../nars/language/class-use/Implication.html | 9 +- .../nars/language/class-use/Inheritance.html | 4 +- .../nars/language/class-use/Instance.html | 4 +- .../language/class-use/InstanceProperty.html | 4 +- .../language/class-use/IntersectionExt.html | 4 +- .../language/class-use/IntersectionInt.html | 4 +- .../nars/language/class-use/Negation.html | 4 +- .../nars/language/class-use/Product.html | 4 +- .../nars/language/class-use/Property.html | 4 +- .../nars/language/class-use/SetExt.html | 4 +- .../nars/language/class-use/SetInt.html | 4 +- .../nars/language/class-use/Similarity.html | 4 +- .../nars/language/class-use/Statement.html | 24 +- .../javadoc/nars/language/class-use/Term.html | 243 ++++++--- .../language/class-use/Variable.VarType.html | 15 +- .../nars/language/class-use/Variable.html | 34 +- .../javadoc/nars/language/package-frame.html | 4 +- .../nars/language/package-summary.html | 4 +- .../javadoc/nars/language/package-tree.html | 4 +- .../javadoc/nars/language/package-use.html | 4 +- nars-dist/javadoc/nars/main/Center.html | 4 +- nars-dist/javadoc/nars/main/Memory.html | 97 ++-- nars-dist/javadoc/nars/main/NARS.html | 24 +- nars-dist/javadoc/nars/main/Parameters.html | 48 +- .../javadoc/nars/main/class-use/Center.html | 4 +- .../javadoc/nars/main/class-use/Memory.html | 4 +- .../javadoc/nars/main/class-use/NARS.html | 4 +- .../nars/main/class-use/Parameters.html | 4 +- .../javadoc/nars/main/package-frame.html | 4 +- .../javadoc/nars/main/package-summary.html | 4 +- nars-dist/javadoc/nars/main/package-tree.html | 4 +- nars-dist/javadoc/nars/main/package-use.html | 4 +- nars-dist/javadoc/nars/operation/Break.html | 6 +- nars-dist/javadoc/nars/operation/GoTo.html | 6 +- nars-dist/javadoc/nars/operation/Open.html | 6 +- .../javadoc/nars/operation/Operator.html | 6 +- nars-dist/javadoc/nars/operation/Pick.html | 6 +- .../nars/operation/class-use/Break.html | 4 +- .../nars/operation/class-use/GoTo.html | 4 +- .../nars/operation/class-use/Open.html | 4 +- .../nars/operation/class-use/Operator.html | 4 +- .../nars/operation/class-use/Pick.html | 4 +- .../javadoc/nars/operation/package-frame.html | 4 +- .../nars/operation/package-summary.html | 4 +- .../javadoc/nars/operation/package-tree.html | 4 +- .../javadoc/nars/operation/package-use.html | 4 +- nars-dist/javadoc/nars/storage/Bag.html | 15 +- .../javadoc/nars/storage/ConceptBag.html | 4 +- .../javadoc/nars/storage/Distributor.html | 4 +- .../javadoc/nars/storage/TaskBuffer.html | 4 +- .../javadoc/nars/storage/TaskLinkBag.html | 4 +- .../javadoc/nars/storage/TermLinkBag.html | 4 +- .../javadoc/nars/storage/class-use/Bag.html | 4 +- .../nars/storage/class-use/ConceptBag.html | 4 +- .../nars/storage/class-use/Distributor.html | 4 +- .../nars/storage/class-use/TaskBuffer.html | 4 +- .../nars/storage/class-use/TaskLinkBag.html | 4 +- .../nars/storage/class-use/TermLinkBag.html | 4 +- .../javadoc/nars/storage/package-frame.html | 4 +- .../javadoc/nars/storage/package-summary.html | 4 +- .../javadoc/nars/storage/package-tree.html | 4 +- .../javadoc/nars/storage/package-use.html | 4 +- nars-dist/javadoc/overview-frame.html | 4 +- nars-dist/javadoc/overview-summary.html | 6 +- nars-dist/javadoc/overview-tree.html | 15 +- nars-dist/javadoc/serialized-form.html | 57 ++- 237 files changed, 5334 insertions(+), 3363 deletions(-) diff --git a/nars-dist/Examples/Example-NAL1-abridged.txt b/nars-dist/Examples/Example-NAL1-abridged.txt index 3190a33a..87fcdd64 100644 --- a/nars-dist/Examples/Example-NAL1-abridged.txt +++ b/nars-dist/Examples/Example-NAL1-abridged.txt @@ -1,52 +1,71 @@ ********** revision IN: swimmer>. - IN: swimmer>. %0.1;0.6% -1 - OUT: swimmer>. %0.87;0.91% {2: 2;1} + IN: swimmer>. %0.10;0.60% + +1 + + OUT: swimmer>. %0.87;0.91% ********** deduction - IN: animal>. + IN: animal>. + IN: bird>. -1 - OUT: animal>. %1.00;0.81% {2: 1;2} +1 + + OUT: animal>. %1.00;0.81% ********** abduction IN: competition>. IN: competition>. %0.8% -1 - OUT: chess>. %1.00;0.39% {2: 1;2} - OUT: sport>. %0.80;0.44% {2: 1;2} +1 + + OUT: chess>. %1.00;0.39% + + OUT: sport>. %0.80;0.45% ********** induction - IN: swimmer>. %0.7% + IN: swimmer>. %0.7% + IN: bird>. -1 - OUT: swimmer>. %0.70;0.44% {2: 1;2} - OUT: bird>. %1.00;0.36% {2: 1;2} +1 + + OUT: swimmer>. %0.70;0.45% + OUT: bird>. %1.00;0.36% + + ********** exemplification - IN: bird>. + IN: bird>. + IN: animal>. -1 - OUT: robin>. %1.00;0.44% {2: 1;2} +1 + + OUT: robin>. %1.00;0.45% ********** conversion IN: swimmer>. - IN: bird>? -2 - OUT: bird>. %1.00;0.47% {1: 1} + IN: bird>? + +2 -********** "y/n" question + OUT: bird>. %1.00;0.47% + +********** "y/n" question IN: swimmer>. IN: swimmer>? -1 - OUT: swimmer>. %1.00;0.90% {1: 1} +1 + + OUT: swimmer>. %1.00;0.90% + +********** "wh" question + IN: swimmer>. + + IN: swimmer>? +1 + + OUT: swimmer>. %1.00;0.90% + OUT: bird>? + OUT: ?1>? + + OUT: bird>? -********** "wh" question - IN: swimmer>. - IN: swimmer>? -1 - OUT: swimmer>. %1.00;0.90% {1: 1} - OUT: bird>? {2: 2;1} - OUT: ?1>? {2: 2;1} - OUT: bird>? {2: 2;1} diff --git a/nars-dist/Examples/Example-NAL1-complete.txt b/nars-dist/Examples/Example-NAL1-complete.txt index fc5ff099..b54f1b45 100644 --- a/nars-dist/Examples/Example-NAL1-complete.txt +++ b/nars-dist/Examples/Example-NAL1-complete.txt @@ -1,122 +1,122 @@ ********** revision - IN: swimmer>. %1.00;0.90% {1: 1} + IN: swimmer>. %1.00;0.90% {0 : 1} - IN: swimmer>. %0.10;0.60% {1: 2} + IN: swimmer>. %0.10;0.60% {0 : 2} 1 - OUT: swimmer>. %0.87;0.91% {2: 2;1} + OUT: swimmer>. %0.87;0.91% {1 : 1;2} ********** deduction - IN: animal>. %1.00;0.90% {1: 1} + IN: animal>. %1.00;0.90% {0 : 1} - IN: bird>. %1.00;0.90% {1: 2} + IN: bird>. %1.00;0.90% {0 : 2} 1 - OUT: animal>. %1.00;0.81% {2: 1;2} + OUT: animal>. %1.00;0.81% {1 : 2;1} - OUT: robin>. %1.00;0.44% {2: 1;2} + OUT: robin>. %1.00;0.45% {1 : 2;1} ********** abduction - IN: competition>. %1.00;0.90% {1: 1} + IN: competition>. %1.00;0.90% {0 : 1} - IN: competition>. %0.80;0.90% {1: 2} + IN: competition>. %0.80;0.90% {0 : 2} 1 - OUT: chess>. %1.00;0.39% {2: 1;2} + OUT: chess>. %1.00;0.39% {1 : 2;1} - OUT: sport>. %0.80;0.44% {2: 1;2} + OUT: sport>. %0.80;0.45% {1 : 2;1} - OUT: sport>. %0.80;0.44% {2: 1;2} + OUT: sport>. %0.80;0.45% {1 : 2;1} - OUT: < #1> ==> #1>>. %1.00;0.39% {2: 1;2} + OUT: < #1> =|> #1>>. %1.00;0.39% {1 : 2;1} - OUT: < #1> ==> #1>>. %0.80;0.44% {2: 1;2} + OUT: < #1> =|> #1>>. %0.80;0.45% {1 : 2;1} - OUT: < #1> <=> #1>>. %0.80;0.44% {2: 1;2} + OUT: < #1> <=> #1>>. %0.80;0.45% {1 : 2;1} - OUT: <(&,chess,sport) --> competition>. %1.00;0.97% {2: 1;2} + OUT: <(&,chess,sport) --> competition>. %1.00;0.97% {1 : 2;1} - OUT: <(|,chess,sport) --> competition>. %0.80;0.82% {2: 1;2} + OUT: <(|,chess,sport) --> competition>. %0.80;0.83% {1 : 2;1} - OUT: <(~,sport,chess) --> competition>. %0.20;0.88% {2: 1;2} + OUT: <(~,sport,chess) --> competition>. %0.20;0.88% {1 : 2;1} - OUT: <(~,chess,sport) --> competition>. %0.00;0.91% {2: 1;2} + OUT: <(~,chess,sport) --> competition>. %0.00;0.92% {1 : 2;1} - OUT: (&&, #1()>, #1()>). %0.80;0.82% {2: 1;2} + OUT: (&&, #1()>, #1()>). %0.80;0.83% {1 : 2;1} ********** induction - IN: swimmer>. %0.70;0.90% {1: 1} + IN: swimmer>. %0.70;0.90% {0 : 1} - IN: bird>. %1.00;0.90% {1: 2} + IN: bird>. %1.00;0.90% {0 : 2} 1 - OUT: swimmer>. %0.70;0.44% {2: 1;2} + OUT: swimmer>. %0.70;0.45% {1 : 2;1} - OUT: bird>. %1.00;0.36% {2: 1;2} + OUT: bird>. %1.00;0.36% {1 : 2;1} - OUT: swimmer>. %0.70;0.44% {2: 1;2} + OUT: swimmer>. %0.70;0.45% {1 : 2;1} - OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.70;0.44% {2: 1;2} + OUT: <<#1 --> bird> =|> <#1 --> swimmer>>. %0.70;0.45% {1 : 2;1} - OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.36% {2: 1;2} + OUT: <<#1 --> swimmer> =|> <#1 --> bird>>. %1.00;0.36% {1 : 2;1} - OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.70;0.44% {2: 1;2} + OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.70;0.45% {1 : 2;1} - OUT: (|,bird,swimmer)>. %1.00;0.96% {2: 1;2} + OUT: (|,bird,swimmer)>. %1.00;0.96% {1 : 2;1} - OUT: (&,bird,swimmer)>. %0.70;0.83% {2: 1;2} + OUT: (&,bird,swimmer)>. %0.70;0.84% {1 : 2;1} - OUT: (-,swimmer,bird)>. %0.00;0.92% {2: 1;2} + OUT: (-,swimmer,bird)>. %0.00;0.93% {1 : 2;1} - OUT: (-,bird,swimmer)>. %0.30;0.87% {2: 1;2} + OUT: (-,bird,swimmer)>. %0.30;0.87% {1 : 2;1} - OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.70;0.83% {2: 1;2} + OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.70;0.84% {1 : 2;1} ********** exemplification - IN: bird>. %1.00;0.90% {1: 1} + IN: bird>. %1.00;0.90% {0 : 1} - IN: animal>. %1.00;0.90% {1: 2} + IN: animal>. %1.00;0.90% {0 : 2} 1 - OUT: animal>. %1.00;0.81% {2: 1;2} + OUT: animal>. %1.00;0.81% {1 : 2;1} - OUT: robin>. %1.00;0.44% {2: 1;2} + OUT: robin>. %1.00;0.45% {1 : 2;1} ********** conversion - IN: swimmer>. %1.00;0.90% {1: 1} + IN: swimmer>. %1.00;0.90% {0 : 1} - IN: bird>? {1: 2} + IN: bird>? {0 : 2} 2 - OUT: bird>. %1.00;0.47% {1: 1} + OUT: bird>. %1.00;0.47% {2 : 1} ********** "y/n" question - IN: swimmer>. %1.00;0.90% {1: 1} + IN: swimmer>. %1.00;0.90% {0 : 1} - IN: swimmer>? {1: 2} + IN: swimmer>? {0 : 2} 1 - OUT: swimmer>. %1.00;0.90% {1: 1} + OUT: swimmer>. %1.00;0.90% {0 : 1} ********** "wh" question - IN: swimmer>. %1.00;0.90% {1: 1} + IN: swimmer>. %1.00;0.90% {0 : 1} - IN: swimmer>? {1: 2} + IN: swimmer>? {0 : 2} 1 - OUT: swimmer>. %1.00;0.90% {1: 1} + OUT: swimmer>. %1.00;0.90% {0 : 1} - OUT: bird>? {2: 2;1} + OUT: bird>? {1 : 1;2} - OUT: ?1>? {2: 2;1} + OUT: ?1>? {1 : 1;2} - OUT: bird>? {2: 2;1} + OUT: bird>? {1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL2-abridged.txt b/nars-dist/Examples/Example-NAL2-abridged.txt index 7e7c53df..d2f654d5 100644 --- a/nars-dist/Examples/Example-NAL2-abridged.txt +++ b/nars-dist/Examples/Example-NAL2-abridged.txt @@ -1,38 +1,54 @@ ********** revision IN: swan>. - IN: swan>. %0.1;0.6% -1 - OUT: swan>. %0.87;0.91% {2: 2;1} + IN: swan>. %0.10;0.60% +1 + + OUT: swan>. %0.87;0.91% + ********** comparison - IN: swimmer>. %0.7% - IN: bird>. -1 - OUT: swimmer>. %0.70;0.44% {2: 1;2} + IN: swimmer>. %0.7% + + IN: bird>. + +1 + + OUT: swimmer>. %0.70;0.45% + ********** comparison - IN: competition>. + IN: competition>. + IN: competition>. %0.8% -1 - OUT: sport>. %0.80;0.44% {2: 1;2} +1 + + OUT: sport>. %0.80;0.45% + ********** analogy IN: swimmer>. - IN: swan>. -1 - OUT: swimmer>. %1.00;0.72% {2: 1;2} + IN: swan>. +1 + + OUT: swimmer>. %1.00;0.81% ********** analogy - IN: swimmer>. - IN: swan>. -1 - OUT: swimmer>. %1.00;0.72% {2: 1;2} + IN: swimmer>. + + IN: swan>. +1 + + OUT: swimmer>. %1.00;0.81% + ********** resemblance - IN: swan>. - IN: swan>. -1 - OUT: robin>. %1.00;0.81% {2: 1;2} + IN: swan>. + + IN: swan>. + +1 + + OUT: robin>. %1.00;0.81% ********** instance and property IN: . @@ -43,64 +59,83 @@ IN: bird>. IN: swan>. %0.1% 1 - OUT: swan>. %0.10;0.89% {2: 1;2} + OUT: swan>. %0.10;0.89% ********** conversions between inheritance and similarity - IN: bird>. - IN: swan>. %0.1% + IN: bird>. + + IN: swan>. %0.1% + 1 - OUT: swan>. %0.10;0.73% {2: 1;2} + OUT: swan>. %0.10;0.74% + ********** conversions between inheritance and similarity - IN: bird>. %0.9% + IN: bird>. %0.9% + IN: swan>? -2 - OUT: swan>. %0.90;0.47% {1: 1} +2 + + OUT: swan>. %0.90;0.47% ********** conversions between inheritance and similarity IN: swan>. %0.9% - IN: bird>? -2 - OUT: bird>. %0.90;0.81% {1: 1} + IN: bird>? + +2 + + OUT: bird>. %0.90;0.81% ********** set definition IN: <{Tweety} --> {Birdie}>. -6 - OUT: <{Birdie} <-> {Tweety}>. %1.00;0.90% {1: 1} +6 + + OUT: <{Birdie} <-> {Tweety}>. %1.00;0.90% + ********** set definition - IN: <[smart] --> [bright]>. -5 - OUT: <[bright] <-> [smart]>. %1.00;0.90% {1: 1} + IN: <[smart] --> [bright]>. + +5 + + OUT: <[bright] <-> [smart]>. %1.00;0.90% ********** set definition IN: <{Birdie} <-> {Tweety}>. -5 - OUT: Tweety>. %1.00;0.90% {1: 1} - OUT: <{Tweety} --> {Birdie}>. %1.00;0.90% {1: 1} +5 + + OUT: Tweety>. %1.00;0.90% + OUT: <{Tweety} --> {Birdie}>. %1.00;0.90% ********** set definition - IN: <[bright] <-> [smart]>. -5 - OUT: smart>. %1.00;0.90% {1: 1} - OUT: <[bright] --> [smart]>. %1.00;0.90% {1: 1} + IN: <[bright] <-> [smart]>. + +5 + + OUT: smart>. %1.00;0.90% + OUT: <[bright] --> [smart]>. %1.00;0.90% ********** structure transformation IN: Tweety>. %0.9% - IN: <{Birdie} <-> {Tweety}>? + IN: <{Birdie} <-> {Tweety}>? 5 - OUT: <{Birdie} <-> {Tweety}>. %0.90;0.90% {1: 1} + OUT: <{Birdie} <-> {Tweety}>. %0.90;0.90% ********** structure transformation IN: smart>. %0.9% - IN: <[bright] --> [smart]>? + IN: <[bright] --> [smart]>? + 9 - OUT: <[bright] --> [smart]>. %0.90;0.90% {1: 1} + OUT: <[bright] <-> [smart]>. %0.90;0.90% -********** question derivation +********** question derivation IN: swimmer>. - IN: ? -1 - OUT: <{?1} --> bird>? {2: 2;1} - OUT: {?1}>? {2: 2;1} - OUT: <{?1} <-> bird>? {2: 2;1} + IN: <{?x} --> swimmer>? + +1 + + OUT: <{?1} --> bird>? + OUT: {?1}>? + + OUT: <{?1} <-> bird>? + diff --git a/nars-dist/Examples/Example-NAL2-complete.txt b/nars-dist/Examples/Example-NAL2-complete.txt index 3e223e30..cf9d6101 100644 --- a/nars-dist/Examples/Example-NAL2-complete.txt +++ b/nars-dist/Examples/Example-NAL2-complete.txt @@ -1,210 +1,210 @@ ********** revision - IN: swan>. %1.00;0.90% {1: 1} + IN: swan>. %1.00;0.90% {0 : 1} - IN: swan>. %0.10;0.60% {1: 2} + IN: swan>. %0.10;0.60% {0 : 2} 1 - OUT: swan>. %0.87;0.91% {2: 2;1} + OUT: swan>. %0.87;0.91% {1 : 1;2} ********** comparison - IN: swimmer>. %0.70;0.90% {1: 1} + IN: swimmer>. %0.70;0.90% {0 : 1} - IN: bird>. %1.00;0.90% {1: 2} + IN: bird>. %1.00;0.90% {0 : 2} 1 - OUT: swimmer>. %0.70;0.44% {2: 1;2} + OUT: swimmer>. %0.70;0.45% {1 : 2;1} - OUT: bird>. %1.00;0.36% {2: 1;2} + OUT: bird>. %1.00;0.36% {1 : 2;1} - OUT: swimmer>. %0.70;0.44% {2: 1;2} + OUT: swimmer>. %0.70;0.45% {1 : 2;1} - OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.70;0.44% {2: 1;2} + OUT: <<#1 --> bird> =|> <#1 --> swimmer>>. %0.70;0.45% {1 : 2;1} - OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.36% {2: 1;2} + OUT: <<#1 --> swimmer> =|> <#1 --> bird>>. %1.00;0.36% {1 : 2;1} - OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.70;0.44% {2: 1;2} + OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.70;0.45% {1 : 2;1} - OUT: (|,bird,swimmer)>. %1.00;0.96% {2: 1;2} + OUT: (|,bird,swimmer)>. %1.00;0.96% {1 : 2;1} - OUT: (&,bird,swimmer)>. %0.70;0.83% {2: 1;2} + OUT: (&,bird,swimmer)>. %0.70;0.84% {1 : 2;1} - OUT: (-,swimmer,bird)>. %0.00;0.92% {2: 1;2} + OUT: (-,swimmer,bird)>. %0.00;0.93% {1 : 2;1} - OUT: (-,bird,swimmer)>. %0.30;0.87% {2: 1;2} + OUT: (-,bird,swimmer)>. %0.30;0.87% {1 : 2;1} - OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.70;0.83% {2: 1;2} + OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.70;0.84% {1 : 2;1} ********** comparison - IN: competition>. %1.00;0.90% {1: 1} + IN: competition>. %1.00;0.90% {0 : 1} - IN: competition>. %0.80;0.90% {1: 2} + IN: competition>. %0.80;0.90% {0 : 2} 1 - OUT: chess>. %1.00;0.39% {2: 1;2} + OUT: chess>. %1.00;0.39% {1 : 2;1} - OUT: sport>. %0.80;0.44% {2: 1;2} + OUT: sport>. %0.80;0.45% {1 : 2;1} - OUT: sport>. %0.80;0.44% {2: 1;2} + OUT: sport>. %0.80;0.45% {1 : 2;1} - OUT: < #1> ==> #1>>. %1.00;0.39% {2: 1;2} + OUT: < #1> =|> #1>>. %1.00;0.39% {1 : 2;1} - OUT: < #1> ==> #1>>. %0.80;0.44% {2: 1;2} + OUT: < #1> =|> #1>>. %0.80;0.45% {1 : 2;1} - OUT: < #1> <=> #1>>. %0.80;0.44% {2: 1;2} + OUT: < #1> <=> #1>>. %0.80;0.45% {1 : 2;1} - OUT: <(&,chess,sport) --> competition>. %1.00;0.97% {2: 1;2} + OUT: <(&,chess,sport) --> competition>. %1.00;0.97% {1 : 2;1} - OUT: <(|,chess,sport) --> competition>. %0.80;0.82% {2: 1;2} + OUT: <(|,chess,sport) --> competition>. %0.80;0.83% {1 : 2;1} - OUT: <(~,sport,chess) --> competition>. %0.20;0.88% {2: 1;2} + OUT: <(~,sport,chess) --> competition>. %0.20;0.88% {1 : 2;1} - OUT: <(~,chess,sport) --> competition>. %0.00;0.91% {2: 1;2} + OUT: <(~,chess,sport) --> competition>. %0.00;0.92% {1 : 2;1} - OUT: (&&, #1()>, #1()>). %0.80;0.82% {2: 1;2} + OUT: (&&, #1()>, #1()>). %0.80;0.83% {1 : 2;1} ********** analogy - IN: swimmer>. %1.00;0.90% {1: 1} + IN: swimmer>. %1.00;0.90% {0 : 1} - IN: swan>. %1.00;0.90% {1: 2} + IN: swan>. %1.00;0.90% {0 : 2} 1 - OUT: swimmer>. %1.00;0.72% {2: 1;2} + OUT: swimmer>. %1.00;0.81% {1 : 2;1} ********** analogy - IN: swimmer>. %1.00;0.90% {1: 1} + IN: swimmer>. %1.00;0.90% {0 : 1} - IN: swan>. %1.00;0.90% {1: 2} + IN: swan>. %1.00;0.90% {0 : 2} 1 - OUT: swimmer>. %1.00;0.72% {2: 1;2} + OUT: swimmer>. %1.00;0.81% {1 : 2;1} ********** resemblance - IN: swan>. %1.00;0.90% {1: 1} + IN: swan>. %1.00;0.90% {0 : 1} - IN: swan>. %1.00;0.90% {1: 2} + IN: swan>. %1.00;0.90% {0 : 2} 1 - OUT: robin>. %1.00;0.81% {2: 1;2} + OUT: robin>. %1.00;0.81% {1 : 2;1} ********** instance and property - IN: <{Tweety} --> bird>. %1.00;0.90% {1: 1} + IN: <{Tweety} --> bird>. %1.00;0.90% {0 : 1} - IN: [black]>. %1.00;0.90% {1: 2} + IN: [black]>. %1.00;0.90% {0 : 2} - IN: <{Tweety} --> [yellow]>. %1.00;0.90% {1: 3} + IN: <{Tweety} --> [yellow]>. %1.00;0.90% {0 : 3} ********** conversions between inheritance and similarity - IN: bird>. %1.00;0.90% {1: 1} + IN: bird>. %1.00;0.90% {0 : 1} - IN: swan>. %0.10;0.90% {1: 2} + IN: swan>. %0.10;0.90% {0 : 2} 1 - OUT: swan>. %0.10;0.89% {2: 1;2} + OUT: swan>. %0.10;0.89% {1 : 2;1} ********** conversions between inheritance and similarity - IN: bird>. %1.00;0.90% {1: 1} + IN: bird>. %1.00;0.90% {0 : 1} - IN: swan>. %0.10;0.90% {1: 2} + IN: swan>. %0.10;0.90% {0 : 2} 1 - OUT: swan>. %0.10;0.73% {2: 1;2} + OUT: swan>. %0.10;0.74% {1 : 2;1} ********** conversions between inheritance and similarity - IN: bird>. %0.90;0.90% {1: 1} + IN: bird>. %0.90;0.90% {0 : 1} - IN: swan>? {1: 2} + IN: swan>? {0 : 2} 2 - OUT: swan>. %0.90;0.47% {1: 1} + OUT: swan>. %0.90;0.47% {2 : 1} ********** conversions between inheritance and similarity - IN: swan>. %0.90;0.90% {1: 1} + IN: swan>. %0.90;0.90% {0 : 1} - IN: bird>? {1: 2} + IN: bird>? {0 : 2} 2 - OUT: bird>. %0.90;0.81% {1: 1} + OUT: bird>. %0.90;0.81% {2 : 1} ********** set definition - IN: <{Tweety} --> {Birdie}>. %1.00;0.90% {1: 1} + IN: <{Tweety} --> {Birdie}>. %1.00;0.90% {0 : 1} 6 - OUT: <{Birdie} <-> {Tweety}>. %1.00;0.90% {1: 1} + OUT: <{Birdie} <-> {Tweety}>. %1.00;0.90% {6 : 1} ********** set definition - IN: <[smart] --> [bright]>. %1.00;0.90% {1: 1} + IN: <[smart] --> [bright]>. %1.00;0.90% {0 : 1} 5 - OUT: <[bright] <-> [smart]>. %1.00;0.90% {1: 1} + OUT: <[bright] <-> [smart]>. %1.00;0.90% {5 : 1} ********** set definition - IN: <{Birdie} <-> {Tweety}>. %1.00;0.90% {1: 1} + IN: <{Birdie} <-> {Tweety}>. %1.00;0.90% {0 : 1} 5 - OUT: Tweety>. %1.00;0.90% {1: 1} + OUT: Tweety>. %1.00;0.90% {5 : 1} - OUT: <{Tweety} --> {Birdie}>. %1.00;0.90% {1: 1} + OUT: <{Tweety} --> {Birdie}>. %1.00;0.90% {5 : 1} ********** set definition - IN: <[bright] <-> [smart]>. %1.00;0.90% {1: 1} + IN: <[bright] <-> [smart]>. %1.00;0.90% {0 : 1} 5 - OUT: smart>. %1.00;0.90% {1: 1} + OUT: smart>. %1.00;0.90% {5 : 1} - OUT: <[bright] --> [smart]>. %1.00;0.90% {1: 1} + OUT: <[bright] --> [smart]>. %1.00;0.90% {5 : 1} ********** structure transformation - IN: Tweety>. %0.90;0.90% {1: 1} + IN: Tweety>. %0.90;0.90% {0 : 1} - IN: <{Birdie} <-> {Tweety}>? {1: 2} + IN: <{Birdie} <-> {Tweety}>? {0 : 2} 2 - OUT: Tweety>? {1: 2} + OUT: Tweety>? {2 : 2} - OUT: <{Tweety} --> {Birdie}>? {1: 2} + OUT: <{Tweety} --> {Birdie}>? {2 : 2} 3 - OUT: <{Birdie} <-> {Tweety}>. %0.90;0.90% {1: 1} + OUT: <{Birdie} <-> {Tweety}>. %0.90;0.90% {5 : 1} ********** structure transformation - IN: smart>. %0.90;0.90% {1: 1} + IN: smart>. %0.90;0.90% {0 : 1} - IN: <[bright] --> [smart]>? {1: 2} + IN: <[bright] --> [smart]>? {0 : 2} 2 - OUT: <[bright] <-> [smart]>? {1: 2} + OUT: <[bright] <-> [smart]>? {2 : 2} 7 - OUT: <[bright] <-> [smart]>. %0.90;0.90% {1: 1} + OUT: <[bright] <-> [smart]>. %0.90;0.90% {9 : 1} ********** question derivation - IN: swimmer>. %1.00;0.90% {1: 1} + IN: swimmer>. %1.00;0.90% {0 : 1} - IN: <{?1} --> swimmer>? {1: 2} + IN: <{?1} --> swimmer>? {0 : 2} 1 - OUT: <{?1} --> bird>? {2: 2;1} + OUT: <{?1} --> bird>? {1 : 1;2} - OUT: {?1}>? {2: 2;1} + OUT: {?1}>? {1 : 1;2} - OUT: <{?1} <-> bird>? {2: 2;1} + OUT: <{?1} <-> bird>? {1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL3-abridged.txt b/nars-dist/Examples/Example-NAL3-abridged.txt index 12caeb84..c2f296e4 100644 --- a/nars-dist/Examples/Example-NAL3-abridged.txt +++ b/nars-dist/Examples/Example-NAL3-abridged.txt @@ -1,117 +1,120 @@ ********** compound composition, two premises IN: swimmer>. %0.9% - IN: bird>. %0.8% -1 - OUT: (|,bird,swimmer)>. %0.98;0.96% {2: 1;2} - OUT: (&,bird,swimmer)>. %0.72;0.83% {2: 1;2} - OUT: (-,swimmer,bird)>. %0.18;0.89% {2: 1;2} - OUT: (-,bird,swimmer)>. %0.08;0.90% {2: 1;2} + IN: bird>. %0.8% +1 + + OUT: (|,bird,swimmer)>. %0.98;0.96% + OUT: (&,bird,swimmer)>. %0.72;0.84% + + OUT: (-,swimmer,bird)>. %0.18;0.89% + + OUT: (-,bird,swimmer)>. %0.08;0.91% + ********** compound composition, two premises IN: competition>. %0.9% IN: competition>. %0.8% -1 - OUT: <(&,chess,sport) --> competition>. %0.98;0.96% {2: 1;2} - OUT: <(|,chess,sport) --> competition>. %0.72;0.83% {2: 1;2} - OUT: <(~,sport,chess) --> competition>. %0.18;0.89% {2: 1;2} - OUT: <(~,chess,sport) --> competition>. %0.08;0.90% {2: 1;2} +1 + + OUT: <(&,chess,sport) --> competition>. %0.98;0.96% + + OUT: <(|,chess,sport) --> competition>. %0.72;0.84% + + OUT: <(~,sport,chess) --> competition>. %0.18;0.89% + + OUT: <(~,chess,sport) --> competition>. %0.08;0.91% + ********** compound decomposition, two premises IN: (|,bird,swimmer)>. - IN: swimmer>. %0% + IN: swimmer>. %0% + 1 - OUT: bird>. %1.00;0.81% {2: 2;1} + OUT: bird>. %1.00;0.81% + ********** compound decomposition, two premises - IN: (-,mammal,swimmer)>. %0% IN: swimmer>. %0% -1 - OUT: mammal>. %0.00;0.81% {2: 2;1} + IN: (-,mammal,swimmer)>. %0% +4 + OUT: mammal>. %0.00;0.81% ********** set operations - IN: {Mars,Pluto,Venus}>. %0.9% - IN: {Pluto,Saturn}>. %0.7% + IN: {Mars,Pluto,Venus}>. %0.9% + + IN: {Pluto,Saturn}>. %0.7% + 1 - OUT: {Mars,Pluto,Saturn,Venus}>. %0.97;0.95% {2: 2;1} - OUT: {Pluto}>. %0.63;0.84% {2: 2;1} - OUT: {Saturn}>. %0.07;0.91% {2: 2;1} - OUT: {Mars,Venus}>. %0.27;0.88% {2: 2;1} + OUT: {Mars,Pluto,Saturn,Venus}>. %0.97;0.95% + + OUT: {Pluto}>. %0.63;0.85% + + OUT: {Saturn}>. %0.07;0.92% + + OUT: {Mars,Venus}>. %0.27;0.88% + ********** composition on both sides of a statement - IN: animal>. %0.9% - IN: <(&,bird,swimmer) --> (&,animal,swimmer)>? -1 - OUT: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.81% {1: 1} + IN: animal>. %0.9% + + IN: <(&,bird,swimmer) --> (&,animal,swimmer)>? + +1 + + OUT: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.73% + ********** composition on both sides of a statement - IN: animal>. %0.9% - IN: <(-,swimmer,animal) --> (-,swimmer,bird)>? -1 - OUT: <(-,swimmer,animal) --> (-,swimmer,bird)>. %0.90;0.81% {1: 1} + IN: animal>. %0.9% + + IN: <(-,swimmer,animal) --> (-,swimmer,bird)>? + +1 + + OUT: <(-,swimmer,animal) --> (-,swimmer,bird)>. %0.90;0.73% -********** compound composition, one premise - IN: bird>. %0.8% - IN: (&,bird,swimmer)>? -9 - OUT: (&,bird,swimmer)>. %0.80;0.47% {1: 1} ********** compound composition, one premise IN: bird>. %0.8% IN: (|,bird,swimmer)>? -9 - OUT: (|,bird,swimmer)>. %0.80;0.72% {1: 1} +9 + + OUT: (|,bird,swimmer)>. %0.80;0.65% ********** compound composition, one premise IN: bird>. %0.8% IN: <(&,swan,swimmer) --> bird>? -8 - OUT: <(&,swan,swimmer) --> bird>. %0.80;0.72% {1: 1} - -********** compound composition, one premise - IN: bird>. %0.8% - IN: <(|,swan,swimmer) --> bird>? -8 - OUT: <(|,swan,swimmer) --> bird>. %0.80;0.47% {1: 1} +8 -********** compound composition, one premise - IN: bird>. %0.8% - IN: (-,bird,swimmer)>? -9 - OUT: (-,bird,swimmer)>. %0.80;0.47% {1: 1} + OUT: <(&,swan,swimmer) --> bird>. %0.80;0.65% ********** compound composition, one premise - IN: bird>. %0.8% - IN: (-,swimmer,bird)>? -10 - OUT: (-,swimmer,bird)>. %0.20;0.72% + IN: bird>. %0.8% + + IN: (-,swimmer,bird)>? + +9 + + OUT: (-,swimmer,bird)>. %0.20;0.65% + ********** compound composition, one premise IN: bird>. %0.8% IN: (~,bird,swimmer)>? -10 - OUT: (~,bird,swimmer)>. %0.80;0.72% +9 + + OUT: (~,bird,swimmer)>. %0.80;0.65% -********** compound decomposition, one premise - IN: (&,bird,swimmer)>. %0.9% -6 - OUT: bird>. %0.90;0.81% {1: 1} ********** compound decomposition, one premise - IN: (|,bird,swimmer)>. %0.9% -6 - OUT: bird>. %0.90;0.47% {1: 1} + IN: (&,bird,swimmer)>. %0.9% + +6 + + OUT: bird>. %0.90;0.73% ********** compound decomposition, one premise IN: (-,bird,swimmer)>. %0.9% -6 - OUT: swimmer>. %0.10;0.81% {1: 1} +6 -********** decomposition on both sides of a statement - IN: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.9% -1 - OUT: animal>. %0.90;0.47% {1: 1} - -********** decomposition on both sides of a statement - IN: <(-,swimmer,bird) --> (-,swimmer,animal)>. %0.9% -1 - OUT: bird>. %0.90;0.47% {1: 1} + OUT: bird>. %0.90;0.73% diff --git a/nars-dist/Examples/Example-NAL3-complete.txt b/nars-dist/Examples/Example-NAL3-complete.txt index fbccd212..bd297d1b 100644 --- a/nars-dist/Examples/Example-NAL3-complete.txt +++ b/nars-dist/Examples/Example-NAL3-complete.txt @@ -1,249 +1,185 @@ ********** compound composition, two premises - IN: swimmer>. %0.90;0.90% {1: 1} + IN: swimmer>. %0.90;0.90% {0 : 1} - IN: bird>. %0.80;0.90% {1: 2} + IN: bird>. %0.80;0.90% {0 : 2} 1 - OUT: swimmer>. %0.90;0.39% {2: 1;2} + OUT: swimmer>. %0.90;0.39% {1 : 2;1} - OUT: bird>. %0.80;0.42% {2: 1;2} + OUT: bird>. %0.80;0.42% {1 : 2;1} - OUT: swimmer>. %0.73;0.44% {2: 1;2} + OUT: swimmer>. %0.73;0.44% {1 : 2;1} - OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.90;0.39% {2: 1;2} + OUT: <<#1 --> bird> =|> <#1 --> swimmer>>. %0.90;0.39% {1 : 2;1} - OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %0.80;0.42% {2: 1;2} + OUT: <<#1 --> swimmer> =|> <#1 --> bird>>. %0.80;0.42% {1 : 2;1} - OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.73;0.44% {2: 1;2} + OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.73;0.44% {1 : 2;1} - OUT: (|,bird,swimmer)>. %0.98;0.96% {2: 1;2} + OUT: (|,bird,swimmer)>. %0.98;0.96% {1 : 2;1} - OUT: (&,bird,swimmer)>. %0.72;0.83% {2: 1;2} + OUT: (&,bird,swimmer)>. %0.72;0.84% {1 : 2;1} - OUT: (-,swimmer,bird)>. %0.18;0.89% {2: 1;2} + OUT: (-,swimmer,bird)>. %0.18;0.89% {1 : 2;1} - OUT: (-,bird,swimmer)>. %0.08;0.90% {2: 1;2} + OUT: (-,bird,swimmer)>. %0.08;0.91% {1 : 2;1} - OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.72;0.83% {2: 1;2} + OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.72;0.84% {1 : 2;1} ********** compound composition, two premises - IN: competition>. %0.90;0.90% {1: 1} + IN: competition>. %0.90;0.90% {0 : 1} - IN: competition>. %0.80;0.90% {1: 2} + IN: competition>. %0.80;0.90% {0 : 2} 1 - OUT: chess>. %0.90;0.39% {2: 1;2} + OUT: chess>. %0.90;0.39% {1 : 2;1} - OUT: sport>. %0.80;0.42% {2: 1;2} + OUT: sport>. %0.80;0.42% {1 : 2;1} - OUT: sport>. %0.73;0.44% {2: 1;2} + OUT: sport>. %0.73;0.44% {1 : 2;1} - OUT: < #1> ==> #1>>. %0.90;0.39% {2: 1;2} + OUT: < #1> =|> #1>>. %0.90;0.39% {1 : 2;1} - OUT: < #1> ==> #1>>. %0.80;0.42% {2: 1;2} + OUT: < #1> =|> #1>>. %0.80;0.42% {1 : 2;1} - OUT: < #1> <=> #1>>. %0.73;0.44% {2: 1;2} + OUT: < #1> <=> #1>>. %0.73;0.44% {1 : 2;1} - OUT: <(&,chess,sport) --> competition>. %0.98;0.96% {2: 1;2} + OUT: <(&,chess,sport) --> competition>. %0.98;0.96% {1 : 2;1} - OUT: <(|,chess,sport) --> competition>. %0.72;0.83% {2: 1;2} + OUT: <(|,chess,sport) --> competition>. %0.72;0.84% {1 : 2;1} - OUT: <(~,sport,chess) --> competition>. %0.18;0.89% {2: 1;2} + OUT: <(~,sport,chess) --> competition>. %0.18;0.89% {1 : 2;1} - OUT: <(~,chess,sport) --> competition>. %0.08;0.90% {2: 1;2} + OUT: <(~,chess,sport) --> competition>. %0.08;0.91% {1 : 2;1} - OUT: (&&, #1()>, #1()>). %0.72;0.83% {2: 1;2} + OUT: (&&, #1()>, #1()>). %0.72;0.84% {1 : 2;1} ********** compound decomposition, two premises - IN: (|,bird,swimmer)>. %1.00;0.90% {1: 1} + IN: (|,bird,swimmer)>. %1.00;0.90% {0 : 1} - IN: swimmer>. %0.00;0.90% {1: 2} + IN: swimmer>. %0.00;0.90% {0 : 2} 1 - OUT: bird>. %1.00;0.81% {2: 2;1} + OUT: bird>. %1.00;0.81% {1 : 1;2} ********** compound decomposition, two premises - IN: (-,mammal,swimmer)>. %0.00;0.90% {1: 1} + IN: swimmer>. %0.00;0.90% {0 : 1} - IN: swimmer>. %0.00;0.90% {1: 2} + IN: (-,mammal,swimmer)>. %0.00;0.90% {0 : 2} -1 +4 - OUT: mammal>. %0.00;0.81% {2: 2;1} + OUT: mammal>. %0.00;0.81% {4 : 2;1} ********** set operations - IN: {Mars,Pluto,Venus}>. %0.90;0.90% {1: 1} + IN: {Mars,Pluto,Venus}>. %0.90;0.90% {0 : 1} - IN: {Pluto,Saturn}>. %0.70;0.90% {1: 2} + IN: {Pluto,Saturn}>. %0.70;0.90% {0 : 2} 1 - OUT: <{Mars,Pluto,Venus} --> {Pluto,Saturn}>. %0.70;0.42% {2: 2;1} + OUT: <{Mars,Pluto,Venus} --> {Pluto,Saturn}>. %0.70;0.42% {1 : 1;2} - OUT: <{Pluto,Saturn} --> {Mars,Pluto,Venus}>. %0.90;0.36% {2: 2;1} + OUT: <{Pluto,Saturn} --> {Mars,Pluto,Venus}>. %0.90;0.36% {1 : 1;2} - OUT: <{Mars,Pluto,Venus} <-> {Pluto,Saturn}>. %0.64;0.44% {2: 2;1} + OUT: <{Mars,Pluto,Venus} <-> {Pluto,Saturn}>. %0.65;0.44% {1 : 1;2} - OUT: <<#1 --> {Mars,Pluto,Venus}> ==> <#1 --> {Pluto,Saturn}>>. %0.70;0.42% {2: 2;1} + OUT: <<#1 --> {Mars,Pluto,Venus}> =|> <#1 --> {Pluto,Saturn}>>. %0.70;0.42% {1 : 1;2} - OUT: <<#1 --> {Pluto,Saturn}> ==> <#1 --> {Mars,Pluto,Venus}>>. %0.90;0.36% {2: 2;1} + OUT: <<#1 --> {Pluto,Saturn}> =|> <#1 --> {Mars,Pluto,Venus}>>. %0.90;0.36% {1 : 1;2} - OUT: <<#1 --> {Mars,Pluto,Venus}> <=> <#1 --> {Pluto,Saturn}>>. %0.64;0.44% {2: 2;1} + OUT: <<#1 --> {Mars,Pluto,Venus}> <=> <#1 --> {Pluto,Saturn}>>. %0.65;0.44% {1 : 1;2} - OUT: {Mars,Pluto,Saturn,Venus}>. %0.97;0.95% {2: 2;1} + OUT: {Mars,Pluto,Saturn,Venus}>. %0.97;0.95% {1 : 1;2} - OUT: {Pluto}>. %0.63;0.84% {2: 2;1} + OUT: {Pluto}>. %0.63;0.85% {1 : 1;2} - OUT: {Saturn}>. %0.07;0.91% {2: 2;1} + OUT: {Saturn}>. %0.07;0.92% {1 : 1;2} - OUT: {Mars,Venus}>. %0.27;0.88% {2: 2;1} + OUT: {Mars,Venus}>. %0.27;0.88% {1 : 1;2} - OUT: (&&,<#1() --> {Mars,Pluto,Venus}>,<#1() --> {Pluto,Saturn}>). %0.63;0.84% {2: 2;1} + OUT: (&&,<#1() --> {Mars,Pluto,Venus}>,<#1() --> {Pluto,Saturn}>). %0.63;0.85% {1 : 1;2} ********** composition on both sides of a statement - IN: animal>. %0.90;0.90% {1: 1} + IN: animal>. %0.90;0.90% {0 : 1} - IN: <(&,bird,swimmer) --> (&,animal,swimmer)>? {1: 2} + IN: <(&,bird,swimmer) --> (&,animal,swimmer)>? {0 : 2} 1 - OUT: <(&,bird,swimmer) --> animal>. %0.90;0.81% {1: 1} + OUT: <(&,bird,swimmer) --> animal>. %0.90;0.73% {1 : 1} - OUT: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.81% {1: 1} + OUT: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.73% {1 : 1} ********** composition on both sides of a statement - IN: animal>. %0.90;0.90% {1: 1} + IN: animal>. %0.90;0.90% {0 : 1} - IN: <(-,swimmer,animal) --> (-,swimmer,bird)>? {1: 2} + IN: <(-,swimmer,animal) --> (-,swimmer,bird)>? {0 : 2} 1 - OUT: (-,swimmer,animal)>. %0.10;0.81% {1: 1} + OUT: (-,swimmer,animal)>. %0.10;0.73% {1 : 1} - OUT: <(-,swimmer,animal) --> (-,swimmer,bird)>. %0.90;0.81% {1: 1} + OUT: <(-,swimmer,animal) --> (-,swimmer,bird)>. %0.90;0.73% {1 : 1} ********** compound composition, one premise - IN: bird>. %0.80;0.90% {1: 1} + IN: bird>. %0.80;0.90% {0 : 1} - IN: (&,bird,swimmer)>? {1: 2} + IN: (|,bird,swimmer)>? {0 : 2} 9 - OUT: (&,bird,swimmer)>. %0.80;0.47% {1: 1} + OUT: (|,bird,swimmer)>. %0.80;0.65% {9 : 1} - OUT: <(&,swan,swimmer) --> (&,bird,swimmer)>. %0.80;0.72% {1: 1} + OUT: <(|,swan,swimmer) --> (|,bird,swimmer)>. %0.80;0.65% {9 : 1} ********** compound composition, one premise - IN: bird>. %0.80;0.90% {1: 1} - - IN: (|,bird,swimmer)>? {1: 2} - -9 - - OUT: (|,bird,swimmer)>. %0.80;0.72% {1: 1} + IN: bird>. %0.80;0.90% {0 : 1} - OUT: <(|,swan,swimmer) --> (|,bird,swimmer)>. %0.80;0.72% {1: 1} - -********** compound composition, one premise - IN: bird>. %0.80;0.90% {1: 1} - - IN: <(&,swan,swimmer) --> bird>? {1: 2} + IN: <(&,swan,swimmer) --> bird>? {0 : 2} 8 - OUT: <(&,swan,swimmer) --> bird>. %0.80;0.72% {1: 1} - - OUT: <(&,swan,swimmer) --> (&,bird,swimmer)>. %0.80;0.72% {1: 1} - -********** compound composition, one premise - IN: bird>. %0.80;0.90% {1: 1} - - IN: <(|,swan,swimmer) --> bird>? {1: 2} - -8 - - OUT: <(|,swan,swimmer) --> bird>. %0.80;0.47% {1: 1} - - OUT: <(|,swan,swimmer) --> (|,bird,swimmer)>. %0.80;0.72% {1: 1} - -********** compound composition, one premise - IN: bird>. %0.80;0.90% {1: 1} - - IN: (-,bird,swimmer)>? {1: 2} - -9 - - OUT: (-,bird,swimmer)>. %0.80;0.47% {1: 1} + OUT: <(&,swan,swimmer) --> bird>. %0.80;0.65% {8 : 1} - OUT: <(-,swan,swimmer) --> (-,bird,swimmer)>. %0.80;0.72% {1: 1} + OUT: <(&,swan,swimmer) --> (&,bird,swimmer)>. %0.80;0.65% {8 : 1} ********** compound composition, one premise - IN: bird>. %0.80;0.90% {1: 1} + IN: bird>. %0.80;0.90% {0 : 1} - IN: (-,swimmer,bird)>? {1: 2} + IN: (-,swimmer,bird)>? {0 : 2} 9 - OUT: (-,swimmer,bird)>. %0.20;0.72% {1: 1} - - OUT: <(-,swimmer,bird) --> (-,swimmer,swan)>. %0.80;0.72% {1: 1} - -1 + OUT: (-,swimmer,bird)>. %0.20;0.65% {9 : 1} - OUT: (-,swimmer,bird)>. %0.20;0.72% {1: 1} + OUT: <(-,swimmer,bird) --> (-,swimmer,swan)>. %0.80;0.65% {9 : 1} ********** compound composition, one premise - IN: bird>. %0.80;0.90% {1: 1} + IN: bird>. %0.80;0.90% {0 : 1} - IN: (~,bird,swimmer)>? {1: 2} + IN: (~,bird,swimmer)>? {0 : 2} 9 - OUT: (~,bird,swimmer)>. %0.80;0.72% {1: 1} - - OUT: <(~,swan,swimmer) --> (~,bird,swimmer)>. %0.80;0.72% {1: 1} + OUT: (~,bird,swimmer)>. %0.80;0.65% {9 : 1} -1 - - OUT: (~,bird,swimmer)>. %0.80;0.72% {1: 1} + OUT: <(~,swan,swimmer) --> (~,bird,swimmer)>. %0.80;0.65% {9 : 1} ********** compound decomposition, one premise - IN: (&,bird,swimmer)>. %0.90;0.90% {1: 1} + IN: (&,bird,swimmer)>. %0.90;0.90% {0 : 1} 6 - OUT: bird>. %0.90;0.81% {1: 1} + OUT: bird>. %0.90;0.73% {6 : 1} ********** compound decomposition, one premise - IN: (|,bird,swimmer)>. %0.90;0.90% {1: 1} + IN: (-,bird,swimmer)>. %0.90;0.90% {0 : 1} 6 - OUT: bird>. %0.90;0.47% {1: 1} - -********** compound decomposition, one premise - IN: (-,bird,swimmer)>. %0.90;0.90% {1: 1} - -6 - - OUT: bird>. %0.90;0.81% {1: 1} - -********** decomposition on both sides of a statement - IN: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.90% {1: 1} - -1 - - OUT: (&,animal,swimmer)>. %0.90;0.47% {1: 1} - - OUT: animal>. %0.90;0.47% {1: 1} - -********** decomposition on both sides of a statement - IN: <(-,swimmer,bird) --> (-,swimmer,animal)>. %0.90;0.90% {1: 1} - -1 - - OUT: bird>. %0.90;0.47% {1: 1} + OUT: bird>. %0.90;0.73% {6 : 1} diff --git a/nars-dist/Examples/Example-NAL4-abridged.txt b/nars-dist/Examples/Example-NAL4-abridged.txt index bd6e7fb7..3cfae8bd 100644 --- a/nars-dist/Examples/Example-NAL4-abridged.txt +++ b/nars-dist/Examples/Example-NAL4-abridged.txt @@ -1,75 +1,93 @@ ********** structural transformation - IN: <(*,acid,base) --> reaction>. -1 - OUT: (/,reaction,_,base)>. %1.00;0.90% {1: 1} -1 - OUT: (/,reaction,acid,_)>. %1.00;0.90% {1: 1} + IN: <(*,acid,base) --> reaction>. + +1 + + OUT: (/,reaction,_,base)>. %1.00;0.90% + +1 + + OUT: (/,reaction,acid,_)>. %1.00;0.90% + ********** structural transformation IN: (/,reaction,_,base)>. -2 - OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {1: 1} -1 - OUT: (/,reaction,acid,_)>. %1.00;0.90% {1: 1} +2 + + OUT: <(*,acid,base) --> reaction>. %1.00;0.90% + +1 + + OUT: (/,reaction,acid,_)>. %1.00;0.90% + ********** structural transformation IN: (/,reaction,acid,_)>. -2 - OUT: (/,reaction,_,base)>. %1.00;0.90% {1: 1} -1 - OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {1: 1} +2 + + OUT: (/,reaction,_,base)>. %1.00;0.90% + +1 + + OUT: <(*,acid,base) --> reaction>. %1.00;0.90% + ********** structural transformation IN: (*,acid,base)>. %0.8% -2 - OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1: 1} -1 - OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {1: 1} +2 + + OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% + +1 + + OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% + ********** structural transformation - IN: <(\,neutralization,_,base) --> acid>. %0.8% -1 - OUT: (*,acid,base)>. %0.80;0.90% {1: 1} -1 - OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {1: 1} + IN: <(\,neutralization,_,base) --> acid>. %0.8% + +1 + + OUT: (*,acid,base)>. %0.80;0.90% + +1 + + OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% + ********** structural transformation - IN: <(\,neutralization,acid,_) --> base>. %0.8% -1 - OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1: 1} -1 - OUT: (*,acid,base)>. %0.80;0.90% {1: 1} + IN: <(\,neutralization,acid,_) --> base>. %0.8% + +1 + + OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% + +1 + + OUT: (*,acid,base)>. %0.80;0.90% + ********** composition on both sides of a statement - IN: animal>. %0.9% - IN: <(*,bird,plant) --> ?x>? + IN: animal>. %0.9% + + IN: <(*,bird,plant) --> ?1>? + 7 - OUT: <(*,bird,plant) --> (*,animal,plant)>. %0.90;0.81% {1: 1} + OUT: <(*,bird,plant) --> (*,animal,plant)>. %0.90;0.73% + ********** composition on both sides of a statement IN: reaction>. %0.9% - IN: <(/,neutralization,acid,_) --> ?x>? -4 - OUT: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.90;0.81% {1: 1} + IN: <(/,neutralization,acid,_) --> ?1>? +4 + + OUT: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.90;0.73% + ********** composition on both sides of a statement - IN: base>. %0.9% - IN: <(/,neutralization,_,base) --> ?x>? -4 - OUT: <(/,neutralization,_,base) --> (/,neutralization,_,soda)>. %0.90;0.81% {1: 1} - -********** decomposition on both sides of a statement - IN: <(*,plant,bird) --> (*,plant,animal)>. %0.9% -1 - OUT: animal>. %0.90;0.47% {1: 1} - -********** decomposition on both sides of a statement - IN: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.9% -1 - OUT: reaction>. %0.90;0.47% {1: 1} - -********** decomposition on both sides of a statement - IN: <(/,neutralization,_,soda) --> (/,neutralization,_,base)>. %0.9% -1 - OUT: soda>. %0.90;0.47% {1: 1} + IN: base>. %0.9% + + IN: <(/,neutralization,_,base) --> ?1>? +4 + OUT: <(/,neutralization,_,base) --> (/,neutralization,_,soda)>. %0.90;0.73% diff --git a/nars-dist/Examples/Example-NAL4-complete.txt b/nars-dist/Examples/Example-NAL4-complete.txt index 49111ed1..75ed48ee 100644 --- a/nars-dist/Examples/Example-NAL4-complete.txt +++ b/nars-dist/Examples/Example-NAL4-complete.txt @@ -1,122 +1,101 @@ ********** structural transformation - IN: <(*,acid,base) --> reaction>. %1.00;0.90% {1: 1} + IN: <(*,acid,base) --> reaction>. %1.00;0.90% {0 : 1} 1 - OUT: (/,reaction,_,base)>. %1.00;0.90% {1: 1} + OUT: (/,reaction,_,base)>. %1.00;0.90% {1 : 1} 1 - OUT: (/,reaction,acid,_)>. %1.00;0.90% {1: 1} + OUT: (/,reaction,acid,_)>. %1.00;0.90% {2 : 1} ********** structural transformation - IN: (/,reaction,_,base)>. %1.00;0.90% {1: 1} + IN: (/,reaction,_,base)>. %1.00;0.90% {0 : 1} 2 - OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {1: 1} + OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {2 : 1} 1 - OUT: (/,reaction,acid,_)>. %1.00;0.90% {1: 1} + OUT: (/,reaction,acid,_)>. %1.00;0.90% {3 : 1} ********** structural transformation - IN: (/,reaction,acid,_)>. %1.00;0.90% {1: 1} + IN: (/,reaction,acid,_)>. %1.00;0.90% {0 : 1} 2 - OUT: (/,reaction,_,base)>. %1.00;0.90% {1: 1} + OUT: (/,reaction,_,base)>. %1.00;0.90% {2 : 1} 1 - OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {1: 1} + OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {3 : 1} ********** structural transformation - IN: (*,acid,base)>. %0.80;0.90% {1: 1} + IN: (*,acid,base)>. %0.80;0.90% {0 : 1} 2 - OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1: 1} + OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {2 : 1} 1 - OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {1: 1} + OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {3 : 1} ********** structural transformation - IN: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1: 1} + IN: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {0 : 1} 1 - OUT: (*,acid,base)>. %0.80;0.90% {1: 1} + OUT: (*,acid,base)>. %0.80;0.90% {1 : 1} 1 - OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {1: 1} + OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {2 : 1} ********** structural transformation - IN: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {1: 1} + IN: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {0 : 1} 1 - OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1: 1} + OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1 : 1} 1 - OUT: (*,acid,base)>. %0.80;0.90% {1: 1} + OUT: (*,acid,base)>. %0.80;0.90% {2 : 1} ********** composition on both sides of a statement - IN: animal>. %0.90;0.90% {1: 1} + IN: animal>. %0.90;0.90% {0 : 1} - IN: <(*,bird,plant) --> ?1>? {1: 2} + IN: <(*,bird,plant) --> ?1>? {0 : 2} 1 - OUT: (/,?1,_,plant)>? {1: 2} + OUT: (/,?1,_,plant)>? {1 : 2} 5 - OUT: (/,?1,bird,_)>? {1: 2} + OUT: (/,?1,bird,_)>? {6 : 2} 1 - OUT: <(*,bird,plant) --> (*,animal,plant)>. %0.90;0.81% {1: 1} + OUT: <(*,bird,plant) --> (*,animal,plant)>. %0.90;0.73% {7 : 1} ********** composition on both sides of a statement - IN: reaction>. %0.90;0.90% {1: 1} + IN: reaction>. %0.90;0.90% {0 : 1} - IN: <(/,neutralization,acid,_) --> ?1>? {1: 2} + IN: <(/,neutralization,acid,_) --> ?1>? {0 : 2} 4 - OUT: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.90;0.81% {1: 1} + OUT: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.90;0.73% {4 : 1} ********** composition on both sides of a statement - IN: base>. %0.90;0.90% {1: 1} + IN: base>. %0.90;0.90% {0 : 1} - IN: <(/,neutralization,_,base) --> ?1>? {1: 2} + IN: <(/,neutralization,_,base) --> ?1>? {0 : 2} 4 - OUT: <(/,neutralization,_,base) --> (/,neutralization,_,soda)>. %0.90;0.81% {1: 1} - -********** decomposition on both sides of a statement - IN: <(*,plant,bird) --> (*,plant,animal)>. %0.90;0.90% {1: 1} - -1 - - OUT: animal>. %0.90;0.47% {1: 1} - -********** decomposition on both sides of a statement - IN: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.90;0.90% {1: 1} - -1 - - OUT: reaction>. %0.90;0.47% {1: 1} - -********** decomposition on both sides of a statement - IN: <(/,neutralization,_,soda) --> (/,neutralization,_,base)>. %0.90;0.90% {1: 1} - -1 - - OUT: soda>. %0.90;0.47% {1: 1} + OUT: <(/,neutralization,_,base) --> (/,neutralization,_,soda)>. %0.90;0.73% {4 : 1} diff --git a/nars-dist/Examples/Example-NAL5-abridged.txt b/nars-dist/Examples/Example-NAL5-abridged.txt index e9af3d2c..2f455d4d 100644 --- a/nars-dist/Examples/Example-NAL5-abridged.txt +++ b/nars-dist/Examples/Example-NAL5-abridged.txt @@ -1,110 +1,108 @@ ********** revision IN: < flyer> ==> bird>>. - IN: < flyer> ==> bird>>. %0.00;0.60% + IN: < flyer> ==> bird>>. %0;0.6% 1 - OUT: < flyer> ==> bird>>. %0.85;0.91% {2: 2;1} + OUT: < flyer> ==> bird>>. %0.86;0.91% + ********** deduction - IN: < bird> ==> animal>>. - IN: < flyer> ==> bird>>. + IN: < bird> ==> animal>>. -1 - OUT: < flyer> ==> animal>>. %1.00;0.81% {2: 1;2} + IN: < flyer> ==> bird>>. +1 + OUT: < flyer> ==> animal>>. %1.00;0.81% ********** exemplification - IN: < flyer> ==> bird>>. - - IN: < bird> ==> animal>>. + IN: < flyer> ==> bird>>. + IN: < bird> ==> animal>>. +7 -7 - OUT: < animal> ==> flyer>>. %1.00;0.44% {2: 1;2} + OUT: < animal> ==> flyer>>. %1.00;0.45% ********** induction - IN: < bird> ==> animal>>. + IN: < bird> ==> animal>>. + IN: < bird> ==> flyer>>. %0.8% - IN: < bird> ==> flyer>>. %0.8% -1 - OUT: < flyer> ==> animal>>. %1.00;0.39% {2: 1;2} +1 - OUT: < animal> ==> flyer>>. %0.80;0.44% {2: 1;2} + OUT: < flyer> ==> animal>>. %1.00;0.39% + + OUT: < animal> ==> flyer>>. %0.80;0.45% ********** abduction - IN: < bird> ==> animal>>. %0.7% - IN: < flyer> ==> animal>>. + IN: < bird> ==> animal>>. %0.7% -7 - OUT: < bird> ==> flyer>>. %0.70;0.44% {2: 1;2} + IN: < flyer> ==> animal>>. - OUT: < flyer> ==> bird>>. %1.00;0.36% {2: 1;2} +7 + OUT: < bird> ==> flyer>>. %0.70;0.45% -********** detachment - IN: < bird> ==> animal>>. + OUT: < flyer> ==> bird>>. %1.00;0.36% - IN: bird>. -1 +********** detachment + IN: < bird> ==> animal>>. + IN: bird>. - OUT: animal>. %1.00;0.81% {2: 1;2} +1 + OUT: animal>. %1.00;0.81% ********** detachment - IN: < bird> ==> animal>>. %0.7% - - IN: animal>. - -1 - OUT: bird>. %1.00;0.36% {2: 2;1} + IN: < bird> ==> animal>>. %0.7% + IN: animal>. +1 + OUT: bird>. %1.00;0.36% ********** comparison - IN: < bird> ==> animal>>. - - IN: < bird> ==> flyer>>. %0.8% + IN: < bird> ==> animal>>. + IN: < bird> ==> flyer>>. %0.8% -1 - OUT: < animal> <=> flyer>>. %0.80;0.44% {2: 1;2} +1 + OUT: < animal> <=> flyer>>. %0.80;0.45% ********** comparison - IN: < bird> ==> animal>>. %0.7% + IN: < bird> ==> animal>>. %0.7% + IN: < flyer> ==> animal>>. -7 - OUT: < bird> <=> flyer>>. %0.70;0.44% {2: 1;2} +7 + OUT: < bird> <=> flyer>>. %0.70;0.45% ********** analogy IN: < bird> ==> animal>>. - IN: < bird> <=> flyer>>. %0.8% -1 + IN: < bird> <=> flyer>>. %0.8% - OUT: < flyer> ==> animal>>. %0.80;0.46% {2: 1;2} +1 + OUT: < flyer> ==> animal>>. %0.80;0.65% ********** analogy - IN: bird>. + IN: bird>. + IN: < bird> <=> flyer>>. %0.8% - IN: < bird> <=> flyer>>. %0.8% 1 - OUT: flyer>. %0.80;0.72% {2: 1;2} - + OUT: flyer>. %0.80;0.65% ********** resemblance - IN: < animal> <=> bird>>. + IN: < animal> <=> bird>>. - IN: < bird> <=> flyer>>. %0.8% + IN: < bird> <=> flyer>>. %0.8% -7 - OUT: < animal> <=> flyer>>. %0.80;0.81% {2: 1;2} +7 + OUT: < animal> <=> flyer>>. %0.80;0.81% ********** conversions between Implication and Equivalence IN: < flyer> ==> bird>>. %0.9% @@ -113,172 +111,130 @@ 5 - OUT: < bird> <=> flyer>>. %0.81;0.82% {2: 1;2} - + OUT: < bird> <=> flyer>>. %0.81;0.83% ********** compound composition, two premises - IN: < bird> ==> animal>>. - - IN: < bird> ==> flyer>>. %0.8% - + IN: < bird> ==> animal>>. + IN: < bird> ==> flyer>>. %0.8% 1 - OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {2: 1;2} + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% - OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.82% {2: 1;2} + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% + OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% - OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.91% {2: 1;2} + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% ********** compound decomposition, two premises - IN: < bird> ==> (&&, animal>, flyer>)>. %0% - - IN: < bird> ==> flyer>>. - + IN: < bird> ==> (&&, animal>, flyer>)>. %0% + IN: < bird> ==> flyer>>. 6 - OUT: < bird> ==> animal>>. %0.00;0.81% {2: 1;2} + OUT: < bird> ==> animal>>. %0.00;0.81% ********** compound decomposition, two premises - IN: (&&, flyer>, swimmer>). %0% - - IN: flyer>. - -1 - - OUT: swimmer>. %0.00;0.81% {2: 1;2} + IN: (&&, flyer>, swimmer>). %0% + IN: flyer>. +1 + OUT: swimmer>. %0.00;0.81% ********** compound decomposition, two premises - IN: (||, flyer>, swimmer>). - + IN: (||, flyer>, swimmer>). IN: swimmer>. %0% -1 - - OUT: flyer>. %1.00;0.47% {1: 1} - - -********** compound composition, one premises - IN: flyer>. %0.9% - - IN: (&&, flyer>, swimmer>)? -6 - OUT: (&&, flyer>, swimmer>). %0.90;0.47% {1: 1} - - +1 + OUT: flyer>. %1.00;0.81% + ********** compound composition, one premises IN: flyer>. %0.9% IN: (||, flyer>, swimmer>)? -6 - OUT: (||, flyer>, swimmer>). %0.90;0.81% {1: 1} - - -********** compound decomposition, one premises - IN: (&&, flyer>, swimmer>). %0.9% +6 -3 - OUT: flyer>. %0.90;0.81% {1: 1} -5 - OUT: swimmer>. %0.90;0.81% {1: 1} + OUT: (||, flyer>, swimmer>). %0.90;0.73% ********** compound decomposition, one premises - IN: (||, flyer>, swimmer>). %0.9% + IN: (&&, flyer>, swimmer>). %0.9% -3 - OUT: flyer>. %0.90;0.47% {1: 1} -4 - OUT: swimmer>. %0.90;0.47% {1: 1} +3 + + OUT: flyer>. %0.90;0.73% +4 + OUT: swimmer>. %0.90;0.73% ********** negation IN: (--, flyer>). %0.1% 2 - OUT: flyer>. %0.90;0.90% {1: 1} - + OUT: flyer>. %0.90;0.90% ********** negation - IN: flyer>. %0.9% - + IN: flyer>. %0.9% IN: (--, flyer>)? -1 -2 - OUT: (--, flyer>). %0.10;0.90% {1: 1} - +15 + OUT: (--, flyer>). %0.10;0.90% ********** contraposition IN: <(--, bird>) ==> flyer>>. %0.1% IN: <(--, flyer>) ==> bird>>? 15 - OUT: <(--, flyer>) ==> bird>>. %0.00;0.44% {1: 1} - + OUT: <(--, flyer>) ==> bird>>. %0.00;0.45% ********** conditional deduction - IN: <(&&,a,b) ==> c>. - - IN: a. + IN: <(&&,a,b) ==> c>. + IN: a. 1 - OUT: c>. %1.00;0.81% {2: 1;2} - + OUT: c>. %1.00;0.81% ********** conditional deduction - IN: <(&&,a,b,c) ==> d>. - - IN: a. - -1 - OUT: <(&&,b,c) ==> d>. %1.00;0.81% {2: 1;2} + IN: <(&&,a,b,c) ==> d>. + IN: a. +1 + OUT: <(&&,b,c) ==> d>. %1.00;0.81% ********** conditional deduction IN: <(&&,a,b) ==> c>. - IN: a>. - + IN: a>. 1 - OUT: <(&&,b,d) ==> c>. %1.00;0.81% {2: 2;1} - + OUT: <(&&,b,d) ==> c>. %1.00;0.81% ********** conditional abduction - IN: c>. - + IN: c>. IN: <(&&,a,b) ==> c>. %0.4% 5 - OUT: a. %1.00;0.24% {2: 1;2} - + OUT: a. %1.00;0.24% ********** conditional abduction - IN: <(&&,b,c) ==> d>. - - IN: <(&&,a,b,c) ==> d>. + IN: <(&&,b,c) ==> d>. + IN: <(&&,a,b,c) ==> d>. 3 - OUT: a. %1.00;0.44% {2: 1;2} - + OUT: a. %1.00;0.45% ********** conditional abduction - IN: <(&&,b,d) ==> c>. %0.4% + IN: <(&&,b,d) ==> c>. %0.4% - IN: <(&&,a,b) ==> c>. + IN: <(&&,a,b) ==> c>. -6 - - OUT: d>. %1.00;0.24% {2: 1;2} - - OUT: a>. %0.40;0.44% {2: 1;2} +6 + OUT: d>. %1.00;0.24% + OUT: a>. %0.40;0.45% ********** conditional induction - IN: <(&&,a,b) ==> c>. + IN: <(&&,a,b) ==> c>. IN: d>. %0.7% -1 - OUT: <(&&,b,d) ==> c>. %1.00;0.36% {2: 2;1} +1 + OUT: <(&&,b,d) ==> c>. %1.00;0.36% diff --git a/nars-dist/Examples/Example-NAL5-complete.txt b/nars-dist/Examples/Example-NAL5-complete.txt index 9ee2120d..d3694dab 100644 --- a/nars-dist/Examples/Example-NAL5-complete.txt +++ b/nars-dist/Examples/Example-NAL5-complete.txt @@ -1,357 +1,345 @@ ********** revision - IN: < flyer> ==> bird>>. %1.00;0.90% {1: 1} + IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 1} - IN: < flyer> ==> bird>>. %0.00;0.60% {1: 2} + IN: < flyer> ==> bird>>. %0.00;0.60% {0 : 2} 1 - OUT: < flyer> ==> bird>>. %0.85;0.91% {2: 2;1} + OUT: < flyer> ==> bird>>. %0.86;0.91% {1 : 1;2} ********** deduction - IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - IN: < flyer> ==> bird>>. %1.00;0.90% {1: 2} + IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 2} 1 - OUT: < flyer> ==> animal>>. %1.00;0.81% {2: 1;2} + OUT: < flyer> ==> animal>>. %1.00;0.81% {1 : 2;1} - OUT: < animal> ==> flyer>>. %1.00;0.44% {2: 1;2} + OUT: < animal> ==> flyer>>. %1.00;0.45% {1 : 2;1} ********** exemplification - IN: < flyer> ==> bird>>. %1.00;0.90% {1: 1} + IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 1} - IN: < bird> ==> animal>>. %1.00;0.90% {1: 2} + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 2} 7 - OUT: < flyer> ==> animal>>. %1.00;0.81% {2: 1;2} + OUT: < flyer> ==> animal>>. %1.00;0.81% {7 : 2;1} - OUT: < animal> ==> flyer>>. %1.00;0.44% {2: 1;2} + OUT: < animal> ==> flyer>>. %1.00;0.45% {7 : 2;1} ********** induction - IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - IN: < bird> ==> flyer>>. %0.80;0.90% {1: 2} + IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} 1 - OUT: < flyer> ==> animal>>. %1.00;0.39% {2: 1;2} + OUT: < flyer> ==> animal>>. %1.00;0.39% {1 : 2;1} - OUT: < animal> ==> flyer>>. %0.80;0.44% {2: 1;2} + OUT: < animal> ==> flyer>>. %0.80;0.45% {1 : 2;1} - OUT: < animal> <=> flyer>>. %0.80;0.44% {2: 1;2} + OUT: < animal> <=> flyer>>. %0.80;0.45% {1 : 2;1} - OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {2: 1;2} + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {1 : 2;1} - OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.82% {2: 1;2} + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% {1 : 2;1} - OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {2: 1;2} + OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {1 : 2;1} - OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.91% {2: 1;2} + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% {1 : 2;1} - OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.82% {2: 1;2} + OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.83% {1 : 2;1} ********** abduction - IN: < bird> ==> animal>>. %0.70;0.90% {1: 1} + IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} - IN: < flyer> ==> animal>>. %1.00;0.90% {1: 2} + IN: < flyer> ==> animal>>. %1.00;0.90% {0 : 2} 7 - OUT: < bird> ==> flyer>>. %0.70;0.44% {2: 1;2} + OUT: < bird> ==> flyer>>. %0.70;0.45% {7 : 2;1} - OUT: < flyer> ==> bird>>. %1.00;0.36% {2: 1;2} + OUT: < flyer> ==> bird>>. %1.00;0.36% {7 : 2;1} - OUT: < bird> <=> flyer>>. %0.70;0.44% {2: 1;2} + OUT: < bird> <=> flyer>>. %0.70;0.45% {7 : 2;1} - OUT: <(&&, bird>, flyer>) ==> animal>>. %1.00;0.96% {2: 1;2} + OUT: <(&&, bird>, flyer>) ==> animal>>. %1.00;0.96% {7 : 2;1} - OUT: <(||, bird>, flyer>) ==> animal>>. %0.70;0.83% {2: 1;2} + OUT: <(||, bird>, flyer>) ==> animal>>. %0.70;0.84% {7 : 2;1} - OUT: <(||,(--, flyer>), bird>) ==> animal>>. %0.00;0.92% {2: 1;2} + OUT: <(||,(--, flyer>), bird>) ==> animal>>. %0.00;0.93% {7 : 2;1} - OUT: <(||,(--, bird>), flyer>) ==> animal>>. %0.30;0.87% {2: 1;2} + OUT: <(||,(--, bird>), flyer>) ==> animal>>. %0.30;0.87% {7 : 2;1} - OUT: (&&,< bird> ==> #1()>,< flyer> ==> #1()>). %0.70;0.83% {2: 1;2} + OUT: (&&,< bird> ==> #1()>,< flyer> ==> #1()>). %0.70;0.84% {7 : 2;1} ********** detachment - IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - IN: bird>. %1.00;0.90% {1: 2} + IN: bird>. %1.00;0.90% {0 : 2} 1 - OUT: animal>. %1.00;0.81% {2: 2;1} + OUT: animal>. %1.00;0.81% {1 : 1;2} ********** detachment - IN: < bird> ==> animal>>. %0.70;0.90% {1: 1} + IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} - IN: animal>. %1.00;0.90% {1: 2} + IN: animal>. %1.00;0.90% {0 : 2} 1 - OUT: bird>. %1.00;0.36% {2: 2;1} + OUT: bird>. %1.00;0.36% {1 : 1;2} ********** comparison - IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - IN: < bird> ==> flyer>>. %0.80;0.90% {1: 2} + IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} 1 - OUT: < flyer> ==> animal>>. %1.00;0.39% {2: 1;2} + OUT: < flyer> ==> animal>>. %1.00;0.39% {1 : 2;1} - OUT: < animal> ==> flyer>>. %0.80;0.44% {2: 1;2} + OUT: < animal> ==> flyer>>. %0.80;0.45% {1 : 2;1} - OUT: < animal> <=> flyer>>. %0.80;0.44% {2: 1;2} + OUT: < animal> <=> flyer>>. %0.80;0.45% {1 : 2;1} - OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {2: 1;2} + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {1 : 2;1} - OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.82% {2: 1;2} + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% {1 : 2;1} - OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {2: 1;2} + OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {1 : 2;1} - OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.91% {2: 1;2} + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% {1 : 2;1} - OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.82% {2: 1;2} + OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.83% {1 : 2;1} ********** comparison - IN: < bird> ==> animal>>. %0.70;0.90% {1: 1} + IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} - IN: < flyer> ==> animal>>. %1.00;0.90% {1: 2} + IN: < flyer> ==> animal>>. %1.00;0.90% {0 : 2} 7 - OUT: < bird> ==> flyer>>. %0.70;0.44% {2: 1;2} + OUT: < bird> ==> flyer>>. %0.70;0.45% {7 : 2;1} - OUT: < flyer> ==> bird>>. %1.00;0.36% {2: 1;2} + OUT: < flyer> ==> bird>>. %1.00;0.36% {7 : 2;1} - OUT: < bird> <=> flyer>>. %0.70;0.44% {2: 1;2} + OUT: < bird> <=> flyer>>. %0.70;0.45% {7 : 2;1} - OUT: <(&&, bird>, flyer>) ==> animal>>. %1.00;0.96% {2: 1;2} + OUT: <(&&, bird>, flyer>) ==> animal>>. %1.00;0.96% {7 : 2;1} - OUT: <(||, bird>, flyer>) ==> animal>>. %0.70;0.83% {2: 1;2} + OUT: <(||, bird>, flyer>) ==> animal>>. %0.70;0.84% {7 : 2;1} - OUT: <(||,(--, flyer>), bird>) ==> animal>>. %0.00;0.92% {2: 1;2} + OUT: <(||,(--, flyer>), bird>) ==> animal>>. %0.00;0.93% {7 : 2;1} - OUT: <(||,(--, bird>), flyer>) ==> animal>>. %0.30;0.87% {2: 1;2} + OUT: <(||,(--, bird>), flyer>) ==> animal>>. %0.30;0.87% {7 : 2;1} - OUT: (&&,< bird> ==> #1()>,< flyer> ==> #1()>). %0.70;0.83% {2: 1;2} + OUT: (&&,< bird> ==> #1()>,< flyer> ==> #1()>). %0.70;0.84% {7 : 2;1} ********** analogy - IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - IN: < bird> <=> flyer>>. %0.80;0.90% {1: 2} + IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} 1 - OUT: < flyer> ==> animal>>. %0.80;0.46% {2: 1;2} + OUT: < flyer> ==> animal>>. %0.80;0.65% {1 : 2;1} ********** analogy - IN: bird>. %1.00;0.90% {1: 1} + IN: bird>. %1.00;0.90% {0 : 1} - IN: < bird> <=> flyer>>. %0.80;0.90% {1: 2} + IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} 1 - OUT: flyer>. %0.80;0.72% {2: 1;2} + OUT: flyer>. %0.80;0.65% {1 : 2;1} ********** resemblance - IN: < animal> <=> bird>>. %1.00;0.90% {1: 1} + IN: < animal> <=> bird>>. %1.00;0.90% {0 : 1} - IN: < bird> <=> flyer>>. %0.80;0.90% {1: 2} + IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} 7 - OUT: < animal> <=> flyer>>. %0.80;0.81% {2: 1;2} + OUT: < animal> <=> flyer>>. %0.80;0.81% {7 : 2;1} ********** conversions between Implication and Equivalence - IN: < flyer> ==> bird>>. %0.90;0.90% {1: 1} + IN: < flyer> ==> bird>>. %0.90;0.90% {0 : 1} - IN: < bird> ==> flyer>>. %0.90;0.90% {1: 2} + IN: < bird> ==> flyer>>. %0.90;0.90% {0 : 2} 5 - OUT: < bird> <=> flyer>>. %0.81;0.82% {2: 1;2} + OUT: < bird> <=> flyer>>. %0.81;0.83% {5 : 2;1} ********** compound composition, two premises - IN: < bird> ==> animal>>. %1.00;0.90% {1: 1} + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - IN: < bird> ==> flyer>>. %0.80;0.90% {1: 2} + IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} 1 - OUT: < flyer> ==> animal>>. %1.00;0.39% {2: 1;2} + OUT: < flyer> ==> animal>>. %1.00;0.39% {1 : 2;1} - OUT: < animal> ==> flyer>>. %0.80;0.44% {2: 1;2} + OUT: < animal> ==> flyer>>. %0.80;0.45% {1 : 2;1} - OUT: < animal> <=> flyer>>. %0.80;0.44% {2: 1;2} + OUT: < animal> <=> flyer>>. %0.80;0.45% {1 : 2;1} - OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {2: 1;2} + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {1 : 2;1} - OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.82% {2: 1;2} + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% {1 : 2;1} - OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {2: 1;2} + OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {1 : 2;1} - OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.91% {2: 1;2} + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% {1 : 2;1} - OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.82% {2: 1;2} + OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.83% {1 : 2;1} ********** compound decomposition, two premises - IN: < bird> ==> (&&, animal>, flyer>)>. %0.00;0.90% {1: 1} + IN: < bird> ==> (&&, animal>, flyer>)>. %0.00;0.90% {0 : 1} - IN: < bird> ==> flyer>>. %1.00;0.90% {1: 2} + IN: < bird> ==> flyer>>. %1.00;0.90% {0 : 2} 6 - OUT: < bird> ==> animal>>. %0.00;0.81% {2: 1;2} + OUT: < bird> ==> animal>>. %0.00;0.81% {6 : 2;1} ********** compound decomposition, two premises - IN: (&&, flyer>, swimmer>). %0.00;0.90% {1: 1} + IN: (&&, flyer>, swimmer>). %0.00;0.90% {0 : 1} - IN: flyer>. %1.00;0.90% {1: 2} + IN: flyer>. %1.00;0.90% {0 : 2} 1 - OUT: swimmer>. %0.00;0.81% {2: 2;1} + OUT: swimmer>. %0.00;0.81% {1 : 1;2} ********** compound decomposition, two premises - IN: (||, flyer>, swimmer>). %1.00;0.90% {1: 1} + IN: (||, flyer>, swimmer>). %1.00;0.90% {0 : 1} - IN: swimmer>. %0.00;0.90% {1: 2} + IN: swimmer>. %0.00;0.90% {0 : 2} 1 - OUT: flyer>. %1.00;0.81% {2: 2;1} + OUT: flyer>. %1.00;0.81% {1 : 1;2} ********** compound composition, one premises - IN: flyer>. %0.90;0.90% {1: 1} + IN: flyer>. %0.90;0.90% {0 : 1} - IN: (&&, flyer>, swimmer>)? {1: 2} + IN: (||, flyer>, swimmer>)? {0 : 2} 6 - OUT: (&&, flyer>, swimmer>). %0.90;0.47% {1: 1} - -********** compound composition, one premises - IN: flyer>. %0.90;0.90% {1: 1} - - IN: (||, flyer>, swimmer>)? {1: 2} - -6 - - OUT: (||, flyer>, swimmer>). %0.90;0.81% {1: 1} - -********** compound decomposition, one premises - IN: (&&, flyer>, swimmer>). %0.90;0.90% {1: 1} - -3 - - OUT: flyer>. %0.90;0.81% {1: 1} - -5 - - OUT: swimmer>. %0.90;0.81% {1: 1} + OUT: (||, flyer>, swimmer>). %0.90;0.73% {6 : 1} ********** compound decomposition, one premises - IN: (||, flyer>, swimmer>). %0.90;0.90% {1: 1} + IN: (&&, flyer>, swimmer>). %0.90;0.90% {0 : 1} 3 - OUT: flyer>. %0.90;0.47% {1: 1} + OUT: flyer>. %0.90;0.73% {3 : 1} 4 - OUT: swimmer>. %0.90;0.47% {1: 1} + OUT: swimmer>. %0.90;0.73% {7 : 1} ********** negation - IN: (--, flyer>). %0.10;0.90% {1: 1} + IN: (--, flyer>). %0.10;0.90% {0 : 1} 2 - OUT: flyer>. %0.90;0.90% {1: 1} + OUT: flyer>. %0.90;0.90% {2 : 1} ********** negation - IN: flyer>. %0.90;0.90% {1: 1} + IN: flyer>. %0.90;0.90% {0 : 1} - IN: (--, flyer>)? {1: 2} + IN: (--, flyer>)? {0 : 2} 3 - OUT: flyer>? {1: 2} + OUT: flyer>? {3 : 2} + +5 + + OUT: flyer>? {8 : 2} + +7 + + OUT: (--, flyer>). %0.10;0.90% {15 : 1} ********** contraposition - IN: <(--, bird>) ==> flyer>>. %0.10;0.90% {1: 1} + IN: <(--, bird>) ==> flyer>>. %0.10;0.90% {0 : 1} - IN: <(--, flyer>) ==> bird>>? {1: 2} + IN: <(--, flyer>) ==> bird>>? {0 : 2} 15 - OUT: <(--, flyer>) ==> bird>>. %0.00;0.44% {1: 1} + OUT: <(--, flyer>) ==> bird>>. %0.00;0.45% {15 : 1} ********** conditional deduction - IN: <(&&,a,b) ==> c>. %1.00;0.90% {1: 1} + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} - IN: a. %1.00;0.90% {1: 2} + IN: a. %1.00;0.90% {0 : 2} 1 - OUT: c>. %1.00;0.81% {2: 2;1} + OUT: c>. %1.00;0.81% {1 : 1;2} ********** conditional deduction - IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {1: 1} + IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {0 : 1} - IN: a. %1.00;0.90% {1: 2} + IN: a. %1.00;0.90% {0 : 2} 1 - OUT: <(&&,b,c) ==> d>. %1.00;0.81% {2: 2;1} + OUT: <(&&,b,c) ==> d>. %1.00;0.81% {1 : 1;2} ********** conditional deduction - IN: <(&&,a,b) ==> c>. %1.00;0.90% {1: 1} + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} - IN: a>. %1.00;0.90% {1: 2} + IN: a>. %1.00;0.90% {0 : 2} 1 - OUT: <(&&,b,d) ==> c>. %1.00;0.81% {2: 2;1} + OUT: <(&&,b,d) ==> c>. %1.00;0.81% {1 : 1;2} ********** conditional abduction - IN: c>. %1.00;0.90% {1: 1} + IN: c>. %1.00;0.90% {0 : 1} - IN: <(&&,a,b) ==> c>. %0.40;0.90% {1: 2} + IN: <(&&,a,b) ==> c>. %0.40;0.90% {0 : 2} 5 - OUT: a. %1.00;0.24% {2: 1;2} + OUT: a. %1.00;0.24% {5 : 2;1} ********** conditional abduction - IN: <(&&,b,c) ==> d>. %1.00;0.90% {1: 1} + IN: <(&&,b,c) ==> d>. %1.00;0.90% {0 : 1} - IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {1: 2} + IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {0 : 2} 3 - OUT: a. %1.00;0.44% {2: 1;2} + OUT: a. %1.00;0.45% {3 : 2;1} ********** conditional abduction - IN: <(&&,b,d) ==> c>. %0.40;0.90% {1: 1} + IN: <(&&,b,d) ==> c>. %0.40;0.90% {0 : 1} - IN: <(&&,a,b) ==> c>. %1.00;0.90% {1: 2} + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 2} 6 - OUT: d>. %1.00;0.24% {2: 1;2} + OUT: d>. %1.00;0.24% {6 : 2;1} - OUT: a>. %0.40;0.44% {2: 1;2} + OUT: a>. %0.40;0.45% {6 : 2;1} ********** conditional induction - IN: <(&&,a,b) ==> c>. %1.00;0.90% {1: 1} + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} - IN: d>. %0.70;0.90% {1: 2} + IN: d>. %0.70;0.90% {0 : 2} 1 - OUT: <(&&,b,d) ==> c>. %1.00;0.36% {2: 2;1} + OUT: <(&&,b,d) ==> c>. %1.00;0.36% {1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL6-abridged.txt b/nars-dist/Examples/Example-NAL6-abridged.txt index 0e3ae213..ad7b2555 100644 --- a/nars-dist/Examples/Example-NAL6-abridged.txt +++ b/nars-dist/Examples/Example-NAL6-abridged.txt @@ -1,9 +1,9 @@ ********** variable unification IN: <<#x --> bird> ==> <#x --> flyer>>. IN: <<#y --> bird> ==> <#y --> flyer>>. %0; 0.7% -1 - OUT: <<#1 --> bird> ==> <#1 --> flyer>>. %0.79;0.91% {2: 2;1} +1 + OUT: <<#1 --> bird> ==> <#1 --> flyer>>. %0.79;0.92% ********** variable unification IN: (&&, <#w() --> bird>, <#w() --> flyer>). @@ -16,9 +16,9 @@ IN: <<#y --> robin> ==> <#y --> bird>>. 3 - OUT: <<#1 --> robin> ==> <#1 --> animal>>. %1.00;0.81% {2: 1;2} + OUT: <<#1 --> robin> ==> <#1 --> animal>>. %1.00;0.81% - OUT: <<#1 --> animal> ==> <#1 --> robin>>. %1.00;0.44% {2: 1;2} + OUT: <<#1 --> animal> ==> <#1 --> robin>>. %1.00;0.45% ********** variable unification @@ -26,33 +26,37 @@ IN: < #w> ==> #w>>. %0.7% 3 - OUT: < #1> ==> #1>>. %1.00;0.36% {2: 1;2} + OUT: < #1> ==> #1>>. %1.00;0.36% + + OUT: < #1> ==> #1>>. %0.70;0.45% - OUT: < #1> ==> #1>>. %0.70;0.44% {2: 1;2} + OUT: < #1> <=> #1>>. %0.70;0.45% - OUT: < #1> <=> #1>>. %0.70;0.44% {2: 1;2} + OUT: <(&&, #1>, #1>) ==> #1>>. %1.00;0.96% - OUT: <(&&, #1>, #1>) ==> #1>>. %1.00;0.96% {2: 1;2} + OUT: <(||, #1>, #1>) ==> #1>>. %0.70;0.84% - OUT: <(||, #1>, #1>) ==> #1>>. %0.70;0.83% {2: 1;2} + OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.30;0.87% - OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.00;0.92% {2: 1;2} + OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.00;0.93% ********** variable unification IN: <(&&, A, <#x --> b>) ==> <#x --> c>>. IN: <<#y --> d> ==> <#y --> b>>. -1 - OUT: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %1.00;0.81% {2: 1;2} +1 + + OUT: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %1.00;0.81% ********** variable unification IN: <(&&, A, <#x --> b>, E) ==> <#x --> c>>. IN: <(&&,<#y --> d>,A) ==> <#y --> c>>. %0.8% -2 - OUT: <(&&,<#1 --> b>,E) ==> <#1 --> d>>. %1.00;0.39% {2: 2;1} +2 + + OUT: <(&&,<#1 --> b>,E) ==> <#1 --> d>>. %1.00;0.39% - OUT: <<#1 --> d> ==> (&&,<#1 --> b>,E)>. %0.80;0.44% {2: 2;1} + OUT: <<#1 --> d> ==> (&&,<#1 --> b>,E)>. %0.80;0.45% ********** variable unification @@ -60,7 +64,7 @@ IN: <<#y --> a> ==> <#y --> d>>. 1 - OUT: <(&&,<#1 --> d>,B) ==> <#1 --> c>>. %0.70;0.44% {2: 1;2} + OUT: <(&&,<#1 --> d>,B) ==> <#1 --> c>>. %0.70;0.45% ********** variable elimination @@ -68,14 +72,15 @@ IN: bird>. 2 - OUT: animal>. %1.00;0.81% {2: 1;2} + OUT: animal>. %1.00;0.81% ********** variable elimination IN: <<#x --> bird> ==> <#x --> animal>>. IN: animal>. -2 - OUT: bird>. %1.00;0.44% {2: 1;2} +2 + + OUT: bird>. %1.00;0.45% ********** variable elimination @@ -83,7 +88,7 @@ IN: bird>. 2 - OUT: animal>. %1.00;0.72% {2: 1;2} + OUT: animal>. %1.00;0.81% ********** variable elimination @@ -91,14 +96,15 @@ IN: bird>. %0.9% 2 - OUT: swimmer>. %1.00;0.42% {2: 1;2} + OUT: swimmer>. %0.90;0.43% ********** variable elimination IN: <(&&, <#x --> a>, B) ==> <#x --> c>>. IN: a>. -1 - OUT: c>>. %1.00;0.81% {2: 1;2} +1 + + OUT: c>>. %1.00;0.81% ********** variable elimination @@ -106,82 +112,114 @@ IN: b>. 1 - OUT: <(&&,A,C) ==> d>>. %1.00;0.81% {2: 2;1} + OUT: <(&&,A,C) ==> d>>. %1.00;0.81% ********** multiple variable elimination IN: <(&&,<#x --> key>,<#y --> lock>) ==> <#y --> (/,open,#x,_)>>. IN: . 12 - OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.81% {2: 2;1} + OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.81% + ********** multiple variable elimination IN: <<#x --> lock> ==> (&&,<#x --> (/,open,#y(#x),_)>,<#y(#x) --> key>)>. IN: . -3 - OUT: (&&,<{lock1} --> (/,open,#1(),_)>,<#1() --> key>). %1.00;0.81% {2: 1;2} +3 + + OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %1.00;0.81% + ********** multiple variable elimination IN: (&&,<#x() --> lock>,<<#y --> key> ==> <#x() --> (/,open,#y,_)>>). IN: . %0.9% -3 - OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.42% {2: 1;2} +3 + + OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %0.90;0.43% + ********** multiple variable elimination IN: (&&,<#x() --> lock>,<#y() --> key>,<#x() --> (/,open,#y(),_)>). IN: . %0.9% -5 - OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %1.00;0.42% {2: 1;2} +5 + + OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %0.90;0.43% + ********** variable introduction IN: bird>. IN: swimmer>. %0.8% -1 - OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.39% {2: 1;2} - OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.80;0.44% {2: 1;2} - OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.80;0.44% {2: 1;2} - OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.80;0.82% {2: 1;2} +1 + + OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.39% + + OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.80;0.45% + + OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.80;0.45% + + OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.80;0.83% + ********** variable introduction IN: swimmer>. IN: swimmer>. %0.8% -1 - OUT: < #1> ==> #1>>. %1.00;0.39% {2: 1;2} - OUT: < #1> ==> #1>>. %0.80;0.44% {2: 1;2} - OUT: < #1> <=> #1>>. %0.80;0.44% {2: 1;2} - OUT: (&&, #1()>, #1()>). %0.80;0.82% {2: 1;2} +1 + + OUT: < #1> ==> #1>>. %1.00;0.39% + + OUT: < #1> ==> #1>>. %0.80;0.45% + + OUT: < #1> <=> #1>>. %0.80;0.45% + + OUT: (&&, #1()>, #1()>). %0.80;0.83% + ********** multiple variables introduction IN: key>. IN: (/, open, _, lock1)>. 13 - OUT: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.44% {2: 1;2} - OUT: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.81% {2: 1;2} + OUT: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.45% + + OUT: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.81% + ********** multiple variables introduction - IN: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. -3 - OUT: <<#1 --> key> ==> <(*,#1,lock1) --> open>>. %1.00;0.90% {1: 1} -1 - OUT: <<#1 --> key> ==> (/,open,#1,_)>>. %1.00;0.90% {1: 1} + IN: <<#x --> key> ==> <#x --> (/,open,_,lock1)>>. +3 + + OUT: <<#1 --> key> ==> <(*,#1,lock1) --> open>>. %1.00;0.90% + +1 + + OUT: <<#1 --> key> ==> (/,open,#1,_)>>. %1.00;0.90% ********** multiple variables introduction - IN: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). -2 - OUT: (&&,<#1() --> key>,<(*,#1(),lock1) --> open>). %1.00;0.90% {1: 1} -1 - OUT: (&&,<#1() --> key>, (/,open,#1(),_)>). %1.00;0.90% {1: 1} + IN: (&&,<#x() --> (/,open,_,lock1)>,<#x() --> key>). + +2 + + OUT: (&&,<#1() --> key>,<(*,#1(),lock1) --> open>). %1.00;0.90% +1 + + OUT: (&&,<#1() --> key>, (/,open,#1(),_)>). %1.00;0.90% ********** multiple variables introduction - IN: <<#x --> key> ==> (/,open,#x,_)>>. %0.8% + IN: <<#x --> key> ==> (/,open,#x,_)>>. %0.8% + IN: lock>. -1 - OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.39% {2: 1;2} - OUT: <<#1 --> key> ==> (&&,<#2(#1) --> (/,open,#1,_)>,<#2(#1) --> lock>)>. %0.80;0.82% {2: 1;2} +1 + + OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.39% + + OUT: <<#1 --> key> ==> (&&,<#2(#1) --> (/,open,#1,_)>,<#2(#1) --> lock>)>. %0.80;0.83% + ********** multiple variables introduction IN: (&&, (/,open,#x(),_)>,<#x() --> key>). %0.8% IN: lock>. -1 - OUT: (&&,<#1() --> key>,<<#2 --> lock> ==> <#2 --> (/,open,#1(),_)>>). %1.00;0.39% {2: 1;2} - OUT: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %0.80;0.82% {2: 1;2} +1 + + OUT: (&&,<#1() --> key>,<<#2 --> lock> ==> <#2 --> (/,open,#1(),_)>>). %1.00;0.39% + + OUT: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %0.80;0.83% + diff --git a/nars-dist/Examples/Example-NAL6-complete.txt b/nars-dist/Examples/Example-NAL6-complete.txt index 168bbbef..e3c64d66 100644 --- a/nars-dist/Examples/Example-NAL6-complete.txt +++ b/nars-dist/Examples/Example-NAL6-complete.txt @@ -1,315 +1,313 @@ ********** variable unification - IN: <<#1 --> bird> ==> <#1 --> flyer>>. %1.00;0.90% {1: 1} + IN: <<#1 --> bird> ==> <#1 --> flyer>>. %1.00;0.90% {0 : 1} - IN: <<#1 --> bird> ==> <#1 --> flyer>>. %0.00;0.70% {1: 2} + IN: <<#1 --> bird> ==> <#1 --> flyer>>. %0.00;0.70% {0 : 2} 1 - OUT: <<#1 --> bird> ==> <#1 --> flyer>>. %0.79;0.91% {2: 2;1} + OUT: <<#1 --> bird> ==> <#1 --> flyer>>. %0.79;0.92% {1 : 1;2} ********** variable unification - IN: (&&,<#1() --> bird>,<#1() --> flyer>). %1.00;0.90% {1: 1} + IN: (&&,<#1() --> bird>,<#1() --> flyer>). %1.00;0.90% {0 : 1} - IN: (&&,<#1() --> bird>,<#1() --> flyer>). %0.10;0.70% {1: 2} + IN: (&&,<#1() --> bird>,<#1() --> flyer>). %0.10;0.70% {0 : 2} 10 ********** variable unification - IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {1: 1} + IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {0 : 1} - IN: <<#1 --> robin> ==> <#1 --> bird>>. %1.00;0.90% {1: 2} + IN: <<#1 --> robin> ==> <#1 --> bird>>. %1.00;0.90% {0 : 2} 3 - OUT: <<#1 --> robin> ==> <#1 --> animal>>. %1.00;0.81% {2: 1;2} + OUT: <<#1 --> robin> ==> <#1 --> animal>>. %1.00;0.81% {3 : 2;1} - OUT: <<#1 --> animal> ==> <#1 --> robin>>. %1.00;0.44% {2: 1;2} + OUT: <<#1 --> animal> ==> <#1 --> robin>>. %1.00;0.45% {3 : 2;1} ********** variable unification - IN: < #1> ==> #1>>. %1.00;0.90% {1: 1} + IN: < #1> ==> #1>>. %1.00;0.90% {0 : 1} - IN: < #1> ==> #1>>. %0.70;0.90% {1: 2} + IN: < #1> ==> #1>>. %0.70;0.90% {0 : 2} 3 - OUT: < #1> ==> #1>>. %1.00;0.36% {2: 1;2} + OUT: < #1> ==> #1>>. %1.00;0.36% {3 : 2;1} - OUT: < #1> ==> #1>>. %0.70;0.44% {2: 1;2} + OUT: < #1> ==> #1>>. %0.70;0.45% {3 : 2;1} - OUT: < #1> <=> #1>>. %0.70;0.44% {2: 1;2} + OUT: < #1> <=> #1>>. %0.70;0.45% {3 : 2;1} - OUT: <(&&, #1>, #1>) ==> #1>>. %1.00;0.96% {2: 1;2} + OUT: <(&&, #1>, #1>) ==> #1>>. %1.00;0.96% {3 : 2;1} - OUT: <(||, #1>, #1>) ==> #1>>. %0.70;0.83% {2: 1;2} + OUT: <(||, #1>, #1>) ==> #1>>. %0.70;0.84% {3 : 2;1} - OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.30;0.87% {2: 1;2} + OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.30;0.87% {3 : 2;1} - OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.00;0.92% {2: 1;2} - - OUT: (&&,< #1> ==> #2()>,< #1> ==> #2()>). %0.70;0.83% {2: 1;2} + OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.00;0.93% {3 : 2;1} ********** variable unification - IN: <(&&,<#1 --> b>,A) ==> <#1 --> c>>. %1.00;0.90% {1: 1} + IN: <(&&,<#1 --> b>,A) ==> <#1 --> c>>. %1.00;0.90% {0 : 1} - IN: <<#1 --> d> ==> <#1 --> b>>. %1.00;0.90% {1: 2} + IN: <<#1 --> d> ==> <#1 --> b>>. %1.00;0.90% {0 : 2} 1 - OUT: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %1.00;0.81% {2: 1;2} + OUT: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %1.00;0.81% {1 : 2;1} ********** variable unification - IN: <(&&,<#1 --> b>,A,E) ==> <#1 --> c>>. %1.00;0.90% {1: 1} + IN: <(&&,<#1 --> b>,A,E) ==> <#1 --> c>>. %1.00;0.90% {0 : 1} - IN: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %0.80;0.90% {1: 2} + IN: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %0.80;0.90% {0 : 2} 2 - OUT: <(&&,<#1 --> b>,E) ==> <#1 --> d>>. %1.00;0.39% {2: 2;1} + OUT: <(&&,<#1 --> b>,E) ==> <#1 --> d>>. %1.00;0.39% {2 : 1;2} - OUT: <<#1 --> d> ==> (&&,<#1 --> b>,E)>. %0.80;0.44% {2: 2;1} + OUT: <<#1 --> d> ==> (&&,<#1 --> b>,E)>. %0.80;0.45% {2 : 1;2} ********** variable unification - IN: <(&&,<#1 --> a>,B) ==> <#1 --> c>>. %0.70;0.90% {1: 1} + IN: <(&&,<#1 --> a>,B) ==> <#1 --> c>>. %0.70;0.90% {0 : 1} - IN: <<#1 --> a> ==> <#1 --> d>>. %1.00;0.90% {1: 2} + IN: <<#1 --> a> ==> <#1 --> d>>. %1.00;0.90% {0 : 2} 1 - OUT: <(&&,<#1 --> d>,B) ==> <#1 --> c>>. %0.70;0.44% {2: 1;2} + OUT: <(&&,<#1 --> d>,B) ==> <#1 --> c>>. %0.70;0.45% {1 : 2;1} ********** variable elimination - IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {1: 1} + IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {0 : 1} - IN: bird>. %1.00;0.90% {1: 2} + IN: bird>. %1.00;0.90% {0 : 2} 2 - OUT: animal>. %1.00;0.81% {2: 1;2} + OUT: animal>. %1.00;0.81% {2 : 2;1} ********** variable elimination - IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {1: 1} + IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {0 : 1} - IN: animal>. %1.00;0.90% {1: 2} + IN: animal>. %1.00;0.90% {0 : 2} 2 - OUT: bird>. %1.00;0.44% {2: 1;2} + OUT: bird>. %1.00;0.45% {2 : 2;1} ********** variable elimination - IN: <<#1 --> animal> <=> <#1 --> bird>>. %1.00;0.90% {1: 1} + IN: <<#1 --> animal> <=> <#1 --> bird>>. %1.00;0.90% {0 : 1} - IN: bird>. %1.00;0.90% {1: 2} + IN: bird>. %1.00;0.90% {0 : 2} 2 - OUT: animal>. %1.00;0.72% {2: 1;2} + OUT: animal>. %1.00;0.81% {2 : 2;1} ********** variable elimination - IN: (&&,<#1() --> bird>,<#1() --> swimmer>). %1.00;0.90% {1: 1} + IN: (&&,<#1() --> bird>,<#1() --> swimmer>). %1.00;0.90% {0 : 1} - IN: bird>. %0.90;0.90% {1: 2} + IN: bird>. %0.90;0.90% {0 : 2} 2 - OUT: swimmer>. %1.00;0.42% {2: 1;2} + OUT: swimmer>. %0.90;0.43% {2 : 2;1} ********** variable elimination - IN: <(&&,<#1 --> a>,B) ==> <#1 --> c>>. %1.00;0.90% {1: 1} + IN: <(&&,<#1 --> a>,B) ==> <#1 --> c>>. %1.00;0.90% {0 : 1} - IN: a>. %1.00;0.90% {1: 2} + IN: a>. %1.00;0.90% {0 : 2} 1 - OUT: c>>. %1.00;0.81% {2: 1;2} + OUT: c>>. %1.00;0.81% {1 : 2;1} ********** variable elimination - IN: <(&&,<#1 --> b>,A,C) ==> <#1 --> d>>. %1.00;0.90% {1: 1} + IN: <(&&,<#1 --> b>,A,C) ==> <#1 --> d>>. %1.00;0.90% {0 : 1} - IN: b>. %1.00;0.90% {1: 2} + IN: b>. %1.00;0.90% {0 : 2} 1 - OUT: <(&&,A,C) ==> d>>. %1.00;0.81% {2: 2;1} + OUT: <(&&,A,C) ==> d>>. %1.00;0.81% {1 : 1;2} ********** multiple variable elimination - IN: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.90% {1: 1} + IN: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.90% {0 : 1} - IN: <{lock1} --> lock>. %1.00;0.90% {1: 2} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} 7 - OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <(*,#1,#2) --> open>>. %1.00;0.90% {1: 1} + OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <(*,#1,#2) --> open>>. %1.00;0.90% {7 : 1} 5 - OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.81% {2: 2;1} + OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.81% {12 : 1;2} ********** multiple variable elimination - IN: <<#1 --> lock> ==> (&&,<#1 --> (/,open,#2(#1),_)>,<#2(#1) --> key>)>. %1.00;0.90% {1: 1} + IN: <<#1 --> lock> ==> (&&,<#1 --> (/,open,#2(#1),_)>,<#2(#1) --> key>)>. %1.00;0.90% {0 : 1} - IN: <{lock1} --> lock>. %1.00;0.90% {1: 2} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} 3 - OUT: (&&,<{lock1} --> (/,open,#1(),_)>,<#1() --> key>). %1.00;0.81% {2: 1;2} + OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %1.00;0.81% {3 : 2;1} ********** multiple variable elimination - IN: (&&,<#1() --> lock>,<<#2 --> key> ==> <#1() --> (/,open,#2,_)>>). %1.00;0.90% {1: 1} + IN: (&&,<#1() --> lock>,<<#2 --> key> ==> <#1() --> (/,open,#2,_)>>). %1.00;0.90% {0 : 1} - IN: <{lock1} --> lock>. %0.90;0.90% {1: 2} + IN: <{lock1} --> lock>. %0.90;0.90% {0 : 2} 3 - OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.42% {2: 1;2} + OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %0.90;0.43% {3 : 2;1} ********** multiple variable elimination - IN: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %1.00;0.90% {1: 1} + IN: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %1.00;0.90% {0 : 1} - IN: <{lock1} --> lock>. %0.90;0.90% {1: 2} + IN: <{lock1} --> lock>. %0.90;0.90% {0 : 2} 5 - OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %1.00;0.42% {2: 1;2} + OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %0.90;0.43% {5 : 2;1} ********** variable introduction - IN: bird>. %1.00;0.90% {1: 1} + IN: bird>. %1.00;0.90% {0 : 1} - IN: swimmer>. %0.80;0.90% {1: 2} + IN: swimmer>. %0.80;0.90% {0 : 2} 1 - OUT: bird>. %1.00;0.39% {2: 1;2} + OUT: bird>. %1.00;0.39% {1 : 2;1} - OUT: swimmer>. %0.80;0.44% {2: 1;2} + OUT: swimmer>. %0.80;0.45% {1 : 2;1} - OUT: swimmer>. %0.80;0.44% {2: 1;2} + OUT: swimmer>. %0.80;0.45% {1 : 2;1} - OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.39% {2: 1;2} + OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.39% {1 : 2;1} - OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.80;0.44% {2: 1;2} + OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.80;0.45% {1 : 2;1} - OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.80;0.44% {2: 1;2} + OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.80;0.45% {1 : 2;1} - OUT: (|,bird,swimmer)>. %1.00;0.97% {2: 1;2} + OUT: (|,bird,swimmer)>. %1.00;0.97% {1 : 2;1} - OUT: (&,bird,swimmer)>. %0.80;0.82% {2: 1;2} + OUT: (&,bird,swimmer)>. %0.80;0.83% {1 : 2;1} - OUT: (-,bird,swimmer)>. %0.20;0.88% {2: 1;2} + OUT: (-,bird,swimmer)>. %0.20;0.88% {1 : 2;1} - OUT: (-,swimmer,bird)>. %0.00;0.91% {2: 1;2} + OUT: (-,swimmer,bird)>. %0.00;0.92% {1 : 2;1} - OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.80;0.82% {2: 1;2} + OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.80;0.83% {1 : 2;1} ********** variable introduction - IN: swimmer>. %1.00;0.90% {1: 1} + IN: swimmer>. %1.00;0.90% {0 : 1} - IN: swimmer>. %0.80;0.90% {1: 2} + IN: swimmer>. %0.80;0.90% {0 : 2} 1 - OUT: swan>. %1.00;0.39% {2: 1;2} + OUT: swan>. %1.00;0.39% {1 : 2;1} - OUT: gull>. %0.80;0.44% {2: 1;2} + OUT: gull>. %0.80;0.45% {1 : 2;1} - OUT: swan>. %0.80;0.44% {2: 1;2} + OUT: swan>. %0.80;0.45% {1 : 2;1} - OUT: < #1> ==> #1>>. %1.00;0.39% {2: 1;2} + OUT: < #1> ==> #1>>. %1.00;0.39% {1 : 2;1} - OUT: < #1> ==> #1>>. %0.80;0.44% {2: 1;2} + OUT: < #1> ==> #1>>. %0.80;0.45% {1 : 2;1} - OUT: < #1> <=> #1>>. %0.80;0.44% {2: 1;2} + OUT: < #1> <=> #1>>. %0.80;0.45% {1 : 2;1} - OUT: <(&,gull,swan) --> swimmer>. %1.00;0.97% {2: 1;2} + OUT: <(&,gull,swan) --> swimmer>. %1.00;0.97% {1 : 2;1} - OUT: <(|,gull,swan) --> swimmer>. %0.80;0.82% {2: 1;2} + OUT: <(|,gull,swan) --> swimmer>. %0.80;0.83% {1 : 2;1} - OUT: <(~,gull,swan) --> swimmer>. %0.20;0.88% {2: 1;2} + OUT: <(~,gull,swan) --> swimmer>. %0.20;0.88% {1 : 2;1} - OUT: <(~,swan,gull) --> swimmer>. %0.00;0.91% {2: 1;2} + OUT: <(~,swan,gull) --> swimmer>. %0.00;0.92% {1 : 2;1} - OUT: (&&, #1()>, #1()>). %0.80;0.82% {2: 1;2} + OUT: (&&, #1()>, #1()>). %0.80;0.83% {1 : 2;1} ********** multiple variables introduction - IN: key>. %1.00;0.90% {1: 1} + IN: key>. %1.00;0.90% {0 : 1} - IN: (/,open,_,lock1)>. %1.00;0.90% {1: 2} + IN: (/,open,_,lock1)>. %1.00;0.90% {0 : 2} 1 - OUT: <(*,key1,lock1) --> open>. %1.00;0.90% {1: 2} + OUT: <(*,key1,lock1) --> open>. %1.00;0.90% {1 : 2} 1 - OUT: (/,open,key1,_)>. %1.00;0.90% {1: 2} + OUT: (/,open,key1,_)>. %1.00;0.90% {2 : 2} 3 - OUT: <(*,key1,lock1) --> (*,key,lock1)>. %1.00;0.90% {1: 1} + OUT: <(*,key1,lock1) --> (*,key,lock1)>. %1.00;0.81% {5 : 1} 8 - OUT: <(/,open,_,lock1) --> key>. %1.00;0.44% {2: 1;2} + OUT: <(/,open,_,lock1) --> key>. %1.00;0.45% {13 : 2;1} - OUT: (/,open,_,lock1)>. %1.00;0.44% {2: 1;2} + OUT: (/,open,_,lock1)>. %1.00;0.45% {13 : 2;1} - OUT: <(/,open,_,lock1) <-> key>. %1.00;0.44% {2: 1;2} + OUT: <(/,open,_,lock1) <-> key>. %1.00;0.45% {13 : 2;1} - OUT: <<#1 --> (/,open,_,lock1)> ==> <#1 --> key>>. %1.00;0.44% {2: 1;2} + OUT: <<#1 --> (/,open,_,lock1)> ==> <#1 --> key>>. %1.00;0.45% {13 : 2;1} - OUT: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.44% {2: 1;2} + OUT: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.45% {13 : 2;1} - OUT: <<#1 --> (/,open,_,lock1)> <=> <#1 --> key>>. %1.00;0.44% {2: 1;2} + OUT: <<#1 --> (/,open,_,lock1)> <=> <#1 --> key>>. %1.00;0.45% {13 : 2;1} - OUT: (|,(/,open,_,lock1),key)>. %1.00;0.99% {2: 1;2} + OUT: (|,(/,open,_,lock1),key)>. %1.00;0.99% {13 : 2;1} - OUT: (&,(/,open,_,lock1),key)>. %1.00;0.81% {2: 1;2} + OUT: (&,(/,open,_,lock1),key)>. %1.00;0.81% {13 : 2;1} - OUT: (-,key,(/,open,_,lock1))>. %0.00;0.90% {2: 1;2} + OUT: (-,key,(/,open,_,lock1))>. %0.00;0.90% {13 : 2;1} - OUT: (-,(/,open,_,lock1),key)>. %0.00;0.90% {2: 1;2} + OUT: (-,(/,open,_,lock1),key)>. %0.00;0.90% {13 : 2;1} - OUT: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.81% {2: 1;2} + OUT: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.81% {13 : 2;1} ********** multiple variables introduction - IN: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.90% {1: 1} + IN: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.90% {0 : 1} 3 - OUT: <<#1 --> key> ==> <(*,#1,lock1) --> open>>. %1.00;0.90% {1: 1} + OUT: <<#1 --> key> ==> <(*,#1,lock1) --> open>>. %1.00;0.90% {3 : 1} 1 - OUT: <<#1 --> key> ==> (/,open,#1,_)>>. %1.00;0.90% {1: 1} + OUT: <<#1 --> key> ==> (/,open,#1,_)>>. %1.00;0.90% {4 : 1} ********** multiple variables introduction - IN: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.90% {1: 1} + IN: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.90% {0 : 1} 2 - OUT: (&&,<#1() --> key>,<(*,#1(),lock1) --> open>). %1.00;0.90% {1: 1} + OUT: (&&,<#1() --> key>,<(*,#1(),lock1) --> open>). %1.00;0.90% {2 : 1} 1 - OUT: (&&,<#1() --> key>, (/,open,#1(),_)>). %1.00;0.90% {1: 1} + OUT: (&&,<#1() --> key>, (/,open,#1(),_)>). %1.00;0.90% {3 : 1} ********** multiple variables introduction - IN: <<#1 --> key> ==> (/,open,#1,_)>>. %0.80;0.90% {1: 1} + IN: <<#1 --> key> ==> (/,open,#1,_)>>. %0.80;0.90% {0 : 1} - IN: lock>. %1.00;0.90% {1: 2} + IN: lock>. %1.00;0.90% {0 : 2} 1 - OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.39% {2: 1;2} + OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.39% {1 : 2;1} - OUT: <<#1 --> key> ==> (&&,<#2(#1) --> (/,open,#1,_)>,<#2(#1) --> lock>)>. %0.80;0.82% {2: 1;2} + OUT: <<#1 --> key> ==> (&&,<#2(#1) --> (/,open,#1,_)>,<#2(#1) --> lock>)>. %0.80;0.83% {1 : 2;1} ********** multiple variables introduction - IN: (&&,<#1() --> key>, (/,open,#1(),_)>). %0.80;0.90% {1: 1} + IN: (&&,<#1() --> key>, (/,open,#1(),_)>). %0.80;0.90% {0 : 1} - IN: lock>. %1.00;0.90% {1: 2} + IN: lock>. %1.00;0.90% {0 : 2} 1 - OUT: (&&,<#1() --> key>,<<#2 --> lock> ==> <#2 --> (/,open,#1(),_)>>). %1.00;0.39% {2: 1;2} + OUT: (&&,<#1() --> key>,<<#2 --> lock> ==> <#2 --> (/,open,#1(),_)>>). %1.00;0.39% {1 : 2;1} - OUT: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %0.80;0.82% {2: 1;2} + OUT: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %0.80;0.83% {1 : 2;1} diff --git a/nars-dist/Examples/Example-NAL7-abridged.txt b/nars-dist/Examples/Example-NAL7-abridged.txt index c6d01c5a..e5c8c50b 100644 --- a/nars-dist/Examples/Example-NAL7-abridged.txt +++ b/nars-dist/Examples/Example-NAL7-abridged.txt @@ -1,78 +1,102 @@ + ********** temporal deduction/explification IN: <<(*, #x, room_101) --> enter> =\> <(*, #x, door_101) --> open>>. %0.9% IN: <<(*, #y, door_101) --> open> =\> <(*, #y, key_101) --> hold>>. %0.8% 14 - OUT: <<(*,#1,room_101) --> enter> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% {2: 1;2} - OUT: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.36% {2: 1;2} + OUT: <<(*,#1,room_101) --> enter> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% + OUT: <<(*,#1,key_101) --> hold> =\> <(*,#1,room_101) --> enter>>. %1.00;0.37% -********** temporal induction +********** temporal induction/comparison IN: <<(*, #x, door_101) --> open> =/> <(*, #x, room_101) --> enter>>. %0.9% IN: <<(*, #y, door_101) --> open> =\> <(*, #y, key_101) --> hold>>. %0.8% 14 - OUT: <<(*,#1,key_101) --> hold> =\> <(*,#1,room_101) --> enter>>. %0.90;0.39% {2: 1;2} - OUT: <<(*,#1,room_101) --> enter> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% {2: 1;2} - OUT: <<(*,#1,room_101) --> enter> <(*,#1,key_101) --> hold>>. %0.73;0.44% {2: 1;2} + OUT: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %0.90;0.39% + OUT: <<(*,#1,room_101) --> enter> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% + OUT: <<(*,#1,room_101) --> enter> <=> <(*,#1,key_101) --> hold>>. %0.73;0.44% ********** temporal analogy IN: <<(*, #x, door_101) --> open> =/> <(*, #x, room_101) --> enter>>. %0.95% IN: <<(*, #x, room_101) --> enter> <=> <(*, #x, corridor_100) --> leave>>. 13 - OUT: <<(*,#1,door_101) --> open> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.72% {2: 1;2} + OUT: <<(*,#1,door_101) --> open> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.81% ********** inference on tense IN: <<(*, #x, key_101) --> hold> =/> <(*, #x, room_101) --> enter>>. IN: <(*, John, key_101) --> hold>. :/: -12 - OUT: <(*,John,room_101) --> enter>. :/: %1.00;0.81% {2: 1;2} +20 + + OUT: <(*,John,room_101) --> enter>. :\: %1.00;0.81% ********** inference on tense - IN: <<(*, #x, key_101) --> hold> =/> <(*, #x, room_101) --> enter>>. - IN: <(*, John, room_101) --> enter>. :|: -7 - OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.44% {2: 1;2} + IN: <<(*,#x,key_101) --> hold> =/> <(*,#x,room_101) --> enter>>. + + IN: <(*,John,room_101) --> enter>. :|: +19 + OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.45% {19 : -1 : 1;2} + ********** inference on tense - IN: <<(*, John, key_101) --> hold> =/> <(*, John, room_101) --> enter>>. - IN: <(*, John, key_101) --> hold>. :|: -1 - OUT: <(*,John,room_101) --> enter>. :/: %1.00;0.81% {2: 1;2} + IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. + + IN: <(*,John,key_101) --> hold>. :|: +2 + OUT: <(*,John,room_101) --> enter>. :\: %1.00;0.81% ********** inference on tense - IN: <<(*, John, key_101) --> hold> =/> <(*, John, room_101) --> enter>>. - IN: <(*, John, room_101) --> enter>. :\: + IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. %1.00;0.90% {0: 1} + + IN: <(*,John,room_101) --> enter>. :\: %1.00;0.90% {0: 2} + 2 - OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.44% {2: 2;1} + OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.45% ********** induction on events - IN: <(*, John, door_101) --> open>. :|: -1 - IN: <(*, John, room_101) --> enter>. :|: -1 - OUT: <<(*,John,room_101) --> enter> =\> <(*,John,door_101) --> open>>. :|: %1.00;0.44% {2: 1;2} - OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} - OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} + IN: <(*,John,door_101) --> open>. :|: +1 + + IN: <(*,John,room_101) --> enter>. :|: +1 + OUT: <<(*,John,room_101) --> enter> =\> <(*,John,door_101) --> open>>. :\: %1.00;0.45% + OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% + OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% + ********** induction on events - IN: <(*, John, door_101) --> open>. :|: -1 - IN: <(*, John, room_101) --> enter>. :|: %0% -1 - OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 1;2} - OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 1;2} + IN: <(*,John,door_101) --> open>. :|: +1 + + IN: <(*,John,room_101) --> enter>. :|: %0% + +1 + + OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :\: %0.00;0.45% + OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :\: %0.00;0.45% ********** induction on events IN: (/,open,_,door_101)>. :|: -1 +1 + IN: (/,enter,_,room_101)>. :|: -1 - OUT: <<#1 --> (/,enter,_,room_101)> =\> <#1 --> (/,open,_,door_101)>>. :|: %1.00;0.44% {2: 1;2} - OUT: <<#1 --> (/,open,_,door_101)> =/> <#1 --> (/,enter,_,room_101)>>. :|: %1.00;0.44% {2: 1;2} - OUT: <<#1 --> (/,open,_,door_101)> <#1 --> (/,enter,_,room_101)>>. :|: %1.00;0.44% {2: 1;2} +1 + + OUT: <<#1 --> (/,enter,_,room_101)> =\> <#1 --> (/,open,_,door_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} + OUT: <<#1 --> (/,open,_,door_101)> =/> <#1 --> (/,enter,_,room_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} + OUT: <<#1 --> (/,open,_,door_101)> <#1 --> (/,enter,_,room_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} ********** induction on events IN: <(*,John,key_101) --> hold>. :|: 1 IN: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: +1 + + OUT: <(&/,<(*,John,key_101) --> hold>,<(*,John,door_101) --> open>) =/> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% + +********** updating and revision + IN: <(*,John,key_101) --> hold>. :|: +1 + IN: <(*,John,key_101) --> hold>. :|: %0% +1 + IN: <(*,John,key_101) --> hold>? :|: 1 - OUT: <(&/,<(*,John,key_101) --> hold>,<(*,John,door_101) --> open>) =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} + OUT: <(*,John,key_101) --> hold>. :\: %0.09;0.91% diff --git a/nars-dist/Examples/Example-NAL7-complete.txt b/nars-dist/Examples/Example-NAL7-complete.txt index b56792a2..0fd5e97c 100644 --- a/nars-dist/Examples/Example-NAL7-complete.txt +++ b/nars-dist/Examples/Example-NAL7-complete.txt @@ -1,247 +1,294 @@ ********** temporal deduction/explification - IN: <<(*,#1,room_101) --> enter> =\> <(*,#1,door_101) --> open>>. %0.90;0.90% {1: 1} + IN: <<(*,#1,room_101) --> enter> =\> <(*,#1,door_101) --> open>>. %0.90;0.90% {0 : 1} - IN: <<(*,#1,door_101) --> open> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {1: 2} + IN: <<(*,#1,door_101) --> open> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {0 : 2} 3 - OUT: < (/,enter,#1,_)> =\> <(*,#1,door_101) --> open>>. %0.90;0.90% {1: 1} + OUT: < (/,enter,#1,_)> =\> <(*,#1,door_101) --> open>>. %0.90;0.90% {3 : 1} 2 - OUT: <<(*,#1,door_101) --> open> =\> (/,hold,#1,_)>>. %0.80;0.90% {1: 2} + OUT: <<(*,#1,door_101) --> open> =\> (/,hold,#1,_)>>. %0.80;0.90% {5 : 2} 2 - OUT: <<(*,#1,room_101) --> enter> =\> (/,open,#1,_)>>. %0.90;0.90% {1: 1} + OUT: <<(*,#1,room_101) --> enter> =\> (/,open,#1,_)>>. %0.90;0.90% {7 : 1} 3 - OUT: < (/,open,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {1: 2} + OUT: < (/,open,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {10 : 2} 3 - OUT: < (/,enter,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% {2: 1;2} + OUT: < (/,enter,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% {13 : 2;1} - OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %1.00;0.36% {2: 1;2} + OUT: <<(*,#1,key_101) --> hold> =\> (/,enter,#1,_)>>. %1.00;0.37% {13 : 2;1} 1 - OUT: <<(*,#1,room_101) --> enter> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% {2: 1;2} + OUT: <<(*,#1,room_101) --> enter> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% {14 : 2;1} - OUT: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.36% {2: 1;2} + OUT: <<(*,#1,key_101) --> hold> =\> <(*,#1,room_101) --> enter>>. %1.00;0.37% {14 : 2;1} -********** temporal induction - IN: <<(*,#1,door_101) --> open> =/> <(*,#1,room_101) --> enter>>. %0.90;0.90% {1: 1} +********** temporal induction/comparison + IN: <<(*,#1,door_101) --> open> =/> <(*,#1,room_101) --> enter>>. %0.90;0.90% {0 : 1} - IN: <<(*,#1,door_101) --> open> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {1: 2} + IN: <<(*,#1,door_101) --> open> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {0 : 2} 3 - OUT: <<(*,#1,door_101) --> open> =/> (/,enter,#1,_)>>. %0.90;0.90% {1: 1} + OUT: <<(*,#1,door_101) --> open> =/> (/,enter,#1,_)>>. %0.90;0.90% {3 : 1} 2 - OUT: <<(*,#1,door_101) --> open> =\> (/,hold,#1,_)>>. %0.80;0.90% {1: 2} + OUT: <<(*,#1,door_101) --> open> =\> (/,hold,#1,_)>>. %0.80;0.90% {5 : 2} 2 - OUT: < (/,open,#1,_)> =/> <(*,#1,room_101) --> enter>>. %0.90;0.90% {1: 1} + OUT: < (/,open,#1,_)> =/> <(*,#1,room_101) --> enter>>. %0.90;0.90% {7 : 1} 3 - OUT: < (/,open,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {1: 2} + OUT: < (/,open,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {10 : 2} 3 - OUT: <<(*,#1,key_101) --> hold> =\> (/,enter,#1,_)>>. %0.90;0.39% {2: 1;2} + OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %0.90;0.39% {13 : 2;1} - OUT: < (/,enter,#1,_)> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% {2: 1;2} + OUT: < (/,enter,#1,_)> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% {13 : 2;1} - OUT: < (/,enter,#1,_)> <(*,#1,key_101) --> hold>>. %0.73;0.44% {2: 1;2} + OUT: < (/,enter,#1,_)> <=> <(*,#1,key_101) --> hold>>. %0.73;0.44% {13 : 2;1} + + OUT: <<(*,#1,door_101) --> open> =/> (||,<(*,#1,key_101) --> hold>, (/,enter,#1,_)>)>. %0.98;0.96% {13 : 2;1} + + OUT: <<(*,#1,door_101) --> open> =/> (&&,<(*,#1,key_101) --> hold>, (/,enter,#1,_)>)>. %0.72;0.84% {13 : 2;1} + + OUT: <<(*,#1,door_101) --> open> =/> (&&,(--,<(*,#1,key_101) --> hold>), (/,enter,#1,_)>)>. %0.18;0.89% {13 : 2;1} + + OUT: <<(*,#1,door_101) --> open> =/> (&&,(--, (/,enter,#1,_)>),<(*,#1,key_101) --> hold>)>. %0.08;0.91% {13 : 2;1} 1 - OUT: <<(*,#1,key_101) --> hold> =\> <(*,#1,room_101) --> enter>>. %0.90;0.39% {2: 1;2} + OUT: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %0.90;0.39% {14 : 2;1} + + OUT: <<(*,#1,room_101) --> enter> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% {14 : 2;1} - OUT: <<(*,#1,room_101) --> enter> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% {2: 1;2} + OUT: <<(*,#1,room_101) --> enter> <=> <(*,#1,key_101) --> hold>>. %0.73;0.44% {14 : 2;1} - OUT: <<(*,#1,room_101) --> enter> <(*,#1,key_101) --> hold>>. %0.73;0.44% {2: 1;2} + OUT: < (/,open,#1,_)> =/> (||,<(*,#1,key_101) --> hold>,<(*,#1,room_101) --> enter>)>. %0.98;0.96% {14 : 2;1} + + OUT: < (/,open,#1,_)> =/> (&&,<(*,#1,key_101) --> hold>,<(*,#1,room_101) --> enter>)>. %0.72;0.84% {14 : 2;1} + + OUT: < (/,open,#1,_)> =/> (&&,(--,<(*,#1,key_101) --> hold>),<(*,#1,room_101) --> enter>)>. %0.18;0.89% {14 : 2;1} + + OUT: < (/,open,#1,_)> =/> (&&,(--,<(*,#1,room_101) --> enter>),<(*,#1,key_101) --> hold>)>. %0.08;0.91% {14 : 2;1} ********** temporal analogy - IN: <<(*,#1,door_101) --> open> =/> <(*,#1,room_101) --> enter>>. %0.95;0.90% {1: 1} + IN: <<(*,#1,door_101) --> open> =/> <(*,#1,room_101) --> enter>>. %0.95;0.90% {0 : 1} - IN: <<(*,#1,corridor_100) --> leave> <=> <(*,#1,room_101) --> enter>>. %1.00;0.90% {1: 2} + IN: <<(*,#1,corridor_100) --> leave> <=> <(*,#1,room_101) --> enter>>. %1.00;0.90% {0 : 2} 3 - OUT: < (/,open,#1,_)> =/> <(*,#1,room_101) --> enter>>. %0.95;0.90% {1: 1} + OUT: < (/,open,#1,_)> =/> <(*,#1,room_101) --> enter>>. %0.95;0.90% {3 : 1} 2 - OUT: <<(*,#1,room_101) --> enter> <=> (/,leave,#1,_)>>. %1.00;0.90% {1: 2} + OUT: <<(*,#1,room_101) --> enter> <=> (/,leave,#1,_)>>. %1.00;0.90% {5 : 2} 2 - OUT: <<(*,#1,door_101) --> open> =/> (/,enter,#1,_)>>. %0.95;0.90% {1: 1} + OUT: <<(*,#1,door_101) --> open> =/> (/,enter,#1,_)>>. %0.95;0.90% {7 : 1} 3 - OUT: <<(*,#1,corridor_100) --> leave> <=> (/,enter,#1,_)>>. %1.00;0.90% {1: 2} + OUT: <<(*,#1,corridor_100) --> leave> <=> (/,enter,#1,_)>>. %1.00;0.90% {10 : 2} 2 - OUT: < (/,open,#1,_)> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.72% {2: 1;2} + OUT: < (/,open,#1,_)> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.81% {12 : 2;1} 1 - OUT: <<(*,#1,door_101) --> open> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.72% {2: 1;2} + OUT: <<(*,#1,door_101) --> open> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.81% {13 : 2;1} ********** inference on tense - IN: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {1: 1} + IN: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {0 : 1} + IN: <(*,John,key_101) --> hold>. :/: %1.00;0.90% {0 : 1 : 2} +2 + OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %1.00;0.90% {2 : 1} +2 + OUT: (/,hold,_,key_101)>. :\: %1.00;0.90% {4 : 1 : 2} +2 + OUT: < (/,hold,#1,_)> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {6 : 1} +1 + OUT: (/,enter,John,_)>. %1.00;0.43% {7 : 2;1} +4 + OUT: (/,hold,John,_)>. :\: %1.00;0.90% {11 : 1 : 2} +1 + OUT: <(*,John,room_101) --> enter>. %1.00;0.43% {12 : 2;1} +3 + OUT: (/,enter,_,room_101)>. %1.00;0.43% {15 : 2;1} +1 + OUT: (/,enter,John,_)>. %1.00;0.43% {16 : 2;1} +1 + OUT: <(/,(*,John,room_101),John,_) --> (/,enter,John,_)>. %1.00;0.38% {17 : 2;1} +3 + OUT: <(*,John,room_101) --> enter>. :\: %1.00;0.81% {20 : 2 : 1;2} +********** inference on tense + IN: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {0 : 1} - IN: <(*,John,key_101) --> hold>. :/: %1.00;0.90% {1: 2} + IN: <(*,John,room_101) --> enter>. :|: %1.00;0.90% {0 : 0 : 2} 2 - OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %1.00;0.90% {1: 1} + OUT: < (/,hold,#1,_)> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {2 : 1} 2 - OUT: (/,hold,_,key_101)>. :/: %1.00;0.90% {1: 2} + OUT: (/,enter,_,room_101)>. :\: %1.00;0.90% {4 : 0 : 2} 2 - OUT: < (/,hold,#1,_)> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {1: 1} + OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %1.00;0.90% {6 : 1} 1 - OUT: (/,enter,John,_)>. :/: %1.00;0.81% {2: 1;2} + OUT: (/,hold,John,_)>. %1.00;0.30% {7 : 2;1} 4 - OUT: (/,hold,John,_)>. :/: %1.00;0.90% {1: 2} + OUT: (/,enter,John,_)>. :\: %1.00;0.90% {11 : 0 : 2} 1 - OUT: <(*,John,room_101) --> enter>. :/: %1.00;0.81% {2: 1;2} + OUT: <(*,John,key_101) --> hold>. %1.00;0.30% {12 : 2;1} -********** inference on tense - IN: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {1: 1} +4 - IN: <(*,John,room_101) --> enter>. :|: %1.00;0.90% {1: 2} + OUT: (/,hold,_,key_101)>. %1.00;0.30% {16 : 2;1} -2 +1 - OUT: < (/,hold,#1,_)> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {1: 1} + OUT: (/,hold,John,_)>. %1.00;0.30% {17 : 2;1} 2 - OUT: (/,enter,_,room_101)>. :|: %1.00;0.90% {1: 2} + OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.45% {19 : -1 : 1;2} -2 +********** inference on tense + IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. %1.00;0.90% {0 : 1} - OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %1.00;0.90% {1: 1} + IN: <(*,John,key_101) --> hold>. :|: %1.00;0.90% {0 : 0 : 2} 1 - OUT: (/,hold,John,_)>. :\: %1.00;0.44% {2: 1;2} - -********** inference on tense - IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. %1.00;0.90% {1: 1} - - IN: <(*,John,key_101) --> hold>. :|: %1.00;0.90% {1: 2} + OUT: <(*,John,room_101) --> enter>. %1.00;0.43% {1 : 2;1} 1 - OUT: <(*,John,room_101) --> enter>. :/: %1.00;0.81% {2: 1;2} + OUT: <(*,John,room_101) --> enter>. :\: %1.00;0.81% {2 : 1 : 1;2} ********** inference on tense - IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. %1.00;0.90% {1: 1} + IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. %1.00;0.90% {0 : 1} - IN: <(*,John,room_101) --> enter>. :\: %1.00;0.90% {1: 2} + IN: <(*,John,room_101) --> enter>. :\: %1.00;0.90% {0 : -1 : 2} 2 - OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.44% {2: 2;1} + OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.45% {2 : -2 : 1;2} ********** induction on events - IN: <(*,John,door_101) --> open>. :|: %1.00;0.90% {1: 1} + IN: <(*,John,door_101) --> open>. :|: %1.00;0.90% {0 : 0 : 1} 1 - OUT: (/,open,_,door_101)>. :|: %1.00;0.90% {1: 1} + OUT: (/,open,_,door_101)>. :\: %1.00;0.90% {1 : 0 : 1} - IN: <(*,John,room_101) --> enter>. :|: %1.00;0.90% {1: 2} + IN: <(*,John,room_101) --> enter>. :|: %1.00;0.90% {1 : 1 : 2} 1 - OUT: <<(*,John,room_101) --> enter> =\> <(*,John,door_101) --> open>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<(*,John,room_101) --> enter> =\> <(*,John,door_101) --> open>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: < (/,open,_,door_101)> =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 2;1} + OUT: (/,open,John,_)>. :\: %1.00;0.90% {2 : 0 : 1} - OUT: <<(*,John,room_101) --> enter> =\> (/,open,_,door_101)>>. :|: %1.00;0.44% {2: 2;1} +********** induction on events + IN: <(*,John,door_101) --> open>. :|: %1.00;0.90% {0 : 0 : 1} - OUT: < (/,open,_,door_101)> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 2;1} +1 - OUT: (/,open,John,_)>. :|: %1.00;0.90% {1: 1} + OUT: (/,open,_,door_101)>. :\: %1.00;0.90% {1 : 0 : 1} -********** induction on events - IN: <(*,John,door_101) --> open>. :|: %1.00;0.90% {1: 1} + IN: <(*,John,room_101) --> enter>. :|: %0.00;0.90% {1 : 1 : 2} 1 - OUT: (/,open,_,door_101)>. :|: %1.00;0.90% {1: 1} + OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :\: %0.00;0.45% {2 : 1 : 1;2} - IN: <(*,John,room_101) --> enter>. :|: %0.00;0.90% {1: 2} + OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :\: %0.00;0.45% {2 : 1 : 1;2} + + OUT: (/,open,John,_)>. :\: %1.00;0.90% {2 : 0 : 1} + +********** induction on events + IN: (/,open,_,door_101)>. :|: %1.00;0.90% {0 : 0 : 1} 1 - OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 1;2} + IN: (/,enter,_,room_101)>. :|: %1.00;0.90% {1 : 1 : 2} + +1 - OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 1;2} + OUT: <<#1 --> (/,enter,_,room_101)> =\> <#1 --> (/,open,_,door_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: < (/,open,_,door_101)> =/> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 2;1} + OUT: <<#1 --> (/,open,_,door_101)> =/> <#1 --> (/,enter,_,room_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: < (/,open,_,door_101)> <(*,John,room_101) --> enter>>. :|: %0.00;0.44% {2: 2;1} + OUT: <<#1 --> (/,open,_,door_101)> <#1 --> (/,enter,_,room_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: (/,open,John,_)>. :|: %1.00;0.90% {1: 1} + OUT: <(*,John,door_101) --> open>. :\: %1.00;0.90% {2 : 0 : 1} ********** induction on events - IN: (/,open,_,door_101)>. :|: %1.00;0.90% {1: 1} + IN: <(*,John,key_101) --> hold>. :|: %1.00;0.90% {0 : 0 : 1} 1 - IN: (/,enter,_,room_101)>. :|: %1.00;0.90% {1: 2} + OUT: (/,hold,_,key_101)>. :\: %1.00;0.90% {1 : 0 : 1} + + IN: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.90% {1 : 1 : 2} 1 - OUT: <<#1 --> (/,enter,_,room_101)> =\> <#1 --> (/,open,_,door_101)>>. :|: %1.00;0.44% {2: 1;2} + OUT: <(&/,<(*,John,key_101) --> hold>,<(*,John,door_101) --> open>) =/> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: <<#1 --> (/,open,_,door_101)> =/> <#1 --> (/,enter,_,room_101)>>. :|: %1.00;0.44% {2: 1;2} + OUT: (/,hold,John,_)>. :\: %1.00;0.90% {2 : 0 : 1} - OUT: <<#1 --> (/,open,_,door_101)> <#1 --> (/,enter,_,room_101)>>. :|: %1.00;0.44% {2: 1;2} +********** updating and revision + IN: <(*,John,key_101) --> hold>. :|: %1.00;0.90% {0 : 0 : 1} - OUT: <(*,John,door_101) --> open>. :|: %1.00;0.90% {1: 1} +1 -********** induction on events - IN: <(*,John,key_101) --> hold>. :|: %1.00;0.90% {1: 1} + OUT: (/,hold,_,key_101)>. :\: %1.00;0.90% {1 : 0 : 1} + + IN: <(*,John,key_101) --> hold>. :|: %0.00;0.90% {1 : 1 : 2} 1 - OUT: (/,hold,_,key_101)>. :|: %1.00;0.90% {1: 1} + OUT: <(*,John,key_101) --> hold>. :\: %0.09;0.91% {2 : 1 : 1;2} - IN: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.90% {1: 2} + OUT: < (/,hold,_,key_101)> =/> <(*,John,key_101) --> hold>>. :\: %0.00;0.45% {2 : 0 : 2;1} -1 + OUT: < (/,hold,_,key_101)> <(*,John,key_101) --> hold>>. :\: %0.00;0.45% {2 : 0 : 2;1} - OUT: <(&/,<(*,John,key_101) --> hold>,<(*,John,door_101) --> open>) =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 1;2} + IN: <(*,John,key_101) --> hold>? :|: {2 : 2 : 3} + +1 - OUT: <(&/, (/,hold,_,key_101)>,<(*,John,door_101) --> open>) =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.44% {2: 2;1} + OUT: <(*,John,key_101) --> hold>. :\: %0.00;0.90% {1 : 1 : 2} - OUT: (/,hold,John,_)>. :|: %1.00;0.90% {1: 1} + OUT: <(*,John,key_101) --> hold>. :\: %0.09;0.91% {2 : 1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL8-1-abridged.txt b/nars-dist/Examples/Example-NAL8-1-abridged.txt index 0ef38466..664abfe7 100644 --- a/nars-dist/Examples/Example-NAL8-1-abridged.txt +++ b/nars-dist/Examples/Example-NAL8-1-abridged.txt @@ -1,8 +1,8 @@ *** [01] <{t001} --> [opened]>! *** [02] <{t001} --> door>. -*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. +*** [03] <(&|, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. *** [04] <(*, {t002}, {t001}) --> key-of>. -*** [05] <(&/, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. +*** [05] <(&|, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. *** [06] <(&|, <(*, #x, #y(#x)) --> on>, <(*, Self, #y(#x)) --> at>) =|> <(*, Self, #x) --> reachable>>. *** [07] <(*, {t002}, {t003}) --> on>. :|: *** [08] <{t003} --> desk>. @@ -11,202 +11,174 @@ ********** [01 + 03 -> 10]: IN: <{t001} --> [opened]>! IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. -18 - OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 1;2} +19 + OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% ********** [10 -> 11]: IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! 5 - OUT: <(*,Self,{t002}) --> hold>! %1.00;0.44% {1: 1} - + OUT: <(*,Self,{t002}) --> hold>! %1.00;0.81% {5 : 1} ********** [11 + 05 -> 12]: IN: <(*,Self,{t002}) --> hold>! IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. -7 - OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.81% {2: 1;2} +5 + OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.81% ********** [12 -> 13]: IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! -1 - - OUT: <(*,Self,{t002}) --> reachable>! %1.00;0.47% {1: 1} - +13 + OUT: <(*,Self,{t002}) --> reachable>! %1.00;0.81% ********** [13 + 06 -> 14]: IN: <(*,Self,{t002}) --> reachable>! IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. -3 - OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.81% {2: 1;2} - +16 + OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.81% ********** [07 + 14 -> 15]: IN: <(*,{t002},{t003}) --> on>. :|: IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! -15 - - OUT: (/,at,_,{t003})>! %1.00;0.81% {2: 2;1} - +25 + OUT: <(*,Self,{t003}) --> at>! %1.00;0.81% ********** [15 + 09 -> 16]: IN: <(*,Self,{t003}) --> at>! IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. -7 - - OUT: <(*,{t003}) --> ^go-to>! %1.00;0.81% {2: 1;2} - +19 + OUT: <(*,{t003}) --> ^go-to>! %1.00;0.81% ********** [16 -> 17] IN: <(*,{t003}) --> ^go-to>! 1 - OUT: <(*,{t003}) --> ^go-to>. :\: %1.00;0.90% {1: 2} - + OUT: <(*,{t003}) --> ^go-to>. :|: %1.00;0.90% ********** [17 + 09 -> 18] - IN: <(*,{t003}) --> ^go-to>. :\: + IN: <(*,{t003}) --> ^go-to>. :|: IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. -12 - OUT: <(*,Self,{t003}) --> at>. :|: %1.00;0.81% {2: 1;2} - +22 + OUT: (/,at,_,{t003})>. :\: %1.00;0.81% ********** [18 -> 19] - IN: <(*,Self,{t003}) --> at>. :|: + IN: (/,at,_,{t003})>. :\: 6 - OUT: <{t003} --> (/,at,Self,_)>. :|: %1.00;0.90% {1: 1} - + OUT: <{t003} --> (/,at,Self,_)>. :\: %1.00;0.90% ********** [07 -> 20] IN: <(*,{t002},{t003}) --> on>. :|: 6 - OUT: <{t003} --> (/,on,{t002},_)>. :|: %1.00;0.90% {1: 1} - + OUT: <{t003} --> (/,on,{t002},_)>. :\: %1.00;0.90% ********** [19 + 20 -> 21] - IN: <{t003} --> (/,at,Self,_)>. :|: - IN: <{t003} --> (/,on,{t002},_)>. :|: + IN: <{t003} --> (/,at,Self,_)>. :\: + IN: <{t003} --> (/,on,{t002},_)>. :\: 2 - OUT: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :|: %1.00;0.81% {2: 1;2} - + OUT: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :\: %1.00;0.81% ********** [21 -> 22] - IN: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :|: + IN: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :\: 8 - OUT: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :|: %1.00;0.90% {1: 1} - + OUT: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :\: %1.00;0.90% ********** [22 -> 23] - IN: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). + IN: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :\: 4 - OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). %1.00;0.90% {1: 1} - + OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). :\: %1.00;0.90% ********** [23 + 06 -> 24] IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). :|: IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. 1 - OUT: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.81% {2: 1;2} - + OUT: <(*,Self,{t002}) --> reachable>. :\: %1.00;0.81% ********** [24 + 12 -> 25] IN: <(*,Self,{t002}) --> reachable>. :|: IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! -1 - OUT: <(*,{t002}) --> ^pick>! %1.00;0.81% {2: 2;1} - +6 + OUT: <(*,{t002}) --> ^pick>! %1.00;0.81% ********** [25 -> 26] IN: <(*,{t002}) --> ^pick>! 1 - OUT: <(*,{t002}) --> ^pick>. :\: %1.00;0.90% {1: 2} - + OUT: <(*,{t002}) --> ^pick>. :|: %1.00;0.90% ********** [24 + 05 -> 27] IN: <(*,Self,{t002}) --> reachable>. :|: IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. 1 - OUT: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :|: %1.00;0.81% {2: 2;1} - + OUT: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :\: %1.00;0.81% ********** [26 + 27 -> 28] IN: <(*,{t002}) --> ^pick>. :\: - IN: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :|: + IN: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :\: 1 - OUT: <(*,Self,{t002}) --> hold>. :|: %1.00;0.81% {2: 2;1} - + OUT: <(*,Self,{t002}) --> hold>. :\: %1.00;0.81% ********** [28 + 10 -> 29] IN: <(*,Self,{t002}) --> hold>. :|: IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! 7 - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 2;1} - + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% ********** [03 + 28 -> 30] IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. IN: <(*,Self,{t002}) --> hold>. :|: -3 - OUT: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 1;2} - +2 + OUT: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% ********** [29 -> 31] IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! 1 - - OUT: <(*,Self,{t001}) --> at>! %1.00;0.47% {1: 1} - +3 + OUT: <(*,Self,{t001}) --> at>! %1.00;0.45% ********** [31 + 09 -> 32] IN: <(*,Self,{t001}) --> at>! IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. -7 - OUT: <(*,{t001}) --> ^go-to>! %1.00;0.81% {2: 1;2} - +19 + OUT: <(*,{t001}) --> ^go-to>! %1.00;0.81% ********** [32 -> 33] IN: <(*,{t001}) --> ^go-to>! 1 - OUT: <(*,{t001}) --> ^go-to>. :\: %1.00;0.90% {1: 2} - + OUT: <(*,{t001}) --> ^go-to>. :|: %1.00;0.90% ********** [33 + 09 -> 34] IN: <(*,{t001}) --> ^go-to>. :\: IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. 12 - OUT: <(*,Self,{t001}) --> at>. :|: %1.00;0.81% {2: 1;2} + OUT: <(*,Self,{t001}) --> at>. %1.00;0.43% ********** [34 + 30 -> 35] IN: <(*,Self,{t001}) --> at>. :|: IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: -4 - OUT: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 2;1} - +3 + OUT: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :\: %1.00;0.81% ********** [34 + 29 -> 36] IN: <(*,Self,{t001}) --> at>. :|: IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! -1 - OUT: <(*,{t001}) --> ^open>! %1.00;0.81% {2: 2;1} - +6 + OUT: (&/,<(*,{t001}) --> ^open>)! ********** [36 -> 37] IN: <(*,{t001}) --> ^open>! 1 - OUT: <(*,{t001}) --> ^open>. :\: %1.00;0.90% {1: 2} - + OUT: <(*,{t001}) --> ^open>. :|: %1.00;0.90% ********** [35 + 37 -> 38] IN: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :|: - IN: <(*,{t001}) --> ^open>. :\: + IN: <(*,{t001}) --> ^open>. :|: 1 - OUT: <{t001} --> [opened]>. :|: %1.00;0.81% {2: 2;1} + OUT: <{t001} --> [opened]>. :|: %1.00;0.81% diff --git a/nars-dist/Examples/Example-NAL8-1-complete.txt b/nars-dist/Examples/Example-NAL8-1-complete.txt index 3626890b..84575d8a 100644 --- a/nars-dist/Examples/Example-NAL8-1-complete.txt +++ b/nars-dist/Examples/Example-NAL8-1-complete.txt @@ -1,390 +1,589 @@ *** [01] <{t001} --> [opened]>! *** [02] <{t001} --> door>. -*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. +*** [03] <(&|, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. *** [04] <(*, {t002}, {t001}) --> key-of>. -*** [05] <(&/, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. +*** [05] <(&|, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. *** [06] <(&|, <(*, #x, #y(#x)) --> on>, <(*, Self, #y(#x)) --> at>) =|> <(*, Self, #x) --> reachable>>. *** [07] <(*, {t002}, {t003}) --> on>. :|: *** [08] <{t003} --> desk>. *** [09] <(^go-to, #x) =/> <(*, Self, #x) --> at>>. ********** [01 + 03 -> 10]: - IN: <{t001} --> [opened]>! %1.00;0.90% {1: 1} + IN: <{t001} --> [opened]>! %1.00;0.90% {0 : 1} - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 2} -4 +1 - OUT: <(&/, (/,hold,_,{t002})>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + OUT: <{t001} --> [opened]>? :|: {1 : 1 : 3} -4 +2 - OUT: <(&/,<(*,Self,{t002}) --> hold>, (/,at,_,{t001})>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + OUT: <(&/, (/,hold,_,{t002})>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {3 : 2} 2 - OUT: <(&/,<{t002} --> (/,hold,Self,_)>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + OUT: <(&/,<(*,Self,{t002}) --> hold>, (/,at,_,{t001})>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {5 : 2} + +6 + + OUT: <(&/,<{t002} --> (/,hold,Self,_)>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {11 : 2} 8 - OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 1;2} + OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {19 : 2;1} ********** [10 -> 11]: - IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 1} + IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {0 : 1} -5 +1 + + OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {1 : 1 : 2} + +4 - OUT: <(*,Self,{t002}) --> hold>! %1.00;0.47% {1: 1} + OUT: <(*,Self,{t002}) --> hold>! %1.00;0.45% {5 : 1} ********** [11 + 05 -> 12]: - IN: <(*,Self,{t002}) --> hold>! %1.00;0.90% {1: 1} + IN: <(*,Self,{t002}) --> hold>! %1.00;0.90% {0 : 1} - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {1: 2} + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {0 : 2} 1 - OUT: (/,hold,_,{t002})>! %1.00;0.90% {1: 1} + OUT: <(*,Self,{t002}) --> hold>? :|: {1 : 1 : 3} -6 + OUT: (/,hold,_,{t002})>! %1.00;0.90% {1 : 1} + +1 + + OUT: (/,hold,_,{t002})>? :|: {2 : 2 : 4} - OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.81% {2: 1;2} +1 + + OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)? :\: {3 : 0 : 2;3} + +2 + + OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.81% {5 : 2;1} ********** [12 -> 13]: - IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {1: 1} + IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {0 : 1} + +1 + + OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)? :|: {1 : 1 : 2} + +1 + + OUT: <(*,Self,{t002}) --> reachable>? :\: {2 : 1 : 2} + +2 + + OUT: (&/,<{t002} --> (/,reachable,Self,_)>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {4 : 1} + +1 + + OUT: (&/,<{t002} --> (/,reachable,Self,_)>,<(*,{t002}) --> ^pick>)? :|: {5 : 5 : 3} 1 - OUT: <(*,Self,{t002}) --> reachable>! %1.00;0.47% {1: 1} + OUT: (&/, (/,reachable,_,{t002})>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {6 : 1} + +1 + + OUT: (&/, (/,reachable,_,{t002})>,<(*,{t002}) --> ^pick>)? :|: {7 : 7 : 4} + +5 + + OUT: (&/, (/,reachable,_,{t002})>,<(*,{t002}) --> ^pick>)? :\: {12 : 1 : 2} + +1 + + OUT: <(*,Self,{t002}) --> reachable>! %1.00;0.45% {13 : 1} ********** [13 + 06 -> 14]: - IN: <(*,Self,{t002}) --> reachable>! %1.00;0.90% {1: 1} + IN: <(*,Self,{t002}) --> reachable>! %1.00;0.90% {0 : 1} - IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {1: 2} + IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {0 : 2} -3 +1 - OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.81% {2: 1;2} + OUT: <(*,Self,{t002}) --> reachable>? :|: {1 : 1 : 3} + +1 + + OUT: <{t002} --> (/,reachable,Self,_)>! %1.00;0.90% {2 : 1} + +1 + + OUT: <{t002} --> (/,reachable,Self,_)>? :|: {3 : 3 : 4} + + OUT: (/,reachable,_,{t002})>! %1.00;0.90% {3 : 1} + +1 + + OUT: (/,reachable,_,{t002})>? :|: {4 : 4 : 5} + +5 + + OUT: <(*,Self,{t002}) --> reachable>? :\: {9 : 3 : 4} + +1 + + OUT: (/,reachable,_,{t002})>? :\: {10 : 1 : 3} + +6 + + OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.81% {16 : 2;1} ********** [07 + 14 -> 15]: - IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {1: 1} + IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {0 : 0 : 1} - IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.90% {1: 2} + IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.90% {0 : 2} 1 - OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>)! %1.00;0.90% {1: 2} + OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)? :|: {1 : 1 : 3} -8 + OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>)! %1.00;0.90% {1 : 2} - OUT: (&|,<(*,Self,#1()) --> at>,<{t002} --> (/,on,_,#1())>)! %1.00;0.90% {1: 2} +1 -3 + OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>)? :|: {2 : 2 : 4} - OUT: <{t003} --> (/,on,{t002},_)>. :|: %1.00;0.90% {1: 1} +4 -3 + OUT: (&|,<(*,Self,#1()) --> at>,<{t002} --> (/,on,_,#1())>)! %1.00;0.90% {6 : 2} + +1 + + OUT: (&|,<(*,Self,#1()) --> at>,<{t002} --> (/,on,_,#1())>)? :|: {7 : 7 : 5} + +4 + + OUT: <{t003} --> (/,on,{t002},_)>. :\: %1.00;0.90% {11 : 0 : 1} + +4 + + OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>)? :\: {15 : 1 : 3} - OUT: <(*,Self,{t003}) --> at>! %1.00;0.81% {2: 2;1} +2 + + OUT: <(*,Self,{t003}) --> at>? :\: {17 : 1 : 1;3} + +2 + + OUT: (/,at,_,{t003})>? :\: {19 : 1 : 1;3} + +2 + + OUT: <{t003} --> (/,at,Self,_)>? :\: {21 : 1 : 1;3} + +2 + + OUT: (&|,<(*,Self,#1()) --> at>,<{t002} --> (/,on,_,#1())>)? :\: {23 : 1 : 3} + +2 + + OUT: <(*,Self,{t003}) --> at>! %1.00;0.81% {25 : 1;2} ********** [15 + 09 -> 16]: - IN: <(*,Self,{t003}) --> at>! %1.00;0.90% {1: 1} + IN: <(*,Self,{t003}) --> at>! %1.00;0.90% {0 : 1} + + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 2} + +1 + + OUT: <(*,Self,{t003}) --> at>? :|: {1 : 1 : 3} + + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1 : 2} + +5 - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 2} + OUT: <{t003} --> (/,at,Self,_)>! %1.00;0.90% {6 : 1} 1 - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 2} + OUT: <{t003} --> (/,at,Self,_)>? :|: {7 : 7 : 4} + +5 + + OUT: <(*,Self,{t003}) --> at>? :\: {12 : 7 : 4} + +1 + + OUT: (/,at,_,{t003})>! %1.00;0.90% {13 : 1} + +1 + + OUT: (/,at,_,{t003})>? :|: {14 : 14 : 5} 4 - OUT: <{t003} --> (/,at,Self,_)>! %1.00;0.90% {1: 1} + OUT: (/,at,_,{t003})>? :\: {18 : 1 : 3} -2 +1 - OUT: <(*,{t003}) --> ^go-to>! %1.00;0.81% {2: 1;2} + OUT: <(*,{t003}) --> ^go-to>! %1.00;0.81% {19 : 2;1} ********** [16 -> 17] - IN: <(*,{t003}) --> ^go-to>! %1.00;0.90% {1: 1} + IN: <(*,{t003}) --> ^go-to>! %1.00;0.90% {0 : 1} 1 - OUT: <(*,{t003}) --> ^go-to>. :\: %1.00;0.90% {1: 2} + OUT: <(*,{t003}) --> ^go-to>. :|: %1.00;0.90% {1 : 1 : 2} ********** [17 + 09 -> 18] - IN: <(*,{t003}) --> ^go-to>. :\: %1.00;0.90% {1: 1} + IN: <(*,{t003}) --> ^go-to>. :|: %1.00;0.90% {0 : 0 : 1} - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 2} + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 2} 2 - OUT: <{t003} --> (/,^go-to,_)>. :\: %1.00;0.90% {1: 1} + OUT: <{t003} --> (/,^go-to,_)>. :\: %1.00;0.90% {2 : 0 : 1} 5 - OUT: <(/,(*,{t003}),_) --> (/,^go-to,_)>. :\: %1.00;0.90% {1: 1} + OUT: <(/,(*,{t003}),_) --> (/,^go-to,_)>. :\: %1.00;0.90% {7 : 0 : 1} 1 - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 2} + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {8 : 2} 4 - OUT: <(*,Self,{t003}) --> at>. :|: %1.00;0.81% {2: 2;1} + OUT: <(*,Self,{t003}) --> at>. %1.00;0.43% {12 : 1;2} + +5 + + OUT: (/,at,_,{t003})>. %1.00;0.43% {17 : 1;2} + +1 + + OUT: (/,at,_,{t003})>. %1.00;0.43% {18 : 1;2} + +3 + + OUT: <{t003} --> (/,at,Self,_)>. %1.00;0.43% {21 : 1;2} + +1 + + OUT: (/,at,_,{t003})>. :\: %1.00;0.81% {22 : 1 : 2;1} ********** [18 -> 19] - IN: <(*,Self,{t003}) --> at>. :|: %1.00;0.90% {1: 1} + IN: (/,at,_,{t003})>. :\: %1.00;0.90% {0 : -1 : 1} -2 +3 - OUT: (/,at,_,{t003})>. :|: %1.00;0.90% {1: 1} + OUT: <(*,Self,{t003}) --> at>. :\: %1.00;0.90% {3 : -1 : 1} -4 +3 - OUT: <{t003} --> (/,at,Self,_)>. :|: %1.00;0.90% {1: 1} + OUT: <{t003} --> (/,at,Self,_)>. :\: %1.00;0.90% {6 : -1 : 1} ********** [07 -> 20] - IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {1: 1} + IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {0 : 0 : 1} 5 - OUT: <{t002} --> (/,on,_,{t003})>. :|: %1.00;0.90% {1: 1} + OUT: <{t002} --> (/,on,_,{t003})>. :\: %1.00;0.90% {5 : 0 : 1} 1 - OUT: <{t003} --> (/,on,{t002},_)>. :|: %1.00;0.90% {1: 1} + OUT: <{t003} --> (/,on,{t002},_)>. :\: %1.00;0.90% {6 : 0 : 1} ********** [19 + 20 -> 21] - IN: <{t003} --> (/,at,Self,_)>. :|: %1.00;0.90% {1: 1} + IN: <{t003} --> (/,at,Self,_)>. :\: %1.00;0.90% {0 : -1 : 1} - IN: <{t003} --> (/,on,{t002},_)>. :|: %1.00;0.90% {1: 2} + IN: <{t003} --> (/,on,{t002},_)>. :\: %1.00;0.90% {0 : -1 : 2} 1 - OUT: <<#1 --> (/,on,{t002},_)> =\> <#1 --> (/,at,Self,_)>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<#1 --> (/,on,{t002},_)> =|> <#1 --> (/,at,Self,_)>>. :\: %1.00;0.45% {1 : -1 : 1;2} - OUT: <<#1 --> (/,at,Self,_)> =/> <#1 --> (/,on,{t002},_)>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<#1 --> (/,at,Self,_)> =|> <#1 --> (/,on,{t002},_)>>. :\: %1.00;0.45% {1 : -1 : 1;2} - OUT: <<#1 --> (/,at,Self,_)> <#1 --> (/,on,{t002},_)>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<#1 --> (/,on,{t002},_)> <|> <#1 --> (/,at,Self,_)>>. :\: %1.00;0.45% {1 : -1 : 1;2} 1 - OUT: <(/,on,{t002},_) --> (/,at,Self,_)>. :|: %1.00;0.44% {2: 1;2} + OUT: <(/,on,{t002},_) --> (/,at,Self,_)>. :\: %1.00;0.45% {2 : -1 : 2;1} - OUT: <(/,at,Self,_) --> (/,on,{t002},_)>. :|: %1.00;0.44% {2: 1;2} + OUT: <(/,at,Self,_) --> (/,on,{t002},_)>. :\: %1.00;0.45% {2 : -1 : 2;1} - OUT: <(/,on,{t002},_) <-> (/,at,Self,_)>. :|: %1.00;0.44% {2: 1;2} + OUT: <(/,on,{t002},_) <-> (/,at,Self,_)>. :\: %1.00;0.45% {2 : -1 : 2;1} - OUT: <<#1 --> (/,on,{t002},_)> =|> <#1 --> (/,at,Self,_)>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<#1 --> (/,on,{t002},_)> =|> <#1 --> (/,at,Self,_)>>. :\: %1.00;0.45% {2 : -1 : 2;1} - OUT: <<#1 --> (/,at,Self,_)> =|> <#1 --> (/,on,{t002},_)>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<#1 --> (/,at,Self,_)> =|> <#1 --> (/,on,{t002},_)>>. :\: %1.00;0.45% {2 : -1 : 2;1} - OUT: <<#1 --> (/,on,{t002},_)> <|> <#1 --> (/,at,Self,_)>>. :|: %1.00;0.44% {2: 1;2} + OUT: <<#1 --> (/,on,{t002},_)> <|> <#1 --> (/,at,Self,_)>>. :\: %1.00;0.45% {2 : -1 : 2;1} - OUT: <{t003} --> (|,(/,on,{t002},_),(/,at,Self,_))>. :|: %1.00;0.99% {2: 1;2} + OUT: <{t003} --> (|,(/,on,{t002},_),(/,at,Self,_))>. :\: %1.00;0.99% {2 : -1 : 2;1} - OUT: <{t003} --> (&,(/,on,{t002},_),(/,at,Self,_))>. :|: %1.00;0.81% {2: 1;2} + OUT: <{t003} --> (&,(/,on,{t002},_),(/,at,Self,_))>. :\: %1.00;0.81% {2 : -1 : 2;1} - OUT: <{t003} --> (-,(/,at,Self,_),(/,on,{t002},_))>. :|: %0.00;0.90% {2: 1;2} + OUT: <{t003} --> (-,(/,at,Self,_),(/,on,{t002},_))>. :\: %0.00;0.90% {2 : -1 : 2;1} - OUT: <{t003} --> (-,(/,on,{t002},_),(/,at,Self,_))>. :|: %0.00;0.90% {2: 1;2} + OUT: <{t003} --> (-,(/,on,{t002},_),(/,at,Self,_))>. :\: %0.00;0.90% {2 : -1 : 2;1} - OUT: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :|: %1.00;0.81% {2: 1;2} + OUT: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :\: %1.00;0.81% {2 : -1 : 2;1} ********** [21 -> 22] - IN: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :|: %1.00;0.90% {1: 1} + IN: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :\: %1.00;0.90% {0 : -1 : 1} 6 - OUT: (&|,<#1() --> (/,at,Self,_)>,<{t002} --> (/,on,_,#1())>). :|: %1.00;0.90% {1: 1} + OUT: (&|,<#1() --> (/,at,Self,_)>,<{t002} --> (/,on,_,#1())>). :\: %1.00;0.90% {6 : -1 : 1} 2 - OUT: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :|: %1.00;0.90% {1: 1} + OUT: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :\: %1.00;0.90% {8 : -1 : 1} ********** [22 -> 23] - IN: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). %1.00;0.90% {1: 1} + IN: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :\: %1.00;0.90% {0 : -1 : 1} 3 - OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>). %1.00;0.90% {1: 1} + OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>). :\: %1.00;0.90% {3 : -1 : 1} 1 - OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). %1.00;0.90% {1: 1} + OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). :\: %1.00;0.90% {4 : -1 : 1} ********** [23 + 06 -> 24] - IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). :|: %1.00;0.90% {1: 1} + IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). :|: %1.00;0.90% {0 : 0 : 1} - IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {1: 2} + IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {0 : 2} 1 - OUT: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.81% {2: 1;2} + OUT: <(*,Self,{t002}) --> reachable>. :\: %1.00;0.81% {1 : 0 : 2;1} ********** [24 + 12 -> 25] - IN: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.90% {1: 1} + IN: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.90% {0 : 0 : 1} + + IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {0 : 2} + +1 + + OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)? :|: {1 : 1 : 3} + +2 - IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {1: 2} + OUT: (&/,<{t002} --> (/,reachable,Self,_)>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {3 : 2} 1 - OUT: <(*,{t002}) --> ^pick>! %1.00;0.81% {2: 2;1} + OUT: (&/,<{t002} --> (/,reachable,Self,_)>,<(*,{t002}) --> ^pick>)? :|: {4 : 4 : 4} + +2 + + OUT: <(*,{t002}) --> ^pick>! %1.00;0.81% {6 : 1;2} ********** [25 -> 26] - IN: <(*,{t002}) --> ^pick>! %1.00;0.90% {1: 1} + IN: <(*,{t002}) --> ^pick>! %1.00;0.90% {0 : 1} 1 - OUT: <(*,{t002}) --> ^pick>. :\: %1.00;0.90% {1: 2} + OUT: <(*,{t002}) --> ^pick>. :|: %1.00;0.90% {1 : 1 : 2} ********** [24 + 05 -> 27] - IN: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.90% {1: 1} + IN: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.90% {0 : 0 : 1} - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {1: 2} + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {0 : 2} 1 - OUT: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :|: %1.00;0.81% {2: 1;2} + OUT: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :\: %1.00;0.81% {1 : 0 : 2;1} ********** [26 + 27 -> 28] - IN: <(*,{t002}) --> ^pick>. :\: %1.00;0.90% {1: 1} + IN: <(*,{t002}) --> ^pick>. :\: %1.00;0.90% {0 : -1 : 1} - IN: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :|: %1.00;0.90% {1: 2} + IN: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :\: %1.00;0.90% {0 : -1 : 2} 1 - OUT: <(*,Self,{t002}) --> hold>. :|: %1.00;0.81% {2: 1;2} + OUT: <(*,Self,{t002}) --> hold>. :\: %1.00;0.81% {1 : 0 : 2;1} ********** [28 + 10 -> 29] - IN: <(*,Self,{t002}) --> hold>. :|: %1.00;0.90% {1: 1} + IN: <(*,Self,{t002}) --> hold>. :|: %1.00;0.90% {0 : 0 : 1} - IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 2} + IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {0 : 2} 1 - OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>). :|: %1.00;0.47% {1: 1} + OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {1 : 1 : 3} 1 - OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>). :|: %1.00;0.47% {1: 1} + OUT: (&/, (/,hold,_,{t002})>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {2 : 2} + +1 - OUT: (&/, (/,hold,_,{t002})>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 2} + OUT: (&/, (/,hold,_,{t002})>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {3 : 3 : 4} 1 - OUT: (&/,<{t002} --> (/,hold,Self,_)>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 2} + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {4 : 1;2} -2 +1 - OUT: (&/,<(*,Self,{t002}) --> hold>, (/,at,_,{t001})>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 2} + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {5 : 5 : 5} -2 +1 + + OUT: <(/,(*,Self,{t002}),_,{t002}) --> (/,hold,_,{t002})>. :\: %1.00;0.81% {6 : 0 : 1} - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 2;1} +1 + + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {7 : 1;2} ********** [03 + 28 -> 30] - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 1} + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 1} - IN: <(*,Self,{t002}) --> hold>. :|: %1.00;0.90% {1: 2} + IN: <(*,Self,{t002}) --> hold>. :|: %1.00;0.90% {0 : 0 : 2} -1 +2 - OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>). :|: %1.00;0.47% {1: 2} + OUT: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% {2 : 0 : 1;2} -1 +********** [29 -> 31] + IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {0 : 1} +1 + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {1 : 1 : 2} +1 + OUT: <(*,Self,{t001}) --> at>? :\: {2 : 1 : 2} +2 + OUT: (&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>)! %1.00;0.90% {4 : 1} +1 + OUT: (&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>)? :|: {5 : 5 : 3} +1 + OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^open>)! %1.00;0.90% {6 : 1} +1 + OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^open>)? :|: {7 : 7 : 4} +5 + OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^open>)? :\: {12 : 1 : 2} +1 + OUT: <(*,Self,{t001}) --> at>! %1.00;0.45% {13 : 1} +********** [31 + 09 -> 32] + IN: <(*,Self,{t001}) --> at>! %1.00;0.90% {0 : 1} - OUT: <{t002} --> (/,hold,Self,_)>. :|: %1.00;0.90% {1: 2} + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 2} 1 - OUT: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 2;1} + OUT: <(*,Self,{t001}) --> at>? :|: {1 : 1 : 3} -********** [29 -> 31] - IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 1} + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1 : 2} + +5 + + OUT: <{t001} --> (/,at,Self,_)>! %1.00;0.90% {6 : 1} 1 - OUT: <(*,Self,{t001}) --> at>! %1.00;0.47% {1: 1} + OUT: <{t001} --> (/,at,Self,_)>? :|: {7 : 7 : 4} -********** [31 + 09 -> 32] - IN: <(*,Self,{t001}) --> at>! %1.00;0.90% {1: 1} +5 + + OUT: <(*,Self,{t001}) --> at>? :\: {12 : 7 : 4} - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 2} +1 + + OUT: (/,at,_,{t001})>! %1.00;0.90% {13 : 1} 1 - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 2} + OUT: (/,at,_,{t001})>? :|: {14 : 14 : 5} 4 - OUT: <{t001} --> (/,at,Self,_)>! %1.00;0.90% {1: 1} + OUT: (/,at,_,{t001})>? :\: {18 : 1 : 3} -2 +1 - OUT: <(*,{t001}) --> ^go-to>! %1.00;0.81% {2: 1;2} + OUT: <(*,{t001}) --> ^go-to>! %1.00;0.81% {19 : 2;1} ********** [32 -> 33] - IN: <(*,{t001}) --> ^go-to>! %1.00;0.90% {1: 1} + IN: <(*,{t001}) --> ^go-to>! %1.00;0.90% {0 : 1} 1 - OUT: <(*,{t001}) --> ^go-to>. :\: %1.00;0.90% {1: 2} + OUT: <(*,{t001}) --> ^go-to>. :|: %1.00;0.90% {1 : 1 : 2} ********** [33 + 09 -> 34] - IN: <(*,{t001}) --> ^go-to>. :\: %1.00;0.90% {1: 1} + IN: <(*,{t001}) --> ^go-to>. :\: %1.00;0.90% {0 : -1 : 1} - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 2} + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 2} 2 - OUT: <{t001} --> (/,^go-to,_)>. :\: %1.00;0.90% {1: 1} + OUT: <{t001} --> (/,^go-to,_)>. :\: %1.00;0.90% {2 : -1 : 1} 5 - OUT: <(/,(*,{t001}),_) --> (/,^go-to,_)>. :\: %1.00;0.90% {1: 1} + OUT: <(/,(*,{t001}),_) --> (/,^go-to,_)>. :\: %1.00;0.90% {7 : -1 : 1} 1 - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 2} + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {8 : 2} 4 - OUT: <(*,Self,{t001}) --> at>. :|: %1.00;0.81% {2: 2;1} + OUT: <(*,Self,{t001}) --> at>. %1.00;0.43% {12 : 1;2} ********** [34 + 30 -> 35] - IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {1: 1} + IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {0 : 0 : 1} - IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {1: 2} + IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {0 : 0 : 2} 1 - OUT: <(&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. :|: %1.00;0.90% {1: 2} + OUT: <(&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. :\: %1.00;0.90% {1 : 0 : 2} -3 +1 - OUT: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 2;1} + OUT: <(&|,(&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>),<(*,Self,{t001}) --> at>) =|> <{t001} --> [opened]>>. :\: %1.00;0.45% {2 : 0 : 1;2} + +1 + + OUT: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :\: %1.00;0.81% {3 : 0 : 2;1} ********** [34 + 29 -> 36] - IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {1: 1} + IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {0 : 0 : 1} + + IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {0 : 2} + +1 + + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {1 : 1 : 3} - IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {1: 2} +2 + + OUT: (&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>)! %1.00;0.90% {3 : 2} 1 - OUT: <(*,{t001}) --> ^open>! %1.00;0.81% {2: 2;1} + OUT: (&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>)? :|: {4 : 4 : 4} + +2 + + OUT: <(*,{t001}) --> ^open>! %1.00;0.81% {6 : 1;2} ********** [36 -> 37] - IN: <(*,{t001}) --> ^open>! %1.00;0.90% {1: 1} + IN: <(*,{t001}) --> ^open>! %1.00;0.90% {0 : 1} 1 - OUT: <(*,{t001}) --> ^open>. :\: %1.00;0.90% {1: 2} + OUT: <(*,{t001}) --> ^open>. :|: %1.00;0.90% {1 : 1 : 2} ********** [35 + 37 -> 38] - IN: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {1: 1} + IN: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {0 : 0 : 1} - IN: <(*,{t001}) --> ^open>. :\: %1.00;0.90% {1: 2} + IN: <(*,{t001}) --> ^open>. :|: %1.00;0.90% {0 : 0 : 2} 1 - OUT: <{t001} --> [opened]>. :|: %1.00;0.81% {2: 2;1} + OUT: <{t001} --> [opened]>. :|: %1.00;0.81% {1 : 1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL8-2-abridged.txt b/nars-dist/Examples/Example-NAL8-2-abridged.txt index 4fdda067..6583d642 100644 --- a/nars-dist/Examples/Example-NAL8-2-abridged.txt +++ b/nars-dist/Examples/Example-NAL8-2-abridged.txt @@ -13,40 +13,36 @@ IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. 2 - OUT: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {2: 1;2} - + OUT: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% ********** [10 + 05 -> 11] IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. 14 - OUT: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {2: 1;2} - + OUT: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% ********** [06 + 07 -> 12] IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. IN: <(*,{t002},{t003}) --> on>. :|: 7 - OUT: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :|: %1.00;0.81% {2: 2;1} + OUT: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :\: %1.00;0.81% {7 : 0 : 1;2} ********** [11 + 12 -> 13] IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. IN: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :|: -5 - OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 1;2} +17 + OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% ********** [13 + 09 -> 14] IN: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. -8 - OUT: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 1;2} - +16 + OUT: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% ********** [01 + 14 -> 15] IN: <{t001} --> [opened]>! %1.00;0.90% IN: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: -3 - OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 1;2} - +16 + OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>)! %1.00;0.81% \ No newline at end of file diff --git a/nars-dist/Examples/Example-NAL8-2-complete.txt b/nars-dist/Examples/Example-NAL8-2-complete.txt index 2288c970..ab48c626 100644 --- a/nars-dist/Examples/Example-NAL8-2-complete.txt +++ b/nars-dist/Examples/Example-NAL8-2-complete.txt @@ -8,76 +8,124 @@ *** [08] <{t003} --> desk>. *** [09] <(^go-to, #x) =/> <(*, Self, #x) --> at>>. ********** [03 + 09 -> 10]: - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 1} + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 1} - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 2} 1 - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 1} + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1 : 1} 1 - OUT: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {2: 1;2} + OUT: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {2 : 2;1} ********** [10 + 05 -> 11] - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 1} + IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 1} - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {1: 2} + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {0 : 2} 10 - OUT: <(&/, (/,hold,_,{t002})>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 1} + OUT: <(&/, (/,hold,_,{t002})>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {10 : 1} 1 - OUT: <(&/,<{t002} --> (/,hold,Self,_)>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 1} + OUT: <(&/,<{t002} --> (/,hold,Self,_)>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {11 : 1} 3 - OUT: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {2: 1;2} + OUT: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {14 : 2;1} ********** [06 + 07 -> 12] - IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {1: 1} + IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {0 : 1} - IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {1: 2} + IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {0 : 0 : 2} 4 - OUT: <(&|,<(*,#1,#2(#1)) --> on>, (/,at,_,#2(#1))>) ==> <(*,Self,#1) --> reachable>>. %1.00;0.90% {1: 1} + OUT: <(&|,<(*,#1,#2(#1)) --> on>, (/,at,_,#2(#1))>) ==> <(*,Self,#1) --> reachable>>. %1.00;0.90% {4 : 1} 3 - OUT: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :|: %1.00;0.81% {2: 2;1} + OUT: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :\: %1.00;0.81% {7 : 0 : 1;2} ********** [11 + 12 -> 13] - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 1} + IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 1} - IN: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :|: %1.00;0.90% {1: 2} + IN: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :|: %1.00;0.90% {0 : 0 : 2} 5 - OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 1;2} + OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.43% {5 : 2;1} -********** [13 + 09 -> 14] - IN: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {1: 1} +3 + + OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.43% {8 : 2;1} + +1 - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {1: 2} + OUT: <(&/,<{t002} --> (/,reachable,Self,_)>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {9 : 1} 7 - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1: 2} + OUT: <(&/, (/,reachable,_,{t002})>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {16 : 1} 1 - OUT: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.81% {2: 2;1} + OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% {17 : 0 : 1;2} -********** [01 + 14 -> 15] - IN: <{t001} --> [opened]>! %1.00;0.90% {1: 1} +********** [13 + 09 -> 14] + IN: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {0 : 0 : 1} + + IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 2} - IN: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {1: 2} +6 + + OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.30% {6 : 1;2} + +1 + + OUT: <(&/,<{t003} --> (/,at,Self,_)>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. :\: %1.00;0.90% {7 : 0 : 1} 3 - OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>)! %1.00;0.81% {2: 1;2} + OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {10 : 2} + +1 + + OUT: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.43% {11 : 1;2} + +4 + + OUT: <(&/, (/,at,_,{t003})>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. :\: %1.00;0.90% {15 : 0 : 1} + +1 + + OUT: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% {16 : 0 : 2;1} + +********** [01 + 14 -> 15] + IN: <{t001} --> [opened]>! %1.00;0.90% {0 : 1} + + IN: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {0 : 0 : 2} + +1 + + OUT: <{t001} --> [opened]>? :|: {1 : 1 : 3} + +10 + + OUT: <(&/,<{t003} --> (/,^go-to,_)>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. :\: %1.00;0.90% {11 : 0 : 2} + +2 + + OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>)? :\: {13 : 0 : 2;3} + +1 + + OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<{t001} --> (/,^go-to,_)>,<(*,{t001}) --> ^open>)? :\: {14 : 0 : 2;3} + +2 + + OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>)! %1.00;0.81% {16 : 2;1} diff --git a/nars-dist/Examples/Example-NAL8-3-abridged.txt b/nars-dist/Examples/Example-NAL8-3-abridged.txt index 7616e9de..192bbf98 100644 --- a/nars-dist/Examples/Example-NAL8-3-abridged.txt +++ b/nars-dist/Examples/Example-NAL8-3-abridged.txt @@ -11,27 +11,27 @@ ********** [01 + 06 -> 10]: IN: <{t001} --> [opened]>! IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>) =/> <{t001} --> [opened]>>. -24 - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% {2: 1;2} +26 + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% ********** [10 + 07 -> 11]: IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% IN: <(*,Self,{t001}) --> at>. :|: -3 - OUT: <(*,{t001}) --> ^break>! %1.00;0.72% {2: 1;2} +4 + OUT: <(*,{t001}) --> ^break>! %1.00;0.73% {4 : 2;1} ********** [09 + 08 -> 12]: IN: <<(*,#1) --> ^break> =/> <#1 --> [damaged]>>. IN: <{t001} --> [damaged]>! %0; 0.95% -16 - OUT: <(*,{t001}) --> ^break>! %0.00;0.85% {2: 2;1} +17 + OUT: <(*,{t001}) --> ^break>! %0.00;0.86% ********** [12 + 11 -> 13]: IN: <(*,{t001}) --> ^break>! %0.00;0.85% 1 IN: <(*,{t001}) --> ^break>! %1.00;0.72% 1 - OUT: <(*,{t001}) --> ^break>! %0.31;0.89% {2: 2;1} + OUT: <(*,{t001}) --> ^break>! %0.31;0.89% {2 : 1;3} ********** [13 -> NO EXECUTION]: IN: <(*,{t001}) --> ^break>! %0.31;0.89% {2: 2;1} @@ -44,9 +44,9 @@ 1 IN: <(*,{t001}) --> ^break>! %1.00;0.95% 1 - OUT: <(*,{t001}) --> ^break>! %0.79;0.96% {2: 2;1} + OUT: <(*,{t001}) --> ^break>! %0.79;0.96% ********** [15 -> 16]: IN: <(*,{t001}) --> ^break>! %0.79;0.96% 1 - OUT: <(*,{t001}) --> ^break>. :\: %1.00;0.90% {1: 2} + OUT: <(*,{t001}) --> ^break>. :|: %1.00;0.90% diff --git a/nars-dist/Examples/Example-NAL8-3-complete.txt b/nars-dist/Examples/Example-NAL8-3-complete.txt index 65c51201..b09b2346 100644 --- a/nars-dist/Examples/Example-NAL8-3-complete.txt +++ b/nars-dist/Examples/Example-NAL8-3-complete.txt @@ -8,89 +8,114 @@ *** [08] <{t001} --> [damaged]>! %0; 0.95% *** [09] <(^break, #x) =/> <#x --> [damaged]>>. ********** [01 + 06 -> 10]: - IN: <{t001} --> [opened]>! %1.00;0.90% {1: 1} + IN: <{t001} --> [opened]>! %1.00;0.90% {0 : 1} - IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>) =/> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 2} -3 +1 + + OUT: <{t001} --> [opened]>? :|: {1 : 1 : 3} + +1 - OUT: <(&/, (/,at,_,{t001})>,<(*,{t001}) --> ^break>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + OUT: <(&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^break>) ==> <{t001} --> [opened]>>. %1.00;0.90% {2 : 2} -10 +2 - OUT: <(&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^break>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + OUT: <(&/, (/,at,_,{t001})>,<(*,{t001}) --> ^break>) ==> <{t001} --> [opened]>>. %1.00;0.90% {4 : 2} -7 +6 - OUT: <(&/,<(*,Self,{t001}) --> at>,<{t001} --> (/,^break,_)>) ==> <{t001} --> [opened]>>. %1.00;0.90% {1: 2} + OUT: <(&/,<(*,Self,{t001}) --> at>,<{t001} --> (/,^break,_)>) ==> <{t001} --> [opened]>>. %1.00;0.90% {10 : 2} -4 +16 - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% {2: 1;2} + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% {26 : 2;1} ********** [10 + 07 -> 11]: - IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% {1: 1} + IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% {0 : 1} - IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {1: 2} + IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {0 : 0 : 2} 1 - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>). :|: %1.00;0.47% {1: 2} + OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)? :|: {1 : 1 : 3} 1 - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>). :|: %1.00;0.47% {1: 2} + OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^break>)! %1.00;0.81% {2 : 1} - OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^break>)! %1.00;0.81% {1: 1} +1 + + OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^break>)? :|: {3 : 3 : 4} 1 - OUT: <(*,{t001}) --> ^break>! %1.00;0.72% {2: 1;2} + OUT: <(*,{t001}) --> ^break>! %1.00;0.73% {4 : 2;1} ********** [09 + 08 -> 12]: - IN: <<(*,#1) --> ^break> =/> <#1 --> [damaged]>>. %1.00;0.90% {1: 1} + IN: <<(*,#1) --> ^break> =/> <#1 --> [damaged]>>. {0 : 1} + IN: <{t001} --> [damaged]>! %0.00;0.95% {0 : 2} - IN: <{t001} --> [damaged]>! %0.00;0.95% {1: 2} +1 + + OUT: <{t001} --> [damaged]>? :|: {1 : 1 : 3} 16 - OUT: <(*,{t001}) --> ^break>! %0.00;0.85% {2: 2;1} + OUT: <(*,{t001}) --> ^break>! %0.00;0.86% {17 : 1;2} ********** [12 + 11 -> 13]: - IN: <(*,{t001}) --> ^break>! %0.00;0.85% {1: 1} + IN: <(*,{t001}) --> ^break>! %0.00;0.85% {0 : 1} 1 - IN: <(*,{t001}) --> ^break>! %1.00;0.72% {1: 2} + OUT: <(*,{t001}) --> ^break>? :|: {1 : 1 : 2} + + IN: <(*,{t001}) --> ^break>! %1.00;0.72% {1 : 3} 1 - OUT: <(*,{t001}) --> ^break>! %0.31;0.89% {2: 2;1} + OUT: <(*,{t001}) --> ^break>! %0.31;0.89% {2 : 1;3} + + OUT: <{t001} --> (/,^break,_)>! %0.00;0.85% {2 : 1} ********** [13 -> NO EXECUTION]: - IN: <(*,{t001}) --> ^break>! %0.31;0.89% {1: 1} + IN: <(*,{t001}) --> ^break>! %0.31;0.89% {0 : 1} -2 +1 + + OUT: <(*,{t001}) --> ^break>? :|: {1 : 1 : 2} + +6 - OUT: <{t001} --> (/,^break,_)>! %0.31;0.89% {1: 1} + OUT: <{t001} --> (/,^break,_)>! %0.31;0.89% {7 : 1} -8 +1 + + OUT: <{t001} --> (/,^break,_)>? :|: {8 : 8 : 3} + +2 *** [14] <(*,{t001}) --> ^break>! %1.00;0.95% ********** [13 + 14 -> 15]: - IN: <(*,{t001}) --> ^break>! %0.31;0.89% {1: 1} + IN: <(*,{t001}) --> ^break>! %0.31;0.89% {0 : 1} 1 - IN: <(*,{t001}) --> ^break>! %1.00;0.95% {1: 2} + OUT: <(*,{t001}) --> ^break>? :|: {1 : 1 : 2} + + IN: <(*,{t001}) --> ^break>! %1.00;0.95% {1 : 3} 1 - OUT: <(*,{t001}) --> ^break>! %0.79;0.96% {2: 2;1} + OUT: <(*,{t001}) --> ^break>! %0.79;0.96% {2 : 1;3} + + OUT: <{t001} --> (/,^break,_)>! %0.31;0.89% {2 : 1} ********** [15 -> 16]: - IN: <(*,{t001}) --> ^break>! %0.79;0.96% {1: 1} + IN: <(*,{t001}) --> ^break>! %0.79;0.96% {0 : 1} 1 - OUT: <(*,{t001}) --> ^break>. :\: %1.00;0.90% {1: 2} + OUT: <(*,{t001}) --> ^break>. :|: %1.00;0.90% {1 : 1 : 2} diff --git a/nars-dist/Examples/Example-NAL8-4-abridged.txt b/nars-dist/Examples/Example-NAL8-4-abridged.txt index 1fddf796..ed6b8849 100644 --- a/nars-dist/Examples/Example-NAL8-4-abridged.txt +++ b/nars-dist/Examples/Example-NAL8-4-abridged.txt @@ -7,60 +7,58 @@ IN: <(*,Self,key001) --> reachable>. :|: IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. 1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {2: 2;1} + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% ********** [05 + 01 -> 06]: IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: IN: <(*,Self,key001) --> hold>! -2 - OUT: <(*,key001) --> ^pick>! %1.00;0.81% {2: 2;1} +3 + OUT: <(*,key001) --> ^pick>! %1.00;0.81% ********** [06 -> 07]: IN: <(*,key001) --> ^pick>! 1 - OUT: <(*,key001) --> ^pick>. :\: %1.00;0.90% {1: 2} + OUT: <(*,key001) --> ^pick>. :|: %1.00;0.90% ********** [07 + 05 -> 08]: IN: <(*,key001) --> ^pick>. :\: IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. 1 - OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {2: 2;1} + OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.81% -********** [02 + 08 -> 09]: - IN: <(*,Self,key001) --> hold>. :|: %0% -1 +*** [9] <(*, Self, key001) --> hold>. + +********** [08 + 9 -> 10]: IN: <(*,Self,key001) --> hold>. :|: %1.00;0.81% 1 - OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% {2: 2;1} - IN: <(*,Self,key001) --> hold>? :|: + IN: <(*,Self,key001) --> hold>. :|: 1 - OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {1: 2} - -*** [10] <(*, Self, key001) --> hold>. + OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.91% -********** [08 + 10 -> 11]: - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.81% - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% -1 - OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.92% {2: 2;1} +********** [02 + 10 -> 11]: + IN: <(*,Self,key001) --> hold>. :|: %0% +5 + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.91% +5 + IN: <(*,Self,key001) --> hold>? :|: +2 + OUT: <(*,Self,key001) --> hold>. :\: %0.92;0.92% ********** [07 + 11 -> 12]: - IN: <(*,key001) --> ^pick>. :\: %1.00;0.90% - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% + IN: <(*,key001) --> ^pick>. :\: + IN: <(*,Self,key001) --> hold>. :|: 1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 1;2} + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% ********** [05 + 12 -> 13]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% -1 - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.90% + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% 1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.0000;0.9076% {2: 1;2} + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.91% ********** [04 + 13 -> 14]: IN: <(*,Self,key001) --> reachable>. :|: 1 IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.91% 1 - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 1;2} - + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% diff --git a/nars-dist/Examples/Example-NAL8-4-complete.txt b/nars-dist/Examples/Example-NAL8-4-complete.txt index 177e5964..7bf70001 100644 --- a/nars-dist/Examples/Example-NAL8-4-complete.txt +++ b/nars-dist/Examples/Example-NAL8-4-complete.txt @@ -3,122 +3,150 @@ *** [03] <(&/, <(*, Self, key001) --> reachable>, (^pick, key001)) =/> <(*, Self, key001) --> hold>>. *** [04] <(*, Self, key001) --> reachable>. :|: ********** [04 + 03 -> 05]: - IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {1: 1} + IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0 : 0 : 1} - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {1: 2} + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0 : 2} 1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {2: 1;2} + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% {1 : 0 : 2;1} ********** [05 + 01 -> 06]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% {1: 1} + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% {0 : 0 : 1} - IN: <(*,Self,key001) --> hold>! %1.00;0.90% {1: 2} + IN: <(*,Self,key001) --> hold>! %1.00;0.90% {0 : 2} 1 - OUT: (/,hold,_,key001)>! %1.00;0.90% {1: 2} + OUT: <(*,Self,key001) --> hold>? :|: {1 : 1 : 3} + + OUT: (/,hold,_,key001)>! %1.00;0.90% {1 : 2} + +1 + + OUT: (/,hold,_,key001)>? :|: {2 : 2 : 4} 1 - OUT: <(*,key001) --> ^pick>! %1.00;0.81% {2: 2;1} + OUT: <(*,key001) --> ^pick>! %1.00;0.81% {3 : 1;2} ********** [06 -> 07]: - IN: <(*,key001) --> ^pick>! %1.00;0.90% {1: 1} + IN: <(*,key001) --> ^pick>! %1.00;0.90% {0 : 1} 1 - OUT: <(*,key001) --> ^pick>. :\: %1.00;0.90% {1: 2} + OUT: <(*,key001) --> ^pick>. :|: %1.00;0.90% {1 : 1 : 2} ********** [07 + 05 -> 08]: - IN: <(*,key001) --> ^pick>. :\: %1.00;0.90% {1: 1} + IN: <(*,key001) --> ^pick>. :\: %1.00;0.90% {0 : -1 : 1} + + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0 : 2} + +1 - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {1: 2} + OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.81% {1 : 0 : 2;1} + +*** [9] <(*, Self, key001) --> hold>. +********** [08 + 9 -> 10]: + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {0 : 0 : 1} 1 - OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {2: 1;2} + OUT: (/,hold,_,key001)>. :\: %1.00;0.81% {1 : 0 : 1} -********** [02 + 08 -> 09]: - IN: <(*,Self,key001) --> hold>. :|: %0.00;0.90% {1: 1} + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1 : 1 : 2} 1 - OUT: (/,hold,_,key001)>. :|: %0.00;0.90% {1: 1} + OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.91% {2 : 1 : 1;2} - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {1: 2} +********** [02 + 10 -> 11]: + IN: <(*,Self,key001) --> hold>. :|: %0.00;0.90% {0 : 0 : 1} 1 - OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% {2: 2;1} + OUT: (/,hold,_,key001)>. :\: %0.00;0.90% {1 : 0 : 1} - OUT: <<(*,Self,key001) --> hold> =\> (/,hold,_,key001)>>. :|: %0.00;0.42% {2: 2;1} +1 - OUT: < (/,hold,_,key001)> <(*,Self,key001) --> hold>>. :|: %0.00;0.42% {2: 2;1} + OUT: (/,hold,Self,_)>. :\: %0.00;0.90% {2 : 0 : 1} - OUT: (/,hold,_,key001)>. :|: %1.00;0.81% {1: 2} +3 - IN: <(*,Self,key001) --> hold>? :|: {1: 3} + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.91% {5 : 5 : 2} 1 - OUT: (/,hold,_,key001)>. :\: %0.00;0.90% {2: 2;1} + OUT: <(*,Self,key001) --> hold>. :\: %0.92;0.92% {6 : 5 : 1;2} - OUT: < (/,hold,_,key001)> =\> <(*,Self,key001) --> hold>>. :|: %0.00;0.42% {2: 1;2} +1 - OUT: <<(*,Self,key001) --> hold> (/,hold,_,key001)>>. :|: %0.00;0.42% {2: 1;2} + OUT: (/,hold,_,key001)>. :\: %1.00;0.91% {7 : 5 : 2} - OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {1: 2} +1 -*** [10] <(*, Self, key001) --> hold>. -********** [08 + 10 -> 11]: - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {1: 1} + OUT: (/,hold,_,key001)>. :\: %0.92;0.92% {8 : 5 : 1;2} - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1: 2} + OUT: < (/,hold,_,key001)> =\> <(*,Self,key001) --> hold>>. :\: %0.00;0.45% {8 : 5 : 1;2} + + OUT: <<(*,Self,key001) --> hold> (/,hold,_,key001)>>. :\: %0.00;0.45% {8 : 5 : 1;2} + + OUT: (/,hold,Self,_)>. :\: %1.00;0.91% {8 : 5 : 2} 1 - OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.92% {2: 2;1} + OUT: (/,hold,Self,_)>. :\: %0.91;0.92% {9 : 5 : 1;2} -********** [07 + 11 -> 12]: - IN: <(*,key001) --> ^pick>. :\: %1.00;0.90% {1: 1} +1 - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1: 2} + IN: <(*,Self,key001) --> hold>? :|: {10 : 10 : 3} 1 - OUT: <<(*,Self,key001) --> hold> =\> <(*,key001) --> ^pick>>. :|: %1.00;0.44% {2: 1;2} + OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.91% {5 : 5 : 2} + + OUT: <(*,Self,key001) --> hold>. :\: %0.92;0.92% {6 : 5 : 1;2} - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.44% {2: 1;2} +1 - OUT: <<(*,key001) --> ^pick> <(*,Self,key001) --> hold>>. :|: %1.00;0.44% {2: 1;2} + OUT: <(*,Self,key001) --> hold>. :\: %0.92;0.92% {12 : 5 : 1;2} -********** [05 + 12 -> 13]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% {1: 1} + OUT: <<(*,Self,key001) --> hold> =\> (/,hold,Self,_)>>. :\: %0.00;0.45% {12 : 5 : 1;2} + + OUT: < (/,hold,Self,_)> <(*,Self,key001) --> hold>>. :\: %0.00;0.45% {12 : 5 : 1;2} + +********** [07 + 11 -> 12]: + IN: <(*,key001) --> ^pick>. :\: %1.00;0.90% {0 : -1 : 1} + + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {0 : 0 : 2} 1 - OUT: < (/,^pick,_)> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% {1: 1} + OUT: <<(*,Self,key001) --> hold> =\> <(*,key001) --> ^pick>>. :\: %1.00;0.45% {1 : 0 : 1;2} + + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {1 : 0 : 1;2} + + OUT: <<(*,key001) --> ^pick> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {1 : 0 : 1;2} - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {1: 2} +********** [05 + 12 -> 13]: + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.90% {0 : -1 : 1} + + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {0 : -1 : 2} 1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% {2: 2;1} + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.91% {1 : -1 : 1;2} ********** [04 + 13 -> 14]: - IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {1: 1} + IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0 : 0 : 1} 1 - OUT: (/,reachable,_,key001)>. :|: %1.00;0.90% {1: 1} + OUT: (/,reachable,_,key001)>. :\: %1.00;0.90% {1 : 0 : 1} - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.91% {1: 2} + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.91% {1 : 1 : 2} 1 - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 1;2} - - OUT: <(&/, (/,reachable,_,key001)>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 2;1} + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {2 : 1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL8-5-abridged.txt b/nars-dist/Examples/Example-NAL8-5-abridged.txt index 3d29e324..5e406143 100644 --- a/nars-dist/Examples/Example-NAL8-5-abridged.txt +++ b/nars-dist/Examples/Example-NAL8-5-abridged.txt @@ -8,16 +8,12 @@ IN: <(*,Self,key001) --> reachable>. :|: 1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% ********** [05 + 01 -> 06]: IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% IN: <(*,Self,key001) --> hold>! -1 - - OUT: <(*,Self,key001) --> hold>? :|: -2 - +3 OUT: <(*,key001) --> ^pick>! %1.00;0.73% ********** [06 -> 07]: @@ -33,27 +29,6 @@ OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.73% -********** [02 + 08 -> 08]: - IN: (--,<(*,Self,key001) --> hold>). :|: -1 - - OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% -1 - - IN: <(*,Self,key001) --> hold>? :|: -1 - - OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% -1 - - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.73% -2 - - IN: <(*,Self,key001) --> hold>? :|: -1 - - OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.73% - *** [09] <(*, Self, key001) --> hold>. ********** [08 + 09 -> 10]: @@ -63,8 +38,7 @@ IN: <(*,Self,key001) --> hold>. :|: 1 - OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.92% - + OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.91% ********** [07 + 09 -> 11]: IN: <(*,key001) --> ^pick>. :|: @@ -73,7 +47,7 @@ IN: <(*,Self,key001) --> hold>. :|: 1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% ********** [05 + 11 -> 12]: IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% @@ -83,7 +57,7 @@ IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% 1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.84% + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.62% ********** [04 + 12 -> 13]: IN: <(*,Self,key001) --> reachable>. :|: @@ -92,8 +66,7 @@ IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.84% 1 - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.43% - + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.43% ********** [03 + 13 -> 14]: IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. @@ -103,4 +76,4 @@ 1 - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.91% + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.91% \ No newline at end of file diff --git a/nars-dist/Examples/Example-NAL8-5-complete.txt b/nars-dist/Examples/Example-NAL8-5-complete.txt index a5451bd7..c893f53a 100644 --- a/nars-dist/Examples/Example-NAL8-5-complete.txt +++ b/nars-dist/Examples/Example-NAL8-5-complete.txt @@ -3,145 +3,114 @@ *** [03] <(&/, <(*, Self, key001) --> reachable>, (^pick, key001)) =/> <(*, Self, key001) --> hold>>. *** [04] <(*, Self, key001) --> reachable>. :|: ********** [03 + 04 -> 05]: - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0: 1} + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0 : 1} - IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0: 2} + IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0 : 0 : 2} 1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {1: 2;1} + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% {1 : 0 : 1;2} ********** [05 + 01 -> 06]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0: 1} + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0 : 0 : 1} - IN: <(*,Self,key001) --> hold>! %1.00;0.90% {0: 2} + IN: <(*,Self,key001) --> hold>! %1.00;0.90% {0 : 2} 1 - OUT: <(*,Self,key001) --> hold>? :|: {1: 3} + OUT: <(*,Self,key001) --> hold>? :|: {1 : 1 : 3} - OUT: (/,hold,_,key001)>! %1.00;0.90% {0: 2} + OUT: (/,hold,_,key001)>! %1.00;0.90% {1 : 2} 1 - OUT: (/,hold,_,key001)>? :|: {2: 4} + OUT: (/,hold,_,key001)>? :|: {2 : 2 : 4} 1 - OUT: <(*,key001) --> ^pick>! %1.00;0.73% {3: 2;1} + OUT: <(*,key001) --> ^pick>! %1.00;0.73% {3 : 1;2} ********** [06 -> 07]: - IN: <(*,key001) --> ^pick>! %1.00;0.73% {0: 1} + IN: <(*,key001) --> ^pick>! %1.00;0.73% {0 : 1} 1 - OUT: <(*,key001) --> ^pick>. :|: %1.00;0.90% {1: 2} + OUT: <(*,key001) --> ^pick>. :|: %1.00;0.90% {1 : 1 : 2} ********** [07 + 05 -> 08]: - IN: <(*,key001) --> ^pick>. :|: %1.00;0.90% {0: 1} + IN: <(*,key001) --> ^pick>. :|: %1.00;0.90% {0 : 0 : 1} - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0: 2} + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0 : 0 : 2} 1 - OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.73% {1: 1;2} - -********** [02 + 08 -> 08]: - IN: (--,<(*,Self,key001) --> hold>). :|: %1.00;0.90% {0: 1} - -1 - - OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% {0: 1} - -1 - - OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% {0: 1} - - IN: <(*,Self,key001) --> hold>? :|: {2: 2} - -1 - - OUT: <(*,Self,key001) --> hold>. :\: %0.00;0.90% {0: 1} - -1 - - OUT: (--,<(*,Self,key001) --> hold>)? :\: {2: 2} - - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.73% {4: 3} - -2 - - IN: <(*,Self,key001) --> hold>? :|: {6: 4} - -1 - - OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.73% {4: 3} + OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.73% {1 : 1 : 2;1} *** [09] <(*, Self, key001) --> hold>. ********** [08 + 09 -> 10]: - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.73% {0: 1} + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.73% {0 : 0 : 1} 1 - OUT: (/,hold,_,key001)>. :\: %1.00;0.73% {0: 1} + OUT: (/,hold,_,key001)>. :\: %1.00;0.73% {1 : 0 : 1} - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1: 2} + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1 : 1 : 2} 1 - OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.92% {2: 1;2} + OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.91% {2 : 1 : 1;2} ********** [07 + 09 -> 11]: - IN: <(*,key001) --> ^pick>. :|: %1.00;0.90% {0: 1} + IN: <(*,key001) --> ^pick>. :|: %1.00;0.90% {0 : 0 : 1} 1 - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1: 2} + IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1 : 1 : 2} 1 - OUT: <<(*,Self,key001) --> hold> =\> <(*,key001) --> ^pick>>. :|: %1.00;0.45% {2: 1;2} + OUT: <<(*,Self,key001) --> hold> =\> <(*,key001) --> ^pick>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 1;2} + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: <<(*,key001) --> ^pick> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {2: 1;2} + OUT: <<(*,key001) --> ^pick> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: (/,^pick,_)>. :\: %1.00;0.90% {0: 1} + OUT: (/,^pick,_)>. :\: %1.00;0.90% {2 : 0 : 1} ********** [05 + 11 -> 12]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0: 1} + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0 : 0 : 1} 1 - OUT: < (/,^pick,_)> ==> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% {0: 1} + OUT: < (/,^pick,_)> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% {1 : 0 : 1} - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {1: 2} + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {1 : 1 : 2} 1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.84% {2: 1;2} + OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.62% {2 : 1 : 1;2} ********** [04 + 12 -> 13]: - IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0: 1} + IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0 : 0 : 1} 1 - OUT: (/,reachable,_,key001)>. :\: %1.00;0.90% {0: 1} + OUT: (/,reachable,_,key001)>. :\: %1.00;0.90% {1 : 0 : 1} - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.84% {1: 2} + IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.84% {1 : 1 : 2} 1 - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.43% {2: 1;2} + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.43% {2 : 1 : 1;2} ********** [03 + 13 -> 14]: - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0: 1} + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0 : 1} 1 - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.43% {1: 2} + IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.43% {1 : 1 : 2} 1 - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.91% {2: 2;1} + OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.91% {2 : 1 : 1;2} diff --git a/nars-dist/javadoc/allclasses-frame.html b/nars-dist/javadoc/allclasses-frame.html index b90ca19a..8c029464 100644 --- a/nars-dist/javadoc/allclasses-frame.html +++ b/nars-dist/javadoc/allclasses-frame.html @@ -2,13 +2,13 @@ - + All Classes (NARS Document) - + @@ -152,10 +152,6 @@
    TaskLinkBag
    -TemporalRules -
    -TemporalValue -
    Term
    TermLink diff --git a/nars-dist/javadoc/allclasses-noframe.html b/nars-dist/javadoc/allclasses-noframe.html index b64daa8d..cc28a1fd 100644 --- a/nars-dist/javadoc/allclasses-noframe.html +++ b/nars-dist/javadoc/allclasses-noframe.html @@ -2,13 +2,13 @@ - + All Classes (NARS Document) - + @@ -152,10 +152,6 @@
    TaskLinkBag
    -TemporalRules -
    -TemporalValue -
    Term
    TermLink diff --git a/nars-dist/javadoc/constant-values.html b/nars-dist/javadoc/constant-values.html index 79a1b8b8..8dd65292 100644 --- a/nars-dist/javadoc/constant-values.html +++ b/nars-dist/javadoc/constant-values.html @@ -2,13 +2,13 @@ - + Constant Field Values (NARS Document) - + @@ -88,6 +88,7 @@

    Contents


  • @@ -276,30 +319,13 @@


    -

    -solutionQuality

    +

    +setTruth

    -public float solutionQuality(Sentence problem)
    +public void setTruth(TruthValue v)
    -
    Evaluate the quality of the judgment as a solution to a problem -

    -
    Parameters:
    problem - A goal or question -
    Returns:
    The quality of the judgment as the solution
    -
    -
    - -

    -isFuture

    -
    -public boolean isFuture()
    -
    -
    Check if the judgment predict a future event -

    -

    - -
    Returns:
    Whether the judgment has a future sense
    @@ -354,9 +380,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/entity/Question.html b/nars-dist/javadoc/nars/entity/Question.html index aeb2434b..13102072 100644 --- a/nars-dist/javadoc/nars/entity/Question.html +++ b/nars-dist/javadoc/nars/entity/Question.html @@ -2,13 +2,13 @@ - + Question (NARS Document) - + @@ -128,7 +128,7 @@

    Fields inherited from class nars.entity.Sentence -bestSolution, content, input, punctuation, stamp, temporalOrder, truth +bestSolution, content, input, punctuation, stamp, truth   @@ -144,7 +144,7 @@

    Question(Goal g)
    -          Construct a Judgment to indicate an operation just executed +          Construct a question to check whether a goal has been achieved Question(Term term, @@ -152,7 +152,7 @@

    Stamp s)
    -          COnstructor +          Constructor   @@ -171,7 +171,7 @@

    Methods inherited from class nars.entity.Sentence -clone, cloneContent, getBestSolution, getContent, getCreationTime, getEventTime, getStamp, getTense, getTruth, isInput, isJudgment, make, make, noOverlapping, setBestSolution, setContent, setInput, tenseToString, toKey, toString, toString2 +clone, cloneContent, getBestSolution, getContent, getCreationTime, getEventTime, getStamp, getTruth, isInput, isJudgment, isTemporal, make, make, noOverlapping, setBestSolution, setContent, setInput, toKey, toString, toString2   @@ -203,7 +203,7 @@

    char punc, Stamp s)
    -
    COnstructor +
    Constructor

    Parameters:
    term - The content
    punc - The punctuation
    s - The stamp
    @@ -215,10 +215,10 @@

     public Question(Goal g)
    -
    Construct a Judgment to indicate an operation just executed +
    Construct a question to check whether a goal has been achieved

    -
    Parameters:
    g - The goal that trigger the execution
    +
    Parameters:
    g - The goal that trigger the question


    diff --git a/nars-dist/javadoc/nars/entity/Sentence.html b/nars-dist/javadoc/nars/entity/Sentence.html index 83a18c4e..37c058b2 100644 --- a/nars-dist/javadoc/nars/entity/Sentence.html +++ b/nars-dist/javadoc/nars/entity/Sentence.html @@ -2,13 +2,13 @@ - + Sentence (NARS Document) - + @@ -167,14 +167,6 @@

    -protected  TemporalValue -temporalOrder - -
    -          Temporal order between the components - - - protected  TruthValue truth @@ -265,14 +257,6 @@

    - TemporalValue -getTense() - -
    -          Get the tense of the Sentence - - -  TruthValue getTruth() @@ -297,12 +281,21 @@

    + boolean +isTemporal() + +
    +            + + + static Sentence -make(Sentence oldS, +make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, - TemporalValue tense) + Sentence premise1, + Sentence premise2)
              Make a derived Sentence from a template and some initial values. @@ -310,11 +303,12 @@

    static Sentence -make(Term term, +make(Term term, char punc, TruthValue truth, Stamp stamp, - TemporalValue tense) + Sentence premise1, + Sentence premise2)
              Make a Sentence from an input String. @@ -333,7 +327,7 @@

    setBestSolution(Judgment judg)
    -          Set the best-so-far solution for a Question or Goal +          Set the best-so-far solution for a Question or Goal, and report answer for input question @@ -353,7 +347,7 @@

    - java.lang.String +private  java.lang.String tenseToString()
    @@ -477,18 +471,6 @@

    -
    - -

    -temporalOrder

    -
    -protected TemporalValue temporalOrder
    -
    -
    Temporal order between the components -

    -

    -
    -
    @@ -517,14 +499,15 @@

    -

    +

    make

     public static Sentence make(Term term,
                                 char punc,
                                 TruthValue truth,
                                 Stamp stamp,
    -                            TemporalValue tense)
    + Sentence premise1, + Sentence premise2)
    Make a Sentence from an input String. Called by StringParser.

    @@ -532,20 +515,21 @@

    -
    Parameters:
    term - The content of the sentence
    punc - The puncuation (and therefore, type) of the sentence
    tense - The tense of the sntense
    truth - The truth value of the sentence, if it is a Judgment (or Goal)
    stamp - The stamp of the truth value (for Judgment or Goal) +
    Parameters:
    term - The content of the sentence
    punc - The puncuation (and therefore, type) of the sentence
    truth - The truth value of the sentence, if it is a Judgment (or Goal)
    stamp - The stamp of the truth value (for Judgment or Goal)
    premise1 - The first premise to record in the new Judgment. May be null.
    premise2 - The second premise to record in the new Judgment. May be null.
    Returns:
    the Sentence generated from the arguments

    -

    +

    make

     public static Sentence make(Sentence oldS,
                                 Term term,
                                 TruthValue truth,
                                 Stamp stamp,
    -                            TemporalValue tense)
    + Sentence premise1, + Sentence premise2)
    Make a derived Sentence from a template and some initial values. Called by Memory.

    @@ -553,7 +537,7 @@

    -
    Parameters:
    term - The content of the sentence
    oldS - A sample sentence providing the type of the new sentence
    tense - The tense of the sentence
    truth - The truth value of the sentence, if it is a Judgment (or Goal)
    stamp - The stamp of the truth value (for Judgment or Goal) +
    Parameters:
    oldS - A sample sentence providing the type of the new sentence
    term - The content of the sentence
    truth - The truth value of the sentence, if it is a Judgment (or Goal)
    stamp - The stamp of the truth value (for Judgment or Goal)
    premise1 - The first premise to record in the new Judgment. May be null.
    premise2 - The second premise to record in the new Judgment. May be null.
    Returns:
    the Sentence generated from the arguments
    @@ -626,23 +610,6 @@


    -

    -getTense

    -
    -public TemporalValue getTense()
    -
    -
    Get the tense of the Sentence -

    -

    -
    -
    -
    - -
    Returns:
    The tense of the Sentence
    -
    -
    -
    -

    getTruth

    @@ -749,7 +716,7 @@ 

     public void setBestSolution(Judgment judg)
    -
    Set the best-so-far solution for a Question or Goal +
    Set the best-so-far solution for a Question or Goal, and report answer for input question

    @@ -832,7 +799,7 @@

    tenseToString

    -public java.lang.String tenseToString()
    +private java.lang.String tenseToString()

    Get a String representation of the tense of the sentence

    @@ -878,6 +845,20 @@

    Returns:
    The occurrence time of the event

    +
    + +

    +isTemporal

    +
    +public boolean isTemporal()
    +
    +
    +
    +
    +
    +
    +
    +

    diff --git a/nars-dist/javadoc/nars/entity/ShortFloat.html b/nars-dist/javadoc/nars/entity/ShortFloat.html index a1956703..53a04661 100644 --- a/nars-dist/javadoc/nars/entity/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/ShortFloat.html @@ -2,13 +2,13 @@ - + ShortFloat (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Stamp.html b/nars-dist/javadoc/nars/entity/Stamp.html index ab9a4dda..dcaac701 100644 --- a/nars-dist/javadoc/nars/entity/Stamp.html +++ b/nars-dist/javadoc/nars/entity/Stamp.html @@ -2,13 +2,13 @@ - + Stamp (NARS Document) - + @@ -105,9 +105,12 @@

    -Each Sentence has a get of serial numbers of a constant length attached. - The input sentence gets a unique number. - The derived sentences inherits from its parents, then cut at the length limit. +Each Sentence has a time stamp, consisting the following components: + (1) The creation time of the sentence, + (2) The time when the truth-value is supported, + (3) A trail of serial numbers of sentence, from which the sentence is derived. + Each input sentence gets a unique serial number. + The derived sentences inherits serial numbers from its parents, cut at the length limit.

    @@ -124,6 +127,14 @@

    +static long +ALWAYS + +
    +          special value, for time-independent truth-values + + + private  long creationTime @@ -140,16 +151,24 @@

    +private  long +eventTime + +
    +          creation time of the stamp + + + private  int length
    -          current stamp length +          trail length private  long[] -list +trail
              serial numbers @@ -170,18 +189,44 @@

    Stamp()
    -          Generate a new stamp, with a new serial number, for input sentence +          Generate a new stamp, with a new serial number, for new sentence without tense + + + +  +Stamp(long time, + boolean relative) + +
    +          Generate a new stamp, with a new serial number, for new sentence with numeric tense + + + +  +Stamp(Stamp old) + +
    +          Generate a new stamp from an existing one, with the same trail but different creation time private -Stamp(Stamp first, - Stamp second) +Stamp(Stamp first, + Stamp second, + long time)
              Generate a new stamp for derived sentence by merging the two from parents the first one is no shorter than the second + + +  +Stamp(java.lang.String tense) + +
    +          Generate a new stamp, with a new serial number, for input sentence with symbolic tense +   @@ -194,11 +239,19 @@

    + void +adjustEventTime(int d) + +
    +          Adjust the eventTime of the truth-value + + +  boolean equals(java.lang.Object that)
    -          Check if two stamps contains the same set of numbers +          Check if two stamps contains the same content @@ -206,7 +259,7 @@

    get(int i)
    -          Get a number from the list by index, called in this class only +          Get a number from the trail by index, called in this class only @@ -218,6 +271,22 @@

    + long +getEventTime() + +
    +          Get the eventTime of the truth-value + + + +(package private)  long[] +getList() + +
    +          Get the trail, called in this class only + + +  int hashCode() @@ -238,7 +307,7 @@

    length()
    -          Return the length of the list +          Return the length of the trail @@ -251,19 +320,11 @@

    - TemporalValue -orderWith(Stamp that) - -
    -          Compare two Stamps for their temporal order - - - (package private)  java.util.TreeSet<java.lang.Long> toSet()
    -          Convert the list into a set +          Convert the trail into a set @@ -308,10 +369,22 @@


    -

    -list

    +

    +ALWAYS

    +
    +public static final long ALWAYS
    +
    +
    special value, for time-independent truth-values +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +trail

    -private long[] list
    +private long[] trail
    serial numbers

    @@ -325,7 +398,7 @@

     private int length
    -
    current stamp length +
    trail length

    @@ -335,7 +408,19 @@

    creationTime

    -private final long creationTime
    +private long creationTime +
    +
    creation time of the stamp +

    +

    +
    +
    +
    + +

    +eventTime

    +
    +private long eventTime
    creation time of the stamp

    @@ -358,16 +443,56 @@

     public Stamp()
    -
    Generate a new stamp, with a new serial number, for input sentence +
    Generate a new stamp, with a new serial number, for new sentence without tense +

    +

    +
    + +

    +Stamp

    +
    +public Stamp(long time,
    +             boolean relative)
    +
    +
    Generate a new stamp, with a new serial number, for new sentence with numeric tense +

    +

    +
    Parameters:
    time - The time of the event
    relative - Whether the time is absolute or relative
    +
    +
    + +

    +Stamp

    +
    +public Stamp(java.lang.String tense)
    +
    +
    Generate a new stamp, with a new serial number, for input sentence with symbolic tense +

    +

    +
    Parameters:
    tense - The String representing input tense
    +
    +
    + +

    +Stamp

    +
    +public Stamp(Stamp old)
    +
    +
    Generate a new stamp from an existing one, with the same trail but different creation time +

    + For single-premise rules

    +

    +
    Parameters:
    old - The stamp of the single premise

    -

    +

    Stamp

     private Stamp(Stamp first,
    -              Stamp second)
    + Stamp second, + long time)
    Generate a new stamp for derived sentence by merging the two from parents the first one is no shorter than the second @@ -392,7 +517,9 @@

    public static Stamp make(Stamp first, Stamp second)
    -
    Try to merge two Stamps, return null if have overlap +
    Try to merge two Stamps, return null if have overlap +

    + By default, the event time of the first stamp is used in the result

    @@ -425,7 +552,7 @@

     public int length()
    -
    Return the length of the list +
    Return the length of the trail

    @@ -442,7 +569,7 @@

     long get(int i)
    -
    Get a number from the list by index, called in this class only +
    Get a number from the trail by index, called in this class only

    @@ -454,12 +581,29 @@


    +

    +getList

    +
    +long[] getList()
    +
    +
    Get the trail, called in this class only +

    +

    +
    +
    +
    + +
    Returns:
    The trail of numbers
    +
    +
    +
    +

    toSet

     java.util.TreeSet<java.lang.Long> toSet()
    -
    Convert the list into a set +
    Convert the trail into a set

    @@ -475,7 +619,7 @@

     public boolean equals(java.lang.Object that)
    -
    Check if two stamps contains the same set of numbers +
    Check if two stamps contains the same content

    Overrides:
    equals in class java.lang.Object
    @@ -521,19 +665,35 @@


    -

    -orderWith

    +

    +getEventTime

    -public TemporalValue orderWith(Stamp that)
    +public long getEventTime()
    -
    Compare two Stamps for their temporal order +
    Get the eventTime of the truth-value

    -
    Parameters:
    that - The Stamp to be compared -
    Returns:
    The temporal order
    + +
    Returns:
    The event time
    +
    +
    +
    + +

    +adjustEventTime

    +
    +public void adjustEventTime(int d)
    +
    +
    Adjust the eventTime of the truth-value +

    +

    +
    +
    +
    +
    Parameters:
    d - The direction and extent of the change

    diff --git a/nars-dist/javadoc/nars/entity/Task.html b/nars-dist/javadoc/nars/entity/Task.html index aa1016b4..5c8b650d 100644 --- a/nars-dist/javadoc/nars/entity/Task.html +++ b/nars-dist/javadoc/nars/entity/Task.html @@ -2,13 +2,13 @@ - + Task (NARS Document) - + @@ -133,10 +133,10 @@

    protected  boolean -structual +structural
    -          Whether it is derived by a structual rule +          Whether it is derived by a structural rule   @@ -201,16 +201,8 @@

    - TemporalValue -getTense() - -
    -          Directly get the tense of the sentence - - -  boolean -isStructual() +isStructural()
              Check if a Task is derived by a StructuralRule @@ -226,7 +218,7 @@

     void -setStructual() +setStructural()
              Record if a Task is derived by a StructuralRule @@ -300,12 +292,12 @@


    -

    -structual

    +

    +structural

    -protected boolean structual
    +protected boolean structural
    -
    Whether it is derived by a structual rule +
    Whether it is derived by a structural rule

    @@ -371,24 +363,10 @@


    -

    -getTense

    -
    -public TemporalValue getTense()
    -
    -
    Directly get the tense of the sentence -

    -

    - -
    Returns:
    The tense of the sentence
    -
    -
    -
    - -

    -isStructual

    +

    +isStructural

    -public boolean isStructual()
    +public boolean isStructural()
    Check if a Task is derived by a StructuralRule

    @@ -399,10 +377,10 @@


    -

    -setStructual

    +

    +setStructural

    -public void setStructual()
    +public void setStructural()
    Record if a Task is derived by a StructuralRule

    diff --git a/nars-dist/javadoc/nars/entity/TaskLink.html b/nars-dist/javadoc/nars/entity/TaskLink.html index 1a4b10f3..3abae9c8 100644 --- a/nars-dist/javadoc/nars/entity/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/TaskLink.html @@ -2,13 +2,13 @@ - + TaskLink (NARS Document) - + @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -426,7 +426,7 @@

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/entity/TermLink.html b/nars-dist/javadoc/nars/entity/TermLink.html index 272d9fee..29c490d8 100644 --- a/nars-dist/javadoc/nars/entity/TermLink.html +++ b/nars-dist/javadoc/nars/entity/TermLink.html @@ -2,13 +2,13 @@ - + TermLink (NARS Document) - + @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -729,7 +729,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/entity/TruthValue.html b/nars-dist/javadoc/nars/entity/TruthValue.html index 0b926a82..342d1ba7 100644 --- a/nars-dist/javadoc/nars/entity/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/TruthValue.html @@ -2,13 +2,13 @@ - + TruthValue (NARS Document) - + @@ -119,7 +119,7 @@

    -protected  ShortFloat +private  ShortFloat confidence
    @@ -135,7 +135,7 @@

    -protected  ShortFloat +private  ShortFloat frequency
    @@ -296,7 +296,7 @@

    frequency

    -protected ShortFloat frequency
    +private ShortFloat frequency
    The frequency factor of the truth value

    @@ -308,7 +308,7 @@

    confidence

    -protected ShortFloat confidence
    +private ShortFloat confidence
    The confidence factor of the truth value

    diff --git a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html index db51fbae..f524451e 100644 --- a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.BudgetValue (NARS Document) - + @@ -341,10 +341,9 @@

    (package private) static BudgetValue -BudgetFunctions.revise(TruthValue tTruth, +BudgetFunctions.revise(TruthValue tTruth, TruthValue bTruth, TruthValue truth, - Task task, boolean feedbackToLinks)
    @@ -510,9 +509,11 @@

    static void -Memory.doublePremiseTask(BudgetValue budget, +Memory.doublePremiseTask(BudgetValue budget, Term content, - TruthValue truth) + TruthValue truth, + Sentence premise1, + Sentence premise2)
              Shared final operations by all double-premise rules, called from the rules except StructuralRules @@ -520,9 +521,22 @@

    static void -Memory.singlePremiseTask(BudgetValue budget, +Memory.revisionTask(BudgetValue budget, + Term content, + TruthValue truth, + Sentence premise1, + Sentence premise2) + +
    +          The final operations of the revision rules, called from MatchingRules + + + +static void +Memory.singlePremiseTask(BudgetValue budget, Term content, - TruthValue truth) + TruthValue truth, + Sentence premise)

              Shared final operations by all single-premise rules, called in StructuralRules diff --git a/nars-dist/javadoc/nars/entity/class-use/Concept.html b/nars-dist/javadoc/nars/entity/class-use/Concept.html index 242c6197..90043ab6 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Concept.html +++ b/nars-dist/javadoc/nars/entity/class-use/Concept.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Concept (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Goal.html b/nars-dist/javadoc/nars/entity/class-use/Goal.html index 47e99795..f7541bc8 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Goal.html +++ b/nars-dist/javadoc/nars/entity/class-use/Goal.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Goal (NARS Document) - + @@ -114,7 +114,7 @@

    private  java.util.ArrayList<Goal> -Concept.pendingGoals +Concept.goals
              Goals directly requested on the term @@ -154,7 +154,7 @@

    Question(Goal g)
    -          Construct a Judgment to indicate an operation just executed +          Construct a question to check whether a goal has been achieved   diff --git a/nars-dist/javadoc/nars/entity/class-use/Item.html b/nars-dist/javadoc/nars/entity/class-use/Item.html index 94332a33..ba4157ba 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Item.html +++ b/nars-dist/javadoc/nars/entity/class-use/Item.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Item (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Judgment.html b/nars-dist/javadoc/nars/entity/class-use/Judgment.html index 2adb8b36..d3300967 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Judgment.html +++ b/nars-dist/javadoc/nars/entity/class-use/Judgment.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Judgment (NARS Document) - + @@ -137,19 +137,27 @@

    -protected  Judgment -Sentence.bestSolution + Judgment +Judgment._premise1
    -          For Question and Goal: best solution found so far +            + + + + Judgment +Judgment._premise2 + +
    +            -private  Judgment -Concept.presentBelief +protected  Judgment +Sentence.bestSolution
    -          Most recent and confidence judgment +          For Question and Goal: best solution found so far   @@ -162,19 +170,11 @@

    private  java.util.ArrayList<Judgment> -Concept.pastRecords +Concept.beliefs
              Judgments directly made about the term, with non-future tense - - -private  java.util.ArrayList<Judgment> -Concept.predictions - -
    -          Judgments directly made about the term, with future tense -  

    @@ -238,8 +238,7 @@

    private  boolean -Concept.reviseTable(Judgment newSentence, - Task task, +Concept.reviseTable(Judgment judg, java.util.ArrayList table)
    @@ -251,15 +250,7 @@

    Sentence.setBestSolution(Judgment judg)
    -          Set the best-so-far solution for a Question or Goal - - - -private  void -Concept.tryUpdate(Judgment judg) - -
    -          To temporalRevision the presentBelief +          Set the best-so-far solution for a Question or Goal, and report answer for input question   @@ -302,16 +293,6 @@

    -private static boolean -MatchingRules.betterSolution(Judgment newSol, - Judgment oldSol, - Sentence problem) - -
    -          Compare the quality of two solutions - - - (package private) static void CompositionalRules.composeCompound(Sentence taskSentence, Judgment belief, @@ -334,9 +315,9 @@

    private static void -MatchingRules.inferToAsym(Judgment asym, +MatchingRules.inferToAsym(Judgment asym, Judgment sym, - TemporalValue order) + int order)
              { P>,

    S>} |- P> @@ -383,8 +364,8 @@

    -static boolean -MatchingRules.revision(Task task, +static void +MatchingRules.revision(Judgment newBelief, Judgment oldBelief, boolean feedbackToLinks) @@ -393,15 +374,6 @@

    -static boolean -TemporalRules.sameTime(Judgment belief1, - Judgment belief2) - -
    -          If the two beliefs have compatible temporal information - - - (package private) static BudgetValue BudgetFunctions.solutionEval(Sentence problem, Judgment solution, @@ -413,24 +385,22 @@

    -private static void -RuleTables.symmetricSymmetric(Judgment belief, - Sentence taskSentence, - int figure) +static float +MatchingRules.solutionQuality(Sentence problem, + Judgment solution)
    -          Syllogistic rules whose both premises are on the same symmetric relation +          Evaluate the quality of the judgment as a solution to a problem -static boolean -TemporalRules.temporalRevision(Judgment newBelief, - Judgment oldBelief, - long time, - boolean feedbackToLinks) +private static void +RuleTables.symmetricSymmetric(Judgment belief, + Sentence taskSentence, + int figure)
    -          Belief temporalRevision +          Syllogistic rules whose both premises are on the same symmetric relation diff --git a/nars-dist/javadoc/nars/entity/class-use/Question.html b/nars-dist/javadoc/nars/entity/class-use/Question.html index 823a13c0..09005f01 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Question.html +++ b/nars-dist/javadoc/nars/entity/class-use/Question.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Question (NARS Document) - + @@ -114,7 +114,7 @@

    private  java.util.ArrayList<Question> -Concept.pendingQuestions +Concept.questions
              Question directly asked about the term diff --git a/nars-dist/javadoc/nars/entity/class-use/Sentence.html b/nars-dist/javadoc/nars/entity/class-use/Sentence.html index a0e62eca..74d5f888 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Sentence.html +++ b/nars-dist/javadoc/nars/entity/class-use/Sentence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Sentence (NARS Document) - + @@ -178,11 +178,12 @@

    static Sentence -Sentence.make(Sentence oldS, +Sentence.make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, - TemporalValue tense) + Sentence premise1, + Sentence premise2)
              Make a derived Sentence from a template and some initial values. @@ -190,11 +191,12 @@

    static Sentence -Sentence.make(Term term, +Sentence.make(Term term, char punc, TruthValue truth, Stamp stamp, - TemporalValue tense) + Sentence premise1, + Sentence premise2)
              Make a Sentence from an input String. @@ -210,30 +212,36 @@

    static Sentence -Sentence.make(Sentence oldS, +Sentence.make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, - TemporalValue tense) + Sentence premise1, + Sentence premise2)
              Make a derived Sentence from a template and some initial values. - boolean -Sentence.noOverlapping(Sentence that) +static Sentence
    +Sentence.make(Term term, + char punc, + TruthValue truth, + Stamp stamp, + Sentence premise1, + Sentence premise2)
    -          Check whether one sentence has stamp overlapping with another one, and change the system cash +          Make a Sentence from an input String. - float -Judgment.solutionQuality(Sentence problem) + boolean +Sentence.noOverlapping(Sentence that)
    -          Evaluate the quality of the judgment as a solution to a problem +          Check whether one sentence has stamp overlapping with another one, and change the system cash   @@ -244,6 +252,17 @@

    Constructors in nars.entity with parameters of type Sentence +Judgment(Term term, + char punc, + TruthValue t, + Stamp b, + Sentence premise1, + Sentence premise2) + +
    +          Constructor + + Task(Sentence s, BudgetValue b) @@ -314,16 +333,6 @@

    -private static boolean -MatchingRules.betterSolution(Judgment newSol, - Judgment oldSol, - Sentence problem) - -
    -          Compare the quality of two solutions - - - (package private) static void CompositionalRules.composeCompound(Sentence taskSentence, Judgment belief, @@ -348,7 +357,7 @@

    (package private) static void SyllogisticRules.detachment(Sentence mainSentence, Sentence subSentence, - int s) + int side)
              {< S> ==> P>>, S>} |- P> @@ -357,7 +366,7 @@

    private static void -RuleTables.detachmentWithVar(Sentence mainSentence, +RuleTables.detachmentWithVar(Sentence originalMainSentence, Sentence subSentence, int index) @@ -411,6 +420,15 @@

    +static float +MatchingRules.solutionQuality(Sentence problem, + Judgment solution) + +
    +          Evaluate the quality of the judgment as a solution to a problem + + + private static void RuleTables.symmetricSymmetric(Judgment belief, Sentence taskSentence, @@ -459,12 +477,47 @@

    static void +Memory.doublePremiseTask(BudgetValue budget, + Term content, + TruthValue truth, + Sentence premise1, + Sentence premise2) + +
    +          Shared final operations by all double-premise rules, called from the rules except StructuralRules + + + +static void Memory.report(Sentence sentence, boolean input)
              Display input/output sentence in the MainWindow. + + +static void +Memory.revisionTask(BudgetValue budget, + Term content, + TruthValue truth, + Sentence premise1, + Sentence premise2) + +
    +          The final operations of the revision rules, called from MatchingRules + + + +static void +Memory.singlePremiseTask(BudgetValue budget, + Term content, + TruthValue truth, + Sentence premise) + +
    +          Shared final operations by all single-premise rules, called in StructuralRules +  

    diff --git a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html index 04334417..15747a35 100644 --- a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.ShortFloat (NARS Document) - + @@ -113,7 +113,7 @@

    -protected  ShortFloat +private  ShortFloat TruthValue.confidence
    @@ -129,7 +129,7 @@

    -protected  ShortFloat +private  ShortFloat TruthValue.frequency
    diff --git a/nars-dist/javadoc/nars/entity/class-use/Stamp.html b/nars-dist/javadoc/nars/entity/class-use/Stamp.html index 6e6ee66c..2a7abcd5 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Stamp.html +++ b/nars-dist/javadoc/nars/entity/class-use/Stamp.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Stamp (NARS Document) - + @@ -159,11 +159,12 @@

    static Sentence -Sentence.make(Sentence oldS, +Sentence.make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, - TemporalValue tense) + Sentence premise1, + Sentence premise2)
              Make a derived Sentence from a template and some initial values. @@ -180,23 +181,16 @@

    static Sentence -Sentence.make(Term term, +Sentence.make(Term term, char punc, TruthValue truth, Stamp stamp, - TemporalValue tense) + Sentence premise1, + Sentence premise2)
              Make a Sentence from an input String. - - - TemporalValue -Stamp.orderWith(Stamp that) - -
    -          Compare two Stamps for their temporal order -  

    @@ -215,10 +209,12 @@

              Constructor -Judgment(Term term, +Judgment(Term term, char punc, TruthValue t, - Stamp b) + Stamp b, + Sentence premise1, + Sentence premise2)
              Constructor @@ -229,11 +225,18 @@

    Stamp s)
    -          COnstructor +          Constructor + + +Stamp(Stamp old) + +
    +          Generate a new stamp from an existing one, with the same trail but different creation time -Stamp(Stamp first, - Stamp second) +Stamp(Stamp first, + Stamp second, + long time)
              Generate a new stamp for derived sentence by merging the two from parents @@ -259,7 +262,7 @@

    static Stamp -Memory.currentStamp +Memory.newStamp
              Shortcut to the derived Stamp diff --git a/nars-dist/javadoc/nars/entity/class-use/Task.html b/nars-dist/javadoc/nars/entity/class-use/Task.html index 7207d0fc..b87e643b 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Task.html +++ b/nars-dist/javadoc/nars/entity/class-use/Task.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Task (NARS Document) - + @@ -198,16 +198,6 @@


              To answer a question by existing beliefs - - -private  boolean -Concept.reviseTable(Judgment newSentence, - Task task, - java.util.ArrayList table) - -
    -          Revise existing beliefs or goals -  

    @@ -253,28 +243,6 @@

    (package private) static BudgetValue -BudgetFunctions.revise(TruthValue tTruth, - TruthValue bTruth, - TruthValue truth, - Task task, - boolean feedbackToLinks) - -
    -          Evaluate the quality of a revision, then de-prioritize the premises - - - -static boolean -MatchingRules.revision(Task task, - Judgment oldBelief, - boolean feedbackToLinks) - -
    -          Belief revision - - - -(package private) static BudgetValue BudgetFunctions.solutionEval(Sentence problem, Judgment solution, Task task) @@ -286,9 +254,8 @@

    static void -SyllogisticRules.temporalIndCom(Task task1, - Task task2, - TemporalValue order) +SyllogisticRules.temporalIndCom(Task task1, + Task task2)
              { S>, P>} |- { P>,

    S>, P>} diff --git a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html index 063b44f2..3081ff75 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TaskLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TermLink.html b/nars-dist/javadoc/nars/entity/class-use/TermLink.html index ef8bcb08..cdccc279 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TermLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TermLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TermLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html index 2e884a2e..85e8f3ec 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TruthValue (NARS Document) - + @@ -166,11 +166,12 @@

    static Sentence -Sentence.make(Sentence oldS, +Sentence.make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, - TemporalValue tense) + Sentence premise1, + Sentence premise2)
              Make a derived Sentence from a template and some initial values. @@ -178,15 +179,24 @@

    static Sentence -Sentence.make(Term term, +Sentence.make(Term term, char punc, TruthValue truth, Stamp stamp, - TemporalValue tense) + Sentence premise1, + Sentence premise2)
              Make a Sentence from an input String. + + + void +Judgment.setTruth(TruthValue v) + +
    +            +  

    @@ -205,10 +215,12 @@

              Constructor -Judgment(Term term, +Judgment(Term term, char punc, TruthValue t, - Stamp b) + Stamp b, + Sentence premise1, + Sentence premise2)
              Constructor @@ -239,6 +251,15 @@

    (package private) static TruthValue +TruthFunctions.abduction(TruthValue v1, + float reliance) + +
    +          {M,

    M>} |- P + + + +(package private) static TruthValue TruthFunctions.abduction(TruthValue v1, TruthValue v2) @@ -257,6 +278,15 @@

    (package private) static TruthValue +TruthFunctions.anonymousAnalogy(TruthValue v1, + TruthValue v2) + +
    +          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P> + + + +(package private) static TruthValue TruthFunctions.comparison(TruthValue v1, TruthValue v2) @@ -282,6 +312,15 @@

    (package private) static TruthValue +TruthFunctions.deduction(TruthValue v1, + float reliance) + +
    +          {M, P>} |- P + + + +(package private) static TruthValue TruthFunctions.deduction(TruthValue v1, TruthValue v2) @@ -345,31 +384,6 @@

    (package private) static TruthValue -TruthFunctions.existAnalogy(TruthValue v1, - TruthValue v2) - -
    -          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P> - - - -(package private) static TruthValue -TruthFunctions.implied(TruthValue v1) - -
    -          { B>, B} |- A - - - -(package private) static TruthValue -TruthFunctions.implying(TruthValue v1) - -
    -          { B>, A} |- B - - - -(package private) static TruthValue TruthFunctions.induction(TruthValue v1, TruthValue v2) @@ -396,14 +410,6 @@

    (package private) static TruthValue -TruthFunctions.negImply(TruthValue v1) - -
    -          { (--, B)>, A} |- B - - - -(package private) static TruthValue TruthFunctions.reduceConjunction(TruthValue v1, TruthValue v2) @@ -448,15 +454,14 @@

    -(package private) static TruthValue -TruthFunctions.temporalRevision(TruthValue v1, - TruthValue v2, - long t1, - long t2, - long t) +static TruthValue +TruthFunctions.temporalCasting(TruthValue v1, + long t1, + long t2, + long t)
    -          Revision weighted by time difference +          Casting truth-value v1 from moment t1 to moment t2, with respect to time t @@ -478,6 +483,15 @@

    (package private) static TruthValue +TruthFunctions.abduction(TruthValue v1, + float reliance) + +
    +          {M,

    M>} |- P + + + +(package private) static TruthValue TruthFunctions.abduction(TruthValue v1, TruthValue v2) @@ -495,6 +509,15 @@

    +(package private) static TruthValue +TruthFunctions.anonymousAnalogy(TruthValue v1, + TruthValue v2) + +
    +          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P> + + + static BudgetValue BudgetFunctions.backward(TruthValue truth) @@ -546,6 +569,15 @@

    (package private) static TruthValue +TruthFunctions.deduction(TruthValue v1, + float reliance) + +
    +          {M, P>} |- P + + + +(package private) static TruthValue TruthFunctions.deduction(TruthValue v1, TruthValue v2) @@ -608,15 +640,6 @@

    -(package private) static TruthValue -TruthFunctions.existAnalogy(TruthValue v1, - TruthValue v2) - -
    -          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P> - - - (package private) static BudgetValue BudgetFunctions.forward(TruthValue truth) @@ -626,22 +649,6 @@

    (package private) static TruthValue -TruthFunctions.implied(TruthValue v1) - -
    -          { B>, B} |- A - - - -(package private) static TruthValue -TruthFunctions.implying(TruthValue v1) - -
    -          { B>, A} |- B - - - -(package private) static TruthValue TruthFunctions.induction(TruthValue v1, TruthValue v2) @@ -667,14 +674,6 @@

    -(package private) static TruthValue -TruthFunctions.negImply(TruthValue v1) - -
    -          { (--, B)>, A} |- B - - - private static void CompositionalRules.processComposed(Statement statement, Term subject, @@ -723,10 +722,9 @@

    (package private) static BudgetValue -BudgetFunctions.revise(TruthValue tTruth, +BudgetFunctions.revise(TruthValue tTruth, TruthValue bTruth, TruthValue truth, - Task task, boolean feedbackToLinks)
    @@ -753,25 +751,24 @@

    -static BudgetValue -BudgetFunctions.temporalIndCom(BudgetValue b1, - BudgetValue b2, - TruthValue t) +static TruthValue +TruthFunctions.temporalCasting(TruthValue v1, + long t1, + long t2, + long t)
    -          Special treatment for temporal induction and comparison among recent event, no feedback +          Casting truth-value v1 from moment t1 to moment t2, with respect to time t -(package private) static TruthValue -TruthFunctions.temporalRevision(TruthValue v1, - TruthValue v2, - long t1, - long t2, - long t) +static BudgetValue +BudgetFunctions.temporalIndCom(BudgetValue b1, + BudgetValue b2, + TruthValue t)
    -          Revision weighted by time difference +          Special treatment for temporal induction and comparison among recent event, no feedback @@ -872,9 +869,11 @@

    static void -Memory.doublePremiseTask(BudgetValue budget, +Memory.doublePremiseTask(BudgetValue budget, Term content, - TruthValue truth) + TruthValue truth, + Sentence premise1, + Sentence premise2)
              Shared final operations by all double-premise rules, called from the rules except StructuralRules @@ -882,9 +881,22 @@

    static void -Memory.singlePremiseTask(BudgetValue budget, +Memory.revisionTask(BudgetValue budget, + Term content, + TruthValue truth, + Sentence premise1, + Sentence premise2) + +
    +          The final operations of the revision rules, called from MatchingRules + + + +static void +Memory.singlePremiseTask(BudgetValue budget, Term content, - TruthValue truth) + TruthValue truth, + Sentence premise)

              Shared final operations by all single-premise rules, called in StructuralRules diff --git a/nars-dist/javadoc/nars/entity/package-frame.html b/nars-dist/javadoc/nars/entity/package-frame.html index efa1972b..e8039c49 100644 --- a/nars-dist/javadoc/nars/entity/package-frame.html +++ b/nars-dist/javadoc/nars/entity/package-frame.html @@ -2,13 +2,13 @@ - + nars.entity (NARS Document) - + @@ -46,8 +46,6 @@
    TaskLink
    -TemporalValue -
    TermLink
    TruthValue
    diff --git a/nars-dist/javadoc/nars/entity/package-summary.html b/nars-dist/javadoc/nars/entity/package-summary.html index 29e318c4..b5f6191a 100644 --- a/nars-dist/javadoc/nars/entity/package-summary.html +++ b/nars-dist/javadoc/nars/entity/package-summary.html @@ -2,13 +2,13 @@ - + nars.entity (NARS Document) - + @@ -131,7 +131,10 @@

    Stamp -Each Sentence has a get of serial numbers of a constant length attached. +Each Sentence has a time stamp, consisting the following components: + (1) The creation time of the sentence, + (2) The time when the truth-value is supported, + (3) A trail of serial numbers of sentence, from which the sentence is derived. Task @@ -142,10 +145,6 @@

    Reference to a Task. -TemporalValue -Temporal information, in terms of the internal clock of the system. - - TermLink A link between a compound term and a component term diff --git a/nars-dist/javadoc/nars/entity/package-tree.html b/nars-dist/javadoc/nars/entity/package-tree.html index 8c5942f4..1afb1425 100644 --- a/nars-dist/javadoc/nars/entity/package-tree.html +++ b/nars-dist/javadoc/nars/entity/package-tree.html @@ -2,13 +2,13 @@ - + nars.entity Class Hierarchy (NARS Document) - + @@ -107,7 +107,7 @@

  • nars.entity.Question
  • nars.entity.ShortFloat (implements java.lang.Cloneable)
  • nars.entity.Stamp (implements java.lang.Cloneable) -
  • nars.entity.TemporalValue
  • nars.entity.TruthValue +
  • nars.entity.TruthValue
    diff --git a/nars-dist/javadoc/nars/entity/package-use.html b/nars-dist/javadoc/nars/entity/package-use.html index 24dd7317..ffd7e8e7 100644 --- a/nars-dist/javadoc/nars/entity/package-use.html +++ b/nars-dist/javadoc/nars/entity/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.entity (NARS Document) - + @@ -178,7 +178,10 @@

    Stamp
    -          Each Sentence has a get of serial numbers of a constant length attached. +          Each Sentence has a time stamp, consisting the following components: + (1) The creation time of the sentence, + (2) The time when the truth-value is supported, + (3) A trail of serial numbers of sentence, from which the sentence is derived. Task @@ -193,12 +196,6 @@

              Reference to a Task. -TemporalValue - -
    -          Temporal information, in terms of the internal clock of the system. - - TermLink
    @@ -273,12 +270,6 @@

              Reference to a Task. -TemporalValue - -
    -          Temporal information, in terms of the internal clock of the system. - - TermLink
    @@ -321,12 +312,6 @@

    Classes in nars.entity used by nars.language -TemporalValue - -
    -          Temporal information, in terms of the internal clock of the system. - - TermLink
    @@ -370,7 +355,10 @@

    Stamp
    -          Each Sentence has a get of serial numbers of a constant length attached. +          Each Sentence has a time stamp, consisting the following components: + (1) The creation time of the sentence, + (2) The time when the truth-value is supported, + (3) A trail of serial numbers of sentence, from which the sentence is derived. Task @@ -385,12 +373,6 @@

              Reference to a Task. -TemporalValue - -
    -          Temporal information, in terms of the internal clock of the system. - - TermLink
    diff --git a/nars-dist/javadoc/nars/gui/BagWindow.html b/nars-dist/javadoc/nars/gui/BagWindow.html index 94fe949a..8e551ab7 100644 --- a/nars-dist/javadoc/nars/gui/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/BagWindow.html @@ -2,13 +2,13 @@ - + BagWindow (NARS Document) - + @@ -102,7 +102,7 @@

    extended by nars.gui.BagWindow
    -
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.AdjustmentListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.AdjustmentListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

    @@ -329,6 +329,14 @@

    +private  void +close() + +
    +            + + +  void post(java.lang.String str) @@ -343,6 +351,23 @@


              The lowest display level + + + void +windowClosing(java.awt.event.WindowEvent arg0) + +
    +            + + +  + + + + + + +
    Methods inherited from class nars.gui.NarsFrame
    windowActivated, windowClosed, windowDeactivated, windowDeiconified, windowIconified, windowOpened
      @@ -599,6 +624,34 @@


    +

    +close

    +
    +private void close()
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +

    +windowClosing

    +
    +public void windowClosing(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowClosing in interface java.awt.event.WindowListener
    Overrides:
    windowClosing in class NarsFrame
    +
    +
    +
    +
    +
    +
    +

    adjustmentValueChanged

    diff --git a/nars-dist/javadoc/nars/gui/ConceptWindow.html b/nars-dist/javadoc/nars/gui/ConceptWindow.html
    index 7374fc40..ec2bfbb2 100644
    --- a/nars-dist/javadoc/nars/gui/ConceptWindow.html
    +++ b/nars-dist/javadoc/nars/gui/ConceptWindow.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     ConceptWindow (NARS Document)
     
     
    -
    +
     
     
     
    @@ -102,11 +102,11 @@ 

    extended by nars.gui.ConceptWindow

    -
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.ItemListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

    -
    public class ConceptWindow
    extends NarsFrame
    implements java.awt.event.ActionListener
    +
    public class ConceptWindow
    extends NarsFrame
    implements java.awt.event.ActionListener, java.awt.event.ItemListener

    @@ -194,6 +194,14 @@

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +private static intinstanceCount + +
    +          Used to adjust the screen position
    private  java.awt.Button playButton @@ -203,6 +211,22 @@

    private  java.awt.ButtonplayInNewWindowButton + +
    +          Control buttons
    +private  java.awt.CheckboxshowDerivationCheckbox + +
    +           
    +private  java.awt.Button stopButton
    @@ -288,12 +312,61 @@

    +private  voidclose() + +
    +           
    + voiddetachFromConcept() + +
    +          This is called when Concept removes this as its window.
    + booleangetShowDerivation() + +
    +           
    + voiditemStateChanged(java.awt.event.ItemEvent e) + +
    +           
     void post(java.lang.String str)
              Display the content of the concept
    + voidwindowClosing(java.awt.event.WindowEvent e) + +
    +           
    + + + + + + +
    Methods inherited from class nars.gui.NarsFrame
    windowActivated, windowClosed, windowDeactivated, windowDeiconified, windowIconified, windowOpened
      @@ -386,6 +459,18 @@


    +

    +playInNewWindowButton

    +
    +private java.awt.Button playInNewWindowButton
    +
    +
    Control buttons +

    +

    +
    +
    +
    +

    closeButton

    @@ -398,6 +483,16 @@ 


    +

    +showDerivationCheckbox

    +
    +private java.awt.Checkbox showDerivationCheckbox
    +
    +
    +
    +
    +
    +

    text

    @@ -420,6 +515,18 @@ 

    +
    + +

    +instanceCount

    +
    +private static int instanceCount
    +
    +
    Used to adjust the screen position +

    +

    +
    +
    @@ -468,6 +575,22 @@


    +

    +detachFromConcept

    +
    +public void detachFromConcept()
    +
    +
    This is called when Concept removes this as its window. +

    +

    +
    +
    +
    +
    +
    +
    +
    +

    actionPerformed

    @@ -482,6 +605,62 @@ 

    Parameters:
    e - The ActionEvent
    +
    + +

    +close

    +
    +private void close()
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +

    +windowClosing

    +
    +public void windowClosing(java.awt.event.WindowEvent e)
    +
    +
    +
    Specified by:
    windowClosing in interface java.awt.event.WindowListener
    Overrides:
    windowClosing in class NarsFrame
    +
    +
    +
    +
    +
    +
    + +

    +getShowDerivation

    +
    +public boolean getShowDerivation()
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +

    +itemStateChanged

    +
    +public void itemStateChanged(java.awt.event.ItemEvent e)
    +
    +
    +
    Specified by:
    itemStateChanged in interface java.awt.event.ItemListener
    +
    +
    +
    +
    +

    diff --git a/nars-dist/javadoc/nars/gui/InferenceWindow.html b/nars-dist/javadoc/nars/gui/InferenceWindow.html index 22d5bd8b..92d3f70d 100644 --- a/nars-dist/javadoc/nars/gui/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/InferenceWindow.html @@ -2,13 +2,13 @@ - + InferenceWindow (NARS Document) - + @@ -102,11 +102,11 @@

    extended by nars.gui.InferenceWindow

    -
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.ItemListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

    -
    public class InferenceWindow
    extends NarsFrame
    implements java.awt.event.ActionListener
    +
    public class InferenceWindow
    extends NarsFrame
    implements java.awt.event.ActionListener, java.awt.event.ItemListener

    @@ -208,6 +208,30 @@


              Display area +

    + + + + + + + + + + +
    +private  java.lang.Stringwatched + +
    +          Type of catched text
    +private  java.awt.TextFieldwatchText + +
    +          String to be catched
    +private  java.awt.ChoicewatchType + +
    +          Type of catched text
      @@ -296,6 +320,22 @@

    + + + + + + + + + + + + +
    +private  voidclose() + +
    +           
    + voiditemStateChanged(java.awt.event.ItemEvent event) + +
    +           
     void resetBackground() @@ -310,6 +350,23 @@


              Change background color to remind the on-going file saving

    + voidwindowClosing(java.awt.event.WindowEvent arg0) + +
    +           
    + + + + + + +
    Methods inherited from class nars.gui.NarsFrame
    windowActivated, windowClosed, windowDeactivated, windowDeiconified, windowIconified, windowOpened
      @@ -424,6 +481,42 @@

    +
    + +

    +watchText

    +
    +private java.awt.TextField watchText
    +
    +
    String to be catched +

    +

    +
    +
    +
    + +

    +watchType

    +
    +private java.awt.Choice watchType
    +
    +
    Type of catched text +

    +

    +
    +
    +
    + +

    +watched

    +
    +private java.lang.String watched
    +
    +
    Type of catched text +

    +

    +
    +
    @@ -502,6 +595,48 @@


    +

    +itemStateChanged

    +
    +public void itemStateChanged(java.awt.event.ItemEvent event)
    +
    +
    +
    Specified by:
    itemStateChanged in interface java.awt.event.ItemListener
    +
    +
    +
    +
    +
    +
    + +

    +close

    +
    +private void close()
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +

    +windowClosing

    +
    +public void windowClosing(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowClosing in interface java.awt.event.WindowListener
    Overrides:
    windowClosing in class NarsFrame
    +
    +
    +
    +
    +
    +
    +

    switchBackground

    diff --git a/nars-dist/javadoc/nars/gui/InputWindow.html b/nars-dist/javadoc/nars/gui/InputWindow.html
    index c735c2f3..809b4a5d 100644
    --- a/nars-dist/javadoc/nars/gui/InputWindow.html
    +++ b/nars-dist/javadoc/nars/gui/InputWindow.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     InputWindow (NARS Document)
     
     
    -
    +
     
     
     
    @@ -102,7 +102,7 @@ 

    extended by nars.gui.InputWindow

    -
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

    @@ -296,6 +296,14 @@

    + + + + + + + + +
    +private  voidclose() + +
    +           
     long getInput() @@ -318,6 +326,23 @@


              Initialize the window

    + voidwindowClosing(java.awt.event.WindowEvent arg0) + +
    +           
    + + + + + + +
    Methods inherited from class nars.gui.NarsFrame
    windowActivated, windowClosed, windowDeactivated, windowDeiconified, windowIconified, windowOpened
      @@ -518,6 +543,34 @@


    +

    +close

    +
    +private void close()
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +

    +windowClosing

    +
    +public void windowClosing(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowClosing in interface java.awt.event.WindowListener
    Overrides:
    windowClosing in class NarsFrame
    +
    +
    +
    +
    +
    +
    +

    getLine

    diff --git a/nars-dist/javadoc/nars/gui/MainWindow.html b/nars-dist/javadoc/nars/gui/MainWindow.html
    index 22c6d1c7..8f296057 100644
    --- a/nars-dist/javadoc/nars/gui/MainWindow.html
    +++ b/nars-dist/javadoc/nars/gui/MainWindow.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     MainWindow (NARS Document)
     
     
    -
    +
     
     
     
    @@ -102,7 +102,7 @@ 

    extended by nars.gui.MainWindow

    -
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

    @@ -368,6 +368,14 @@

    + + + + + + + + +
    +private  voidclose() + +
    +           
     void init() @@ -398,6 +406,23 @@


              Update timer and its display

    + voidwindowClosing(java.awt.event.WindowEvent arg0) + +
    +           
    + + + + + + +
    Methods inherited from class nars.gui.NarsFrame
    windowActivated, windowClosed, windowDeactivated, windowDeiconified, windowIconified, windowOpened
      @@ -752,6 +777,34 @@

    Parameters:
    e - The ActionEvent
    +
    + +

    +close

    +
    +private void close()
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +

    +windowClosing

    +
    +public void windowClosing(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowClosing in interface java.awt.event.WindowListener
    Overrides:
    windowClosing in class NarsFrame
    +
    +
    +
    +
    +

    diff --git a/nars-dist/javadoc/nars/gui/MessageDialog.html b/nars-dist/javadoc/nars/gui/MessageDialog.html index a3f26aea..1fbb65dd 100644 --- a/nars-dist/javadoc/nars/gui/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/MessageDialog.html @@ -2,13 +2,13 @@ - + MessageDialog (NARS Document) - + @@ -101,11 +101,11 @@

    extended by nars.gui.MessageDialog
    -
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

    -
    public class MessageDialog
    extends java.awt.Dialog
    implements java.awt.event.ActionListener
    +
    public class MessageDialog
    extends java.awt.Dialog
    implements java.awt.event.ActionListener, java.awt.event.WindowListener

    @@ -253,6 +253,70 @@


              Handling button click +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +private  voidclose() + +
    +           
    + voidwindowActivated(java.awt.event.WindowEvent arg0) + +
    +           
    + voidwindowClosed(java.awt.event.WindowEvent arg0) + +
    +           
    + voidwindowClosing(java.awt.event.WindowEvent arg0) + +
    +           
    + voidwindowDeactivated(java.awt.event.WindowEvent arg0) + +
    +           
    + voidwindowDeiconified(java.awt.event.WindowEvent arg0) + +
    +           
    + voidwindowIconified(java.awt.event.WindowEvent arg0) + +
    +           
    + voidwindowOpened(java.awt.event.WindowEvent arg0) + +
    +           
      @@ -377,6 +441,118 @@

    Parameters:
    e - The ActionEvent
    +
    + +

    +close

    +
    +private void close()
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +

    +windowActivated

    +
    +public void windowActivated(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowActivated in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowClosed

    +
    +public void windowClosed(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowClosed in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowClosing

    +
    +public void windowClosing(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowClosing in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowDeactivated

    +
    +public void windowDeactivated(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowDeactivated in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowDeiconified

    +
    +public void windowDeiconified(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowDeiconified in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowIconified

    +
    +public void windowIconified(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowIconified in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowOpened

    +
    +public void windowOpened(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowOpened in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +

    diff --git a/nars-dist/javadoc/nars/gui/NarsFrame.html b/nars-dist/javadoc/nars/gui/NarsFrame.html index ce30fc79..eed222bc 100644 --- a/nars-dist/javadoc/nars/gui/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/NarsFrame.html @@ -2,13 +2,13 @@ - + NarsFrame (NARS Document) - + @@ -77,9 +77,9 @@ + SUMMARY: NESTED | FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD
    @@ -101,14 +101,14 @@

    extended by nars.gui.NarsFrame
    -
    All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    Direct Known Subclasses:
    BagWindow, ConceptWindow, InferenceWindow, InputWindow, MainWindow, ParameterWindow, TermWindow

    -
    public abstract class NarsFrame
    extends java.awt.Frame
    +
    public abstract class NarsFrame
    extends java.awt.Frame
    implements java.awt.event.WindowListener

    @@ -293,6 +293,62 @@

    Method Summary + + + void +windowActivated(java.awt.event.WindowEvent arg0) + +
    +            + + + + void +windowClosed(java.awt.event.WindowEvent arg0) + +
    +            + + + + void +windowClosing(java.awt.event.WindowEvent arg0) + +
    +            + + + + void +windowDeactivated(java.awt.event.WindowEvent arg0) + +
    +            + + + + void +windowDeiconified(java.awt.event.WindowEvent arg0) + +
    +            + + + + void +windowIconified(java.awt.event.WindowEvent arg0) + +
    +            + + + + void +windowOpened(java.awt.event.WindowEvent arg0) + +
    +            +   @@ -474,6 +530,113 @@

    Parameters:
    title - The title displayed by the window
    + + + + +

    + + + +
    +Method Detail
    + +

    +windowActivated

    +
    +public void windowActivated(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowActivated in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowClosed

    +
    +public void windowClosed(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowClosed in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowClosing

    +
    +public void windowClosing(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowClosing in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowDeactivated

    +
    +public void windowDeactivated(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowDeactivated in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowDeiconified

    +
    +public void windowDeiconified(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowDeiconified in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowIconified

    +
    +public void windowIconified(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowIconified in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +
    +
    + +

    +windowOpened

    +
    +public void windowOpened(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowOpened in interface java.awt.event.WindowListener
    +
    +
    +
    +
    +

    @@ -526,9 +689,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/gui/ParameterWindow.html b/nars-dist/javadoc/nars/gui/ParameterWindow.html index fb9b65d8..919bb4d3 100644 --- a/nars-dist/javadoc/nars/gui/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/ParameterWindow.html @@ -2,13 +2,13 @@ - + ParameterWindow (NARS Document) - + @@ -102,7 +102,7 @@

    extended by nars.gui.ParameterWindow
    -
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.AdjustmentListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.AdjustmentListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

    @@ -321,12 +321,37 @@

    +private  void +close() + +
    +            + + +  int value()
              Get the value of the parameter + + + void +windowClosing(java.awt.event.WindowEvent arg0) + +
    +            + + +  + + + + + + +
    Methods inherited from class nars.gui.NarsFrame
    windowActivated, windowClosed, windowDeactivated, windowDeiconified, windowIconified, windowOpened
      @@ -555,6 +580,34 @@


    +

    +close

    +
    +private void close()
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +

    +windowClosing

    +
    +public void windowClosing(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowClosing in interface java.awt.event.WindowListener
    Overrides:
    windowClosing in class NarsFrame
    +
    +
    +
    +
    +
    +
    +

    adjustmentValueChanged

    diff --git a/nars-dist/javadoc/nars/gui/TermWindow.html b/nars-dist/javadoc/nars/gui/TermWindow.html
    index c1cff56f..bcf1ae05 100644
    --- a/nars-dist/javadoc/nars/gui/TermWindow.html
    +++ b/nars-dist/javadoc/nars/gui/TermWindow.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     TermWindow (NARS Document)
     
     
    -
    +
     
     
     
    @@ -102,7 +102,7 @@ 

    extended by nars.gui.TermWindow

    -
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

    @@ -278,6 +278,31 @@


              Handling button click +

    + + + + + + + +
    +private  voidclose() + +
    +           
    + voidwindowClosing(java.awt.event.WindowEvent arg0) + +
    +           
    + + + + + + +
    Methods inherited from class nars.gui.NarsFrame
    windowActivated, windowClosed, windowDeactivated, windowDeiconified, windowIconified, windowOpened
      @@ -436,6 +461,34 @@

    Parameters:
    e - The ActionEvent
    +
    + +

    +close

    +
    +private void close()
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +

    +windowClosing

    +
    +public void windowClosing(java.awt.event.WindowEvent arg0)
    +
    +
    +
    Specified by:
    windowClosing in interface java.awt.event.WindowListener
    Overrides:
    windowClosing in class NarsFrame
    +
    +
    +
    +
    +

    diff --git a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html index 4967794e..a7f1f06b 100644 --- a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.BagWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html index 2cabca96..58cc821a 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ConceptWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html index f53bb798..945f4916 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InferenceWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html index 4cb4f536..5b5e696a 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InputWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html index 585eedf5..6c721fa9 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MainWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html index 0a2ce4af..413cbc0c 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MessageDialog (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html index 6275a88a..16c800a6 100644 --- a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.NarsFrame (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html index d7290e76..9f5f822e 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ParameterWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html index 2286ff02..19ae5056 100644 --- a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.TermWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-frame.html b/nars-dist/javadoc/nars/gui/package-frame.html index 5195e5fe..cf9e275b 100644 --- a/nars-dist/javadoc/nars/gui/package-frame.html +++ b/nars-dist/javadoc/nars/gui/package-frame.html @@ -2,13 +2,13 @@ - + nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-summary.html b/nars-dist/javadoc/nars/gui/package-summary.html index a22eba7c..88eff61b 100644 --- a/nars-dist/javadoc/nars/gui/package-summary.html +++ b/nars-dist/javadoc/nars/gui/package-summary.html @@ -2,13 +2,13 @@ - + nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-tree.html b/nars-dist/javadoc/nars/gui/package-tree.html index 808d43c4..d57c3eec 100644 --- a/nars-dist/javadoc/nars/gui/package-tree.html +++ b/nars-dist/javadoc/nars/gui/package-tree.html @@ -2,13 +2,13 @@ - + nars.gui Class Hierarchy (NARS Document) - + @@ -99,14 +99,15 @@

  • java.awt.Window (implements javax.accessibility.Accessible)
    • java.awt.Dialog
        -
      • nars.gui.MessageDialog (implements java.awt.event.ActionListener) +
      • nars.gui.MessageDialog (implements java.awt.event.ActionListener, java.awt.event.WindowListener)
    • java.awt.Frame (implements java.awt.MenuContainer)
        -
      • nars.gui.NarsFrame
          +
        • nars.gui.NarsFrame (implements java.awt.event.WindowListener) +
          • nars.gui.BagWindow (implements java.awt.event.ActionListener, java.awt.event.AdjustmentListener) -
          • nars.gui.ConceptWindow (implements java.awt.event.ActionListener) -
          • nars.gui.InferenceWindow (implements java.awt.event.ActionListener) +
          • nars.gui.ConceptWindow (implements java.awt.event.ActionListener, java.awt.event.ItemListener) +
          • nars.gui.InferenceWindow (implements java.awt.event.ActionListener, java.awt.event.ItemListener)
          • nars.gui.InputWindow (implements java.awt.event.ActionListener)
          • nars.gui.MainWindow (implements java.awt.event.ActionListener)
          • nars.gui.ParameterWindow (implements java.awt.event.ActionListener, java.awt.event.AdjustmentListener) diff --git a/nars-dist/javadoc/nars/gui/package-use.html b/nars-dist/javadoc/nars/gui/package-use.html index 1c1e6a12..5b858fad 100644 --- a/nars-dist/javadoc/nars/gui/package-use.html +++ b/nars-dist/javadoc/nars/gui/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/BudgetFunctions.html index 0fedcf12..993b9b52 100644 --- a/nars-dist/javadoc/nars/inference/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/BudgetFunctions.html @@ -2,13 +2,13 @@ - + BudgetFunctions (NARS Document) - + @@ -241,10 +241,9 @@

  • - - +
    (package private) static BudgetValuerevise(TruthValue tTruth, +revise(TruthValue tTruth, TruthValue bTruth, TruthValue truth, - Task task, boolean feedbackToLinks)
    @@ -295,7 +294,7 @@

    Methods inherited from class nars.inference.UtilityFunctions
    and, aveAri, aveGeo, or, w2cand, aveAri, aveGeo, c2w, or, w2c
      @@ -384,19 +383,18 @@


    -

    +

    revise

     static BudgetValue revise(TruthValue tTruth,
                               TruthValue bTruth,
                               TruthValue truth,
    -                          Task task,
                               boolean feedbackToLinks)
    Evaluate the quality of a revision, then de-prioritize the premises

    -
    Parameters:
    tTruth - The truth value of the judgment in the task
    bTruth - The truth value of the belief
    truth - The truth value of the conclusion of revision
    task - The task to be immediatedly or continuely processed +
    Parameters:
    tTruth - The truth value of the judgment in the task
    bTruth - The truth value of the belief
    truth - The truth value of the conclusion of revision
    Returns:
    The budget for the new task
    diff --git a/nars-dist/javadoc/nars/inference/CompositionalRules.html b/nars-dist/javadoc/nars/inference/CompositionalRules.html index c9be214f..9701a05e 100644 --- a/nars-dist/javadoc/nars/inference/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/CompositionalRules.html @@ -2,13 +2,13 @@ - + CompositionalRules (NARS Document) - + @@ -140,7 +140,7 @@

    (package private) static void -abdVarDepOuter(CompoundTerm compound, +anaVarDepOuter(CompoundTerm compound, Term component, boolean compoundTask) @@ -370,10 +370,10 @@


  • -

    -abdVarDepOuter

    +

    +anaVarDepOuter

    -static void abdVarDepOuter(CompoundTerm compound,
    +static void anaVarDepOuter(CompoundTerm compound,
                                Term component,
                                boolean compoundTask)
    diff --git a/nars-dist/javadoc/nars/inference/MatchingRules.html b/nars-dist/javadoc/nars/inference/MatchingRules.html index 356393bd..dd9d0d67 100644 --- a/nars-dist/javadoc/nars/inference/MatchingRules.html +++ b/nars-dist/javadoc/nars/inference/MatchingRules.html @@ -2,13 +2,13 @@ - + MatchingRules (NARS Document) - + @@ -105,8 +105,8 @@

    Directly process a task by a oldBelief, with only two Terms in both. In matching, the new task is compared with all existing direct Tasks in that Concept, to carry out:

    - temporalRevision: between judgments on non-overlapping evidence; - temporalRevision: between judgments; + revision: between judgments on non-overlapping evidence; + revision: between judgments; satisfy: between a Judgment and a Question/Goal; merge: between items of the same type and stamp; conversion: between different inheritance relations. @@ -143,16 +143,6 @@

    -private static boolean -betterSolution(Judgment newSol, - Judgment oldSol, - Sentence problem) - -
    -          Compare the quality of two solutions - - - private static void conversion() @@ -173,9 +163,9 @@

    private static void -inferToAsym(Judgment asym, +inferToAsym(Judgment asym, Judgment sym, - TemporalValue order) + int order)
              { P>,

    S>} |- P> @@ -220,8 +210,8 @@

    -static boolean -revision(Task task, +static void +revision(Judgment newBelief, Judgment oldBelief, boolean feedbackToLinks) @@ -230,6 +220,15 @@

    +static float +solutionQuality(Sentence problem, + Judgment solution) + +
    +          Evaluate the quality of the judgment as a solution to a problem + + + static void trySolution(Sentence problem, Judgment belief, @@ -294,20 +293,19 @@


    -

    +

    revision

    -public static boolean revision(Task task,
    -                               Judgment oldBelief,
    -                               boolean feedbackToLinks)
    +public static void revision(Judgment newBelief, + Judgment oldBelief, + boolean feedbackToLinks)
    Belief revision

    called from Concept.reviseTable and match

    -
    Parameters:
    task - The task containing new belief
    oldBelief - The previous belief with the same content
    feedbackToLinks - Whether to send feedback to the links -
    Returns:
    Whether temporalRevision happened
    +
    Parameters:
    newBelief - The new belief in task
    oldBelief - The previous belief with the same content
    feedbackToLinks - Whether to send feedback to the links

    @@ -327,18 +325,17 @@


    -

    -betterSolution

    +

    +solutionQuality

    -private static boolean betterSolution(Judgment newSol,
    -                                      Judgment oldSol,
    -                                      Sentence problem)
    +public static float solutionQuality(Sentence problem, + Judgment solution)
    -
    Compare the quality of two solutions +
    Evaluate the quality of the judgment as a solution to a problem

    -
    Parameters:
    newSol - A new solution
    oldSol - A old solution
    problem - The problem -
    Returns:
    Whether the new one is better
    +
    Parameters:
    problem - A goal or question
    solution - The solution to be evaluated +
    Returns:
    The quality of the judgment as the solution

    @@ -386,12 +383,12 @@


    -

    +

    inferToAsym

     private static void inferToAsym(Judgment asym,
                                     Judgment sym,
    -                                TemporalValue order)
    + int order)
    { P>,

    S>} |- P> Produce an Inheritance/Implication from a Similarity/Equivalence and a reversed Inheritance/Implication diff --git a/nars-dist/javadoc/nars/inference/RuleTables.html b/nars-dist/javadoc/nars/inference/RuleTables.html index 02ac328c..72aa3652 100644 --- a/nars-dist/javadoc/nars/inference/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/RuleTables.html @@ -2,13 +2,13 @@ - + RuleTables (NARS Document) - + @@ -213,7 +213,7 @@

    private static void -detachmentWithVar(Sentence mainSentence, +detachmentWithVar(Sentence originalMainSentence, Sentence subSentence, int index) @@ -406,14 +406,14 @@

    detachmentWithVar

    -private static void detachmentWithVar(Sentence mainSentence,
    +private static void detachmentWithVar(Sentence originalMainSentence,
                                           Sentence subSentence,
                                           int index)
    The detachment rule, with variable unification

    -
    Parameters:
    mainSentence - The premise that is an Implication or Equivalence
    subSentence - The premise that is the subject or predicate of the first one
    index - The location of the second premise in the first
    +
    Parameters:
    originalMainSentence - The premise that is an Implication or Equivalence
    subSentence - The premise that is the subject or predicate of the first one
    index - The location of the second premise in the first


    diff --git a/nars-dist/javadoc/nars/inference/StructuralRules.html b/nars-dist/javadoc/nars/inference/StructuralRules.html index dccb4854..c50b4b19 100644 --- a/nars-dist/javadoc/nars/inference/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/StructuralRules.html @@ -2,13 +2,13 @@ - + StructuralRules (NARS Document) - + @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -110,7 +110,24 @@


    + + + + + + + + + + +
    +Field Summary
    +private static floatRELIANCE + +
    +           
    @@ -215,7 +232,7 @@

    -(package private) static void +static void transformNegation(Term content)
    @@ -258,6 +275,25 @@

     

    + + + + + + + +
    +Field Detail
    + +

    +RELIANCE

    +
    +private static final float RELIANCE
    +
    +
    +
    See Also:
    Constant Field Values
    +
    + @@ -428,7 +464,7 @@

    transformNegation

    -static void transformNegation(Term content)
    +public static void transformNegation(Term content)
    {A, A@(--, A)} |- (--, A)

    @@ -501,9 +537,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/inference/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/SyllogisticRules.html index f10a797d..a3b25f1b 100644 --- a/nars-dist/javadoc/nars/inference/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/SyllogisticRules.html @@ -2,13 +2,13 @@ - + SyllogisticRules (NARS Document) - + @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -198,7 +198,7 @@

    (package private) static void detachment(Sentence mainSentence, Sentence subSentence, - int s) + int side)
              {< S> ==> P>>, S>} |- P> @@ -242,13 +242,22 @@

    static void -temporalIndCom(Task task1, - Task task2, - TemporalValue order) +temporalIndCom(Task task1, + Task task2)
              { S>, P>} |- { P>,

    S>, P>} + + +static int +temporalSyllogism(int r1, + int r2, + int figure) + +
    +          Temporal inference in syllogism, with figure +   @@ -361,13 +370,13 @@

     static void detachment(Sentence mainSentence,
                            Sentence subSentence,
    -                       int s)
    + int side)
    {< S> ==> P>>, S>} |- P> {< S> ==> P>>, P>} |- S>

    -
    Parameters:
    mainSentence - The implication/equivalence premise
    subSentence - The premise on part of s1
    s - The location of s2 in s1
    +
    Parameters:
    mainSentence - The implication/equivalence premise
    subSentence - The premise on part of s1
    side - The location of s2 in s1

    @@ -440,17 +449,32 @@


    -

    +

    temporalIndCom

     public static void temporalIndCom(Task task1,
    -                                  Task task2,
    -                                  TemporalValue order)
    + Task task2)
    { S>, P>} |- { P>,

    S>, P>}

    -
    Parameters:
    task1 - The first premise
    task2 - The second premise
    order - Temporal order of the terms in conclusion
    +
    Parameters:
    task1 - The first premise
    task2 - The second premise
    + + +
    + +

    +temporalSyllogism

    +
    +public static int temporalSyllogism(int r1,
    +                                    int r2,
    +                                    int figure)
    +
    +
    Temporal inference in syllogism, with figure +

    +

    +
    Parameters:
    r1 - The first premise, containing the subject of the conclusion
    r2 - The second premise, containing the predicate of the conclusion
    figure - The location of the shared term +
    Returns:
    The temporal order in the conclusion
    @@ -485,7 +509,7 @@

    NEXT CLASS + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + +          Casting truth-value v1 from moment t1 to moment t2, with respect to time t - +
    (package private) static TruthValueabduction(TruthValue v1, + float reliance) + +
    +          {M,

    M>} |- P

    +(package private) static TruthValue abduction(TruthValue v1, TruthValue v2) @@ -156,6 +165,15 @@

    (package private) static TruthValueanonymousAnalogy(TruthValue v1, + TruthValue v2) + +
    +          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P>
    +(package private) static TruthValue comparison(TruthValue v1, TruthValue v2) @@ -181,6 +199,15 @@

    (package private) static TruthValuededuction(TruthValue v1, + float reliance) + +
    +          {M, P>} |- P
    +(package private) static TruthValue deduction(TruthValue v1, TruthValue v2) @@ -244,31 +271,6 @@

    (package private) static TruthValueexistAnalogy(TruthValue v1, - TruthValue v2) - -
    -          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P>
    -(package private) static TruthValueimplied(TruthValue v1) - -
    -          { B>, B} |- A
    -(package private) static TruthValueimplying(TruthValue v1) - -
    -          { B>, A} |- B
    -(package private) static TruthValue induction(TruthValue v1, TruthValue v2) @@ -295,14 +297,6 @@

    (package private) static TruthValuenegImply(TruthValue v1) - -
    -          { (--, B)>, A} |- B
    -(package private) static TruthValue reduceConjunction(TruthValue v1, TruthValue v2) @@ -347,15 +341,14 @@

    -(package private) static TruthValuetemporalRevision(TruthValue v1, - TruthValue v2, - long t1, - long t2, - long t) +static TruthValuetemporalCasting(TruthValue v1, + long t1, + long t2, + long t)
    -          Revision weighted by time difference
    @@ -373,7 +366,7 @@

    Methods inherited from class nars.inference.UtilityFunctions
    and, aveAri, aveGeo, or, w2cand, aveAri, aveGeo, c2w, or, w2c
      @@ -457,48 +450,6 @@


    -

    -implying

    -
    -static TruthValue implying(TruthValue v1)
    -
    -
    { B>, A} |- B -

    -

    -
    Parameters:
    v1 - Truth value of the premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -implied

    -
    -static TruthValue implied(TruthValue v1)
    -
    -
    { B>, B} |- A -

    -

    -
    Parameters:
    v1 - Truth value of the premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -negImply

    -
    -static TruthValue negImply(TruthValue v1)
    -
    -
    { (--, B)>, A} |- B -

    -

    -
    Parameters:
    v1 - Truth value of the premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    -

    revision

    @@ -514,20 +465,19 @@ 


    -

    -temporalRevision

    +

    +temporalCasting

    -static TruthValue temporalRevision(TruthValue v1,
    -                                   TruthValue v2,
    -                                   long t1,
    -                                   long t2,
    -                                   long t)
    +public static TruthValue temporalCasting(TruthValue v1, + long t1, + long t2, + long t)
    -
    Revision weighted by time difference +
    Casting truth-value v1 from moment t1 to moment t2, with respect to time t

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise
    t1 - Creation time of the first truth value
    t2 - Creation time of the second truth value
    t - Target time of the resulting truth value -
    Returns:
    Truth value of the conclusion
    +
    Parameters:
    v1 - Truth value of the premise to be casted
    t1 - Source time
    t2 - Target time
    t - Reference time +
    Returns:
    Truth value after temporal discount

    @@ -547,6 +497,21 @@


    +

    +deduction

    +
    +static TruthValue deduction(TruthValue v1,
    +                            float reliance)
    +
    +
    {M, P>} |- P +

    +

    +
    Parameters:
    v1 - Truth value of the first premise
    reliance - Confidence of the second (analytical) premise +
    Returns:
    Truth value of the conclusion
    +
    +
    +
    +

    analogy

    @@ -592,6 +557,21 @@ 


    +

    +abduction

    +
    +static TruthValue abduction(TruthValue v1,
    +                            float reliance)
    +
    +
    {M,

    M>} |- P +

    +

    +
    Parameters:
    v1 - Truth value of the first premise
    reliance - Confidence of the second (analytical) premise +
    Returns:
    Truth value of the conclusion
    +
    +
    +
    +

    induction

    @@ -787,11 +767,11 @@ 


    -

    -existAnalogy

    +

    +anonymousAnalogy

    -static TruthValue existAnalogy(TruthValue v1,
    -                               TruthValue v2)
    +static TruthValue anonymousAnalogy(TruthValue v1, + TruthValue v2)
    {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P>

    @@ -831,7 +811,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/inference/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/UtilityFunctions.html index b38cace7..0c5ece0e 100644 --- a/nars-dist/javadoc/nars/inference/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/UtilityFunctions.html @@ -2,13 +2,13 @@ - + UtilityFunctions (NARS Document) - + @@ -164,6 +164,14 @@

    static float +c2w(float c) + +
    +          A function to convert confidence to weight + + + +static float or(float... arr)
    @@ -285,6 +293,20 @@

    Returns:
    The corresponding confidence, in [0, 1)

    +
    + +

    +c2w

    +
    +public static float c2w(float c)
    +
    +
    A function to convert confidence to weight +

    +

    +
    Parameters:
    c - confidence, in [0, 1) +
    Returns:
    The corresponding weight of evidence, a non-negative real number
    +
    +

    diff --git a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html index 144490e8..189aadf0 100644 --- a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.BudgetFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html index 42ca1fc9..39fe92d6 100644 --- a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.CompositionalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html index 7d4a8a47..c40b5bc4 100644 --- a/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.MatchingRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html index b103333e..b8e1c1e0 100644 --- a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.RuleTables (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html index bd2ffb2c..fc512da2 100644 --- a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.StructuralRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html index e6735395..5f5e924e 100644 --- a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.SyllogisticRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html index 7e094035..f54a0b3c 100644 --- a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.TruthFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html index 43507da8..a957d97f 100644 --- a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.UtilityFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-frame.html b/nars-dist/javadoc/nars/inference/package-frame.html index ef4d7559..24607107 100644 --- a/nars-dist/javadoc/nars/inference/package-frame.html +++ b/nars-dist/javadoc/nars/inference/package-frame.html @@ -2,13 +2,13 @@ - + nars.inference (NARS Document) - + @@ -36,8 +36,6 @@
    SyllogisticRules
    -TemporalRules -
    TruthFunctions
    UtilityFunctions
    diff --git a/nars-dist/javadoc/nars/inference/package-summary.html b/nars-dist/javadoc/nars/inference/package-summary.html index c718fb76..4fe14165 100644 --- a/nars-dist/javadoc/nars/inference/package-summary.html +++ b/nars-dist/javadoc/nars/inference/package-summary.html @@ -2,13 +2,13 @@ - + nars.inference (NARS Document) - + @@ -120,10 +120,6 @@

    Syllogisms: Inference rules based on the transitivity of the relation. -TemporalRules -Temporal inference rules - - TruthFunctions All truth-value (and desire-value) functions used in inference rules diff --git a/nars-dist/javadoc/nars/inference/package-tree.html b/nars-dist/javadoc/nars/inference/package-tree.html index 1c8528dc..a896ce3d 100644 --- a/nars-dist/javadoc/nars/inference/package-tree.html +++ b/nars-dist/javadoc/nars/inference/package-tree.html @@ -2,13 +2,13 @@ - + nars.inference Class Hierarchy (NARS Document) - + @@ -93,7 +93,7 @@

    • java.lang.Object diff --git a/nars-dist/javadoc/nars/inference/package-use.html b/nars-dist/javadoc/nars/inference/package-use.html index e4ed2353..2daec499 100644 --- a/nars-dist/javadoc/nars/inference/package-use.html +++ b/nars-dist/javadoc/nars/inference/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.inference (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/ExperienceIO.html b/nars-dist/javadoc/nars/io/ExperienceIO.html index e63cc2b8..d5794d81 100644 --- a/nars-dist/javadoc/nars/io/ExperienceIO.html +++ b/nars-dist/javadoc/nars/io/ExperienceIO.html @@ -2,13 +2,13 @@ - + ExperienceIO (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/Record.html b/nars-dist/javadoc/nars/io/Record.html index ab272dfc..b38a6a3f 100644 --- a/nars-dist/javadoc/nars/io/Record.html +++ b/nars-dist/javadoc/nars/io/Record.html @@ -2,13 +2,13 @@ - + Record (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html index f73c0de4..518eed79 100644 --- a/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html +++ b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html @@ -2,13 +2,13 @@ - + StringParser.InvalidInputException (NARS Document) - + @@ -177,7 +177,7 @@

      StringParser.InvalidInputException

      -public StringParser.InvalidInputException(java.lang.String s)
      +StringParser.InvalidInputException(java.lang.String s)
    An invalid input line.

    diff --git a/nars-dist/javadoc/nars/io/StringParser.html b/nars-dist/javadoc/nars/io/StringParser.html index 223f9808..7e98fd5c 100644 --- a/nars-dist/javadoc/nars/io/StringParser.html +++ b/nars-dist/javadoc/nars/io/StringParser.html @@ -2,13 +2,13 @@ - + StringParser (NARS Document) - + @@ -269,7 +269,7 @@

    parseTask(java.lang.String s)
    -          The only public (static) method of the class, called from InputWindow or locally. +          Enter a new Task in String into the memory, called from InputWindow or locally. @@ -281,7 +281,7 @@

    -private static Term +static Term parseTerm(java.lang.String s0)
    @@ -299,14 +299,6 @@

    private static int -tenseToOrder(java.lang.String t) - -
    -            - - - -private static int topRelation(java.lang.String s)
    @@ -372,7 +364,7 @@

     public static void parseTask(java.lang.String s)
    -
    The only public (static) method of the class, called from InputWindow or locally. +
    Enter a new Task in String into the memory, called from InputWindow or locally.

    Parameters:
    s - the single-line input String
    @@ -411,17 +403,6 @@


    -

    -tenseToOrder

    -
    -private static int tenseToOrder(java.lang.String t)
    -
    -
    -
    -
    -
    -
    -

    getTruthString

    @@ -476,8 +457,7 @@ 

    parseTerm

    -private static Term parseTerm(java.lang.String s0)
    -                       throws StringParser.InvalidInputException
    +public static Term parseTerm(java.lang.String s0)
    Top-level method that parse a Term in general, which may recursively call itself.

    @@ -490,9 +470,7 @@

    Parameters:
    s0 - the String to be parsed -
    Returns:
    the Term generated from the String -
    Throws: -
    StringParser.InvalidInputException - the String cannot be parsed into a Term
    +
    Returns:
    the Term generated from the String


    diff --git a/nars-dist/javadoc/nars/io/Symbols.html b/nars-dist/javadoc/nars/io/Symbols.html index 5c757478..f190f55f 100644 --- a/nars-dist/javadoc/nars/io/Symbols.html +++ b/nars-dist/javadoc/nars/io/Symbols.html @@ -2,13 +2,13 @@ - + Symbols (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html index eb7cbacf..401e05e1 100644 --- a/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html +++ b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.ExperienceIO (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/Record.html b/nars-dist/javadoc/nars/io/class-use/Record.html index f73f0420..fba71ac2 100644 --- a/nars-dist/javadoc/nars/io/class-use/Record.html +++ b/nars-dist/javadoc/nars/io/class-use/Record.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.Record (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html index 70c088a0..513e4052 100644 --- a/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.StringParser.InvalidInputException (NARS Document) - + @@ -169,14 +169,6 @@


              Parse a String to create a Statement. - - -private static Term -StringParser.parseTerm(java.lang.String s0) - -
    -          Top-level method that parse a Term in general, which may recursively call itself. -  

    diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.html b/nars-dist/javadoc/nars/io/class-use/StringParser.html index 8a021996..c29658c3 100644 --- a/nars-dist/javadoc/nars/io/class-use/StringParser.html +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.StringParser (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/Symbols.html b/nars-dist/javadoc/nars/io/class-use/Symbols.html index faf14e3b..d36f7f50 100644 --- a/nars-dist/javadoc/nars/io/class-use/Symbols.html +++ b/nars-dist/javadoc/nars/io/class-use/Symbols.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.Symbols (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-frame.html b/nars-dist/javadoc/nars/io/package-frame.html index 08dc72f5..db19c51e 100644 --- a/nars-dist/javadoc/nars/io/package-frame.html +++ b/nars-dist/javadoc/nars/io/package-frame.html @@ -2,13 +2,13 @@ - + nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-summary.html b/nars-dist/javadoc/nars/io/package-summary.html index 495b8762..f91d27a5 100644 --- a/nars-dist/javadoc/nars/io/package-summary.html +++ b/nars-dist/javadoc/nars/io/package-summary.html @@ -2,13 +2,13 @@ - + nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-tree.html b/nars-dist/javadoc/nars/io/package-tree.html index b6f8ba11..cf0d237b 100644 --- a/nars-dist/javadoc/nars/io/package-tree.html +++ b/nars-dist/javadoc/nars/io/package-tree.html @@ -2,13 +2,13 @@ - + nars.io Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-use.html b/nars-dist/javadoc/nars/io/package-use.html index 095f6ad5..ae894d20 100644 --- a/nars-dist/javadoc/nars/io/package-use.html +++ b/nars-dist/javadoc/nars/io/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/CompoundTerm.html b/nars-dist/javadoc/nars/language/CompoundTerm.html index c4829e9a..203866dc 100644 --- a/nars-dist/javadoc/nars/language/CompoundTerm.html +++ b/nars-dist/javadoc/nars/language/CompoundTerm.html @@ -2,13 +2,13 @@ - + CompoundTerm (NARS Document) - + @@ -285,6 +285,14 @@

    + boolean +containNoVariable() + +
    +          check if the term contains any variable + + +  int getComplexity() @@ -492,6 +500,14 @@

    +protected  void +setName(java.lang.String s) + +
    +          Change the name of a CompoundTerm, called after variable substitution + + +  int size() @@ -514,7 +530,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   @@ -662,6 +678,19 @@


    +

    +setName

    +
    +protected void setName(java.lang.String s)
    +
    +
    Change the name of a CompoundTerm, called after variable substitution +

    +

    +
    Parameters:
    s - The new name
    +
    +
    +
    +

    calcComplexity

    @@ -862,6 +891,20 @@ 


    +

    +containNoVariable

    +
    +public boolean containNoVariable()
    +
    +
    check if the term contains any variable +

    +

    + +
    Returns:
    if the name contains no variable
    +
    +
    +
    +

    isCommutative

    @@ -869,9 +912,9 @@ 

    Check if the order of the components matters

    - commutative CompoundTerms: Sets, Intersections; - communative Statements: Similarity, Equivalence, EquivalenceWhen; - communative CompoundStatements: Disjunction, Conjunction, ConjunctionParallel + commutative CompoundTerms: Sets, Intersections + communative Statements: Similarity, Equivalence (except the one with a temporal order) + communative CompoundStatements: Disjunction, Conjunction (except the one with a temporal order)

    @@ -1124,7 +1167,9 @@

    public void substituteComponent(java.util.HashMap<java.lang.String,Term> subs, boolean first)

    -
    Substitute a variable component according to a given substitution +
    Substitute a variable component according to a given substitution +

    + This method cannot be changed into a static method retuning a new object with a different reference

    Parameters:
    subs - The substitution
    first - Whether it is the first term in the mapping
    diff --git a/nars-dist/javadoc/nars/language/Conjunction.html b/nars-dist/javadoc/nars/language/Conjunction.html index e7f34dc3..95b0d2c5 100644 --- a/nars-dist/javadoc/nars/language/Conjunction.html +++ b/nars-dist/javadoc/nars/language/Conjunction.html @@ -2,13 +2,13 @@ - + Conjunction (NARS Document) - + @@ -124,11 +124,11 @@

    -private  TemporalValue +private  int temporalOrder
    -          Temporal order between the components +          Temporal order between the components: 1 for sequential, 0 for parallel, -1 for N/A   @@ -161,11 +161,11 @@

    protected -Conjunction(java.lang.String n, +Conjunction(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, short i, - TemporalValue order) + int order)
              Constructor with full values, called by clone @@ -173,9 +173,9 @@

    protected -Conjunction(java.lang.String n, +Conjunction(java.lang.String n, java.util.ArrayList<Term> arg, - TemporalValue order) + int order)
              Constructor with partial values, called by make @@ -201,14 +201,14 @@

    static java.lang.String -getConjunctionSymbol(TemporalValue t) +getConjunctionSymbol(int t)
              COnvert a temporal into its String representation - TemporalValue + int getOrder()
    @@ -240,9 +240,17 @@

    + boolean +isTemporal() + +
    +          Whether there is a temporal order in the term, which is false by default + + + static Term -make(java.util.ArrayList<Term> argList, - TemporalValue order) +make(java.util.ArrayList<Term> argList, + int order)
              Try to make a new compound from a list of components. @@ -250,9 +258,9 @@

    static Term -make(Term term1, +make(Term term1, Term term2, - TemporalValue order) + int order)
              Try to make a new compound from two components. @@ -260,8 +268,8 @@

    static Term -make(java.util.TreeSet<Term> set, - TemporalValue order) +make(java.util.TreeSet<Term> set, + int order)
              Try to make a new compound from a set of components. @@ -281,7 +289,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -318,9 +326,9 @@

    temporalOrder

    -private TemporalValue temporalOrder
    +private int temporalOrder
    -
    Temporal order between the components +
    Temporal order between the components: 1 for sequential, 0 for parallel, -1 for N/A

    @@ -336,12 +344,12 @@

    -

    +

    Conjunction

     protected Conjunction(java.lang.String n,
                           java.util.ArrayList<Term> arg,
    -                      TemporalValue order)
    + int order)
    Constructor with partial values, called by make

    @@ -350,14 +358,14 @@


    -

    +

    Conjunction

     protected Conjunction(java.lang.String n,
                           java.util.ArrayList<Term> cs,
                           java.util.ArrayList<Variable> open,
                           short i,
    -                      TemporalValue order)
    + int order)
    Constructor with full values, called by clone

    @@ -409,10 +417,10 @@


    -

    +

    getConjunctionSymbol

    -public static java.lang.String getConjunctionSymbol(TemporalValue t)
    +public static java.lang.String getConjunctionSymbol(int t)
    COnvert a temporal into its String representation

    @@ -443,7 +451,7 @@

    getOrder

    -public TemporalValue getOrder()
    +public int getOrder()
    Return the temporal order.

    @@ -485,11 +493,29 @@


    -

    +

    +isTemporal

    +
    +public boolean isTemporal()
    +
    +
    Description copied from class: Term
    +
    Whether there is a temporal order in the term, which is false by default +

    +

    +
    Overrides:
    isTemporal in class Term
    +
    +
    + +
    Returns:
    The default value
    +
    +
    +
    + +

    make

     public static Term make(java.util.ArrayList<Term> argList,
    -                        TemporalValue order)
    + int order)
    Try to make a new compound from a list of components. Called by StringParser.

    @@ -500,11 +526,11 @@


    -

    +

    make

     public static Term make(java.util.TreeSet<Term> set,
    -                        TemporalValue order)
    + int order)
    Try to make a new compound from a set of components. Called by the public make methods.

    @@ -515,12 +541,12 @@


    -

    +

    make

     public static Term make(Term term1,
                             Term term2,
    -                        TemporalValue order)
    + int order)
    Try to make a new compound from two components. Called by the inference rules.

    diff --git a/nars-dist/javadoc/nars/language/DifferenceExt.html b/nars-dist/javadoc/nars/language/DifferenceExt.html index f0f04699..9e78517f 100644 --- a/nars-dist/javadoc/nars/language/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/DifferenceExt.html @@ -2,13 +2,13 @@ - + DifferenceExt (NARS Document) - + @@ -220,7 +220,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -229,7 +229,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/DifferenceInt.html b/nars-dist/javadoc/nars/language/DifferenceInt.html index dcdc24e0..d16cc0d9 100644 --- a/nars-dist/javadoc/nars/language/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/DifferenceInt.html @@ -2,13 +2,13 @@ - + DifferenceInt (NARS Document) - + @@ -220,7 +220,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -229,7 +229,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/Disjunction.html b/nars-dist/javadoc/nars/language/Disjunction.html index e59bf566..ba4b7cd8 100644 --- a/nars-dist/javadoc/nars/language/Disjunction.html +++ b/nars-dist/javadoc/nars/language/Disjunction.html @@ -2,13 +2,13 @@ - + Disjunction (NARS Document) - + @@ -236,7 +236,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -245,7 +245,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/Equivalence.html b/nars-dist/javadoc/nars/language/Equivalence.html index 0b4f0dc6..05311c0a 100644 --- a/nars-dist/javadoc/nars/language/Equivalence.html +++ b/nars-dist/javadoc/nars/language/Equivalence.html @@ -2,13 +2,13 @@ - + Equivalence (NARS Document) - + @@ -125,11 +125,19 @@

    -private  TemporalValue -temporalOrder +private  boolean +isTemporal
    -          Temporal order between the components +          Whether there is a temporal order between the components + + + +private  int +temporalDistance + +
    +          Temporal distance between the components   @@ -162,11 +170,31 @@

    protected -Equivalence(java.lang.String n, +Equivalence(java.lang.String n, + java.util.ArrayList<Term> arg) + +
    +          Constructor with partial values, called by make + + + +protected +Equivalence(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
    +          Constructor with full values, called by clone + + + +protected +Equivalence(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, short i, - TemporalValue order) + int order)

              Constructor with full values, called by clone @@ -174,9 +202,9 @@

    protected -Equivalence(java.lang.String n, +Equivalence(java.lang.String n, java.util.ArrayList<Term> arg, - TemporalValue order) + int order)
              Constructor with partial values, called by make @@ -202,14 +230,15 @@

    static java.lang.String -getEquivalenceSymbol(TemporalValue t) +getEquivalenceSymbol(boolean temporal, + int distance)
              Get the symbole of the relation by tense - TemporalValue + int getOrder()
    @@ -225,10 +254,19 @@

    + boolean +isTemporal() + +
    +          Whether there is a temporal order in the term, which is false by default + + + static Equivalence -make(Term subject, +make(Term subject, Term predicate, - TemporalValue order) + boolean temporal, + int order)
              Try to make a new compound from two components. @@ -248,7 +286,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -257,7 +295,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -291,12 +329,24 @@

    -

    -temporalOrder

    +

    +isTemporal

    +
    +private boolean isTemporal
    +
    +
    Whether there is a temporal order between the components +

    +

    +
    +
    +
    + +

    +temporalDistance

    -private TemporalValue temporalOrder
    +private int temporalDistance
    -
    Temporal order between the components +
    Temporal distance between the components

    @@ -312,12 +362,25 @@

    -

    +

    +Equivalence

    +
    +protected Equivalence(java.lang.String n,
    +                      java.util.ArrayList<Term> arg)
    +
    +
    Constructor with partial values, called by make +

    +

    +
    Parameters:
    n - The name of the term
    arg - The component list of the term
    +
    +
    + +

    Equivalence

     protected Equivalence(java.lang.String n,
                           java.util.ArrayList<Term> arg,
    -                      TemporalValue order)
    + int order)
    Constructor with partial values, called by make

    @@ -326,14 +389,29 @@


    -

    +

    +Equivalence

    +
    +protected Equivalence(java.lang.String n,
    +                      java.util.ArrayList<Term> cs,
    +                      java.util.ArrayList<Variable> open,
    +                      short i)
    +
    +
    Constructor with full values, called by clone +

    +

    +
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    +
    +
    + +

    Equivalence

     protected Equivalence(java.lang.String n,
                           java.util.ArrayList<Term> cs,
                           java.util.ArrayList<Variable> open,
                           short i,
    -                      TemporalValue order)
    + int order)
    Constructor with full values, called by clone

    @@ -368,17 +446,18 @@


    -

    +

    make

     public static Equivalence make(Term subject,
                                    Term predicate,
    -                               TemporalValue order)
    + boolean temporal, + int order)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    order - The temporal order of the components +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    temporal - Whether the components are temporally related
    order - The temporal order of the components
    Returns:
    A compound generated or null
    @@ -421,7 +500,7 @@

    getOrder

    -public TemporalValue getOrder()
    +public int getOrder()
    Get the temporal order.

    @@ -435,18 +514,37 @@


    -

    +

    getEquivalenceSymbol

    -public static java.lang.String getEquivalenceSymbol(TemporalValue t)
    +public static java.lang.String getEquivalenceSymbol(boolean temporal, + int distance)
    Get the symbole of the relation by tense

    -
    Parameters:
    t - The tense of the statement +
    Parameters:
    temporal - Whether the components are temprally related
    distance - The temporal distance between the components
    Returns:
    The String representation of the relation
    +
    + +

    +isTemporal

    +
    +public boolean isTemporal()
    +
    +
    Description copied from class: Term
    +
    Whether there is a temporal order in the term, which is false by default +

    +

    +
    Overrides:
    isTemporal in class Term
    +
    +
    + +
    Returns:
    The default value
    +
    +

    diff --git a/nars-dist/javadoc/nars/language/ImageExt.html b/nars-dist/javadoc/nars/language/ImageExt.html index cf63a56d..74410b0f 100644 --- a/nars-dist/javadoc/nars/language/ImageExt.html +++ b/nars-dist/javadoc/nars/language/ImageExt.html @@ -2,13 +2,13 @@ - + ImageExt (NARS Document) - + @@ -270,7 +270,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -279,7 +279,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/ImageInt.html b/nars-dist/javadoc/nars/language/ImageInt.html index cb608015..6ff117d1 100644 --- a/nars-dist/javadoc/nars/language/ImageInt.html +++ b/nars-dist/javadoc/nars/language/ImageInt.html @@ -2,13 +2,13 @@ - + ImageInt (NARS Document) - + @@ -270,7 +270,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -279,7 +279,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/Implication.html b/nars-dist/javadoc/nars/language/Implication.html index 7156431b..594e837b 100644 --- a/nars-dist/javadoc/nars/language/Implication.html +++ b/nars-dist/javadoc/nars/language/Implication.html @@ -2,13 +2,13 @@ - + Implication (NARS Document) - + @@ -125,11 +125,19 @@

    -private  TemporalValue -temporalOrder +private  boolean +isTemporal
    -          Temporal order between the components +          Whether there is a temporal order between the components + + + +private  int +temporalDistance + +
    +          Temporal distance between the components   @@ -162,11 +170,31 @@

    protected -Implication(java.lang.String n, +Implication(java.lang.String n, + java.util.ArrayList<Term> arg) + +
    +          Constructor with partial values, called by make + + + +protected +Implication(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
    +          Constructor with full values, called by clone + + + +protected +Implication(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, short i, - TemporalValue order) + int order)

              Constructor with full values, called by clone @@ -174,9 +202,9 @@

    protected -Implication(java.lang.String n, +Implication(java.lang.String n, java.util.ArrayList<Term> arg, - TemporalValue order) + int order)
              Constructor with partial values, called by make @@ -201,7 +229,7 @@

    - TemporalValue + int getOrder()
    @@ -210,17 +238,26 @@

    static java.lang.String -getSymbol(TemporalValue t) +getSymbol(int t)
              Convert a TemporalValue into its String representation + boolean +isTemporal() + +
    +          Whether there is a temporal order in the term, which is false by default + + + static Implication -make(Term subject, +make(Term subject, Term predicate, - TemporalValue order) + boolean temporal, + int order)
              Try to make a new compound from two components. @@ -240,7 +277,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -249,7 +286,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -283,12 +320,24 @@

    -

    -temporalOrder

    +

    +isTemporal

    +
    +private boolean isTemporal
    +
    +
    Whether there is a temporal order between the components +

    +

    +
    +
    +
    + +

    +temporalDistance

    -private TemporalValue temporalOrder
    +private int temporalDistance
    -
    Temporal order between the components +
    Temporal distance between the components

    @@ -304,12 +353,25 @@

    -

    +

    +Implication

    +
    +protected Implication(java.lang.String n,
    +                      java.util.ArrayList<Term> arg)
    +
    +
    Constructor with partial values, called by make +

    +

    +
    Parameters:
    n - The name of the term
    arg - The component list of the term
    +
    +
    + +

    Implication

     protected Implication(java.lang.String n,
                           java.util.ArrayList<Term> arg,
    -                      TemporalValue order)
    + int order)
    Constructor with partial values, called by make

    @@ -318,14 +380,29 @@


    -

    +

    +Implication

    +
    +protected Implication(java.lang.String n,
    +                      java.util.ArrayList<Term> cs,
    +                      java.util.ArrayList<Variable> open,
    +                      short i)
    +
    +
    Constructor with full values, called by clone +

    +

    +
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    +
    +
    + +

    Implication

     protected Implication(java.lang.String n,
                           java.util.ArrayList<Term> cs,
                           java.util.ArrayList<Variable> open,
                           short i,
    -                      TemporalValue order)
    + int order)
    Constructor with full values, called by clone

    @@ -360,17 +437,18 @@


    -

    +

    make

     public static Implication make(Term subject,
                                    Term predicate,
    -                               TemporalValue order)
    + boolean temporal, + int order)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    order - The temporal order of the components +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    temporal - Whether there is a temporal relation
    order - The temporal order of the components
    Returns:
    A compound generated or a term it reduced to
    @@ -396,7 +474,7 @@

    getOrder

    -public TemporalValue getOrder()
    +public int getOrder()
    Get the order of the components.

    @@ -410,10 +488,10 @@


    -

    +

    getSymbol

    -public static java.lang.String getSymbol(TemporalValue t)
    +public static java.lang.String getSymbol(int t)
    Convert a TemporalValue into its String representation

    @@ -422,6 +500,24 @@

    Returns:
    The the String representation

    +
    + +

    +isTemporal

    +
    +public boolean isTemporal()
    +
    +
    Description copied from class: Term
    +
    Whether there is a temporal order in the term, which is false by default +

    +

    +
    Overrides:
    isTemporal in class Term
    +
    +
    + +
    Returns:
    The default value
    +
    +

    diff --git a/nars-dist/javadoc/nars/language/Inheritance.html b/nars-dist/javadoc/nars/language/Inheritance.html index 9946269c..4b9c9a5e 100644 --- a/nars-dist/javadoc/nars/language/Inheritance.html +++ b/nars-dist/javadoc/nars/language/Inheritance.html @@ -2,13 +2,13 @@ - + Inheritance (NARS Document) - + @@ -213,7 +213,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -222,7 +222,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -231,7 +231,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/Instance.html b/nars-dist/javadoc/nars/language/Instance.html index 34b3fced..5516bfea 100644 --- a/nars-dist/javadoc/nars/language/Instance.html +++ b/nars-dist/javadoc/nars/language/Instance.html @@ -2,13 +2,13 @@ - + Instance (NARS Document) - + @@ -184,7 +184,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -193,7 +193,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -202,7 +202,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/InstanceProperty.html b/nars-dist/javadoc/nars/language/InstanceProperty.html index e64b2f30..8aea7529 100644 --- a/nars-dist/javadoc/nars/language/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/InstanceProperty.html @@ -2,13 +2,13 @@ - + InstanceProperty (NARS Document) - + @@ -184,7 +184,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -193,7 +193,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -202,7 +202,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/IntersectionExt.html b/nars-dist/javadoc/nars/language/IntersectionExt.html index 22bc90e8..d0b59550 100644 --- a/nars-dist/javadoc/nars/language/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/IntersectionExt.html @@ -2,13 +2,13 @@ - + IntersectionExt (NARS Document) - + @@ -236,7 +236,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -245,7 +245,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/IntersectionInt.html b/nars-dist/javadoc/nars/language/IntersectionInt.html index 27a9ce3c..69a3af5a 100644 --- a/nars-dist/javadoc/nars/language/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/IntersectionInt.html @@ -2,13 +2,13 @@ - + IntersectionInt (NARS Document) - + @@ -236,7 +236,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -245,7 +245,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/Negation.html b/nars-dist/javadoc/nars/language/Negation.html index ea3a6720..9b07c242 100644 --- a/nars-dist/javadoc/nars/language/Negation.html +++ b/nars-dist/javadoc/nars/language/Negation.html @@ -2,13 +2,13 @@ - + Negation (NARS Document) - + @@ -219,7 +219,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -228,7 +228,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/Product.html b/nars-dist/javadoc/nars/language/Product.html index 04a92925..fac2333d 100644 --- a/nars-dist/javadoc/nars/language/Product.html +++ b/nars-dist/javadoc/nars/language/Product.html @@ -2,13 +2,13 @@ - + Product (NARS Document) - + @@ -221,7 +221,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -230,7 +230,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/Property.html b/nars-dist/javadoc/nars/language/Property.html index c3692529..ac1793b8 100644 --- a/nars-dist/javadoc/nars/language/Property.html +++ b/nars-dist/javadoc/nars/language/Property.html @@ -2,13 +2,13 @@ - + Property (NARS Document) - + @@ -184,7 +184,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -193,7 +193,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -202,7 +202,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/SetExt.html b/nars-dist/javadoc/nars/language/SetExt.html index f8259f04..cb65e163 100644 --- a/nars-dist/javadoc/nars/language/SetExt.html +++ b/nars-dist/javadoc/nars/language/SetExt.html @@ -2,13 +2,13 @@ - + SetExt (NARS Document) - + @@ -243,7 +243,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -252,7 +252,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/SetInt.html b/nars-dist/javadoc/nars/language/SetInt.html index d92e35b6..b9b496d9 100644 --- a/nars-dist/javadoc/nars/language/SetInt.html +++ b/nars-dist/javadoc/nars/language/SetInt.html @@ -2,13 +2,13 @@ - + SetInt (NARS Document) - + @@ -243,7 +243,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -252,7 +252,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/Similarity.html b/nars-dist/javadoc/nars/language/Similarity.html index 1f5f1927..35935e65 100644 --- a/nars-dist/javadoc/nars/language/Similarity.html +++ b/nars-dist/javadoc/nars/language/Similarity.html @@ -2,13 +2,13 @@ - + Similarity (NARS Document) - + @@ -221,7 +221,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym   @@ -230,7 +230,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -239,7 +239,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/language/Statement.html b/nars-dist/javadoc/nars/language/Statement.html index 921c0534..24e5390a 100644 --- a/nars-dist/javadoc/nars/language/Statement.html +++ b/nars-dist/javadoc/nars/language/Statement.html @@ -2,13 +2,13 @@ - + Statement (NARS Document) - + @@ -246,10 +246,11 @@

    static Statement -make(Statement statement, +make(Statement statement, Term subj, Term pred, - TemporalValue t) + boolean temporal, + int distance)
              Make a Statement from given components and temporal information, called by the rules @@ -285,10 +286,11 @@

    static Statement -makeSym(Statement statement, +makeSym(Statement statement, Term subj, Term pred, - TemporalValue t) + boolean temporal, + int distance)
              Make a symmetric Statement from given components and temporal information, called by the rules @@ -300,7 +302,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, size, substituteComponent +addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent   @@ -309,7 +311,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, toString +compareTo, equals, getName, getOrder, hashCode, isTemporal, toString   @@ -413,35 +415,37 @@


    -

    +

    make

     public static Statement make(Statement statement,
                                  Term subj,
                                  Term pred,
    -                             TemporalValue t)
    + boolean temporal, + int distance)
    Make a Statement from given components and temporal information, called by the rules

    -
    Parameters:
    statement - A sample statement providing the class type
    subj - The first component
    pred - The second component
    t - The temporal order of the statement +
    Parameters:
    statement - A sample statement providing the class type
    subj - The first component
    pred - The second component
    temporal - Whether there is a temporal relation between the components
    distance - The temporal distance between the components
    Returns:
    The Statement built

    -

    +

    makeSym

     public static Statement makeSym(Statement statement,
                                     Term subj,
                                     Term pred,
    -                                TemporalValue t)
    + boolean temporal, + int distance)
    Make a symmetric Statement from given components and temporal information, called by the rules

    -
    Parameters:
    statement - A sample asymmetric statement providing the class type
    subj - The first component
    pred - The second component
    t - The temporal order of the statement +
    Parameters:
    statement - A sample asymmetric statement providing the class type
    subj - The first component
    pred - The second component
    temporal - Whether there is a temporal relation between the components
    distance - The temporal distance between the components
    Returns:
    The Statement built
    diff --git a/nars-dist/javadoc/nars/language/Term.html b/nars-dist/javadoc/nars/language/Term.html index d92e9712..920212a8 100644 --- a/nars-dist/javadoc/nars/language/Term.html +++ b/nars-dist/javadoc/nars/language/Term.html @@ -2,13 +2,13 @@ - + Term (NARS Document) - + @@ -221,11 +221,11 @@

    - TemporalValue + int getOrder()
    -          Get the temporal order in a term, which is null by default +          Obtain the temporal order in the term @@ -245,6 +245,14 @@

    + boolean +isTemporal() + +
    +          Whether there is a temporal order in the term, which is false by default + + +  java.lang.String toString() @@ -330,7 +338,7 @@

    toString

    -public final java.lang.String toString()
    +public java.lang.String toString()
    The same as getName, used in display.

    @@ -482,19 +490,36 @@


    +

    +isTemporal

    +
    +public boolean isTemporal()
    +
    +
    Whether there is a temporal order in the term, which is false by default +

    +

    +
    +
    +
    + +
    Returns:
    The default value
    +
    +
    +
    +

    getOrder

    -public TemporalValue getOrder()
    +public int getOrder()
    -
    Get the temporal order in a term, which is null by default +
    Obtain the temporal order in the term

    -
    Returns:
    The default temporal order
    +
    Returns:
    The default value

    diff --git a/nars-dist/javadoc/nars/language/Variable.VarType.html b/nars-dist/javadoc/nars/language/Variable.VarType.html index 424c5589..c58bb37d 100644 --- a/nars-dist/javadoc/nars/language/Variable.VarType.html +++ b/nars-dist/javadoc/nars/language/Variable.VarType.html @@ -2,13 +2,13 @@ - + Variable.VarType (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Variable.html b/nars-dist/javadoc/nars/language/Variable.html index 473e33e8..c22c0248 100644 --- a/nars-dist/javadoc/nars/language/Variable.html +++ b/nars-dist/javadoc/nars/language/Variable.html @@ -2,13 +2,13 @@ - + Variable (NARS Document) - + @@ -219,6 +219,17 @@

    +private static java.util.HashMap<java.lang.String,Term> +findSubstitute(Variable.VarType type, + java.util.ArrayList<Term> list1, + java.util.ArrayList<Term> list2, + java.util.HashMap<java.lang.String,Term> subs) + +
    +          To recursively find a substitution that can unify two sets of Term in any order + + + static java.util.HashMap<java.lang.String,Term> findSubstitute(Variable.VarType type, Term term1, @@ -350,7 +361,7 @@

    Methods inherited from class nars.language.Term -compareTo, getComplexity, getOrder, toString +compareTo, getComplexity, getOrder, isTemporal, toString   @@ -679,6 +690,23 @@


    +

    +findSubstitute

    +
    +private static java.util.HashMap<java.lang.String,Term> findSubstitute(Variable.VarType type,
    +                                                                       java.util.ArrayList<Term> list1,
    +                                                                       java.util.ArrayList<Term> list2,
    +                                                                       java.util.HashMap<java.lang.String,Term> subs)
    +
    +
    To recursively find a substitution that can unify two sets of Term in any order +

    +

    +
    Parameters:
    type - The type of Variable to be substituted
    list1 - The first Term set to be unified
    list2 - The second Term set to be unified
    subs - The substitution formed so far +
    Returns:
    The substitution that unifies the two lists
    +
    +
    +
    +

    findSubstituteVar

    diff --git a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html
    index 0d3514fd..3f5d3f9f 100644
    --- a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html
    +++ b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Uses of Class nars.language.CompoundTerm (NARS Document)
     
     
    -
    +
     
     
     
    @@ -118,7 +118,7 @@ 

    (package private) static void -CompositionalRules.abdVarDepOuter(CompoundTerm compound, +CompositionalRules.anaVarDepOuter(CompoundTerm compound, Term component, boolean compoundTask) diff --git a/nars-dist/javadoc/nars/language/class-use/Conjunction.html b/nars-dist/javadoc/nars/language/class-use/Conjunction.html index 856d0ce3..4ddb1e98 100644 --- a/nars-dist/javadoc/nars/language/class-use/Conjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Conjunction.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Conjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html index 0fc41c51..abe099ec 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.DifferenceExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html index 7588628d..005bb335 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.DifferenceInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Disjunction.html b/nars-dist/javadoc/nars/language/class-use/Disjunction.html index 265aea11..8ee8b549 100644 --- a/nars-dist/javadoc/nars/language/class-use/Disjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Disjunction.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Disjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Equivalence.html b/nars-dist/javadoc/nars/language/class-use/Equivalence.html index 7d34bc1e..1a8c40e5 100644 --- a/nars-dist/javadoc/nars/language/class-use/Equivalence.html +++ b/nars-dist/javadoc/nars/language/class-use/Equivalence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Equivalence (NARS Document) - + @@ -114,9 +114,10 @@

    static Equivalence -Equivalence.make(Term subject, +Equivalence.make(Term subject, Term predicate, - TemporalValue order) + boolean temporal, + int order)
              Try to make a new compound from two components. diff --git a/nars-dist/javadoc/nars/language/class-use/ImageExt.html b/nars-dist/javadoc/nars/language/class-use/ImageExt.html index 1c816d60..5a7a2817 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageExt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImageExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ImageInt.html b/nars-dist/javadoc/nars/language/class-use/ImageInt.html index ad30db67..7d9212ed 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageInt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImageInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Implication.html b/nars-dist/javadoc/nars/language/class-use/Implication.html index 03927cf6..4cba0a59 100644 --- a/nars-dist/javadoc/nars/language/class-use/Implication.html +++ b/nars-dist/javadoc/nars/language/class-use/Implication.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Implication (NARS Document) - + @@ -159,9 +159,10 @@

    static Implication -Implication.make(Term subject, +Implication.make(Term subject, Term predicate, - TemporalValue order) + boolean temporal, + int order)
              Try to make a new compound from two components. diff --git a/nars-dist/javadoc/nars/language/class-use/Inheritance.html b/nars-dist/javadoc/nars/language/class-use/Inheritance.html index ce98c38a..e65d4e01 100644 --- a/nars-dist/javadoc/nars/language/class-use/Inheritance.html +++ b/nars-dist/javadoc/nars/language/class-use/Inheritance.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Inheritance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Instance.html b/nars-dist/javadoc/nars/language/class-use/Instance.html index 6f63391c..eec4d9a1 100644 --- a/nars-dist/javadoc/nars/language/class-use/Instance.html +++ b/nars-dist/javadoc/nars/language/class-use/Instance.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Instance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html index e1be74f4..bf79e65d 100644 --- a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.InstanceProperty (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html index 4c881f29..712cbafb 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.IntersectionExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html index 27319c28..09b7da64 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.IntersectionInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Negation.html b/nars-dist/javadoc/nars/language/class-use/Negation.html index 329ee6fb..d0151941 100644 --- a/nars-dist/javadoc/nars/language/class-use/Negation.html +++ b/nars-dist/javadoc/nars/language/class-use/Negation.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Negation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Product.html b/nars-dist/javadoc/nars/language/class-use/Product.html index a8a683aa..64b5b9a0 100644 --- a/nars-dist/javadoc/nars/language/class-use/Product.html +++ b/nars-dist/javadoc/nars/language/class-use/Product.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Product (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Property.html b/nars-dist/javadoc/nars/language/class-use/Property.html index 4be78fc8..e548e0d3 100644 --- a/nars-dist/javadoc/nars/language/class-use/Property.html +++ b/nars-dist/javadoc/nars/language/class-use/Property.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Property (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/SetExt.html b/nars-dist/javadoc/nars/language/class-use/SetExt.html index f1fd9d33..d109c600 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetExt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.SetExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/SetInt.html b/nars-dist/javadoc/nars/language/class-use/SetInt.html index 97e6f905..d21f824d 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetInt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.SetInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Similarity.html b/nars-dist/javadoc/nars/language/class-use/Similarity.html index 9c77d2e6..3f33619d 100644 --- a/nars-dist/javadoc/nars/language/class-use/Similarity.html +++ b/nars-dist/javadoc/nars/language/class-use/Similarity.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Similarity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Statement.html b/nars-dist/javadoc/nars/language/class-use/Statement.html index 178755f7..2dde85b4 100644 --- a/nars-dist/javadoc/nars/language/class-use/Statement.html +++ b/nars-dist/javadoc/nars/language/class-use/Statement.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Statement (NARS Document) - + @@ -410,10 +410,11 @@

    static Statement -Statement.make(Statement statement, +Statement.make(Statement statement, Term subj, Term pred, - TemporalValue t) + boolean temporal, + int distance)
              Make a Statement from given components and temporal information, called by the rules @@ -458,10 +459,11 @@

    static Statement -Statement.makeSym(Statement statement, +Statement.makeSym(Statement statement, Term subj, Term pred, - TemporalValue t) + boolean temporal, + int distance)
              Make a symmetric Statement from given components and temporal information, called by the rules @@ -487,10 +489,11 @@

    static Statement -Statement.make(Statement statement, +Statement.make(Statement statement, Term subj, Term pred, - TemporalValue t) + boolean temporal, + int distance)
              Make a Statement from given components and temporal information, called by the rules @@ -498,10 +501,11 @@

    static Statement -Statement.makeSym(Statement statement, +Statement.makeSym(Statement statement, Term subj, Term pred, - TemporalValue t) + boolean temporal, + int distance)
              Make a symmetric Statement from given components and temporal information, called by the rules diff --git a/nars-dist/javadoc/nars/language/class-use/Term.html b/nars-dist/javadoc/nars/language/class-use/Term.html index 87cce043..a7e0765b 100644 --- a/nars-dist/javadoc/nars/language/class-use/Term.html +++ b/nars-dist/javadoc/nars/language/class-use/Term.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Term (NARS Document) - + @@ -214,11 +214,12 @@

    static Sentence -Sentence.make(Sentence oldS, +Sentence.make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, - TemporalValue tense) + Sentence premise1, + Sentence premise2)
              Make a derived Sentence from a template and some initial values. @@ -226,11 +227,12 @@

    static Sentence -Sentence.make(Term term, +Sentence.make(Term term, char punc, TruthValue truth, Stamp stamp, - TemporalValue tense) + Sentence premise1, + Sentence premise2)
              Make a Sentence from an input String. @@ -267,10 +269,12 @@

              Constructor -Judgment(Term term, +Judgment(Term term, char punc, TruthValue t, - Stamp b) + Stamp b, + Sentence premise1, + Sentence premise2)
              Constructor @@ -281,7 +285,7 @@

    Stamp s)
    -          COnstructor +          Constructor TermLink(Term t, @@ -331,16 +335,6 @@

    (package private) static void -CompositionalRules.abdVarDepOuter(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S> - - - -(package private) static void SyllogisticRules.analogy(Term term1, Term term2, Sentence asym, @@ -352,6 +346,16 @@

    +(package private) static void +CompositionalRules.anaVarDepOuter(CompoundTerm compound, + Term component, + boolean compoundTask) + +
    +          {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S> + + + private static void RuleTables.compoundAndSelf(CompoundTerm compound, Term component, @@ -523,7 +527,7 @@

    -(package private) static void +static void StructuralRules.transformNegation(Term content)
    @@ -564,7 +568,7 @@

    -private static Term +static Term StringParser.parseTerm(java.lang.String s0)
    @@ -931,16 +935,16 @@

    static Term -ImageExt.make(java.util.ArrayList<Term> argument, - short index) +Conjunction.make(java.util.ArrayList<Term> argList, + int order)
    -          Try to make a new compound from a set of components. +          Try to make a new compound from a list of components. static Term -ImageInt.make(java.util.ArrayList<Term> argument, +ImageExt.make(java.util.ArrayList<Term> argument, short index)
    @@ -949,11 +953,11 @@

    static Term -Conjunction.make(java.util.ArrayList<Term> argList, - TemporalValue order) +ImageInt.make(java.util.ArrayList<Term> argument, + short index)
    -          Try to make a new compound from a list of components. +          Try to make a new compound from a set of components. @@ -1095,9 +1099,9 @@

    static Term -Conjunction.make(Term term1, +Conjunction.make(Term term1, Term term2, - TemporalValue order) + int order)
              Try to make a new compound from two components. @@ -1145,8 +1149,8 @@

    static Term -Conjunction.make(java.util.TreeSet<Term> set, - TemporalValue order) +Conjunction.make(java.util.TreeSet<Term> set, + int order)
              Try to make a new compound from a set of components. @@ -1207,6 +1211,17 @@

    +private static java.util.HashMap<java.lang.String,Term> +Variable.findSubstitute(Variable.VarType type, + java.util.ArrayList<Term> list1, + java.util.ArrayList<Term> list2, + java.util.HashMap<java.lang.String,Term> subs) + +
    +          To recursively find a substitution that can unify two sets of Term in any order + + + static java.util.HashMap<java.lang.String,Term> Variable.findSubstitute(Variable.VarType type, Term term1, @@ -1417,10 +1432,11 @@

    static Statement -Statement.make(Statement statement, +Statement.make(Statement statement, Term subj, Term pred, - TemporalValue t) + boolean temporal, + int distance)
              Make a Statement from given components and temporal information, called by the rules @@ -1551,30 +1567,32 @@

    -static Term -Conjunction.make(Term term1, - Term term2, - TemporalValue order) +static Equivalence +Equivalence.make(Term subject, + Term predicate, + boolean temporal, + int order)
              Try to make a new compound from two components. -static Equivalence -Equivalence.make(Term subject, +static Implication +Implication.make(Term subject, Term predicate, - TemporalValue order) + boolean temporal, + int order)
              Try to make a new compound from two components. -static Implication -Implication.make(Term subject, - Term predicate, - TemporalValue order) +static Term +Conjunction.make(Term term1, + Term term2, + int order)
              Try to make a new compound from two components. @@ -1592,10 +1610,11 @@

    static Statement -Statement.makeSym(Statement statement, +Statement.makeSym(Statement statement, Term subj, Term pred, - TemporalValue t) + boolean temporal, + int distance)
              Make a symmetric Statement from given components and temporal information, called by the rules @@ -1652,6 +1671,39 @@

    private static java.util.HashMap<java.lang.String,Term> +Variable.findSubstitute(Variable.VarType type, + java.util.ArrayList<Term> list1, + java.util.ArrayList<Term> list2, + java.util.HashMap<java.lang.String,Term> subs) + +
    +          To recursively find a substitution that can unify two sets of Term in any order + + + +private static java.util.HashMap<java.lang.String,Term> +Variable.findSubstitute(Variable.VarType type, + java.util.ArrayList<Term> list1, + java.util.ArrayList<Term> list2, + java.util.HashMap<java.lang.String,Term> subs) + +
    +          To recursively find a substitution that can unify two sets of Term in any order + + + +private static java.util.HashMap<java.lang.String,Term> +Variable.findSubstitute(Variable.VarType type, + java.util.ArrayList<Term> list1, + java.util.ArrayList<Term> list2, + java.util.HashMap<java.lang.String,Term> subs) + +
    +          To recursively find a substitution that can unify two sets of Term in any order + + + +private static java.util.HashMap<java.lang.String,Term> Variable.findSubstitute(Variable.VarType type, Term term1, Term term2, @@ -1763,16 +1815,16 @@

    static Term -ImageExt.make(java.util.ArrayList<Term> argument, - short index) +Conjunction.make(java.util.ArrayList<Term> argList, + int order)
    -          Try to make a new compound from a set of components. +          Try to make a new compound from a list of components. static Term -ImageInt.make(java.util.ArrayList<Term> argument, +ImageExt.make(java.util.ArrayList<Term> argument, short index)
    @@ -1781,11 +1833,11 @@

    static Term -Conjunction.make(java.util.ArrayList<Term> argList, - TemporalValue order) +ImageInt.make(java.util.ArrayList<Term> argument, + short index)
    -          Try to make a new compound from a list of components. +          Try to make a new compound from a set of components. @@ -1848,8 +1900,8 @@

    static Term -Conjunction.make(java.util.TreeSet<Term> set, - TemporalValue order) +Conjunction.make(java.util.TreeSet<Term> set, + int order)
              Try to make a new compound from a set of components. @@ -1917,19 +1969,19 @@

              Constructor called from subclasses constructors to clone the fields -Conjunction(java.lang.String n, +Conjunction(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, short i, - TemporalValue order) + int order)
              Constructor with full values, called by clone -Conjunction(java.lang.String n, +Conjunction(java.lang.String n, java.util.ArrayList<Term> arg, - TemporalValue order) + int order)
              Constructor with partial values, called by make @@ -1983,19 +2035,35 @@

              Constructor with full values, called by clone -Equivalence(java.lang.String n, +Equivalence(java.lang.String n, + java.util.ArrayList<Term> arg) + +
    +          Constructor with partial values, called by make + + +Equivalence(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
    +          Constructor with full values, called by clone + + +Equivalence(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, short i, - TemporalValue order) + int order)

              Constructor with full values, called by clone -Equivalence(java.lang.String n, +Equivalence(java.lang.String n, java.util.ArrayList<Term> arg, - TemporalValue order) + int order)
              Constructor with partial values, called by make @@ -2037,19 +2105,35 @@

              constructor with partial values, called by make -Implication(java.lang.String n, +Implication(java.lang.String n, + java.util.ArrayList<Term> arg) + +
    +          Constructor with partial values, called by make + + +Implication(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
    +          Constructor with full values, called by clone + + +Implication(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, short i, - TemporalValue order) + int order)

              Constructor with full values, called by clone -Implication(java.lang.String n, +Implication(java.lang.String n, java.util.ArrayList<Term> arg, - TemporalValue order) + int order)
              Constructor with partial values, called by make @@ -2260,9 +2344,11 @@

    static void -Memory.doublePremiseTask(BudgetValue budget, +Memory.doublePremiseTask(BudgetValue budget, Term content, - TruthValue truth) + TruthValue truth, + Sentence premise1, + Sentence premise2)
              Shared final operations by all double-premise rules, called from the rules except StructuralRules @@ -2278,9 +2364,22 @@

    static void -Memory.singlePremiseTask(BudgetValue budget, +Memory.revisionTask(BudgetValue budget, + Term content, + TruthValue truth, + Sentence premise1, + Sentence premise2) + +
    +          The final operations of the revision rules, called from MatchingRules + + + +static void +Memory.singlePremiseTask(BudgetValue budget, Term content, - TruthValue truth) + TruthValue truth, + Sentence premise)

              Shared final operations by all single-premise rules, called in StructuralRules diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html index 2add1153..22c2fbca 100644 --- a/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html +++ b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Variable.VarType (NARS Document) - + @@ -162,6 +162,17 @@

    +private static java.util.HashMap<java.lang.String,Term> +Variable.findSubstitute(Variable.VarType type, + java.util.ArrayList<Term> list1, + java.util.ArrayList<Term> list2, + java.util.HashMap<java.lang.String,Term> subs) + +
    +          To recursively find a substitution that can unify two sets of Term in any order + + + static java.util.HashMap<java.lang.String,Term> Variable.findSubstitute(Variable.VarType type, Term term1, diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.html b/nars-dist/javadoc/nars/language/class-use/Variable.html index 5d2ed9b0..63b29427 100644 --- a/nars-dist/javadoc/nars/language/class-use/Variable.html +++ b/nars-dist/javadoc/nars/language/class-use/Variable.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Variable (NARS Document) - + @@ -182,11 +182,11 @@

              Constructor called from subclasses constructors to clone the fields -Conjunction(java.lang.String n, +Conjunction(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, short i, - TemporalValue order) + int order)
              Constructor with full values, called by clone @@ -219,11 +219,20 @@

              Constructor with full values, called by clone -Equivalence(java.lang.String n, +Equivalence(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
    +          Constructor with full values, called by clone + + +Equivalence(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, short i, - TemporalValue order) + int order)

              Constructor with full values, called by clone @@ -249,11 +258,20 @@

              Constructor with full values, called by clone -Implication(java.lang.String n, +Implication(java.lang.String n, + java.util.ArrayList<Term> cs, + java.util.ArrayList<Variable> open, + short i) + +
    +          Constructor with full values, called by clone + + +Implication(java.lang.String n, java.util.ArrayList<Term> cs, java.util.ArrayList<Variable> open, short i, - TemporalValue order) + int order)

              Constructor with full values, called by clone diff --git a/nars-dist/javadoc/nars/language/package-frame.html b/nars-dist/javadoc/nars/language/package-frame.html index 79f584e7..8317351b 100644 --- a/nars-dist/javadoc/nars/language/package-frame.html +++ b/nars-dist/javadoc/nars/language/package-frame.html @@ -2,13 +2,13 @@ - + nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-summary.html b/nars-dist/javadoc/nars/language/package-summary.html index 8199b8c1..138d0e95 100644 --- a/nars-dist/javadoc/nars/language/package-summary.html +++ b/nars-dist/javadoc/nars/language/package-summary.html @@ -2,13 +2,13 @@ - + nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-tree.html b/nars-dist/javadoc/nars/language/package-tree.html index d9d43648..a9942bec 100644 --- a/nars-dist/javadoc/nars/language/package-tree.html +++ b/nars-dist/javadoc/nars/language/package-tree.html @@ -2,13 +2,13 @@ - + nars.language Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-use.html b/nars-dist/javadoc/nars/language/package-use.html index b4bf0a04..c068f5f1 100644 --- a/nars-dist/javadoc/nars/language/package-use.html +++ b/nars-dist/javadoc/nars/language/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/Center.html b/nars-dist/javadoc/nars/main/Center.html index e0a0eaeb..59804bf5 100644 --- a/nars-dist/javadoc/nars/main/Center.html +++ b/nars-dist/javadoc/nars/main/Center.html @@ -2,13 +2,13 @@ - + Center (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/Memory.html b/nars-dist/javadoc/nars/main/Memory.html index 7c3215fb..f13c9a7e 100644 --- a/nars-dist/javadoc/nars/main/Memory.html +++ b/nars-dist/javadoc/nars/main/Memory.html @@ -2,13 +2,13 @@ - + Memory (NARS Document) - + @@ -143,14 +143,6 @@

    -static Stamp -currentStamp - -
    -          Shortcut to the derived Stamp - - - static Task currentTask @@ -167,19 +159,19 @@

    -static TemporalValue -currentTense +static Term +currentTerm
    -          Shortcut to the derived tense +          Shortcut to the selected Term -static Term -currentTerm +static Stamp +newStamp
    -          Shortcut to the selected Term +          Shortcut to the derived Stamp @@ -304,9 +296,11 @@

    static void -doublePremiseTask(BudgetValue budget, +doublePremiseTask(BudgetValue budget, Term content, - TruthValue truth) + TruthValue truth, + Sentence premise1, + Sentence premise2)
              Shared final operations by all double-premise rules, called from the rules except StructuralRules @@ -437,9 +431,22 @@

    static void -singlePremiseTask(BudgetValue budget, +revisionTask(BudgetValue budget, + Term content, + TruthValue truth, + Sentence premise1, + Sentence premise2) + +
    +          The final operations of the revision rules, called from MatchingRules + + + +static void +singlePremiseTask(BudgetValue budget, Term content, - TruthValue truth) + TruthValue truth, + Sentence premise)

              Shared final operations by all single-premise rules, called in StructuralRules @@ -595,28 +602,16 @@


    -

    -currentStamp

    +

    +newStamp

    -public static Stamp currentStamp
    +public static Stamp newStamp
    Shortcut to the derived Stamp

    -
    - -

    -currentTense

    -
    -public static TemporalValue currentTense
    -
    -
    Shortcut to the derived tense -

    -

    -
    -
    @@ -824,32 +819,52 @@


    -

    +

    doublePremiseTask

     public static void doublePremiseTask(BudgetValue budget,
                                          Term content,
    -                                     TruthValue truth)
    + TruthValue truth, + Sentence premise1, + Sentence premise2)
    Shared final operations by all double-premise rules, called from the rules except StructuralRules

    -
    Parameters:
    budget - The budget value of the new task
    content - The content of the new task
    truth - The truth value of the new task
    +
    Parameters:
    budget - The budget value of the new task
    content - The content of the new task
    truth - The truth value of the new task
    premise1 - The first premise to record in the new Judgment
    premise2 - The second premise to record in the new Judgment
    + + +
    + +

    +revisionTask

    +
    +public static void revisionTask(BudgetValue budget,
    +                                Term content,
    +                                TruthValue truth,
    +                                Sentence premise1,
    +                                Sentence premise2)
    +
    +
    The final operations of the revision rules, called from MatchingRules +

    +

    +
    Parameters:
    budget - The budget value of the new task
    content - The content of the new task
    truth - The truth value of the new task
    premise1 - The first premise to record in the new Judgment. May be null.
    premise2 - The second premise to record in the new Judgment. May be null.

    -

    +

    singlePremiseTask

     public static void singlePremiseTask(BudgetValue budget,
                                          Term content,
    -                                     TruthValue truth)
    + TruthValue truth, + Sentence premise)
    Shared final operations by all single-premise rules, called in StructuralRules

    -
    Parameters:
    budget - The budget value of the new task
    content - The content of the new task
    truth - The truth value of the new task
    +
    Parameters:
    budget - The budget value of the new task
    content - The content of the new task
    truth - The truth value of the new task
    premise - The premise to record in the new Judgment

    diff --git a/nars-dist/javadoc/nars/main/NARS.html b/nars-dist/javadoc/nars/main/NARS.html index 6e5d73f0..de7fe682 100644 --- a/nars-dist/javadoc/nars/main/NARS.html +++ b/nars-dist/javadoc/nars/main/NARS.html @@ -2,13 +2,13 @@ - + NARS (NARS Document) - + @@ -197,14 +197,6 @@

    -private static boolean -standAlone - -
    -          Flag to distinguish the two running modes of the project. - - - static java.lang.String WEBSITE @@ -394,18 +386,6 @@


    -

    -standAlone

    -
    -private static boolean standAlone
    -
    -
    Flag to distinguish the two running modes of the project. -

    -

    -
    -
    -
    -

    narsThread

    diff --git a/nars-dist/javadoc/nars/main/Parameters.html b/nars-dist/javadoc/nars/main/Parameters.html
    index 0cadb835..f1148114 100644
    --- a/nars-dist/javadoc/nars/main/Parameters.html
    +++ b/nars-dist/javadoc/nars/main/Parameters.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
     Parameters (NARS Document)
     
     
    -
    +
     
     
     
    @@ -223,6 +223,14 @@ 

    +static int +HORIZON + +
    +          Evidential Horizon, the amount of future evidence to be considered. + + + static float LOAD_FACTOR @@ -280,26 +288,26 @@

    static int -NEAR_FUTURE +NEW_TASK_FORGETTING_CYCLE
    -          Horizon, the amount of evidence coming in the near future. +          Task decay rate in TaskBuffer, in [1, 99]. -static int -NEW_TASK_FORGETTING_CYCLE +static float
    +PRIORITY_THRESHOLD
    -          Task decay rate in TaskBuffer, in [1, 99]. +          The priority threthold for operation to be executed. static float -PRIORITY_THRESHOLD +RELIANCE
    -          The priority threthold for operation to be executed. +          Reliance factor, the empirical confidence of analytical truth. @@ -490,15 +498,27 @@


    -

    -NEAR_FUTURE

    +

    +HORIZON

    +
    +public static final int HORIZON
    +
    +
    Evidential Horizon, the amount of future evidence to be considered. +

    +

    +
    See Also:
    Constant Field Values
    +
    +
    + +

    +RELIANCE

    -public static final int NEAR_FUTURE
    +public static final float RELIANCE

    -
    Horizon, the amount of evidence coming in the near future. +
    Reliance factor, the empirical confidence of analytical truth.

    -
    See Also:
    Constant Field Values
    +
    See Also:
    Constant Field Values

    diff --git a/nars-dist/javadoc/nars/main/class-use/Center.html b/nars-dist/javadoc/nars/main/class-use/Center.html index fa12d60d..2c9e1f3b 100644 --- a/nars-dist/javadoc/nars/main/class-use/Center.html +++ b/nars-dist/javadoc/nars/main/class-use/Center.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Center (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/Memory.html b/nars-dist/javadoc/nars/main/class-use/Memory.html index cffd1e5e..e9ca2808 100644 --- a/nars-dist/javadoc/nars/main/class-use/Memory.html +++ b/nars-dist/javadoc/nars/main/class-use/Memory.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Memory (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/NARS.html b/nars-dist/javadoc/nars/main/class-use/NARS.html index ac191df4..cbcf0990 100644 --- a/nars-dist/javadoc/nars/main/class-use/NARS.html +++ b/nars-dist/javadoc/nars/main/class-use/NARS.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.NARS (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/Parameters.html b/nars-dist/javadoc/nars/main/class-use/Parameters.html index 84d1d826..819bfc86 100644 --- a/nars-dist/javadoc/nars/main/class-use/Parameters.html +++ b/nars-dist/javadoc/nars/main/class-use/Parameters.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Parameters (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-frame.html b/nars-dist/javadoc/nars/main/package-frame.html index be2b1de3..4fd9bdb9 100644 --- a/nars-dist/javadoc/nars/main/package-frame.html +++ b/nars-dist/javadoc/nars/main/package-frame.html @@ -2,13 +2,13 @@ - + nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-summary.html b/nars-dist/javadoc/nars/main/package-summary.html index 53ca3622..eb1b56f9 100644 --- a/nars-dist/javadoc/nars/main/package-summary.html +++ b/nars-dist/javadoc/nars/main/package-summary.html @@ -2,13 +2,13 @@ - + nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-tree.html b/nars-dist/javadoc/nars/main/package-tree.html index 43b92469..692ab812 100644 --- a/nars-dist/javadoc/nars/main/package-tree.html +++ b/nars-dist/javadoc/nars/main/package-tree.html @@ -2,13 +2,13 @@ - + nars.main Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-use.html b/nars-dist/javadoc/nars/main/package-use.html index 7101b496..98c6063c 100644 --- a/nars-dist/javadoc/nars/main/package-use.html +++ b/nars-dist/javadoc/nars/main/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/Break.html b/nars-dist/javadoc/nars/operation/Break.html index 515b5668..41875060 100644 --- a/nars-dist/javadoc/nars/operation/Break.html +++ b/nars-dist/javadoc/nars/operation/Break.html @@ -2,13 +2,13 @@ - + Break (NARS Document) - + @@ -181,7 +181,7 @@

    Methods inherited from class nars.language.Term -clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, toString +clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/operation/GoTo.html b/nars-dist/javadoc/nars/operation/GoTo.html index 451177d8..00590249 100644 --- a/nars-dist/javadoc/nars/operation/GoTo.html +++ b/nars-dist/javadoc/nars/operation/GoTo.html @@ -2,13 +2,13 @@ - + GoTo (NARS Document) - + @@ -181,7 +181,7 @@

    Methods inherited from class nars.language.Term -clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, toString +clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/operation/Open.html b/nars-dist/javadoc/nars/operation/Open.html index a2a0ab19..ad1169c9 100644 --- a/nars-dist/javadoc/nars/operation/Open.html +++ b/nars-dist/javadoc/nars/operation/Open.html @@ -2,13 +2,13 @@ - + Open (NARS Document) - + @@ -181,7 +181,7 @@

    Methods inherited from class nars.language.Term -clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, toString +clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/operation/Operator.html b/nars-dist/javadoc/nars/operation/Operator.html index f27b57ad..3b27bb74 100644 --- a/nars-dist/javadoc/nars/operation/Operator.html +++ b/nars-dist/javadoc/nars/operation/Operator.html @@ -2,13 +2,13 @@ - + Operator (NARS Document) - + @@ -201,7 +201,7 @@

    Methods inherited from class nars.language.Term -clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, toString +clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/operation/Pick.html b/nars-dist/javadoc/nars/operation/Pick.html index 57a5d9ce..52624844 100644 --- a/nars-dist/javadoc/nars/operation/Pick.html +++ b/nars-dist/javadoc/nars/operation/Pick.html @@ -2,13 +2,13 @@ - + Pick (NARS Document) - + @@ -181,7 +181,7 @@

    Methods inherited from class nars.language.Term -clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, toString +clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, isTemporal, toString   diff --git a/nars-dist/javadoc/nars/operation/class-use/Break.html b/nars-dist/javadoc/nars/operation/class-use/Break.html index 8ae438ba..379832e1 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Break.html +++ b/nars-dist/javadoc/nars/operation/class-use/Break.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Break (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/GoTo.html b/nars-dist/javadoc/nars/operation/class-use/GoTo.html index 2cd25e74..635a3f33 100644 --- a/nars-dist/javadoc/nars/operation/class-use/GoTo.html +++ b/nars-dist/javadoc/nars/operation/class-use/GoTo.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.GoTo (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Open.html b/nars-dist/javadoc/nars/operation/class-use/Open.html index b2ea87a3..37a90f3e 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Open.html +++ b/nars-dist/javadoc/nars/operation/class-use/Open.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Open (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Operator.html b/nars-dist/javadoc/nars/operation/class-use/Operator.html index b5635d9c..09033db4 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Operator.html +++ b/nars-dist/javadoc/nars/operation/class-use/Operator.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Operator (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Pick.html b/nars-dist/javadoc/nars/operation/class-use/Pick.html index 14fc724e..da0a61e0 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Pick.html +++ b/nars-dist/javadoc/nars/operation/class-use/Pick.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Pick (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-frame.html b/nars-dist/javadoc/nars/operation/package-frame.html index 3aa33a75..5faf08db 100644 --- a/nars-dist/javadoc/nars/operation/package-frame.html +++ b/nars-dist/javadoc/nars/operation/package-frame.html @@ -2,13 +2,13 @@ - + nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-summary.html b/nars-dist/javadoc/nars/operation/package-summary.html index 747cdd03..f52a9ec1 100644 --- a/nars-dist/javadoc/nars/operation/package-summary.html +++ b/nars-dist/javadoc/nars/operation/package-summary.html @@ -2,13 +2,13 @@ - + nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-tree.html b/nars-dist/javadoc/nars/operation/package-tree.html index 1ae208b8..e8e5d9cc 100644 --- a/nars-dist/javadoc/nars/operation/package-tree.html +++ b/nars-dist/javadoc/nars/operation/package-tree.html @@ -2,13 +2,13 @@ - + nars.operation Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-use.html b/nars-dist/javadoc/nars/operation/package-use.html index 3f0ad0e9..3ac0b77f 100644 --- a/nars-dist/javadoc/nars/operation/package-use.html +++ b/nars-dist/javadoc/nars/operation/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/Bag.html b/nars-dist/javadoc/nars/storage/Bag.html index 2ddebeca..f4a18000 100644 --- a/nars-dist/javadoc/nars/storage/Bag.html +++ b/nars-dist/javadoc/nars/storage/Bag.html @@ -2,13 +2,13 @@ - + Bag (NARS Document) - + @@ -360,7 +360,7 @@

    - void + boolean putBack(Type oldItem)
    @@ -368,7 +368,7 @@

    - void + boolean putIn(Type newItem)
    @@ -715,12 +715,13 @@

    putIn

    -public void putIn(Type newItem)
    +public boolean putIn(Type newItem)
    Add a new Item into the Bag

    -
    Parameters:
    newItem - The new Item
    +
    Parameters:
    newItem - The new Item +
    Returns:
    Whether the new Item is added into the Bag

    @@ -728,7 +729,7 @@

    putBack

    -public void putBack(Type oldItem)
    +public boolean putBack(Type oldItem)
    Put an item back into the itemTable

    diff --git a/nars-dist/javadoc/nars/storage/ConceptBag.html b/nars-dist/javadoc/nars/storage/ConceptBag.html index 7274cca6..e29944ec 100644 --- a/nars-dist/javadoc/nars/storage/ConceptBag.html +++ b/nars-dist/javadoc/nars/storage/ConceptBag.html @@ -2,13 +2,13 @@ - + ConceptBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/Distributor.html b/nars-dist/javadoc/nars/storage/Distributor.html index be360afc..9a3748a1 100644 --- a/nars-dist/javadoc/nars/storage/Distributor.html +++ b/nars-dist/javadoc/nars/storage/Distributor.html @@ -2,13 +2,13 @@ - + Distributor (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TaskBuffer.html b/nars-dist/javadoc/nars/storage/TaskBuffer.html index 91fbd7a2..ac0fb67d 100644 --- a/nars-dist/javadoc/nars/storage/TaskBuffer.html +++ b/nars-dist/javadoc/nars/storage/TaskBuffer.html @@ -2,13 +2,13 @@ - + TaskBuffer (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/TaskLinkBag.html index 85e5e0b0..a0307d9a 100644 --- a/nars-dist/javadoc/nars/storage/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TaskLinkBag.html @@ -2,13 +2,13 @@ - + TaskLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TermLinkBag.html b/nars-dist/javadoc/nars/storage/TermLinkBag.html index 5a67b1fa..778e1621 100644 --- a/nars-dist/javadoc/nars/storage/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TermLinkBag.html @@ -2,13 +2,13 @@ - + TermLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/Bag.html b/nars-dist/javadoc/nars/storage/class-use/Bag.html index b9ce1384..a5226a52 100644 --- a/nars-dist/javadoc/nars/storage/class-use/Bag.html +++ b/nars-dist/javadoc/nars/storage/class-use/Bag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.Bag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html index 6cc70782..56d27f3a 100644 --- a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.ConceptBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/Distributor.html b/nars-dist/javadoc/nars/storage/class-use/Distributor.html index 51e36dda..276028f3 100644 --- a/nars-dist/javadoc/nars/storage/class-use/Distributor.html +++ b/nars-dist/javadoc/nars/storage/class-use/Distributor.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.Distributor (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html index 2f511caa..2679f5b0 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html +++ b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TaskBuffer (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html index bd389d88..c0bb6bfe 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TaskLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html index 006f5c6d..a5002463 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TermLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-frame.html b/nars-dist/javadoc/nars/storage/package-frame.html index a0ea1883..f4a6d742 100644 --- a/nars-dist/javadoc/nars/storage/package-frame.html +++ b/nars-dist/javadoc/nars/storage/package-frame.html @@ -2,13 +2,13 @@ - + nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-summary.html b/nars-dist/javadoc/nars/storage/package-summary.html index f0059cdd..0f5d01ef 100644 --- a/nars-dist/javadoc/nars/storage/package-summary.html +++ b/nars-dist/javadoc/nars/storage/package-summary.html @@ -2,13 +2,13 @@ - + nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-tree.html b/nars-dist/javadoc/nars/storage/package-tree.html index 2d27a7b4..e7f55636 100644 --- a/nars-dist/javadoc/nars/storage/package-tree.html +++ b/nars-dist/javadoc/nars/storage/package-tree.html @@ -2,13 +2,13 @@ - + nars.storage Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-use.html b/nars-dist/javadoc/nars/storage/package-use.html index 151fef95..8f9ea3b2 100644 --- a/nars-dist/javadoc/nars/storage/package-use.html +++ b/nars-dist/javadoc/nars/storage/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/overview-frame.html b/nars-dist/javadoc/overview-frame.html index ec510172..7990df84 100644 --- a/nars-dist/javadoc/overview-frame.html +++ b/nars-dist/javadoc/overview-frame.html @@ -2,13 +2,13 @@ - + Overview List (NARS Document) - + diff --git a/nars-dist/javadoc/overview-summary.html b/nars-dist/javadoc/overview-summary.html index 1b2e87c9..950d79a8 100644 --- a/nars-dist/javadoc/overview-summary.html +++ b/nars-dist/javadoc/overview-summary.html @@ -2,13 +2,13 @@ - + Overview (NARS Document) - + @@ -133,7 +133,7 @@

    Package Specification

    - The code for distribution is NARS.jar, in Java 1.6.0_03. + The code for distribution is NARS.jar, in Java 1.6.0_17.

    It works both as an application (with full functionality) and an applet (with restricted functionality and display). diff --git a/nars-dist/javadoc/overview-tree.html b/nars-dist/javadoc/overview-tree.html index 852c8278..d8bac16c 100644 --- a/nars-dist/javadoc/overview-tree.html +++ b/nars-dist/javadoc/overview-tree.html @@ -2,13 +2,13 @@ - + Class Hierarchy (NARS Document) - + @@ -113,14 +113,15 @@

  • java.awt.Window (implements javax.accessibility.Accessible)
    • java.awt.Dialog
        -
      • nars.gui.MessageDialog (implements java.awt.event.ActionListener) +
      • nars.gui.MessageDialog (implements java.awt.event.ActionListener, java.awt.event.WindowListener)
    • java.awt.Frame (implements java.awt.MenuContainer)
        -
      • nars.gui.NarsFrame
          +
        • nars.gui.NarsFrame (implements java.awt.event.WindowListener) +
          • nars.gui.BagWindow (implements java.awt.event.ActionListener, java.awt.event.AdjustmentListener) -
          • nars.gui.ConceptWindow (implements java.awt.event.ActionListener) -
          • nars.gui.InferenceWindow (implements java.awt.event.ActionListener) +
          • nars.gui.ConceptWindow (implements java.awt.event.ActionListener, java.awt.event.ItemListener) +
          • nars.gui.InferenceWindow (implements java.awt.event.ActionListener, java.awt.event.ItemListener)
          • nars.gui.InputWindow (implements java.awt.event.ActionListener)
          • nars.gui.MainWindow (implements java.awt.event.ActionListener)
          • nars.gui.ParameterWindow (implements java.awt.event.ActionListener, java.awt.event.AdjustmentListener) @@ -139,7 +140,7 @@

          • nars.entity.Stamp (implements java.lang.Cloneable)
          • nars.inference.StructuralRules
          • nars.inference.SyllogisticRules
          • nars.io.Symbols -
          • nars.inference.TemporalRules
          • nars.entity.TemporalValue
          • nars.language.Term (implements java.lang.Cloneable, java.lang.Comparable<T>) +
          • nars.language.Term (implements java.lang.Cloneable, java.lang.Comparable<T>)

  • +playInNewWindowButton

    +
    +java.awt.Button playInNewWindowButton
    +
    +
    Control buttons +

    +

    +
    +
    +
    +

    closeButton

     java.awt.Button closeButton
    @@ -251,6 +262,15 @@


    +showDerivationCheckbox

    +
    +java.awt.Checkbox showDerivationCheckbox
    +
    +
    +
    +
    +
    +

    text

     java.awt.TextArea text
    @@ -333,6 +353,39 @@

    +
    +

    +watchText

    +
    +java.awt.TextField watchText
    +
    +
    String to be catched +

    +

    +
    +
    +
    +

    +watchType

    +
    +java.awt.Choice watchType
    +
    +
    Type of catched text +

    +

    +
    +
    +
    +

    +watched

    +
    +java.lang.String watched
    +
    +
    Type of catched text +

    +

    +
    +

    From 35d03663f9dcedc8612fe79a23452c7c0c1e6af2 Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Fri, 2 Apr 2010 15:54:56 +0000 Subject: [PATCH 044/206] open-nars 1.3.1 --- nars-dist/javadoc/allclasses-frame.html | 10 +++- nars-dist/javadoc/allclasses-noframe.html | 10 +++- nars-dist/javadoc/constant-values.html | 6 +-- nars-dist/javadoc/deprecated-list.html | 4 +- nars-dist/javadoc/help-doc.html | 4 +- nars-dist/javadoc/index-files/index-1.html | 4 +- nars-dist/javadoc/index-files/index-10.html | 4 +- nars-dist/javadoc/index-files/index-11.html | 4 +- nars-dist/javadoc/index-files/index-12.html | 4 +- nars-dist/javadoc/index-files/index-13.html | 4 +- nars-dist/javadoc/index-files/index-14.html | 4 +- nars-dist/javadoc/index-files/index-15.html | 4 +- nars-dist/javadoc/index-files/index-16.html | 4 +- nars-dist/javadoc/index-files/index-17.html | 4 +- nars-dist/javadoc/index-files/index-18.html | 4 +- nars-dist/javadoc/index-files/index-19.html | 7 ++- nars-dist/javadoc/index-files/index-2.html | 4 +- nars-dist/javadoc/index-files/index-20.html | 10 ++-- nars-dist/javadoc/index-files/index-21.html | 4 +- nars-dist/javadoc/index-files/index-22.html | 4 +- nars-dist/javadoc/index-files/index-23.html | 4 +- nars-dist/javadoc/index-files/index-3.html | 4 +- nars-dist/javadoc/index-files/index-4.html | 7 ++- nars-dist/javadoc/index-files/index-5.html | 13 ++++- nars-dist/javadoc/index-files/index-6.html | 4 +- nars-dist/javadoc/index-files/index-7.html | 4 +- nars-dist/javadoc/index-files/index-8.html | 4 +- nars-dist/javadoc/index-files/index-9.html | 4 +- nars-dist/javadoc/index.html | 2 +- .../javadoc/nars/entity/BudgetValue.html | 4 +- nars-dist/javadoc/nars/entity/Concept.html | 4 +- nars-dist/javadoc/nars/entity/Goal.html | 4 +- nars-dist/javadoc/nars/entity/Item.html | 4 +- nars-dist/javadoc/nars/entity/Judgment.html | 4 +- nars-dist/javadoc/nars/entity/Question.html | 4 +- nars-dist/javadoc/nars/entity/Sentence.html | 4 +- nars-dist/javadoc/nars/entity/ShortFloat.html | 4 +- nars-dist/javadoc/nars/entity/Stamp.html | 10 ++-- nars-dist/javadoc/nars/entity/Task.html | 4 +- nars-dist/javadoc/nars/entity/TaskLink.html | 4 +- nars-dist/javadoc/nars/entity/TermLink.html | 4 +- nars-dist/javadoc/nars/entity/TruthValue.html | 4 +- .../nars/entity/class-use/BudgetValue.html | 4 +- .../nars/entity/class-use/Concept.html | 4 +- .../javadoc/nars/entity/class-use/Goal.html | 4 +- .../javadoc/nars/entity/class-use/Item.html | 4 +- .../nars/entity/class-use/Judgment.html | 4 +- .../nars/entity/class-use/Question.html | 4 +- .../nars/entity/class-use/Sentence.html | 4 +- .../nars/entity/class-use/ShortFloat.html | 4 +- .../javadoc/nars/entity/class-use/Stamp.html | 4 +- .../javadoc/nars/entity/class-use/Task.html | 52 ++++++++++++++++++- .../nars/entity/class-use/TaskLink.html | 4 +- .../nars/entity/class-use/TermLink.html | 4 +- .../nars/entity/class-use/TruthValue.html | 4 +- .../javadoc/nars/entity/package-frame.html | 4 +- .../javadoc/nars/entity/package-summary.html | 4 +- .../javadoc/nars/entity/package-tree.html | 4 +- .../javadoc/nars/entity/package-use.html | 4 +- nars-dist/javadoc/nars/gui/BagWindow.html | 4 +- nars-dist/javadoc/nars/gui/ConceptWindow.html | 4 +- .../javadoc/nars/gui/InferenceWindow.html | 4 +- nars-dist/javadoc/nars/gui/InputWindow.html | 4 +- nars-dist/javadoc/nars/gui/MainWindow.html | 4 +- nars-dist/javadoc/nars/gui/MessageDialog.html | 4 +- nars-dist/javadoc/nars/gui/NarsFrame.html | 4 +- .../javadoc/nars/gui/ParameterWindow.html | 4 +- nars-dist/javadoc/nars/gui/TermWindow.html | 4 +- .../javadoc/nars/gui/class-use/BagWindow.html | 4 +- .../nars/gui/class-use/ConceptWindow.html | 4 +- .../nars/gui/class-use/InferenceWindow.html | 4 +- .../nars/gui/class-use/InputWindow.html | 4 +- .../nars/gui/class-use/MainWindow.html | 4 +- .../nars/gui/class-use/MessageDialog.html | 4 +- .../javadoc/nars/gui/class-use/NarsFrame.html | 4 +- .../nars/gui/class-use/ParameterWindow.html | 4 +- .../nars/gui/class-use/TermWindow.html | 4 +- nars-dist/javadoc/nars/gui/package-frame.html | 4 +- .../javadoc/nars/gui/package-summary.html | 4 +- nars-dist/javadoc/nars/gui/package-tree.html | 4 +- nars-dist/javadoc/nars/gui/package-use.html | 4 +- .../nars/inference/BudgetFunctions.html | 4 +- .../nars/inference/CompositionalRules.html | 4 +- .../javadoc/nars/inference/MatchingRules.html | 4 +- .../javadoc/nars/inference/RuleTables.html | 4 +- .../nars/inference/StructuralRules.html | 4 +- .../nars/inference/SyllogisticRules.html | 4 +- .../nars/inference/TruthFunctions.html | 4 +- .../nars/inference/UtilityFunctions.html | 4 +- .../inference/class-use/BudgetFunctions.html | 4 +- .../class-use/CompositionalRules.html | 4 +- .../inference/class-use/MatchingRules.html | 4 +- .../nars/inference/class-use/RuleTables.html | 4 +- .../inference/class-use/StructuralRules.html | 4 +- .../inference/class-use/SyllogisticRules.html | 4 +- .../inference/class-use/TruthFunctions.html | 4 +- .../inference/class-use/UtilityFunctions.html | 4 +- .../javadoc/nars/inference/package-frame.html | 4 +- .../nars/inference/package-summary.html | 4 +- .../javadoc/nars/inference/package-tree.html | 4 +- .../javadoc/nars/inference/package-use.html | 4 +- nars-dist/javadoc/nars/io/ExperienceIO.html | 4 +- nars-dist/javadoc/nars/io/Record.html | 4 +- .../StringParser.InvalidInputException.html | 4 +- nars-dist/javadoc/nars/io/StringParser.html | 4 +- nars-dist/javadoc/nars/io/Symbols.html | 4 +- .../nars/io/class-use/ExperienceIO.html | 4 +- .../javadoc/nars/io/class-use/Record.html | 4 +- .../StringParser.InvalidInputException.html | 4 +- .../nars/io/class-use/StringParser.html | 4 +- .../javadoc/nars/io/class-use/Symbols.html | 4 +- nars-dist/javadoc/nars/io/package-frame.html | 4 +- .../javadoc/nars/io/package-summary.html | 4 +- nars-dist/javadoc/nars/io/package-tree.html | 4 +- nars-dist/javadoc/nars/io/package-use.html | 4 +- .../javadoc/nars/language/CompoundTerm.html | 4 +- .../javadoc/nars/language/Conjunction.html | 4 +- .../javadoc/nars/language/DifferenceExt.html | 4 +- .../javadoc/nars/language/DifferenceInt.html | 4 +- .../javadoc/nars/language/Disjunction.html | 4 +- .../javadoc/nars/language/Equivalence.html | 4 +- nars-dist/javadoc/nars/language/ImageExt.html | 4 +- nars-dist/javadoc/nars/language/ImageInt.html | 4 +- .../javadoc/nars/language/Implication.html | 4 +- .../javadoc/nars/language/Inheritance.html | 4 +- nars-dist/javadoc/nars/language/Instance.html | 4 +- .../nars/language/InstanceProperty.html | 4 +- .../nars/language/IntersectionExt.html | 4 +- .../nars/language/IntersectionInt.html | 4 +- nars-dist/javadoc/nars/language/Negation.html | 4 +- nars-dist/javadoc/nars/language/Product.html | 4 +- nars-dist/javadoc/nars/language/Property.html | 4 +- nars-dist/javadoc/nars/language/SetExt.html | 4 +- nars-dist/javadoc/nars/language/SetInt.html | 4 +- .../javadoc/nars/language/Similarity.html | 4 +- .../javadoc/nars/language/Statement.html | 4 +- nars-dist/javadoc/nars/language/Term.html | 4 +- .../nars/language/Variable.VarType.html | 4 +- nars-dist/javadoc/nars/language/Variable.html | 4 +- .../nars/language/class-use/CompoundTerm.html | 4 +- .../nars/language/class-use/Conjunction.html | 4 +- .../language/class-use/DifferenceExt.html | 4 +- .../language/class-use/DifferenceInt.html | 4 +- .../nars/language/class-use/Disjunction.html | 4 +- .../nars/language/class-use/Equivalence.html | 4 +- .../nars/language/class-use/ImageExt.html | 4 +- .../nars/language/class-use/ImageInt.html | 4 +- .../nars/language/class-use/Implication.html | 4 +- .../nars/language/class-use/Inheritance.html | 4 +- .../nars/language/class-use/Instance.html | 4 +- .../language/class-use/InstanceProperty.html | 4 +- .../language/class-use/IntersectionExt.html | 4 +- .../language/class-use/IntersectionInt.html | 4 +- .../nars/language/class-use/Negation.html | 4 +- .../nars/language/class-use/Product.html | 4 +- .../nars/language/class-use/Property.html | 4 +- .../nars/language/class-use/SetExt.html | 4 +- .../nars/language/class-use/SetInt.html | 4 +- .../nars/language/class-use/Similarity.html | 4 +- .../nars/language/class-use/Statement.html | 4 +- .../javadoc/nars/language/class-use/Term.html | 28 +++++++++- .../language/class-use/Variable.VarType.html | 4 +- .../nars/language/class-use/Variable.html | 4 +- .../javadoc/nars/language/package-frame.html | 4 +- .../nars/language/package-summary.html | 4 +- .../javadoc/nars/language/package-tree.html | 4 +- .../javadoc/nars/language/package-use.html | 4 +- nars-dist/javadoc/nars/main/Center.html | 4 +- nars-dist/javadoc/nars/main/Memory.html | 4 +- nars-dist/javadoc/nars/main/NARS.html | 4 +- nars-dist/javadoc/nars/main/Parameters.html | 4 +- .../javadoc/nars/main/class-use/Center.html | 4 +- .../javadoc/nars/main/class-use/Memory.html | 4 +- .../javadoc/nars/main/class-use/NARS.html | 4 +- .../nars/main/class-use/Parameters.html | 4 +- .../javadoc/nars/main/package-frame.html | 4 +- .../javadoc/nars/main/package-summary.html | 4 +- nars-dist/javadoc/nars/main/package-tree.html | 4 +- nars-dist/javadoc/nars/main/package-use.html | 4 +- nars-dist/javadoc/nars/operation/Break.html | 8 +-- nars-dist/javadoc/nars/operation/GoTo.html | 8 +-- nars-dist/javadoc/nars/operation/Open.html | 4 +- .../javadoc/nars/operation/Operator.html | 6 +-- nars-dist/javadoc/nars/operation/Pick.html | 8 +-- .../nars/operation/class-use/Break.html | 4 +- .../nars/operation/class-use/GoTo.html | 4 +- .../nars/operation/class-use/Open.html | 4 +- .../nars/operation/class-use/Operator.html | 28 +++++++++- .../nars/operation/class-use/Pick.html | 4 +- .../javadoc/nars/operation/package-frame.html | 12 +++-- .../nars/operation/package-summary.html | 16 +++++- .../javadoc/nars/operation/package-tree.html | 6 +-- .../javadoc/nars/operation/package-use.html | 4 +- nars-dist/javadoc/nars/storage/Bag.html | 4 +- .../javadoc/nars/storage/ConceptBag.html | 4 +- .../javadoc/nars/storage/Distributor.html | 4 +- .../javadoc/nars/storage/TaskBuffer.html | 4 +- .../javadoc/nars/storage/TaskLinkBag.html | 4 +- .../javadoc/nars/storage/TermLinkBag.html | 4 +- .../javadoc/nars/storage/class-use/Bag.html | 4 +- .../nars/storage/class-use/ConceptBag.html | 4 +- .../nars/storage/class-use/Distributor.html | 4 +- .../nars/storage/class-use/TaskBuffer.html | 4 +- .../nars/storage/class-use/TaskLinkBag.html | 4 +- .../nars/storage/class-use/TermLinkBag.html | 4 +- .../javadoc/nars/storage/package-frame.html | 4 +- .../javadoc/nars/storage/package-summary.html | 4 +- .../javadoc/nars/storage/package-tree.html | 4 +- .../javadoc/nars/storage/package-use.html | 4 +- nars-dist/javadoc/overview-frame.html | 4 +- nars-dist/javadoc/overview-summary.html | 4 +- nars-dist/javadoc/overview-tree.html | 6 +-- nars-dist/javadoc/serialized-form.html | 4 +- 213 files changed, 586 insertions(+), 439 deletions(-) diff --git a/nars-dist/javadoc/allclasses-frame.html b/nars-dist/javadoc/allclasses-frame.html index 8c029464..aa0e302a 100644 --- a/nars-dist/javadoc/allclasses-frame.html +++ b/nars-dist/javadoc/allclasses-frame.html @@ -2,13 +2,13 @@ - + All Classes (NARS Document) - + @@ -54,6 +54,8 @@
    Distributor
    +Drop +
    Equivalence
    ExperienceIO @@ -134,6 +136,8 @@
    Statement
    +Strike +
    StringParser
    StringParser.InvalidInputException @@ -160,6 +164,8 @@
    TermWindow
    +Throw +
    TruthFunctions
    TruthValue diff --git a/nars-dist/javadoc/allclasses-noframe.html b/nars-dist/javadoc/allclasses-noframe.html index cc28a1fd..32cdf5b9 100644 --- a/nars-dist/javadoc/allclasses-noframe.html +++ b/nars-dist/javadoc/allclasses-noframe.html @@ -2,13 +2,13 @@ - + All Classes (NARS Document) - + @@ -54,6 +54,8 @@
    Distributor
    +Drop +
    Equivalence
    ExperienceIO @@ -134,6 +136,8 @@
    Statement
    +Strike +
    StringParser
    StringParser.InvalidInputException @@ -160,6 +164,8 @@
    TermWindow
    +Throw +
    TruthFunctions
    TruthValue diff --git a/nars-dist/javadoc/constant-values.html b/nars-dist/javadoc/constant-values.html index 8dd65292..52a5dbbd 100644 --- a/nars-dist/javadoc/constant-values.html +++ b/nars-dist/javadoc/constant-values.html @@ -2,13 +2,13 @@ - + Constant Field Values (NARS Document) - + @@ -682,7 +682,7 @@

    public static final java.lang.String INFO -" Open-NARS Version 1.3.0 January 2010 \n" +" Open-NARS Version 1.3.1 April 2010 \n" diff --git a/nars-dist/javadoc/deprecated-list.html b/nars-dist/javadoc/deprecated-list.html index ccf85a08..483ed8b5 100644 --- a/nars-dist/javadoc/deprecated-list.html +++ b/nars-dist/javadoc/deprecated-list.html @@ -2,13 +2,13 @@ - + Deprecated List (NARS Document) - + diff --git a/nars-dist/javadoc/help-doc.html b/nars-dist/javadoc/help-doc.html index 7febf832..51a95613 100644 --- a/nars-dist/javadoc/help-doc.html +++ b/nars-dist/javadoc/help-doc.html @@ -2,13 +2,13 @@ - + API Help (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-1.html b/nars-dist/javadoc/index-files/index-1.html index 2b5377be..09862ba9 100644 --- a/nars-dist/javadoc/index-files/index-1.html +++ b/nars-dist/javadoc/index-files/index-1.html @@ -2,13 +2,13 @@ - + A-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-10.html b/nars-dist/javadoc/index-files/index-10.html index cd70a6fd..b417c5cd 100644 --- a/nars-dist/javadoc/index-files/index-10.html +++ b/nars-dist/javadoc/index-files/index-10.html @@ -2,13 +2,13 @@ - + J-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-11.html b/nars-dist/javadoc/index-files/index-11.html index 5d3f417c..d0fcdaf9 100644 --- a/nars-dist/javadoc/index-files/index-11.html +++ b/nars-dist/javadoc/index-files/index-11.html @@ -2,13 +2,13 @@ - + K-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-12.html b/nars-dist/javadoc/index-files/index-12.html index 42693aed..89abb946 100644 --- a/nars-dist/javadoc/index-files/index-12.html +++ b/nars-dist/javadoc/index-files/index-12.html @@ -2,13 +2,13 @@ - + L-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-13.html b/nars-dist/javadoc/index-files/index-13.html index b4b10a39..d233bfaf 100644 --- a/nars-dist/javadoc/index-files/index-13.html +++ b/nars-dist/javadoc/index-files/index-13.html @@ -2,13 +2,13 @@ - + M-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-14.html b/nars-dist/javadoc/index-files/index-14.html index a9044362..ef9aac19 100644 --- a/nars-dist/javadoc/index-files/index-14.html +++ b/nars-dist/javadoc/index-files/index-14.html @@ -2,13 +2,13 @@ - + N-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-15.html b/nars-dist/javadoc/index-files/index-15.html index 08eec137..2d4721a4 100644 --- a/nars-dist/javadoc/index-files/index-15.html +++ b/nars-dist/javadoc/index-files/index-15.html @@ -2,13 +2,13 @@ - + O-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-16.html b/nars-dist/javadoc/index-files/index-16.html index ff63cc43..62311c65 100644 --- a/nars-dist/javadoc/index-files/index-16.html +++ b/nars-dist/javadoc/index-files/index-16.html @@ -2,13 +2,13 @@ - + P-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-17.html b/nars-dist/javadoc/index-files/index-17.html index bb33d780..32ed785b 100644 --- a/nars-dist/javadoc/index-files/index-17.html +++ b/nars-dist/javadoc/index-files/index-17.html @@ -2,13 +2,13 @@ - + Q-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-18.html b/nars-dist/javadoc/index-files/index-18.html index 3e59796e..4c43fb3b 100644 --- a/nars-dist/javadoc/index-files/index-18.html +++ b/nars-dist/javadoc/index-files/index-18.html @@ -2,13 +2,13 @@ - + R-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-19.html b/nars-dist/javadoc/index-files/index-19.html index 2a85b05d..4ad71c92 100644 --- a/nars-dist/javadoc/index-files/index-19.html +++ b/nars-dist/javadoc/index-files/index-19.html @@ -2,13 +2,13 @@ - + S-Index (NARS Document) - + @@ -326,6 +326,9 @@
    stoper - Static variable in class nars.main.Center
    Timer for fixed distance walking +
    Strike - Class in nars.operation
    A class used in testing only.
    Strike(String) - +Constructor for class nars.operation.Strike +
     
    StringParser - Class in nars.io
    Parse input String into Task.
    StringParser() - Constructor for class nars.io.StringParser
      diff --git a/nars-dist/javadoc/index-files/index-2.html b/nars-dist/javadoc/index-files/index-2.html index 343522ea..c75649fd 100644 --- a/nars-dist/javadoc/index-files/index-2.html +++ b/nars-dist/javadoc/index-files/index-2.html @@ -2,13 +2,13 @@ - + B-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-20.html b/nars-dist/javadoc/index-files/index-20.html index f0cd1d94..cbb05564 100644 --- a/nars-dist/javadoc/index-files/index-20.html +++ b/nars-dist/javadoc/index-files/index-20.html @@ -2,13 +2,13 @@ - + T-Index (NARS Document) - + @@ -224,6 +224,9 @@
    THRESHOLD - Static variable in class nars.storage.Bag
    firing threshold +
    Throw - Class in nars.operation
    A class used in testing only.
    Throw(String) - +Constructor for class nars.operation.Throw +
     
    tick() - Static method in class nars.main.Center
    A clock tick. @@ -275,7 +278,8 @@
    Convert the value into a String
    toString() - Method in class nars.entity.Stamp -
    Get a String form of the Stamp for display +
    Get a String form of the Stamp for display + Format: {creationTime [: eventTime] : trail}
    toString() - Method in class nars.entity.Task
    Get a String representation of the Task diff --git a/nars-dist/javadoc/index-files/index-21.html b/nars-dist/javadoc/index-files/index-21.html index 604ac25c..09790248 100644 --- a/nars-dist/javadoc/index-files/index-21.html +++ b/nars-dist/javadoc/index-files/index-21.html @@ -2,13 +2,13 @@ - + U-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-22.html b/nars-dist/javadoc/index-files/index-22.html index e66970ac..f7a1a636 100644 --- a/nars-dist/javadoc/index-files/index-22.html +++ b/nars-dist/javadoc/index-files/index-22.html @@ -2,13 +2,13 @@ - + V-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-23.html b/nars-dist/javadoc/index-files/index-23.html index 80e451c0..2a117b88 100644 --- a/nars-dist/javadoc/index-files/index-23.html +++ b/nars-dist/javadoc/index-files/index-23.html @@ -2,13 +2,13 @@ - + W-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-3.html b/nars-dist/javadoc/index-files/index-3.html index a51884b5..10b131da 100644 --- a/nars-dist/javadoc/index-files/index-3.html +++ b/nars-dist/javadoc/index-files/index-3.html @@ -2,13 +2,13 @@ - + C-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-4.html b/nars-dist/javadoc/index-files/index-4.html index 4bcd76f7..59eb7c79 100644 --- a/nars-dist/javadoc/index-files/index-4.html +++ b/nars-dist/javadoc/index-files/index-4.html @@ -2,13 +2,13 @@ - + D-Index (NARS Document) - + @@ -217,6 +217,9 @@
    doublePremiseTask(BudgetValue, Term, TruthValue, Sentence, Sentence) - Static method in class nars.main.Memory
    Shared final operations by all double-premise rules, called from the rules except StructuralRules +
    Drop - Class in nars.operation
    A class used in testing only.
    Drop(String) - +Constructor for class nars.operation.Drop +
     
    durability - Variable in class nars.entity.BudgetValue
    The percent of priority to be kept in a constant period diff --git a/nars-dist/javadoc/index-files/index-5.html b/nars-dist/javadoc/index-files/index-5.html index f798eb71..097baae3 100644 --- a/nars-dist/javadoc/index-files/index-5.html +++ b/nars-dist/javadoc/index-files/index-5.html @@ -2,13 +2,13 @@ - + E-Index (NARS Document) - + @@ -134,6 +134,9 @@
    execute(Task) - Method in class nars.operation.Break
      +
    execute(Task) - +Method in class nars.operation.Drop +
     
    execute(Task) - Method in class nars.operation.GoTo
      @@ -146,6 +149,12 @@
    execute(Task) - Method in class nars.operation.Pick
      +
    execute(Task) - +Method in class nars.operation.Strike +
      +
    execute(Task) - +Method in class nars.operation.Throw +
     
    executedTask(Task) - Static method in class nars.main.Memory
    Reporting executed task, and remember the event diff --git a/nars-dist/javadoc/index-files/index-6.html b/nars-dist/javadoc/index-files/index-6.html index d7cd88cf..66fc9005 100644 --- a/nars-dist/javadoc/index-files/index-6.html +++ b/nars-dist/javadoc/index-files/index-6.html @@ -2,13 +2,13 @@ - + F-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-7.html b/nars-dist/javadoc/index-files/index-7.html index 2580290e..a83cecba 100644 --- a/nars-dist/javadoc/index-files/index-7.html +++ b/nars-dist/javadoc/index-files/index-7.html @@ -2,13 +2,13 @@ - + G-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-8.html b/nars-dist/javadoc/index-files/index-8.html index 32f8ab10..f1dbe4b3 100644 --- a/nars-dist/javadoc/index-files/index-8.html +++ b/nars-dist/javadoc/index-files/index-8.html @@ -2,13 +2,13 @@ - + H-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-9.html b/nars-dist/javadoc/index-files/index-9.html index 6c55f80d..06de8709 100644 --- a/nars-dist/javadoc/index-files/index-9.html +++ b/nars-dist/javadoc/index-files/index-9.html @@ -2,13 +2,13 @@ - + I-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index.html b/nars-dist/javadoc/index.html index 45b0a9c1..68b7488e 100644 --- a/nars-dist/javadoc/index.html +++ b/nars-dist/javadoc/index.html @@ -2,7 +2,7 @@ - + NARS Document diff --git a/nars-dist/javadoc/nars/entity/BudgetValue.html b/nars-dist/javadoc/nars/entity/BudgetValue.html index 650713b1..86df05b7 100644 --- a/nars-dist/javadoc/nars/entity/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/BudgetValue.html @@ -2,13 +2,13 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.6.0_17) on Sat Jan 09 21:21:23 EST 2010 --> +<!-- Generated by javadoc (build 1.6.0_17) on Fri Apr 02 11:12:56 EDT 2010 --> <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <TITLE> BudgetValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Concept.html b/nars-dist/javadoc/nars/entity/Concept.html index e2c6184c..9ccb3276 100644 --- a/nars-dist/javadoc/nars/entity/Concept.html +++ b/nars-dist/javadoc/nars/entity/Concept.html @@ -2,13 +2,13 @@ - + Concept (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Goal.html b/nars-dist/javadoc/nars/entity/Goal.html index 5cb5e6a0..e0d0e0e4 100644 --- a/nars-dist/javadoc/nars/entity/Goal.html +++ b/nars-dist/javadoc/nars/entity/Goal.html @@ -2,13 +2,13 @@ - + Goal (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Item.html b/nars-dist/javadoc/nars/entity/Item.html index 20b50d85..c61f8d83 100644 --- a/nars-dist/javadoc/nars/entity/Item.html +++ b/nars-dist/javadoc/nars/entity/Item.html @@ -2,13 +2,13 @@ - + Item (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Judgment.html b/nars-dist/javadoc/nars/entity/Judgment.html index 9ccd386d..18cedcba 100644 --- a/nars-dist/javadoc/nars/entity/Judgment.html +++ b/nars-dist/javadoc/nars/entity/Judgment.html @@ -2,13 +2,13 @@ - + Judgment (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Question.html b/nars-dist/javadoc/nars/entity/Question.html index 13102072..09af6c7b 100644 --- a/nars-dist/javadoc/nars/entity/Question.html +++ b/nars-dist/javadoc/nars/entity/Question.html @@ -2,13 +2,13 @@ - + Question (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Sentence.html b/nars-dist/javadoc/nars/entity/Sentence.html index 37c058b2..7ed4b96c 100644 --- a/nars-dist/javadoc/nars/entity/Sentence.html +++ b/nars-dist/javadoc/nars/entity/Sentence.html @@ -2,13 +2,13 @@ - + Sentence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/ShortFloat.html b/nars-dist/javadoc/nars/entity/ShortFloat.html index 53a04661..522353c2 100644 --- a/nars-dist/javadoc/nars/entity/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/ShortFloat.html @@ -2,13 +2,13 @@ - + ShortFloat (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Stamp.html b/nars-dist/javadoc/nars/entity/Stamp.html index dcaac701..a389aa7e 100644 --- a/nars-dist/javadoc/nars/entity/Stamp.html +++ b/nars-dist/javadoc/nars/entity/Stamp.html @@ -2,13 +2,13 @@ - + Stamp (NARS Document) - + @@ -332,7 +332,8 @@

    toString()
    -          Get a String form of the Stamp for display +          Get a String form of the Stamp for display + Format: {creationTime [: eventTime] : trail}   @@ -703,7 +704,8 @@

     public java.lang.String toString()
    -
    Get a String form of the Stamp for display +
    Get a String form of the Stamp for display + Format: {creationTime [: eventTime] : trail}

    Overrides:
    toString in class java.lang.Object
    diff --git a/nars-dist/javadoc/nars/entity/Task.html b/nars-dist/javadoc/nars/entity/Task.html index 5c8b650d..898283ae 100644 --- a/nars-dist/javadoc/nars/entity/Task.html +++ b/nars-dist/javadoc/nars/entity/Task.html @@ -2,13 +2,13 @@ - + Task (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/TaskLink.html b/nars-dist/javadoc/nars/entity/TaskLink.html index 3abae9c8..f3b0b216 100644 --- a/nars-dist/javadoc/nars/entity/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/TaskLink.html @@ -2,13 +2,13 @@ - + TaskLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/TermLink.html b/nars-dist/javadoc/nars/entity/TermLink.html index 29c490d8..d12d11c3 100644 --- a/nars-dist/javadoc/nars/entity/TermLink.html +++ b/nars-dist/javadoc/nars/entity/TermLink.html @@ -2,13 +2,13 @@ - + TermLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/TruthValue.html b/nars-dist/javadoc/nars/entity/TruthValue.html index 342d1ba7..339da9d6 100644 --- a/nars-dist/javadoc/nars/entity/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/TruthValue.html @@ -2,13 +2,13 @@ - + TruthValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html index f524451e..26f729a3 100644 --- a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.BudgetValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Concept.html b/nars-dist/javadoc/nars/entity/class-use/Concept.html index 90043ab6..23ca9edc 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Concept.html +++ b/nars-dist/javadoc/nars/entity/class-use/Concept.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Concept (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Goal.html b/nars-dist/javadoc/nars/entity/class-use/Goal.html index f7541bc8..628450f4 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Goal.html +++ b/nars-dist/javadoc/nars/entity/class-use/Goal.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Goal (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Item.html b/nars-dist/javadoc/nars/entity/class-use/Item.html index ba4157ba..ccde9610 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Item.html +++ b/nars-dist/javadoc/nars/entity/class-use/Item.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Item (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Judgment.html b/nars-dist/javadoc/nars/entity/class-use/Judgment.html index d3300967..82cd237e 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Judgment.html +++ b/nars-dist/javadoc/nars/entity/class-use/Judgment.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Judgment (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Question.html b/nars-dist/javadoc/nars/entity/class-use/Question.html index 09005f01..d9615381 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Question.html +++ b/nars-dist/javadoc/nars/entity/class-use/Question.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Question (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Sentence.html b/nars-dist/javadoc/nars/entity/class-use/Sentence.html index 74d5f888..9bb201da 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Sentence.html +++ b/nars-dist/javadoc/nars/entity/class-use/Sentence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Sentence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html index 15747a35..e232ad76 100644 --- a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.ShortFloat (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Stamp.html b/nars-dist/javadoc/nars/entity/class-use/Stamp.html index 2a7abcd5..17fa2cdf 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Stamp.html +++ b/nars-dist/javadoc/nars/entity/class-use/Stamp.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Stamp (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Task.html b/nars-dist/javadoc/nars/entity/class-use/Task.html index b87e643b..35f5ae85 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Task.html +++ b/nars-dist/javadoc/nars/entity/class-use/Task.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Task (NARS Document) - + @@ -424,6 +424,14 @@

     java.util.ArrayList<Task> Break.execute(Task task) +
    +            + + + + java.util.ArrayList<Task> +Drop.execute(Task task) +
                @@ -456,6 +464,22 @@

     java.util.ArrayList<Task> Pick.execute(Task task) +
    +            + + + + java.util.ArrayList<Task> +Strike.execute(Task task) + +
    +            + + + + java.util.ArrayList<Task> +Throw.execute(Task task) +
                @@ -480,6 +504,14 @@

     java.util.ArrayList<Task> Break.execute(Task task) +
    +            + + + + java.util.ArrayList<Task> +Drop.execute(Task task) +
                @@ -512,6 +544,22 @@

     java.util.ArrayList<Task> Pick.execute(Task task) +
    +            + + + + java.util.ArrayList<Task> +Strike.execute(Task task) + +
    +            + + + + java.util.ArrayList<Task> +Throw.execute(Task task) +
                diff --git a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html index 3081ff75..196e8d38 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TaskLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TermLink.html b/nars-dist/javadoc/nars/entity/class-use/TermLink.html index cdccc279..85e571eb 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TermLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TermLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TermLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html index 85e8f3ec..95ba3ef6 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TruthValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-frame.html b/nars-dist/javadoc/nars/entity/package-frame.html index e8039c49..1add3c6f 100644 --- a/nars-dist/javadoc/nars/entity/package-frame.html +++ b/nars-dist/javadoc/nars/entity/package-frame.html @@ -2,13 +2,13 @@ - + nars.entity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-summary.html b/nars-dist/javadoc/nars/entity/package-summary.html index b5f6191a..bde99ef2 100644 --- a/nars-dist/javadoc/nars/entity/package-summary.html +++ b/nars-dist/javadoc/nars/entity/package-summary.html @@ -2,13 +2,13 @@ - + nars.entity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-tree.html b/nars-dist/javadoc/nars/entity/package-tree.html index 1afb1425..c73079b9 100644 --- a/nars-dist/javadoc/nars/entity/package-tree.html +++ b/nars-dist/javadoc/nars/entity/package-tree.html @@ -2,13 +2,13 @@ - + nars.entity Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-use.html b/nars-dist/javadoc/nars/entity/package-use.html index ffd7e8e7..bb0efbe5 100644 --- a/nars-dist/javadoc/nars/entity/package-use.html +++ b/nars-dist/javadoc/nars/entity/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.entity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/BagWindow.html b/nars-dist/javadoc/nars/gui/BagWindow.html index 8e551ab7..9de9c2ea 100644 --- a/nars-dist/javadoc/nars/gui/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/BagWindow.html @@ -2,13 +2,13 @@ - + BagWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/ConceptWindow.html b/nars-dist/javadoc/nars/gui/ConceptWindow.html index ec2bfbb2..889ce356 100644 --- a/nars-dist/javadoc/nars/gui/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/ConceptWindow.html @@ -2,13 +2,13 @@ - + ConceptWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/InferenceWindow.html b/nars-dist/javadoc/nars/gui/InferenceWindow.html index 92d3f70d..228d2181 100644 --- a/nars-dist/javadoc/nars/gui/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/InferenceWindow.html @@ -2,13 +2,13 @@ - + InferenceWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/InputWindow.html b/nars-dist/javadoc/nars/gui/InputWindow.html index 809b4a5d..fd52fe8e 100644 --- a/nars-dist/javadoc/nars/gui/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/InputWindow.html @@ -2,13 +2,13 @@ - + InputWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/MainWindow.html b/nars-dist/javadoc/nars/gui/MainWindow.html index 8f296057..198ccb4a 100644 --- a/nars-dist/javadoc/nars/gui/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/MainWindow.html @@ -2,13 +2,13 @@ - + MainWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/MessageDialog.html b/nars-dist/javadoc/nars/gui/MessageDialog.html index 1fbb65dd..baf6d899 100644 --- a/nars-dist/javadoc/nars/gui/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/MessageDialog.html @@ -2,13 +2,13 @@ - + MessageDialog (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/NarsFrame.html b/nars-dist/javadoc/nars/gui/NarsFrame.html index eed222bc..4dfc238d 100644 --- a/nars-dist/javadoc/nars/gui/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/NarsFrame.html @@ -2,13 +2,13 @@ - + NarsFrame (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/ParameterWindow.html b/nars-dist/javadoc/nars/gui/ParameterWindow.html index 919bb4d3..e0c32a8e 100644 --- a/nars-dist/javadoc/nars/gui/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/ParameterWindow.html @@ -2,13 +2,13 @@ - + ParameterWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/TermWindow.html b/nars-dist/javadoc/nars/gui/TermWindow.html index bcf1ae05..c81f35da 100644 --- a/nars-dist/javadoc/nars/gui/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/TermWindow.html @@ -2,13 +2,13 @@ - + TermWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html index a7f1f06b..917f4972 100644 --- a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.BagWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html index 58cc821a..e09cc499 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ConceptWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html index 945f4916..9c28dd43 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InferenceWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html index 5b5e696a..cbeb4c9c 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InputWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html index 6c721fa9..0e35362b 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MainWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html index 413cbc0c..fa7644e9 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MessageDialog (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html index 16c800a6..498e0c10 100644 --- a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.NarsFrame (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html index 9f5f822e..045b9b25 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ParameterWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html index 19ae5056..6b567beb 100644 --- a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.TermWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-frame.html b/nars-dist/javadoc/nars/gui/package-frame.html index cf9e275b..07e87f9c 100644 --- a/nars-dist/javadoc/nars/gui/package-frame.html +++ b/nars-dist/javadoc/nars/gui/package-frame.html @@ -2,13 +2,13 @@ - + nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-summary.html b/nars-dist/javadoc/nars/gui/package-summary.html index 88eff61b..e4419471 100644 --- a/nars-dist/javadoc/nars/gui/package-summary.html +++ b/nars-dist/javadoc/nars/gui/package-summary.html @@ -2,13 +2,13 @@ - + nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-tree.html b/nars-dist/javadoc/nars/gui/package-tree.html index d57c3eec..b5aea516 100644 --- a/nars-dist/javadoc/nars/gui/package-tree.html +++ b/nars-dist/javadoc/nars/gui/package-tree.html @@ -2,13 +2,13 @@ - + nars.gui Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-use.html b/nars-dist/javadoc/nars/gui/package-use.html index 5b858fad..6bcc786a 100644 --- a/nars-dist/javadoc/nars/gui/package-use.html +++ b/nars-dist/javadoc/nars/gui/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/BudgetFunctions.html index 993b9b52..9bc13630 100644 --- a/nars-dist/javadoc/nars/inference/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/BudgetFunctions.html @@ -2,13 +2,13 @@ - + BudgetFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/CompositionalRules.html b/nars-dist/javadoc/nars/inference/CompositionalRules.html index 9701a05e..9c3f434f 100644 --- a/nars-dist/javadoc/nars/inference/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/CompositionalRules.html @@ -2,13 +2,13 @@ - + CompositionalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/MatchingRules.html b/nars-dist/javadoc/nars/inference/MatchingRules.html index dd9d0d67..4a0e8f2f 100644 --- a/nars-dist/javadoc/nars/inference/MatchingRules.html +++ b/nars-dist/javadoc/nars/inference/MatchingRules.html @@ -2,13 +2,13 @@ - + MatchingRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/RuleTables.html b/nars-dist/javadoc/nars/inference/RuleTables.html index 72aa3652..52afdd6d 100644 --- a/nars-dist/javadoc/nars/inference/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/RuleTables.html @@ -2,13 +2,13 @@ - + RuleTables (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/StructuralRules.html b/nars-dist/javadoc/nars/inference/StructuralRules.html index c50b4b19..3fead103 100644 --- a/nars-dist/javadoc/nars/inference/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/StructuralRules.html @@ -2,13 +2,13 @@ - + StructuralRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/SyllogisticRules.html index a3b25f1b..a3287b6f 100644 --- a/nars-dist/javadoc/nars/inference/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/SyllogisticRules.html @@ -2,13 +2,13 @@ - + SyllogisticRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/TruthFunctions.html b/nars-dist/javadoc/nars/inference/TruthFunctions.html index 90bddf55..16de961a 100644 --- a/nars-dist/javadoc/nars/inference/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/TruthFunctions.html @@ -2,13 +2,13 @@ - + TruthFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/UtilityFunctions.html index 0c5ece0e..6771b636 100644 --- a/nars-dist/javadoc/nars/inference/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/UtilityFunctions.html @@ -2,13 +2,13 @@ - + UtilityFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html index 189aadf0..f9a54c88 100644 --- a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.BudgetFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html index 39fe92d6..882dc24c 100644 --- a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.CompositionalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html index c40b5bc4..c4a94f6a 100644 --- a/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.MatchingRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html index b8e1c1e0..c54821e8 100644 --- a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.RuleTables (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html index fc512da2..de56f6cc 100644 --- a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.StructuralRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html index 5f5e924e..c292cc39 100644 --- a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.SyllogisticRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html index f54a0b3c..6e36bd7e 100644 --- a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.TruthFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html index a957d97f..9bdb840e 100644 --- a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.UtilityFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-frame.html b/nars-dist/javadoc/nars/inference/package-frame.html index 24607107..b757b994 100644 --- a/nars-dist/javadoc/nars/inference/package-frame.html +++ b/nars-dist/javadoc/nars/inference/package-frame.html @@ -2,13 +2,13 @@ - + nars.inference (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-summary.html b/nars-dist/javadoc/nars/inference/package-summary.html index 4fe14165..489fc488 100644 --- a/nars-dist/javadoc/nars/inference/package-summary.html +++ b/nars-dist/javadoc/nars/inference/package-summary.html @@ -2,13 +2,13 @@ - + nars.inference (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-tree.html b/nars-dist/javadoc/nars/inference/package-tree.html index a896ce3d..45e63e66 100644 --- a/nars-dist/javadoc/nars/inference/package-tree.html +++ b/nars-dist/javadoc/nars/inference/package-tree.html @@ -2,13 +2,13 @@ - + nars.inference Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-use.html b/nars-dist/javadoc/nars/inference/package-use.html index 2daec499..182f3e62 100644 --- a/nars-dist/javadoc/nars/inference/package-use.html +++ b/nars-dist/javadoc/nars/inference/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.inference (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/ExperienceIO.html b/nars-dist/javadoc/nars/io/ExperienceIO.html index d5794d81..69fb555b 100644 --- a/nars-dist/javadoc/nars/io/ExperienceIO.html +++ b/nars-dist/javadoc/nars/io/ExperienceIO.html @@ -2,13 +2,13 @@ - + ExperienceIO (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/Record.html b/nars-dist/javadoc/nars/io/Record.html index b38a6a3f..c1957c2f 100644 --- a/nars-dist/javadoc/nars/io/Record.html +++ b/nars-dist/javadoc/nars/io/Record.html @@ -2,13 +2,13 @@ - + Record (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html index 518eed79..b1b0aaed 100644 --- a/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html +++ b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html @@ -2,13 +2,13 @@ - + StringParser.InvalidInputException (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/StringParser.html b/nars-dist/javadoc/nars/io/StringParser.html index 7e98fd5c..b169db2d 100644 --- a/nars-dist/javadoc/nars/io/StringParser.html +++ b/nars-dist/javadoc/nars/io/StringParser.html @@ -2,13 +2,13 @@ - + StringParser (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/Symbols.html b/nars-dist/javadoc/nars/io/Symbols.html index f190f55f..177880b4 100644 --- a/nars-dist/javadoc/nars/io/Symbols.html +++ b/nars-dist/javadoc/nars/io/Symbols.html @@ -2,13 +2,13 @@ - + Symbols (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html index 401e05e1..800da6a6 100644 --- a/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html +++ b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.ExperienceIO (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/Record.html b/nars-dist/javadoc/nars/io/class-use/Record.html index fba71ac2..618e025b 100644 --- a/nars-dist/javadoc/nars/io/class-use/Record.html +++ b/nars-dist/javadoc/nars/io/class-use/Record.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.Record (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html index 513e4052..4595971e 100644 --- a/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.StringParser.InvalidInputException (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.html b/nars-dist/javadoc/nars/io/class-use/StringParser.html index c29658c3..c3f81ce2 100644 --- a/nars-dist/javadoc/nars/io/class-use/StringParser.html +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.StringParser (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/Symbols.html b/nars-dist/javadoc/nars/io/class-use/Symbols.html index d36f7f50..d87f3556 100644 --- a/nars-dist/javadoc/nars/io/class-use/Symbols.html +++ b/nars-dist/javadoc/nars/io/class-use/Symbols.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.Symbols (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-frame.html b/nars-dist/javadoc/nars/io/package-frame.html index db19c51e..45edad19 100644 --- a/nars-dist/javadoc/nars/io/package-frame.html +++ b/nars-dist/javadoc/nars/io/package-frame.html @@ -2,13 +2,13 @@ - + nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-summary.html b/nars-dist/javadoc/nars/io/package-summary.html index f91d27a5..7a3321dc 100644 --- a/nars-dist/javadoc/nars/io/package-summary.html +++ b/nars-dist/javadoc/nars/io/package-summary.html @@ -2,13 +2,13 @@ - + nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-tree.html b/nars-dist/javadoc/nars/io/package-tree.html index cf0d237b..53da6b47 100644 --- a/nars-dist/javadoc/nars/io/package-tree.html +++ b/nars-dist/javadoc/nars/io/package-tree.html @@ -2,13 +2,13 @@ - + nars.io Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-use.html b/nars-dist/javadoc/nars/io/package-use.html index ae894d20..d5af8fe4 100644 --- a/nars-dist/javadoc/nars/io/package-use.html +++ b/nars-dist/javadoc/nars/io/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/CompoundTerm.html b/nars-dist/javadoc/nars/language/CompoundTerm.html index 203866dc..af3d6ef2 100644 --- a/nars-dist/javadoc/nars/language/CompoundTerm.html +++ b/nars-dist/javadoc/nars/language/CompoundTerm.html @@ -2,13 +2,13 @@ - + CompoundTerm (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Conjunction.html b/nars-dist/javadoc/nars/language/Conjunction.html index 95b0d2c5..6b847870 100644 --- a/nars-dist/javadoc/nars/language/Conjunction.html +++ b/nars-dist/javadoc/nars/language/Conjunction.html @@ -2,13 +2,13 @@ - + Conjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/DifferenceExt.html b/nars-dist/javadoc/nars/language/DifferenceExt.html index 9e78517f..b49f3ee3 100644 --- a/nars-dist/javadoc/nars/language/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/DifferenceExt.html @@ -2,13 +2,13 @@ - + DifferenceExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/DifferenceInt.html b/nars-dist/javadoc/nars/language/DifferenceInt.html index d16cc0d9..5c88effd 100644 --- a/nars-dist/javadoc/nars/language/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/DifferenceInt.html @@ -2,13 +2,13 @@ - + DifferenceInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Disjunction.html b/nars-dist/javadoc/nars/language/Disjunction.html index ba4b7cd8..d021e5bb 100644 --- a/nars-dist/javadoc/nars/language/Disjunction.html +++ b/nars-dist/javadoc/nars/language/Disjunction.html @@ -2,13 +2,13 @@ - + Disjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Equivalence.html b/nars-dist/javadoc/nars/language/Equivalence.html index 05311c0a..8c79fc22 100644 --- a/nars-dist/javadoc/nars/language/Equivalence.html +++ b/nars-dist/javadoc/nars/language/Equivalence.html @@ -2,13 +2,13 @@ - + Equivalence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/ImageExt.html b/nars-dist/javadoc/nars/language/ImageExt.html index 74410b0f..463f3033 100644 --- a/nars-dist/javadoc/nars/language/ImageExt.html +++ b/nars-dist/javadoc/nars/language/ImageExt.html @@ -2,13 +2,13 @@ - + ImageExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/ImageInt.html b/nars-dist/javadoc/nars/language/ImageInt.html index 6ff117d1..269de115 100644 --- a/nars-dist/javadoc/nars/language/ImageInt.html +++ b/nars-dist/javadoc/nars/language/ImageInt.html @@ -2,13 +2,13 @@ - + ImageInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Implication.html b/nars-dist/javadoc/nars/language/Implication.html index 594e837b..2ac02bb8 100644 --- a/nars-dist/javadoc/nars/language/Implication.html +++ b/nars-dist/javadoc/nars/language/Implication.html @@ -2,13 +2,13 @@ - + Implication (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Inheritance.html b/nars-dist/javadoc/nars/language/Inheritance.html index 4b9c9a5e..f1eb4686 100644 --- a/nars-dist/javadoc/nars/language/Inheritance.html +++ b/nars-dist/javadoc/nars/language/Inheritance.html @@ -2,13 +2,13 @@ - + Inheritance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Instance.html b/nars-dist/javadoc/nars/language/Instance.html index 5516bfea..2e9bf47f 100644 --- a/nars-dist/javadoc/nars/language/Instance.html +++ b/nars-dist/javadoc/nars/language/Instance.html @@ -2,13 +2,13 @@ - + Instance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/InstanceProperty.html b/nars-dist/javadoc/nars/language/InstanceProperty.html index 8aea7529..e80abb89 100644 --- a/nars-dist/javadoc/nars/language/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/InstanceProperty.html @@ -2,13 +2,13 @@ - + InstanceProperty (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/IntersectionExt.html b/nars-dist/javadoc/nars/language/IntersectionExt.html index d0b59550..f110acc9 100644 --- a/nars-dist/javadoc/nars/language/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/IntersectionExt.html @@ -2,13 +2,13 @@ - + IntersectionExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/IntersectionInt.html b/nars-dist/javadoc/nars/language/IntersectionInt.html index 69a3af5a..a7b19339 100644 --- a/nars-dist/javadoc/nars/language/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/IntersectionInt.html @@ -2,13 +2,13 @@ - + IntersectionInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Negation.html b/nars-dist/javadoc/nars/language/Negation.html index 9b07c242..ee04c70d 100644 --- a/nars-dist/javadoc/nars/language/Negation.html +++ b/nars-dist/javadoc/nars/language/Negation.html @@ -2,13 +2,13 @@ - + Negation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Product.html b/nars-dist/javadoc/nars/language/Product.html index fac2333d..f8b0fb22 100644 --- a/nars-dist/javadoc/nars/language/Product.html +++ b/nars-dist/javadoc/nars/language/Product.html @@ -2,13 +2,13 @@ - + Product (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Property.html b/nars-dist/javadoc/nars/language/Property.html index ac1793b8..6902ffcb 100644 --- a/nars-dist/javadoc/nars/language/Property.html +++ b/nars-dist/javadoc/nars/language/Property.html @@ -2,13 +2,13 @@ - + Property (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/SetExt.html b/nars-dist/javadoc/nars/language/SetExt.html index cb65e163..9f5dce35 100644 --- a/nars-dist/javadoc/nars/language/SetExt.html +++ b/nars-dist/javadoc/nars/language/SetExt.html @@ -2,13 +2,13 @@ - + SetExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/SetInt.html b/nars-dist/javadoc/nars/language/SetInt.html index b9b496d9..b2573eef 100644 --- a/nars-dist/javadoc/nars/language/SetInt.html +++ b/nars-dist/javadoc/nars/language/SetInt.html @@ -2,13 +2,13 @@ - + SetInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Similarity.html b/nars-dist/javadoc/nars/language/Similarity.html index 35935e65..b9b0e803 100644 --- a/nars-dist/javadoc/nars/language/Similarity.html +++ b/nars-dist/javadoc/nars/language/Similarity.html @@ -2,13 +2,13 @@ - + Similarity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Statement.html b/nars-dist/javadoc/nars/language/Statement.html index 24e5390a..4c7db607 100644 --- a/nars-dist/javadoc/nars/language/Statement.html +++ b/nars-dist/javadoc/nars/language/Statement.html @@ -2,13 +2,13 @@ - + Statement (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Term.html b/nars-dist/javadoc/nars/language/Term.html index 920212a8..594b8891 100644 --- a/nars-dist/javadoc/nars/language/Term.html +++ b/nars-dist/javadoc/nars/language/Term.html @@ -2,13 +2,13 @@ - + Term (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Variable.VarType.html b/nars-dist/javadoc/nars/language/Variable.VarType.html index c58bb37d..20da2599 100644 --- a/nars-dist/javadoc/nars/language/Variable.VarType.html +++ b/nars-dist/javadoc/nars/language/Variable.VarType.html @@ -2,13 +2,13 @@ - + Variable.VarType (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Variable.html b/nars-dist/javadoc/nars/language/Variable.html index c22c0248..560c5bfa 100644 --- a/nars-dist/javadoc/nars/language/Variable.html +++ b/nars-dist/javadoc/nars/language/Variable.html @@ -2,13 +2,13 @@ - + Variable (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html index 3f5d3f9f..6985869d 100644 --- a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html +++ b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.CompoundTerm (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Conjunction.html b/nars-dist/javadoc/nars/language/class-use/Conjunction.html index 4ddb1e98..abaff669 100644 --- a/nars-dist/javadoc/nars/language/class-use/Conjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Conjunction.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Conjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html index abe099ec..b68ff735 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.DifferenceExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html index 005bb335..336206fb 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.DifferenceInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Disjunction.html b/nars-dist/javadoc/nars/language/class-use/Disjunction.html index 8ee8b549..b400ecc6 100644 --- a/nars-dist/javadoc/nars/language/class-use/Disjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Disjunction.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Disjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Equivalence.html b/nars-dist/javadoc/nars/language/class-use/Equivalence.html index 1a8c40e5..aac1c915 100644 --- a/nars-dist/javadoc/nars/language/class-use/Equivalence.html +++ b/nars-dist/javadoc/nars/language/class-use/Equivalence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Equivalence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ImageExt.html b/nars-dist/javadoc/nars/language/class-use/ImageExt.html index 5a7a2817..75c2eac2 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageExt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImageExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ImageInt.html b/nars-dist/javadoc/nars/language/class-use/ImageInt.html index 7d9212ed..f105f76d 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageInt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImageInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Implication.html b/nars-dist/javadoc/nars/language/class-use/Implication.html index 4cba0a59..b2da9f18 100644 --- a/nars-dist/javadoc/nars/language/class-use/Implication.html +++ b/nars-dist/javadoc/nars/language/class-use/Implication.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Implication (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Inheritance.html b/nars-dist/javadoc/nars/language/class-use/Inheritance.html index e65d4e01..7ca91dca 100644 --- a/nars-dist/javadoc/nars/language/class-use/Inheritance.html +++ b/nars-dist/javadoc/nars/language/class-use/Inheritance.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Inheritance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Instance.html b/nars-dist/javadoc/nars/language/class-use/Instance.html index eec4d9a1..aa8b17e8 100644 --- a/nars-dist/javadoc/nars/language/class-use/Instance.html +++ b/nars-dist/javadoc/nars/language/class-use/Instance.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Instance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html index bf79e65d..b10bfa4b 100644 --- a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.InstanceProperty (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html index 712cbafb..790367c2 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.IntersectionExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html index 09b7da64..db7ff62b 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.IntersectionInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Negation.html b/nars-dist/javadoc/nars/language/class-use/Negation.html index d0151941..d3eb4be0 100644 --- a/nars-dist/javadoc/nars/language/class-use/Negation.html +++ b/nars-dist/javadoc/nars/language/class-use/Negation.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Negation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Product.html b/nars-dist/javadoc/nars/language/class-use/Product.html index 64b5b9a0..626a8aa7 100644 --- a/nars-dist/javadoc/nars/language/class-use/Product.html +++ b/nars-dist/javadoc/nars/language/class-use/Product.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Product (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Property.html b/nars-dist/javadoc/nars/language/class-use/Property.html index e548e0d3..9eed7fb1 100644 --- a/nars-dist/javadoc/nars/language/class-use/Property.html +++ b/nars-dist/javadoc/nars/language/class-use/Property.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Property (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/SetExt.html b/nars-dist/javadoc/nars/language/class-use/SetExt.html index d109c600..ffb8a79e 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetExt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.SetExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/SetInt.html b/nars-dist/javadoc/nars/language/class-use/SetInt.html index d21f824d..94bb8163 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetInt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.SetInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Similarity.html b/nars-dist/javadoc/nars/language/class-use/Similarity.html index 3f33619d..3eb1d8ba 100644 --- a/nars-dist/javadoc/nars/language/class-use/Similarity.html +++ b/nars-dist/javadoc/nars/language/class-use/Similarity.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Similarity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Statement.html b/nars-dist/javadoc/nars/language/class-use/Statement.html index 2dde85b4..024fa2c5 100644 --- a/nars-dist/javadoc/nars/language/class-use/Statement.html +++ b/nars-dist/javadoc/nars/language/class-use/Statement.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Statement (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Term.html b/nars-dist/javadoc/nars/language/class-use/Term.html index a7e0765b..9efdf412 100644 --- a/nars-dist/javadoc/nars/language/class-use/Term.html +++ b/nars-dist/javadoc/nars/language/class-use/Term.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Term (NARS Document) - + @@ -2414,6 +2414,14 @@

     class Break +
    +          A class used in testing only. + + + + class +Drop +
              A class used in testing only. @@ -2447,6 +2455,22 @@

     class Pick +
    +          A class used in testing only. + + + + class +Strike + +
    +          A class used in testing only. + + + + class +Throw +
              A class used in testing only. diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html index 22c2fbca..6b71fdb2 100644 --- a/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html +++ b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Variable.VarType (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.html b/nars-dist/javadoc/nars/language/class-use/Variable.html index 63b29427..70bb472c 100644 --- a/nars-dist/javadoc/nars/language/class-use/Variable.html +++ b/nars-dist/javadoc/nars/language/class-use/Variable.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Variable (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-frame.html b/nars-dist/javadoc/nars/language/package-frame.html index 8317351b..8dc14980 100644 --- a/nars-dist/javadoc/nars/language/package-frame.html +++ b/nars-dist/javadoc/nars/language/package-frame.html @@ -2,13 +2,13 @@ - + nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-summary.html b/nars-dist/javadoc/nars/language/package-summary.html index 138d0e95..e0c9c3c1 100644 --- a/nars-dist/javadoc/nars/language/package-summary.html +++ b/nars-dist/javadoc/nars/language/package-summary.html @@ -2,13 +2,13 @@ - + nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-tree.html b/nars-dist/javadoc/nars/language/package-tree.html index a9942bec..ba9c4cad 100644 --- a/nars-dist/javadoc/nars/language/package-tree.html +++ b/nars-dist/javadoc/nars/language/package-tree.html @@ -2,13 +2,13 @@ - + nars.language Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-use.html b/nars-dist/javadoc/nars/language/package-use.html index c068f5f1..efc71848 100644 --- a/nars-dist/javadoc/nars/language/package-use.html +++ b/nars-dist/javadoc/nars/language/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/Center.html b/nars-dist/javadoc/nars/main/Center.html index 59804bf5..b5b84ae6 100644 --- a/nars-dist/javadoc/nars/main/Center.html +++ b/nars-dist/javadoc/nars/main/Center.html @@ -2,13 +2,13 @@ - + Center (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/Memory.html b/nars-dist/javadoc/nars/main/Memory.html index f13c9a7e..746cd85e 100644 --- a/nars-dist/javadoc/nars/main/Memory.html +++ b/nars-dist/javadoc/nars/main/Memory.html @@ -2,13 +2,13 @@ - + Memory (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/NARS.html b/nars-dist/javadoc/nars/main/NARS.html index de7fe682..b39e6807 100644 --- a/nars-dist/javadoc/nars/main/NARS.html +++ b/nars-dist/javadoc/nars/main/NARS.html @@ -2,13 +2,13 @@ - + NARS (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/Parameters.html b/nars-dist/javadoc/nars/main/Parameters.html index f1148114..25e8677e 100644 --- a/nars-dist/javadoc/nars/main/Parameters.html +++ b/nars-dist/javadoc/nars/main/Parameters.html @@ -2,13 +2,13 @@ - + Parameters (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/Center.html b/nars-dist/javadoc/nars/main/class-use/Center.html index 2c9e1f3b..f3d9d0cf 100644 --- a/nars-dist/javadoc/nars/main/class-use/Center.html +++ b/nars-dist/javadoc/nars/main/class-use/Center.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Center (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/Memory.html b/nars-dist/javadoc/nars/main/class-use/Memory.html index e9ca2808..ef894677 100644 --- a/nars-dist/javadoc/nars/main/class-use/Memory.html +++ b/nars-dist/javadoc/nars/main/class-use/Memory.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Memory (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/NARS.html b/nars-dist/javadoc/nars/main/class-use/NARS.html index cbcf0990..0fe207e1 100644 --- a/nars-dist/javadoc/nars/main/class-use/NARS.html +++ b/nars-dist/javadoc/nars/main/class-use/NARS.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.NARS (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/Parameters.html b/nars-dist/javadoc/nars/main/class-use/Parameters.html index 819bfc86..bb5ae54e 100644 --- a/nars-dist/javadoc/nars/main/class-use/Parameters.html +++ b/nars-dist/javadoc/nars/main/class-use/Parameters.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Parameters (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-frame.html b/nars-dist/javadoc/nars/main/package-frame.html index 4fd9bdb9..988d789b 100644 --- a/nars-dist/javadoc/nars/main/package-frame.html +++ b/nars-dist/javadoc/nars/main/package-frame.html @@ -2,13 +2,13 @@ - + nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-summary.html b/nars-dist/javadoc/nars/main/package-summary.html index eb1b56f9..4274bef0 100644 --- a/nars-dist/javadoc/nars/main/package-summary.html +++ b/nars-dist/javadoc/nars/main/package-summary.html @@ -2,13 +2,13 @@ - + nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-tree.html b/nars-dist/javadoc/nars/main/package-tree.html index 692ab812..9044aa4e 100644 --- a/nars-dist/javadoc/nars/main/package-tree.html +++ b/nars-dist/javadoc/nars/main/package-tree.html @@ -2,13 +2,13 @@ - + nars.main Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-use.html b/nars-dist/javadoc/nars/main/package-use.html index 98c6063c..a36b0b14 100644 --- a/nars-dist/javadoc/nars/main/package-use.html +++ b/nars-dist/javadoc/nars/main/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/Break.html b/nars-dist/javadoc/nars/operation/Break.html index 41875060..ca564724 100644 --- a/nars-dist/javadoc/nars/operation/Break.html +++ b/nars-dist/javadoc/nars/operation/Break.html @@ -2,13 +2,13 @@ - + Break (NARS Document) - + @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -271,7 +271,7 @@

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/operation/GoTo.html b/nars-dist/javadoc/nars/operation/GoTo.html index 00590249..ad8cabae 100644 --- a/nars-dist/javadoc/nars/operation/GoTo.html +++ b/nars-dist/javadoc/nars/operation/GoTo.html @@ -2,13 +2,13 @@ - + GoTo (NARS Document) - + @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -270,7 +270,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/operation/Open.html b/nars-dist/javadoc/nars/operation/Open.html index ad1169c9..ba7370f0 100644 --- a/nars-dist/javadoc/nars/operation/Open.html +++ b/nars-dist/javadoc/nars/operation/Open.html @@ -2,13 +2,13 @@ - + Open (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/Operator.html b/nars-dist/javadoc/nars/operation/Operator.html index 3b27bb74..b1a44695 100644 --- a/nars-dist/javadoc/nars/operation/Operator.html +++ b/nars-dist/javadoc/nars/operation/Operator.html @@ -2,13 +2,13 @@ - + Operator (NARS Document) - + @@ -101,7 +101,7 @@

    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>

    -
    Direct Known Subclasses:
    Break, GoTo, Open, Pick
    +
    Direct Known Subclasses:
    Break, Drop, GoTo, Open, Pick, Strike, Throw

    diff --git a/nars-dist/javadoc/nars/operation/Pick.html b/nars-dist/javadoc/nars/operation/Pick.html index 52624844..d4e9cad7 100644 --- a/nars-dist/javadoc/nars/operation/Pick.html +++ b/nars-dist/javadoc/nars/operation/Pick.html @@ -2,13 +2,13 @@ - + Pick (NARS Document) - + @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -271,7 +271,7 @@

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/operation/class-use/Break.html b/nars-dist/javadoc/nars/operation/class-use/Break.html index 379832e1..a4966ffa 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Break.html +++ b/nars-dist/javadoc/nars/operation/class-use/Break.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Break (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/GoTo.html b/nars-dist/javadoc/nars/operation/class-use/GoTo.html index 635a3f33..9d65e535 100644 --- a/nars-dist/javadoc/nars/operation/class-use/GoTo.html +++ b/nars-dist/javadoc/nars/operation/class-use/GoTo.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.GoTo (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Open.html b/nars-dist/javadoc/nars/operation/class-use/Open.html index 37a90f3e..25f9da26 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Open.html +++ b/nars-dist/javadoc/nars/operation/class-use/Open.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Open (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Operator.html b/nars-dist/javadoc/nars/operation/class-use/Operator.html index 09033db4..cc3ac80e 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Operator.html +++ b/nars-dist/javadoc/nars/operation/class-use/Operator.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Operator (NARS Document) - + @@ -161,6 +161,14 @@

     class Break +
    +          A class used in testing only. + + + + class +Drop +
              A class used in testing only. @@ -185,6 +193,22 @@

     class Pick +
    +          A class used in testing only. + + + + class +Strike + +
    +          A class used in testing only. + + + + class +Throw +
              A class used in testing only. diff --git a/nars-dist/javadoc/nars/operation/class-use/Pick.html b/nars-dist/javadoc/nars/operation/class-use/Pick.html index da0a61e0..7f094b0f 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Pick.html +++ b/nars-dist/javadoc/nars/operation/class-use/Pick.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Pick (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-frame.html b/nars-dist/javadoc/nars/operation/package-frame.html index 5faf08db..7dbeee38 100644 --- a/nars-dist/javadoc/nars/operation/package-frame.html +++ b/nars-dist/javadoc/nars/operation/package-frame.html @@ -2,13 +2,13 @@ - + nars.operation (NARS Document) - + @@ -26,13 +26,19 @@
    Break
    +Drop +
    GoTo
    Open
    Operator
    -Pick +Pick +
    +Strike +
    +Throw diff --git a/nars-dist/javadoc/nars/operation/package-summary.html b/nars-dist/javadoc/nars/operation/package-summary.html index f52a9ec1..481e0895 100644 --- a/nars-dist/javadoc/nars/operation/package-summary.html +++ b/nars-dist/javadoc/nars/operation/package-summary.html @@ -2,13 +2,13 @@ - + nars.operation (NARS Document) - + @@ -100,6 +100,10 @@

    A class used in testing only. +Drop +A class used in testing only. + + GoTo A class used in testing only. @@ -116,6 +120,14 @@

    Pick A class used in testing only. + +Strike +A class used in testing only. + + +Throw +A class used in testing only. +   diff --git a/nars-dist/javadoc/nars/operation/package-tree.html b/nars-dist/javadoc/nars/operation/package-tree.html index e8e5d9cc..2cb14a81 100644 --- a/nars-dist/javadoc/nars/operation/package-tree.html +++ b/nars-dist/javadoc/nars/operation/package-tree.html @@ -2,13 +2,13 @@ - + nars.operation Class Hierarchy (NARS Document) - + @@ -96,7 +96,7 @@

  • nars.language.Term (implements java.lang.Cloneable, java.lang.Comparable<T>) diff --git a/nars-dist/javadoc/nars/operation/package-use.html b/nars-dist/javadoc/nars/operation/package-use.html index 3ac0b77f..7ea5987c 100644 --- a/nars-dist/javadoc/nars/operation/package-use.html +++ b/nars-dist/javadoc/nars/operation/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/Bag.html b/nars-dist/javadoc/nars/storage/Bag.html index f4a18000..0d842c29 100644 --- a/nars-dist/javadoc/nars/storage/Bag.html +++ b/nars-dist/javadoc/nars/storage/Bag.html @@ -2,13 +2,13 @@ - + Bag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/ConceptBag.html b/nars-dist/javadoc/nars/storage/ConceptBag.html index e29944ec..61748363 100644 --- a/nars-dist/javadoc/nars/storage/ConceptBag.html +++ b/nars-dist/javadoc/nars/storage/ConceptBag.html @@ -2,13 +2,13 @@ - + ConceptBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/Distributor.html b/nars-dist/javadoc/nars/storage/Distributor.html index 9a3748a1..5c82bea1 100644 --- a/nars-dist/javadoc/nars/storage/Distributor.html +++ b/nars-dist/javadoc/nars/storage/Distributor.html @@ -2,13 +2,13 @@ - + Distributor (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TaskBuffer.html b/nars-dist/javadoc/nars/storage/TaskBuffer.html index ac0fb67d..d00b55de 100644 --- a/nars-dist/javadoc/nars/storage/TaskBuffer.html +++ b/nars-dist/javadoc/nars/storage/TaskBuffer.html @@ -2,13 +2,13 @@ - + TaskBuffer (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/TaskLinkBag.html index a0307d9a..cbadbf07 100644 --- a/nars-dist/javadoc/nars/storage/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TaskLinkBag.html @@ -2,13 +2,13 @@ - + TaskLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TermLinkBag.html b/nars-dist/javadoc/nars/storage/TermLinkBag.html index 778e1621..4f81a8f7 100644 --- a/nars-dist/javadoc/nars/storage/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TermLinkBag.html @@ -2,13 +2,13 @@ - + TermLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/Bag.html b/nars-dist/javadoc/nars/storage/class-use/Bag.html index a5226a52..877eb9bd 100644 --- a/nars-dist/javadoc/nars/storage/class-use/Bag.html +++ b/nars-dist/javadoc/nars/storage/class-use/Bag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.Bag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html index 56d27f3a..bbda107e 100644 --- a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.ConceptBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/Distributor.html b/nars-dist/javadoc/nars/storage/class-use/Distributor.html index 276028f3..bb658281 100644 --- a/nars-dist/javadoc/nars/storage/class-use/Distributor.html +++ b/nars-dist/javadoc/nars/storage/class-use/Distributor.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.Distributor (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html index 2679f5b0..7b179651 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html +++ b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TaskBuffer (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html index c0bb6bfe..d8d95023 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TaskLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html index a5002463..041c31bb 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TermLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-frame.html b/nars-dist/javadoc/nars/storage/package-frame.html index f4a6d742..8e4fa2e7 100644 --- a/nars-dist/javadoc/nars/storage/package-frame.html +++ b/nars-dist/javadoc/nars/storage/package-frame.html @@ -2,13 +2,13 @@ - + nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-summary.html b/nars-dist/javadoc/nars/storage/package-summary.html index 0f5d01ef..427c962c 100644 --- a/nars-dist/javadoc/nars/storage/package-summary.html +++ b/nars-dist/javadoc/nars/storage/package-summary.html @@ -2,13 +2,13 @@ - + nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-tree.html b/nars-dist/javadoc/nars/storage/package-tree.html index e7f55636..8eef1e28 100644 --- a/nars-dist/javadoc/nars/storage/package-tree.html +++ b/nars-dist/javadoc/nars/storage/package-tree.html @@ -2,13 +2,13 @@ - + nars.storage Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-use.html b/nars-dist/javadoc/nars/storage/package-use.html index 8f9ea3b2..1113cf48 100644 --- a/nars-dist/javadoc/nars/storage/package-use.html +++ b/nars-dist/javadoc/nars/storage/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/overview-frame.html b/nars-dist/javadoc/overview-frame.html index 7990df84..8654d72c 100644 --- a/nars-dist/javadoc/overview-frame.html +++ b/nars-dist/javadoc/overview-frame.html @@ -2,13 +2,13 @@ - + Overview List (NARS Document) - + diff --git a/nars-dist/javadoc/overview-summary.html b/nars-dist/javadoc/overview-summary.html index 950d79a8..0b0e99ae 100644 --- a/nars-dist/javadoc/overview-summary.html +++ b/nars-dist/javadoc/overview-summary.html @@ -2,13 +2,13 @@ - + Overview (NARS Document) - + diff --git a/nars-dist/javadoc/overview-tree.html b/nars-dist/javadoc/overview-tree.html index d8bac16c..d0f1a623 100644 --- a/nars-dist/javadoc/overview-tree.html +++ b/nars-dist/javadoc/overview-tree.html @@ -2,13 +2,13 @@ - + Class Hierarchy (NARS Document) - + @@ -147,7 +147,7 @@

  • nars.language.Equivalence
  • nars.language.Implication
  • nars.language.Inheritance
  • nars.language.Instance
  • nars.language.InstanceProperty
  • nars.language.Property
  • nars.language.Similarity
  • nars.operation.Operator +
  • nars.operation.Break
  • nars.operation.Drop
  • nars.operation.GoTo
  • nars.operation.Open
  • nars.operation.Pick
  • nars.operation.Strike
  • nars.operation.Throw
  • nars.language.Variable
  • java.lang.Throwable (implements java.io.Serializable)
      diff --git a/nars-dist/javadoc/serialized-form.html b/nars-dist/javadoc/serialized-form.html index fc790ffa..b6e7124f 100644 --- a/nars-dist/javadoc/serialized-form.html +++ b/nars-dist/javadoc/serialized-form.html @@ -2,13 +2,13 @@ - + Serialized Form (NARS Document) - + From 23738d90fe66e9612216298eefcdb9b13efd8c4d Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Fri, 2 Apr 2010 15:58:12 +0000 Subject: [PATCH 045/206] open-nars 1.3.1, with new operators for testing --- nars/entity/Stamp.java | 1 + nars/main/NARS.java | 2 +- nars/operation/Operator.java | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/nars/entity/Stamp.java b/nars/entity/Stamp.java index 17d70366..4603383f 100644 --- a/nars/entity/Stamp.java +++ b/nars/entity/Stamp.java @@ -264,6 +264,7 @@ public void adjustEventTime(int d) { /** * Get a String form of the Stamp for display + * Format: {creationTime [: eventTime] : trail} * @return The Stamp as a String */ @Override diff --git a/nars/main/NARS.java b/nars/main/NARS.java index 0717460e..f2511d32 100644 --- a/nars/main/NARS.java +++ b/nars/main/NARS.java @@ -35,7 +35,7 @@ public class NARS extends Applet implements Runnable { * The information about the version and date of the project. */ public static final String INFO = - " Open-NARS Version 1.3.0 January 2010 \n"; + " Open-NARS Version 1.3.1 April 2010 \n"; /** * The project websites. */ diff --git a/nars/operation/Operator.java b/nars/operation/Operator.java index 556295e0..d2b6c6f5 100644 --- a/nars/operation/Operator.java +++ b/nars/operation/Operator.java @@ -73,6 +73,9 @@ public static HashMap setOperators() { table.put("^pick", new Pick("^pick")); table.put("^open", new Open("^open")); table.put("^break", new Break("^break")); + table.put("^drop", new Break("^drop")); + table.put("^throw", new Break("^throw")); + table.put("^strike", new Break("^strike")); return table; } From 7117c429ce0cabf7572eb4a5a334f7c531035759 Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Fri, 2 Apr 2010 16:02:08 +0000 Subject: [PATCH 046/206] new operators for testing --- nars/operation/Drop.java | 39 ++++++++++++++++++++++++++++++++++++++ nars/operation/Strike.java | 39 ++++++++++++++++++++++++++++++++++++++ nars/operation/Throw.java | 39 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 117 insertions(+) create mode 100644 nars/operation/Drop.java create mode 100644 nars/operation/Strike.java create mode 100644 nars/operation/Throw.java diff --git a/nars/operation/Drop.java b/nars/operation/Drop.java new file mode 100644 index 00000000..33549769 --- /dev/null +++ b/nars/operation/Drop.java @@ -0,0 +1,39 @@ +/* + * Drop.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ + +package nars.operation; + +import java.util.ArrayList; +import nars.entity.Task; + +/** + * A class used in testing only. + */ +public class Drop extends Operator { + public Drop(String name) { + super(name); + } + + public ArrayList execute(Task task) { +// System.out.println("EXECUTE in " + name + " " + task); + return null; + } +} diff --git a/nars/operation/Strike.java b/nars/operation/Strike.java new file mode 100644 index 00000000..d14d5b8a --- /dev/null +++ b/nars/operation/Strike.java @@ -0,0 +1,39 @@ +/* + * Strike.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ + +package nars.operation; + +import java.util.ArrayList; +import nars.entity.Task; + +/** + * A class used in testing only. + */ +public class Strike extends Operator { + public Strike(String name) { + super(name); + } + + public ArrayList execute(Task task) { +// System.out.println("EXECUTE in " + name + " " + task); + return null; + } +} diff --git a/nars/operation/Throw.java b/nars/operation/Throw.java new file mode 100644 index 00000000..d8c819ad --- /dev/null +++ b/nars/operation/Throw.java @@ -0,0 +1,39 @@ +/* + * Throw.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ + +package nars.operation; + +import java.util.ArrayList; +import nars.entity.Task; + +/** + * A class used in testing only. + */ +public class Throw extends Operator { + public Throw(String name) { + super(name); + } + + public ArrayList execute(Task task) { +// System.out.println("EXECUTE in " + name + " " + task); + return null; + } +} From e368adcc52983e488016bf7919cfaef5d420f5e1 Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Fri, 2 Apr 2010 18:14:56 +0000 Subject: [PATCH 047/206] fix a bug in conversion with query variable [Issue 20] --- nars/main/Memory.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/nars/main/Memory.java b/nars/main/Memory.java index d4e6dd6b..150bfd2b 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -299,7 +299,21 @@ public static void singlePremiseTask(BudgetValue budget, Term content, TruthValu * @param truth The truth value of the new task */ public static void convertedJudgment(TruthValue truth, BudgetValue budget) { - Term content = Memory.currentTask.getContent(); + Statement content = (Statement) Memory.currentTask.getContent(); + Statement beliefContent = (Statement) Memory.currentBelief.getContent(); + Term subj = content.getSubject(); + Term pred = content.getPredicate(); + Term subjB = beliefContent.getSubject(); + Term predB = beliefContent.getPredicate(); + Term otherTerm; + if ((subj instanceof Variable) && (((Variable) subj).getType() == Variable.VarType.QUERY)) { + otherTerm = (pred.equals(subjB)) ? predB : subjB; + content = Statement.make(content, otherTerm, pred); + } + if ((pred instanceof Variable) && (((Variable) pred).getType() == Variable.VarType.QUERY)) { + otherTerm = (subj.equals(subjB)) ? predB : subjB; + content = Statement.make(content, subj, otherTerm); + } Stamp stamp = new Stamp(Memory.currentBelief.getStamp()); Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, truth, stamp, Memory.currentBelief, null); Task newTask = new Task(newJudgment, budget); From 1d40a242274916c1c8b7b32e3aedc350f939ae05 Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Fri, 2 Apr 2010 18:21:51 +0000 Subject: [PATCH 048/206] With a bug fixed [Issue 20] From 994621a9eaee7788e3d7a1041148337aaa4eee63 Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Sun, 16 May 2010 14:59:01 +0000 Subject: [PATCH 049/206] open-nars 1.3.2, with several bugs fixed --- nars/inference/CompositionalRules.java | 4 +++- nars/inference/StructuralRules.java | 16 ++++++++++------ nars/language/Statement.java | 11 +++++++++++ nars/main/Memory.java | 6 ++++-- nars/main/NARS.java | 2 +- nars/operation/Break.java | 1 - nars/operation/Operator.java | 18 +++++++++++------- nars/operation/Strike.java | 1 - 8 files changed, 40 insertions(+), 19 deletions(-) diff --git a/nars/inference/CompositionalRules.java b/nars/inference/CompositionalRules.java index 8e7659b2..da532103 100644 --- a/nars/inference/CompositionalRules.java +++ b/nars/inference/CompositionalRules.java @@ -133,11 +133,13 @@ private static void processComposed(Statement statement, Term subject, Term pred * @param compoundTask Whether the compound comes from the task */ private static void decomposeCompound(CompoundTerm compound, Term component, Term term1, int index, boolean compoundTask) { + if (compound instanceof Statement) { + return; + } Term term2 = CompoundTerm.reduceComponents(compound, component); if (term2 == null) { return; } - Task task = Memory.currentTask; Sentence sentence = task.getSentence(); Judgment belief = Memory.currentBelief; diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index d80f226b..5ef45515 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -54,13 +54,17 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta return; } if (side == 0) { - sub = compound; - components.set(index, pred); - pred = CompoundTerm.make(compound, components); + if (components.contains(sub)) { + sub = compound; + components.set(index, pred); + pred = CompoundTerm.make(compound, components); + } } else { - components.set(index, sub); - sub = CompoundTerm.make(compound, components); - pred = compound; + if (components.contains(pred)) { + components.set(index, sub); + sub = CompoundTerm.make(compound, components); + pred = compound; + } } if ((sub == null) || (pred == null)) { return; diff --git a/nars/language/Statement.java b/nars/language/Statement.java index 7f47bf03..f2a38487 100644 --- a/nars/language/Statement.java +++ b/nars/language/Statement.java @@ -248,6 +248,17 @@ public static boolean invalidStatement(Term subject, Term predicate) { if ((predicate instanceof CompoundTerm) && ((CompoundTerm) predicate).containComponent(subject)) { return true; } + if ((subject instanceof Statement) && (predicate instanceof Statement)) { + Statement s1 = (Statement) subject; + Statement s2 = (Statement) predicate; + Term t11 = s1.getSubject(); + Term t12 = s1.getPredicate(); + Term t21 = s2.getSubject(); + Term t22 = s2.getPredicate(); + if (t11.equals(t22) && t12.equals(t21)) { + return true; + } + } return false; } diff --git a/nars/main/Memory.java b/nars/main/Memory.java index 150bfd2b..61748757 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -306,11 +306,13 @@ public static void convertedJudgment(TruthValue truth, BudgetValue budget) { Term subjB = beliefContent.getSubject(); Term predB = beliefContent.getPredicate(); Term otherTerm; - if ((subj instanceof Variable) && (((Variable) subj).getType() == Variable.VarType.QUERY)) { + if (subj.getName().indexOf(Symbols.QUERY_VARIABLE_TAG) >= 0) { +// if ((subj instanceof Variable) && (((Variable) subj).getType() == Variable.VarType.QUERY)) { otherTerm = (pred.equals(subjB)) ? predB : subjB; content = Statement.make(content, otherTerm, pred); } - if ((pred instanceof Variable) && (((Variable) pred).getType() == Variable.VarType.QUERY)) { + if (pred.getName().indexOf(Symbols.QUERY_VARIABLE_TAG) >= 0) { +// if ((pred instanceof Variable) && (((Variable) pred).getType() == Variable.VarType.QUERY)) { otherTerm = (subj.equals(subjB)) ? predB : subjB; content = Statement.make(content, subj, otherTerm); } diff --git a/nars/main/NARS.java b/nars/main/NARS.java index f2511d32..efc54306 100644 --- a/nars/main/NARS.java +++ b/nars/main/NARS.java @@ -35,7 +35,7 @@ public class NARS extends Applet implements Runnable { * The information about the version and date of the project. */ public static final String INFO = - " Open-NARS Version 1.3.1 April 2010 \n"; + " Open-NARS Version 1.3.2 May 2010 \n"; /** * The project websites. */ diff --git a/nars/operation/Break.java b/nars/operation/Break.java index 9d748b21..1271bf0f 100644 --- a/nars/operation/Break.java +++ b/nars/operation/Break.java @@ -21,7 +21,6 @@ package nars.operation; -import java.io.*; import java.util.ArrayList; import nars.entity.Task; diff --git a/nars/operation/Operator.java b/nars/operation/Operator.java index d2b6c6f5..b2ba2060 100644 --- a/nars/operation/Operator.java +++ b/nars/operation/Operator.java @@ -41,7 +41,7 @@ public Operator(String name) { /** * Required method for every operation, specifying the operation * @param task The task with the arguments to be passed to the operator - * @return The direct collectable results and feedback of the execution + * @return The direct collectable results and feedback of the reportExecution */ public abstract ArrayList execute(Task task); @@ -51,7 +51,7 @@ public Operator(String name) { */ public void call(Task task) { ArrayList feedback = execute(task); - showExecution((Statement) task.getContent()); + reportExecution((Statement) task.getContent()); Memory.executedTask(task); if (feedback != null) { for (Task t : feedback) { @@ -69,21 +69,25 @@ public void call(Task task) { */ public static HashMap setOperators() { HashMap table = new HashMap(); + /* operators for internal operations */ + + /* operators for testing examples */ table.put("^go-to", new GoTo("^go-to")); table.put("^pick", new Pick("^pick")); table.put("^open", new Open("^open")); table.put("^break", new Break("^break")); - table.put("^drop", new Break("^drop")); - table.put("^throw", new Break("^throw")); - table.put("^strike", new Break("^strike")); + table.put("^drop", new Drop("^drop")); + table.put("^throw", new Throw("^throw")); + table.put("^strike", new Strike("^strike")); return table; } /** - * Display a message in the output stream to indicate the execution of an operation + * Display a message in the output stream to indicate the reportExecution of an operation + *

      * @param operation The content of the operation to be executed */ - private void showExecution(Statement operation) { + private void reportExecution(Statement operation) { Term operator = operation.getPredicate(); Term arguments = operation.getSubject(); String argList = arguments.toString().substring(3); // skip the product prefix "(*," diff --git a/nars/operation/Strike.java b/nars/operation/Strike.java index d14d5b8a..15d8d383 100644 --- a/nars/operation/Strike.java +++ b/nars/operation/Strike.java @@ -33,7 +33,6 @@ public Strike(String name) { } public ArrayList execute(Task task) { -// System.out.println("EXECUTE in " + name + " " + task); return null; } } From dc2e89873361cb8b23ab4ea353289b8b05c47a84 Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Sun, 16 May 2010 15:07:58 +0000 Subject: [PATCH 050/206] open-nars 1.3.2 distribution files --- .../Examples/Example-NAL1-translation.doc | Bin 0 -> 31744 bytes .../Examples/Example-NAL2-translation.doc | Bin 0 -> 27136 bytes .../Examples/Example-NAL3-translation.doc | Bin 0 -> 31232 bytes .../Examples/Example-NAL4-translation.doc | Bin 0 -> 27136 bytes .../Examples/Example-NAL5-translation.doc | Bin 0 -> 37376 bytes .../Examples/Example-NAL6-translation.doc | Bin 0 -> 36864 bytes nars-dist/javadoc/allclasses-frame.html | 4 +- nars-dist/javadoc/allclasses-noframe.html | 4 +- nars-dist/javadoc/constant-values.html | 6 +- nars-dist/javadoc/deprecated-list.html | 4 +- nars-dist/javadoc/help-doc.html | 4 +- nars-dist/javadoc/index-files/index-1.html | 4 +- nars-dist/javadoc/index-files/index-10.html | 4 +- nars-dist/javadoc/index-files/index-11.html | 4 +- nars-dist/javadoc/index-files/index-12.html | 4 +- nars-dist/javadoc/index-files/index-13.html | 4 +- nars-dist/javadoc/index-files/index-14.html | 4 +- nars-dist/javadoc/index-files/index-15.html | 4 +- nars-dist/javadoc/index-files/index-16.html | 4 +- nars-dist/javadoc/index-files/index-17.html | 4 +- nars-dist/javadoc/index-files/index-18.html | 7 +- nars-dist/javadoc/index-files/index-19.html | 7 +- nars-dist/javadoc/index-files/index-2.html | 4 +- nars-dist/javadoc/index-files/index-20.html | 4 +- nars-dist/javadoc/index-files/index-21.html | 4 +- nars-dist/javadoc/index-files/index-22.html | 4 +- nars-dist/javadoc/index-files/index-23.html | 4 +- nars-dist/javadoc/index-files/index-24.html | 149 +++++++++ nars-dist/javadoc/index-files/index-3.html | 4 +- nars-dist/javadoc/index-files/index-4.html | 4 +- nars-dist/javadoc/index-files/index-5.html | 4 +- nars-dist/javadoc/index-files/index-6.html | 4 +- nars-dist/javadoc/index-files/index-7.html | 4 +- nars-dist/javadoc/index-files/index-8.html | 4 +- nars-dist/javadoc/index-files/index-9.html | 4 +- nars-dist/javadoc/index.html | 2 +- .../javadoc/nars/entity/BudgetValue.html | 4 +- nars-dist/javadoc/nars/entity/Concept.html | 4 +- nars-dist/javadoc/nars/entity/Goal.html | 4 +- nars-dist/javadoc/nars/entity/Item.html | 4 +- nars-dist/javadoc/nars/entity/Judgment.html | 4 +- nars-dist/javadoc/nars/entity/Question.html | 4 +- nars-dist/javadoc/nars/entity/Sentence.html | 4 +- nars-dist/javadoc/nars/entity/ShortFloat.html | 4 +- nars-dist/javadoc/nars/entity/Stamp.html | 4 +- nars-dist/javadoc/nars/entity/Task.html | 4 +- nars-dist/javadoc/nars/entity/TaskLink.html | 4 +- nars-dist/javadoc/nars/entity/TermLink.html | 4 +- nars-dist/javadoc/nars/entity/TruthValue.html | 4 +- .../nars/entity/class-use/BudgetValue.html | 4 +- .../nars/entity/class-use/Concept.html | 4 +- .../javadoc/nars/entity/class-use/Goal.html | 4 +- .../javadoc/nars/entity/class-use/Item.html | 4 +- .../nars/entity/class-use/Judgment.html | 4 +- .../nars/entity/class-use/Question.html | 4 +- .../nars/entity/class-use/Sentence.html | 4 +- .../nars/entity/class-use/ShortFloat.html | 4 +- .../javadoc/nars/entity/class-use/Stamp.html | 4 +- .../javadoc/nars/entity/class-use/Task.html | 4 +- .../nars/entity/class-use/TaskLink.html | 4 +- .../nars/entity/class-use/TermLink.html | 4 +- .../nars/entity/class-use/TruthValue.html | 4 +- .../javadoc/nars/entity/package-frame.html | 4 +- .../javadoc/nars/entity/package-summary.html | 4 +- .../javadoc/nars/entity/package-tree.html | 4 +- .../javadoc/nars/entity/package-use.html | 4 +- nars-dist/javadoc/nars/gui/BagWindow.html | 4 +- nars-dist/javadoc/nars/gui/ConceptWindow.html | 4 +- .../javadoc/nars/gui/InferenceWindow.html | 4 +- nars-dist/javadoc/nars/gui/InputWindow.html | 4 +- nars-dist/javadoc/nars/gui/MainWindow.html | 4 +- nars-dist/javadoc/nars/gui/MessageDialog.html | 4 +- nars-dist/javadoc/nars/gui/NarsFrame.html | 4 +- .../javadoc/nars/gui/ParameterWindow.html | 4 +- nars-dist/javadoc/nars/gui/TermWindow.html | 4 +- .../javadoc/nars/gui/class-use/BagWindow.html | 4 +- .../nars/gui/class-use/ConceptWindow.html | 4 +- .../nars/gui/class-use/InferenceWindow.html | 4 +- .../nars/gui/class-use/InputWindow.html | 4 +- .../nars/gui/class-use/MainWindow.html | 4 +- .../nars/gui/class-use/MessageDialog.html | 4 +- .../javadoc/nars/gui/class-use/NarsFrame.html | 4 +- .../nars/gui/class-use/ParameterWindow.html | 4 +- .../nars/gui/class-use/TermWindow.html | 4 +- nars-dist/javadoc/nars/gui/package-frame.html | 4 +- .../javadoc/nars/gui/package-summary.html | 4 +- nars-dist/javadoc/nars/gui/package-tree.html | 4 +- nars-dist/javadoc/nars/gui/package-use.html | 4 +- .../nars/inference/BudgetFunctions.html | 4 +- .../nars/inference/CompositionalRules.html | 4 +- .../javadoc/nars/inference/MatchingRules.html | 4 +- .../javadoc/nars/inference/RuleTables.html | 4 +- .../nars/inference/StructuralRules.html | 4 +- .../nars/inference/SyllogisticRules.html | 4 +- .../nars/inference/TruthFunctions.html | 4 +- .../nars/inference/UtilityFunctions.html | 4 +- .../inference/class-use/BudgetFunctions.html | 4 +- .../class-use/CompositionalRules.html | 4 +- .../inference/class-use/MatchingRules.html | 4 +- .../nars/inference/class-use/RuleTables.html | 4 +- .../inference/class-use/StructuralRules.html | 4 +- .../inference/class-use/SyllogisticRules.html | 4 +- .../inference/class-use/TruthFunctions.html | 4 +- .../inference/class-use/UtilityFunctions.html | 4 +- .../javadoc/nars/inference/package-frame.html | 4 +- .../nars/inference/package-summary.html | 4 +- .../javadoc/nars/inference/package-tree.html | 4 +- .../javadoc/nars/inference/package-use.html | 4 +- nars-dist/javadoc/nars/io/ExperienceIO.html | 4 +- nars-dist/javadoc/nars/io/Record.html | 4 +- .../StringParser.InvalidInputException.html | 4 +- nars-dist/javadoc/nars/io/StringParser.html | 4 +- nars-dist/javadoc/nars/io/Symbols.html | 4 +- .../nars/io/class-use/ExperienceIO.html | 4 +- .../javadoc/nars/io/class-use/Record.html | 4 +- .../StringParser.InvalidInputException.html | 4 +- .../nars/io/class-use/StringParser.html | 4 +- .../javadoc/nars/io/class-use/Symbols.html | 4 +- nars-dist/javadoc/nars/io/package-frame.html | 4 +- .../javadoc/nars/io/package-summary.html | 4 +- nars-dist/javadoc/nars/io/package-tree.html | 4 +- nars-dist/javadoc/nars/io/package-use.html | 4 +- .../javadoc/nars/language/CompoundTerm.html | 4 +- .../javadoc/nars/language/Conjunction.html | 4 +- .../javadoc/nars/language/DifferenceExt.html | 4 +- .../javadoc/nars/language/DifferenceInt.html | 4 +- .../javadoc/nars/language/Disjunction.html | 4 +- .../javadoc/nars/language/Equivalence.html | 4 +- nars-dist/javadoc/nars/language/ImageExt.html | 4 +- nars-dist/javadoc/nars/language/ImageInt.html | 4 +- .../javadoc/nars/language/Implication.html | 4 +- .../javadoc/nars/language/Inheritance.html | 4 +- nars-dist/javadoc/nars/language/Instance.html | 4 +- .../nars/language/InstanceProperty.html | 4 +- .../nars/language/IntersectionExt.html | 4 +- .../nars/language/IntersectionInt.html | 4 +- nars-dist/javadoc/nars/language/Negation.html | 4 +- nars-dist/javadoc/nars/language/Product.html | 4 +- nars-dist/javadoc/nars/language/Property.html | 4 +- nars-dist/javadoc/nars/language/SetExt.html | 4 +- nars-dist/javadoc/nars/language/SetInt.html | 4 +- .../javadoc/nars/language/Similarity.html | 4 +- .../javadoc/nars/language/Statement.html | 4 +- nars-dist/javadoc/nars/language/Term.html | 4 +- .../nars/language/Variable.VarType.html | 4 +- nars-dist/javadoc/nars/language/Variable.html | 4 +- .../nars/language/class-use/CompoundTerm.html | 4 +- .../nars/language/class-use/Conjunction.html | 4 +- .../language/class-use/DifferenceExt.html | 4 +- .../language/class-use/DifferenceInt.html | 4 +- .../nars/language/class-use/Disjunction.html | 4 +- .../nars/language/class-use/Equivalence.html | 4 +- .../nars/language/class-use/ImageExt.html | 4 +- .../nars/language/class-use/ImageInt.html | 4 +- .../nars/language/class-use/Implication.html | 4 +- .../nars/language/class-use/Inheritance.html | 4 +- .../nars/language/class-use/Instance.html | 4 +- .../language/class-use/InstanceProperty.html | 4 +- .../language/class-use/IntersectionExt.html | 4 +- .../language/class-use/IntersectionInt.html | 4 +- .../nars/language/class-use/Negation.html | 4 +- .../nars/language/class-use/Product.html | 4 +- .../nars/language/class-use/Property.html | 4 +- .../nars/language/class-use/SetExt.html | 4 +- .../nars/language/class-use/SetInt.html | 4 +- .../nars/language/class-use/Similarity.html | 4 +- .../nars/language/class-use/Statement.html | 8 +- .../javadoc/nars/language/class-use/Term.html | 4 +- .../language/class-use/Variable.VarType.html | 4 +- .../nars/language/class-use/Variable.html | 4 +- .../javadoc/nars/language/package-frame.html | 4 +- .../nars/language/package-summary.html | 4 +- .../javadoc/nars/language/package-tree.html | 4 +- .../javadoc/nars/language/package-use.html | 4 +- nars-dist/javadoc/nars/main/Center.html | 4 +- nars-dist/javadoc/nars/main/Memory.html | 4 +- nars-dist/javadoc/nars/main/NARS.html | 4 +- nars-dist/javadoc/nars/main/Parameters.html | 4 +- .../javadoc/nars/main/class-use/Center.html | 4 +- .../javadoc/nars/main/class-use/Memory.html | 4 +- .../javadoc/nars/main/class-use/NARS.html | 4 +- .../nars/main/class-use/Parameters.html | 4 +- .../javadoc/nars/main/package-frame.html | 4 +- .../javadoc/nars/main/package-summary.html | 4 +- nars-dist/javadoc/nars/main/package-tree.html | 4 +- nars-dist/javadoc/nars/main/package-use.html | 4 +- nars-dist/javadoc/nars/operation/Break.html | 6 +- nars-dist/javadoc/nars/operation/Drop.html | 305 ++++++++++++++++++ nars-dist/javadoc/nars/operation/GoTo.html | 6 +- nars-dist/javadoc/nars/operation/Open.html | 6 +- .../javadoc/nars/operation/Operator.html | 27 +- nars-dist/javadoc/nars/operation/Pick.html | 6 +- nars-dist/javadoc/nars/operation/Strike.html | 305 ++++++++++++++++++ nars-dist/javadoc/nars/operation/Throw.html | 305 ++++++++++++++++++ .../nars/operation/class-use/Break.html | 4 +- .../nars/operation/class-use/Drop.html | 145 +++++++++ .../nars/operation/class-use/GoTo.html | 4 +- .../nars/operation/class-use/Open.html | 4 +- .../nars/operation/class-use/Operator.html | 4 +- .../nars/operation/class-use/Pick.html | 4 +- .../nars/operation/class-use/Strike.html | 145 +++++++++ .../nars/operation/class-use/Throw.html | 145 +++++++++ .../javadoc/nars/operation/package-frame.html | 4 +- .../nars/operation/package-summary.html | 4 +- .../javadoc/nars/operation/package-tree.html | 4 +- .../javadoc/nars/operation/package-use.html | 4 +- nars-dist/javadoc/nars/storage/Bag.html | 4 +- .../javadoc/nars/storage/ConceptBag.html | 4 +- .../javadoc/nars/storage/Distributor.html | 4 +- .../javadoc/nars/storage/TaskBuffer.html | 4 +- .../javadoc/nars/storage/TaskLinkBag.html | 4 +- .../javadoc/nars/storage/TermLinkBag.html | 4 +- .../javadoc/nars/storage/class-use/Bag.html | 4 +- .../nars/storage/class-use/ConceptBag.html | 4 +- .../nars/storage/class-use/Distributor.html | 4 +- .../nars/storage/class-use/TaskBuffer.html | 4 +- .../nars/storage/class-use/TaskLinkBag.html | 4 +- .../nars/storage/class-use/TermLinkBag.html | 4 +- .../javadoc/nars/storage/package-frame.html | 4 +- .../javadoc/nars/storage/package-summary.html | 4 +- .../javadoc/nars/storage/package-tree.html | 4 +- .../javadoc/nars/storage/package-use.html | 4 +- nars-dist/javadoc/overview-frame.html | 4 +- nars-dist/javadoc/overview-summary.html | 4 +- nars-dist/javadoc/overview-tree.html | 4 +- nars-dist/javadoc/serialized-form.html | 4 +- 226 files changed, 1946 insertions(+), 446 deletions(-) create mode 100644 nars-dist/Examples/Example-NAL1-translation.doc create mode 100644 nars-dist/Examples/Example-NAL2-translation.doc create mode 100644 nars-dist/Examples/Example-NAL3-translation.doc create mode 100644 nars-dist/Examples/Example-NAL4-translation.doc create mode 100644 nars-dist/Examples/Example-NAL5-translation.doc create mode 100644 nars-dist/Examples/Example-NAL6-translation.doc create mode 100644 nars-dist/javadoc/index-files/index-24.html create mode 100644 nars-dist/javadoc/nars/operation/Drop.html create mode 100644 nars-dist/javadoc/nars/operation/Strike.html create mode 100644 nars-dist/javadoc/nars/operation/Throw.html create mode 100644 nars-dist/javadoc/nars/operation/class-use/Drop.html create mode 100644 nars-dist/javadoc/nars/operation/class-use/Strike.html create mode 100644 nars-dist/javadoc/nars/operation/class-use/Throw.html diff --git a/nars-dist/Examples/Example-NAL1-translation.doc b/nars-dist/Examples/Example-NAL1-translation.doc new file mode 100644 index 0000000000000000000000000000000000000000..1dd0dc418f09b18a7278f5a6d88147cedc7a42aa GIT binary patch literal 31744 zcmeHQ2V7Lg)}LLxfOpEU>`p7G#&EqSzH<#8{$+sKH)P zVpnXaLF`yTO%xT4HMRsL7QS=ta$$F26ZIu8$@g~n{qOWM=bR~bX70>Va_+P8Z@;s= zMO2JG(IW4w8xdWFa2B{bF@94*I)fX--d9&wW3V>>oEq~l(!k?2g+wc}kv1XE%no5C z5&|^~Mvo9fGeV3>^yui(kBT1^)1gX_M%w12i!C9ubLIH0kv#e{rBrpE>S~i(k2*J# zU^nf^(UJSnz6so*`8~UdJPG~8NdXx35)NAsz6 zbD+b9{8m`VN7(n85|RrUXIT*9P?HaW>KR5441cN#m~eGA!xxi}p~u)vJ|>>=b3q<+ z2xR=~Y*jj{{#Bsg6o$A0J%ykTax&$kz7-7<&V;G@neb1w8G4M(w6~IZ(}ss`;X#P)Bjn1roI?HKh$RU{a9NaeH@z` z84|JvhJ7Ds^*Y21p7=)5n18+o9BK`f#7_}O1ro6VMFscsp?sqSNwJiZlRqU*6^KOq zB!6ck7Z<7hO zf`Fu0f<9HUlmQhQ8POm=NY~p72zPR|qsDjip*nVU&7iOh^;{Ym)Jp6?#qwj5V`L4< z%o7VlJfS*~<+0Adnp{;$l4yaL))mU)?~E)Apu?0jg^`#^E>B%1rZCFR)tSo$dAw`n zaqZkuE>8o*YIsnRhZn6Pk2Fz|B%>LNk%$ucG64!Jmnxi&QsR$CDWs~CE+&C5mDVRh zYoD&s?sNhrQYwVx5-V_nIsBb#1$OHsuRvO0Y-YjGI0WJ`lst8>rf(zRE9lNmH>TCAmTUFYipZhjZ_M)xUP0Q)o7B* zqa?Xp1|?nc)A*u9p&(8W!&B^Sbv;0?6O^NYmX483Ppef4(`Op)?R6bg-b&4iZS}y@~h-Z`TBDSH%CiA6Of3>XE)n4CwE9;B zBO*<(-aDXH#QNpcw$V;pB@w$}*HMy+;X$d|Y*G{cM6m+WlzJ;I)Ifa4HN?nA3Wa?` zy--XW2ym_IzX4R;I}vj;oJb`iJ`RNO^7pS2Z>Zq@?&IV)H8_>jZYktPDSyA$$Tn;7cJx)`BN~`bGl2!ae^cfJ+e4bu@ZV7A?EXA zDVcC%N9jDaZ%hQC$$@pSO;f^UhIpL^998)2vBL=y1BE>?%7``x_!{K5;N6r9V5_lb{%>7#Yz_$AUzBRf)VjI6cx5`7ttntWjWnVW2n+SPw45#zS`n z_Tq%ZOBpprEJ+0xw2X|jjcT5tVKD#v*{X)aKV1W`&*u#23rGa423!KX0JMhv zya2#JfDEu2a0KuQ&_bV(Zh$zzBEUYt1AwssA%TDxz&OBSKoLL-R)}tZA%HIc8vsWD zak3k(k{7wh6Bq`(NA>c;lxUAcXQAU z?X5-n14aN66L2fkOdh8g(I5ADvHqF*X6hH~l&MRsKc?Q8dSdE@sRz_O>K%2C`bJ%^ z1*`+0&W{2fqdbh!cvKYfkkJg<>OB>T$?DwjoyOdj6&y!zJHi7t6^)800=0NZYa++b z;H`0i**J4=%hxS-wXVxWEU{jm0F0qcn*f>txByo`CqQ>Vl|lw(&n~qwN_nIomP|3# zpX}~N$e7q|KopeJjL{Q&@eaaS7{$`N!X@m!)%rTH1*>~dM-SA;fZnXr^)+GqjBR-Z z`V7HNRc%%0w61fuxT06H(O2z$MVGMjwRXUOiCmy$^||QD{%>)i)Kc`Yeggr00g-?x zz;Hk^U_Y|T7^SLK@+j4=QjC&^A@sM{wC2s>t4e*%|M%)&N%J&EvC!21PL7B!)-%5E zQUPfIeD5s+EC*}@YzOQIoI_i&>h>ynRgZ^4c8+iC#LZ`lBx z-|7H#0UUrHpbJbA zzVryY-1Km37MngK12r8Vi&J^U{+|us&g!?w|K1yknBv++wQjLa-&VrkrwOmg^$*p6 zzI^@HCkXhfSug7Nlh3#;GcK_XV-cT3Y@e<2OI)b@a=+I3dK?=-o9vZ3wg9_)SRLe- zur2aOX&GjhumkasjK=)SHIT0~{;(Fqu1^YKC$K!O=n$6HK^?GJY%O1tHYtR4P^V1_ zi|uRT6J6v) z6CMDoT|n`$u>XwXD3*p}!qVtixgG!eT7~cL^gKgm=1TWG*t}EdUFv%ti>=M%`%8LW z-{0wZ8jfLm=wCXzLG#iWjRrIt&}cxT0gVPU8qjD!qk(^o2I90$V5^r!3|Jf-*2@bw@sL)Tov&4j7idp;nIYMumGgarXq z!~Ylk`LG?1a(4vaMW@5yF9DPTo&m5qngS>Q7tjR|1{eiM1Y`oT0qXK0U3+LlWuWi- z01DE63Z4J;eBPkDL4el)JBrm39^OyB7K6afjXQ51B?JL zB`8wI66#DK=}Nt*{+0w1LpVW(#uRQW1`hI z%>W|k^0In6*oH0W0K(NZBoUA!8Yu7~wKDhCq**02*qY5sq1>SZAv_Fb6WoWfCu68z zstds;HJovEIW!%L^d$l!rORd$I1~patdEv9oJheVTBJ3ZlC{6_Z{V^9jl=04G8B%G z!iiMb$OyQHBOUIXCK7I*e`@qmu4#`~)89`m*;SUb&wfqW+1%jN495#578Tz)jh;8n zz0rxAsgL)B?bCCTwK0u8yL5cymU(wp8e1%Q8Sx-;M8fpgj63T${qpAL_64O5u3=hJ z+im`((Si}Br33H&+=SbH>Dq_~%RBj6ED+9Xv-$^)ZMq=Cdh%V%&W#UG>@xG-F8iN9 z|Mgf<&huj>$yE*pfu$?QO)YleW*yI8`Rq-Vp>5_8gF%~)yYYtPUNAjU?wB9Q<&2(q z-|gnEv(a~+Ol%_XpW3YKjJDgMVWWNxcT? zQbD$}h4WXtcku2V$_rq@=2o?qimKLJS@+XnP?0CZqS{BoFI|VVB~vCcC@Kstj_=eo}&s)pe^!*F%r%>KEuuTmAIa2EX@P=2YEU_!DKm zY@_bc+uZ|BCEQB!J2Yv^iRr7?+35{UOPsN4{Pmq9_lKQd<$K1}YE95C?jkdjSyw~% z57^Qz_WTLc3%z?>caOH6v~K>`k)^GcEN@=!+4thF<^xK-Ms1n5{zUcmqukTWLklNu zb-dd{TkN&4ub?9O+x0GY!VhGx=Wo2!vSjC;sw?jr6m(4bV)LmWU={#-Azbtj@m&<2 zAv`fJo}Yw`!|-&7{!z-b%dL!WQ?svn#T3~0h~9Q;OF<>+o@3ed_{s|_u9x1uGu7+t z%_f(>?qf9AF^6N6#XsXbYxlDWj_a(}UkkGS-cfk#c+-0i(kxEwnA`YfaIv(1Mw`po z)AM%zNL|_4;d1Mzjz5mrYdhL+POpLYFTQGjyT_vrZS~pS4Ku%ZXWs3_Fg%A@!AH=B zn0H0C9}f`txza z7G|y6hh7`;F6m5n+vn+B7UVzqv1O%8UV4y2j`ou0({>zaKmW$gxvy>(WR*q+Mo$@) zVN*Kx`kaNmOTSvY+T`e<5%<~$j}o8m@p;qzS&8jUU+dj35(@T44IQ548sfXK+@kn~ z<-84{C1DGG@l3kyr@M9bm*Wn{N3RTS96!BKmyD$;UC)vHr&HHPE$(=x=cK$FCj^VTRE}Mqvir(rk6{yLzdxCCIz3Y&7dBz;Cm9x%Qj55w^aqVgR zC4=H6+n@A)ZF#tKbn^)_rX<+s_StUnGSDe&r^U@XxhBLYcF=k44T9c9Wi#!6zMW=k zf5q^bPvM&8ohwf5ZGFZdcw|Y$&I2alhRt19y?R*nYU}cV9>-0Vw+MLs;PtJecQ^q< zx}Du9%9(aI(&f;*$LEf>S{1N-;>#E3n_W&DTvYwr(RPR4zD@Tqy%68_>>QUBZz~_4 zn6uUY-MfNbO`nBK?!|wdT@;x6b%oxOmljRjqQ=^_Ycuv>)1!J9Uu2!JUFco7tdGvS z8E8Ro%<}!boT7rra7s(Wvri*&iV|C7{crI(qU=3 zckq$X_o4?BJ&Bnx==*{>jgKEX5Uiinn?XO^k!PHMt;to0+Zu=GDGTpIPj@O_GK`*=>W_ofTu=2-6wD%L;k zFs+r@y(Q0mmfKqooNs-5$s(hPTASAQE-s9C%^w!(@JtqD(d$5F(BPf-7L$xV{caY9 zedqAw!BcC$o6{t#WyJaYlRLSz+5Nh!*O9S9rne}ub%+Vb=9uPMJQ*9QbMvlv#{JZ1 zTK&xTy)m}?q9Amu?ry>TS?&g=er}&#`zmbXH~Q8WE1sToT@^M@WH@YCry1M)z)$cKYGI zsRlZpW3tO1w%M55by|2r{-fn>%}#zUv+sY>&ie7`L_5*knQez(jp2p2vJm=Z4|?+A zu<_RWx84p5%XTdYNibf~X;ssZ^3A8Cw!{W@eNxJcD(&{o(xE@jitGK&(Y&zc6TG)t z8k%33rmNlcIy-8_^p|_%j5v)?2d#V}es$vqry_%94{Vy>%8d2DFz(!&_2Qg`$Fue} z$}HRPY`%ZRH_5@7n6n+v=WKp^Dunx}NBdE2-g&GZGWTC#6!lBCGA$4ZE4%LM~O?~ytR3vwLjd>u^V1hd9wVm zcbs6__M}bW?&o3+ywZmikGj$O_GIy*ZB}>BZp{j=G8nMNx~SSM@|THhFP#pPD>F?> z_psZ1vsEY?SHjjvKndYC?3yDXM} zxV&G{iZ{#oCH9v>`gOXQV>#gQ0Z-2R2WOABb+f;Fg?F)}qS7UBb6Mn*aoc@wjz5)k zfA-+7FBflTFIlu}O4Q=Yt?iF=+C60GclX>!i0>Vl-0UZh8HKs6d*3?9c@U6a-T#)` z8-6#*`tAo!b~Y`XsT*Q=L^t=hFGarD&ep_exq@pK!Y%Z&oBZvs)=PXdD|TC-xiA-hBBlO(!{~hWid_(61uyA#DsM9R+=G54 zE4++r<{}~bN4QOt_d40^?V*I8oR7ewCC{`T?UxxC%$3CR3?Ergc z*Ck2D?RqcBDanec%G~0;YF<=@&8oFsiwjDEUL|L&eEv0S!uPfZqD{wNCe0UzEvw%C z&f9W!yh|(d;qUu*m0q2$W1m}ey1dQT8~bXX9J+7cv75D`v)E4X%PH#SrI1X)G%!mI z>!VCSb+%TQy94M`VeY1yQFZoHm$3=Vkrie^@)?nW`c)~ZPDSb{oo|Q|Juy+Gq1p)Q zXnYO#WfZyjohA|1M+as^_#+BBWH?B_SRZ}90WcAwYVMc%*}x@n8w#$DNn+s=pPx-+ zL{BGg8%iqUiDP*}iJ0$alg^jg1o#{2`|^BZgh?U1L<$Iqr9M1An*^CG(Z|I_3YVZo zJgKuJkuQe0IJ^oc18-8iOKcJ^6$p!jE*-gCPZtqS09QYw<6Zr1gfdqfN|pw$*fHRW zj_-(J9We}Cv17o+i;00X38biTFd+~x52;P##)P;rY229*cP7Mx3GrY;Jed$r8!ABv zH^f0Av}~w2i7-eWz_@H&{84*`phH+f!D3RE{&^}4gB2P0J1~`Fy3&a9EVeh&LS?4z6^1 znJP~krV=Vo8w8*O&22}y+~hN3u(k*C7c zxbl_%4wIrARo|;+HjrYob+vS~b=X?kPaQ~k*EDjtMsh+I1nDART`U68qy$&od?=5C zHMxY|HNa!z9;VrF#8L;2DX}=ZY#lgyNgIZF^km{A926pgwL2;i?xNYyr5osKv(ac{ zgHSXmC7Q0VJ0O5HKjsPWqw{dI8nM|rY;Emo;JAAO9AiZ#)A{)DWVj~8%bCt^qC*$R z)_%$+E5}o)Rk>MFV|S;^69BJRHt=AU&0-O@whm}YSBs5pr$K}HP(nG!6bS*p4E8k$ zvB3tXmkAqeB`}`h{^K7TwZ+g`Th}N|Rd0VxSCay6$LSvCq>(f-6^~i}=?1D;#gyJ; zdZbE(f>-Yu{ydv)m^=svAvg{+2?sE=6+sVF&^+pwgLzxa2`D{HVRHgc^2tpaSO~_f zgsAH3zd{pC2^w3S2HwL6t=m9N;t)|jeZ`Ba&;-*>^YuuFcH6IVA&d(V_%g$ItV3)A znE)IIJ_q2au>^p%y&8bSaXtXw4#fZ*-7f*Kw#xzdBGs;;X$m&J11-SD;hO>*U%d8U zV>uN-yd~IJ2AU6bBdvb)UH_2-B}uXPQymTFMfs2>?xckXVv;0MNt}!djf0;p;Zvc> zGND8=2BJt8eAF0b{8MK$=`^-R0~!rzG@#LdMgtlRXf&YFfJOrv4QMo=(SSw+f2Rh1 zZ~f1{eCBeFvz6(BuVDS}ShWS$$M*raCj?7!dS?;W>xlqd?@s{W&h9h-?19t!0nNZ( z2*Azo900DxabEz}^_u~B@M8x6H_7({koE~cL+gEYYixPAAzcP!Rcp6|!jW$TF$515 zf(w3RIzk{5^6701IvPSWMxz0Z1~eMbXh5R@jRrIt&}cxT0gVPU8qjD!qk;c78o zcXhlwdErpACj9s%!wOOU|bb$^vOd$?r99=vmguh znGY==?mH3Yzqbtp?I)2~xSc2=F>q=SPdYL;5I=+yODG>Tj{WvS%SXESe>>6Wz_~~) z74KkT-3LSIaWqdDB7^gXcq3B1vHt}9+atLe{p-||{NwoXhVpUTLfO%%=d><{i_V(z zS@f}55$s`x!pX_eb%{REWd@_CykzoDQf{yCshIB1`}osB7+!N z3X|+v3p0f584QEQ(*Jqhd*8bEb|bU=mjCabKHq!Z_bksj&vKskocEl!va>BJzu94V zlPHA%qDkJ@HX}N6=^AkD%G{d};ttoC_P(~Z7L#27aH$UeMG~mqSWGlCn`sg9)btQ4 zkr2=<1U*80+7Qy5#Ey*}`>6C$DV?hD(@e{p1lbTWFINit7Se24q)--bYHN+_(i*#F z3hbdTa8d52SZ#NeGq?l*LT`U`R{`vyO&z41YGR zf%+_{|3*fqsc}gwLUN&Ek_91-vigwJATV-Z`lnogNpCD>`oq*?=rJ)3RGxnD3zI}Fd<_UC+ zbYSd?DaXW2z7YD2c4!Yj=v~qNFfip7gB^V6UYh&Yf0=d|O7i-$hD4@6AB&m#jm3@C zXY7%Q8>`QxGjy2y#$u+Na;z+8<$UIzq08u3IsRC_a{0gOp3xW6&!)yqe?K*Dj6VA2 zW`=}p1h?-8RhPa00mr&Pi8!fTF;^%sps29^epC;UFqSKzdN>78;t6a) zfU}W{3pJ2VbP{I;)MKUwumdPXB63^oM=9| zd_G4M;Ee5f+abfzmG8DDrOldOD; zuE3e6r<60d?(Q^aVN_xYM=Yi!No)zl7m6j=2T2l#l5qK)uFx-3xW`hE1UvGkt7m#($NyhN7hGRIopX@R0y((R&I%GmRf`5GDjq-v(1VqqgI)M7| zC}O8_(3_2Z;RGOLpy*5l zsT>hLFT_AW0-eTwC2>UDde&re;MOx&XDw1^soKLbzEbL7X#XZ1JNOi$A1Ab9>4{EM z$%Nzw9bK{h@kLj}5$EHpIO2lqT&O@OQSo4-6fH7N_^)JKss9R$E0`Hdw%*~W5*qDo zJQR7ae;m`#7ZF>;;ibzzRpcE8HlSd~e~TzkFTRaDYmtq5n^aV2AU&M`<3lrOAc{a0 zk6OljeCdaZH%P+GkCM(Gm?sJ?g+`yLf0F-Ye-w8hXJ~;IspXJlQ_lUgk+R7F6Kz6cuoRWK+hByk3320Ei&k7z$D~?%gG3E zMg__Ft-2W$(&cjMjg_fEKUf)BIMQW~*4LHkDg6+U(pP%oO515tZ-{Ln-Pz%> zB5q=mWTdpSJ!wx!XDdlU>LTf~_5Efl)BToFRoQJ6gp{_lIiSUOlaRA>X+uq7U$xjjMaE3WW!j*9 zEZT%hIp8y@smfyr*L4w}Tc2tfa^tw(9+f2{5v9aQQbe!}5U~Z~1fht}#<@E)B2}uG z@v|RLDpOyzi81a*MnFz|Qk~ZM9M#q9eNX*}{;1I^JaEJxVOy0#>$sL1!%720VE{5B zP^m*&0zGLzpy(mE0trl$xQQH`);Z8)xw8sSp=1xxH+02H;!x^nQ|w_ptPxTF;G9L= zRN55k=Do4t6X>C-u-HKzDzd<=F6t@AGbvqF}x z>?Q@eNgoZ^lYl^~Zskt9nCLo63Pi9hGo0!;KuQe=sNjSl35#^OF5oyJ*Bq!lkn5i^RK4S## z^P&D3eWPx#$#lu+ZmCRHjBZdbs1rs9jLaDsqfAkbC_9uH$_izKvZ`-{5WYLeq)nK9;ZB7Idg91VfUsSH?aI(LMoFVb`e$paFZpb^v>T z1E4dY3!p2&8Q=nN1Gob`0G@zu055R6AkDou(yXs`(ExFp8o;KxH5P1L^y`Xe{MC_pw~KLGV_2D*0wi~yi5tO1}s zR08B}q7&#BZNd?NHsJ(7n{Wjv+XUKzqUWpnS@w6i>T;DT7S(BT6400W@9Di~KQ~hS_DT5IiKI4*%s6NYFASrrnNZx)2#)N-m7}h5}v# z^gx~#fWd$%06ZNO*;flz8(L&^sD>6lw3(IwAO=VPkWGey%AVD-AU1^6fHdfk{zOPb zgiqLn2T8CbBW|{&n=SFSB|f$!)E4wb!b7crIsxi1O93z~$WxaQltm#VnEI{u8xlec zVWon>1Wv4l5DrOzmQtWC3DAv#YY`xk{!J!HkoFn$M*z7P1`;lLUb_=w!?tt+an&&- zF;F8GC~%;(V(+a<>z81#o|koqhQ20GdZ7&|Y)obmSOgOXGLCvtTMRLg^~_aAm!?CJ ze$bwnZkt66=?0_1HMPu$4ldD12Qoctf6G7M${HjNvpX`pmk{1L2_&Oq;9!Dyq;ndd zw{_9Uu}54@dcT_WenweAg=n9{#)>n!VG}aCo;S9r+Tk>I;Y`nF$8Sui-W#<~&q>nJ zB=*e8NrSd6yuGfu#ggYS4+f1&niZdMd()N|Z+`7uSnlW+r8%S1))&o|j4Cf5a_3hw z*Ul@yjd`%fw}-_N-olO>e%7^3=Vn+>yJOkCWzm$NId=;je*NP2qoFy^j+Uj=I2weM zubVid)WtRHSpK@FZ)yx}GglZ4-Ez!>{dw+rlf#u=^Fv&9$4%(wwF zT34Lb@;EeN%v5PbQ&RlpFL}WPU$*co2&SeZZf5gHr)n#LL zFPHThh$BYHhgENH#{wQ_WDWJc8}g4b#8r+({5H9LknD&nHtZ%61jiiwx03lj+>nC+xwbl ztnJkA7L6ZW-hRcJHkDreF8ppju-tphwuPIH*X}&xdTLE%@zm{I@ATFZcrWe8t&06- zlgsVs1KFE6n=iI2+r78u@;jA`j!R!|J_8uc0^lfwtzACHMea8O4n8DuL}(m_ry}%^ zP$oe)GrpOSeZ@Pj(4lwi4=1-3z9hYJEQ61&JHPf?`JLM{ywBV)yRh6Oyi{rZ%w7d~kDjty0@ly7zyxqT0mv?u$)Zt0j zUq=0CJJx@GpCR`zyy|?b_oFWM`Ya#SonO8?@78i~&rw#=1Eq4^ma^c6-L4)MDZJ)o zcF4G50vtAq>y&D#o03(rW3^L+)ltEmcHDW(E246P&WB}KUA>*DabzERPOA$39QN>O z<`o;?cwX`2wJqD8-)G?BpN5WF>{XGK7hr2zbNfwgyY}C2DgX7DVO!G$4g<0i;LSmy`_@k1UH?^1@4W z%U@^vyu}lX5@XkewM?8+v4|+L%P3oS@Tf2>zJn#L9oKt!Izq`QW{4g|EC%(Ov`1S6qW8=hE zimkGL^1k3G98$cum{D*AHIbJaSt%@bjK$HuH04-WlX_ z=w0>MW9`=mu9@=uw{xv8r41{o{o_cdLvP=vcQZMkXn$tD%i6autB=p$9`Np6VV_n{ zBc}D?yv{BO$z5Hg_xQPmnaAMqcAYwoKiKMs-i6{ccT`^^4P;6IM>J z_VqiuyRxmuo%Q-@8KSc-(oE*f%Wai2A-6)~SJ4^25iy^$`#g7CneG#IcFu#CnIA!JF2Zrxcc{?ZRrub|*KXJbGzR*(rQ;sv+o8DdV%x{f@ z^^ir@w^l4OnxeU7Q{U3!nAe;Uk&aI#p%#4(WQGpgeRny@2=9NRIBJLEF9%P4yJNmt zR=b#U`=|N3blmeg*!%GK&u6tQvvrIM%+@u@wRk*!koJu`g4y>cJk{)PzVA(QyDtkP zx9jZT-kj6G3m#9bBN>`h47oZtgza+-&YkL}wr?bO44GYqu7#${JN?6^5M zcxH4`{-ZVarYF9TI1D&pXI*_N*^a+pj{V3haqQ^!7Cis#p^twnYQFvc&9@_>vfTm$UWl$q3g+y*rQT_^#WAp~Gg3d0oDNblrL07J9Y{BpTX4SHR0Rut| zb1U^0RD@K=B_C=&sI1dE({1+sdY8E*FZ?!-|LxDWa_mOdygX4^?UTTrxl^ zrk>o8cLy^|iZ3>wYrc2>EUup8-hN)S+P)WS`Dcb%+UMOY`tBunuGXw~p}nVP`#Xf& z|Ixq0;Il8C!xwXA_6u2dblLZQ}tqXc&kPiuXz+w9`p4t;MP)O`?`UpwHY#~V&h;ig^(jd!;y zo}&|CcvvU*kH!2R+0NOi$yy7RwB1#_A#B)%guEpMpC24HI{CZdPyN|Erz^wWX7rD1 zeR}1|Gsl0L@0pswK6W{k_s#dkJ3B?2%`T}4F7YXueBND+^Uw#hw=Wpj}T{ll(i zGha=gpeGbw*k`iH{+GFBc^5TjR&_J-3bY+i{n%(*S3T!B?1L-0gu6WzazL{`0PMkIx@7{Y#lmPFYq= zP3AVA^$Q1A*{uIIxU{e=^i@j6x@W63CjVr6Al78kCDLYj)T-K@?|dxhCAzdXANhVj zu=vU>ZHL^FQxu zZtkXBQF-=LU(pQa$PK0wa^hE}q&yX=r*uvgC3<3_OhefS>S?ToJu~^CyHPvQ$Ro<_GA0oBuOO6el9LzI6KQ{i=E-@p#buv2MFL+l;{#K zVow0Ve4dNDtE-m_pUoB6P_c<_{x&>`n++vNgRA&)a21>Aj%n_g23PUp;EEj=2Wt{2 zA-iBwAYYnNSH^=$@nFh$GAW)+N;f8@8J9TT4YyFF zpUTlYlLXX8aLtR$Hu;SQ`qez7;b(FVxYmV$Wov7-pu8UG1&dD}y&#T)Uoi=K_N78< zG%PwL#D`9ehO2aX87eIsrIacy8w#l`;zZn3{MH7sXa=AID4-zZ2Yza6u}ivS5Uhj8 z0fb}%{9-Dy!vtw5ER8E$>34SW*C^UP?XrOsi>0Hft)cY7VqV!J1o0zZDQbem9eB*xb<8)?jJq>aet7(}NC7=kX>Jf1*Jkd{~>K z5MeLMhHl+JM~j6)3l%OOkV_1~u=?l1njY%}`qOoEHJh_ z@XPcX_Pd^?fm?9ByFM;C}|QpA#jFM(cxh%586?Ic{FSX z>voV5Q1~^0mk;n6m@K40j9|h#$f~XVCnUkNppO5n1m1%O*HNKqbRm_q*8Wx#nPjqM zksj&NY3CJJNOOe@d^lo0>KJV#6M%l=3jlhR6#%q`4FGi4`2c)+lmgKEUj(2vR042* zqa~wh0x_5R2rSwFJ}>P)k590ks6w z5>QJ(EdjLz)DlojKrMlPrvyH<{%2h}eJRJ;%47+A6x5|_%{E*g-v{73BUqBtZys^I zo(#bC{$v2Y`JD;C_uKeB0N$6Ar2ssJlLNrDIKCIab^TTVp0V5oz!&QK0Z98eK-GG` zu{E|d-H>hrsx}(8gT}Gn2x15~*a$B8vC}bJ36Dd+#-OtyMIF=QJ( zEdjLz)DlojKrI2a1k@7vetH4#!o|H21#av{ih2mPPXJs>SpmhL9^MV(yHCSNuuEV_NPTkJQP3DElyI zJ%R2Mrbys?Abye9cyNIBQQ|muo63KCB!`0+f_4MWKdnDLGWmZB|DCX5S^FCFu~$C4 zLyUxzjbkzAlY%LDFQ)CL@{bLCnw5XJOMj;Q4^#ZK+`rO3+OFDf%1iKn>skY}uL%!$ ze#($bw Kt4se2B=CQPql1h9 literal 0 HcmV?d00001 diff --git a/nars-dist/Examples/Example-NAL3-translation.doc b/nars-dist/Examples/Example-NAL3-translation.doc new file mode 100644 index 0000000000000000000000000000000000000000..dafc7c8e0eca0c070c200489f1fd41214740e360 GIT binary patch literal 31232 zcmeHQ2|!d;_kRqlEP^{K>Jw2>*+CW;(8L4{LB%bX9AJRaS#V}>NilLs#Z1gHO;W=p z(@@G>awp3rH`El=N?g-i(lnP``2Ws(^JZfPtQs?kpkyZTI*5Qdpq$m3B%{&5|n zT>6{JN_X9jrE4L>ChnrZp1-H~Y;FF!y11@T95D%jZtrNz8OEf=?a)lhAA{J>AfEz> zK~U>a+HU;SxEAP$K(~&zQO_GMuE#KiDA>i5VcKfTBdJOd_#m{;G=q?CDHhrzloRL) zu~1HUF5LT~KlPC)+*^uG>6qRx0)NK{#0}^fBt6%qP(Sh8FbL^Fn(4ie{#Rpxo)8QA zR`J-YZvWix$S`t2&^sZY5DU+zYxOW1?GHjC=^q6l-$>{|b@%+!fBjdeN1$XVFE1nt z?Ri!#l(!UHDlh1x5L+rQqziO}drPs9&onmWv*~l;UZ5+;*ED|CbJP4U>RynS(9Y+L zh4%j0*b;rR%{5#ZW<@Qm2%z=$Ol|zqjA9M{`5b7g3v8-Vo~6uIr12MOsYa?)__3O? zN;XR+kxSJQwHwRE_wK-UQjZlYSbzU$Ry|fKmrGR90c^{lfT*CBZh?VpKYA!tvtm{= zK1;$X)7ccMDlMQ&SxV&#Mpj$U#f?qupKMsG??gW;?5C~0jkfy8j%Y)8OLjtV2R684 zNDk{_u{EqxCA2+&txCU@Ir7f>s{5(`J3xp5XZb=lS&0q zR;|OhYi@2jEo%E`)F?}-(r|i2swdHK8fUCaTn-~;GRR7z;}tSBQ=(Rzr=(S`Zd?w_ zlyq9=+scol=BK8*+n6UBWmebX(^<7rE+Ii>&^3-E#4G=q>cdZ2gn?zVofHzyb4GIxthLVbi4P=@ONi zuaiwzDdk!wfF(w1tD)T0a$?eRaKgOm8nuLH1J@Fc5yX4aY0C{TtI%l@VwbWy%ZO1a zuyuV;jXQx}Ls~=`|v&wR}3V#-mqTPH*<~ zBn6ACZDu5ygOCnvNXP0M3R3?%yY$_mIYifX{Ul=0Zc|qH`uoYna=BP0m{YQ(Mr3#v zz&LVLXn67k%yEH#!kZzEuN)u3v~voPjpqh$wn8QyC4mLzw20@Tkr1_27%@jJ(Xh%a ziAqe9tA0M!Sq++0CnShfYQH2|wnphUK%&T2=Lj~@Sa-O|R#%d%S}u{NNK`cE!pg82 zDrI&ShPXl_mMW;z9ATED%#uaos0XmD8$YY-XmPFJ8_-Xz$yO<}Er>AGUagw-S7(c5 z;DV9m6SL1~iM|bd1*Aj5G;iDt17`49jd>D5JZaC*TRKJUrz1gJc}7zVnBvE3t1#q_ zg?4d0(DEfbl%{OcRwO|uXo~hT=1rCulb$6Baa8qMsb?xD5+h**aa|8F>AE@H)KdXF zs;yopjA~?IsFESnhRDbl+6Iz`5&x?g7v2D~N(Dc|s-G8(>o36ceGZ?G^RYC0RktqhRJ=hG!e$FQ7n*A9<(S_tc` z4%ZwLn??hZrx7El+VfVWU3NnT5uv;cw3b@GDmAU#sEfLGY5Qtqsto43f1K6&g)!eU zeh~sYubl<7>t!>nhK=Wo2rFQN#jzNZzJe2hmW-a^ddk&S_#6!9W&>1OwIN2VH)#pk zzh|zYl?sXAiU~@o^TeoIymm)c=Y{FCSy#|h*P>&%DUMfLcr<3TmFm*5&N3m6S&=kl zgpp~C(k*!6*^F#juaj;*%V+v`amCcdw8#}spY%($7@Z@bXN)N=J!8U686!B8=2&A= z(?6~<&=l&EFb4TC$?2UTbFd*m7LDt@UUw)PHCQ{ZSSDq{n@9ttG31S5E!?=`D)@)S z5Jaq<5+*(mN1)=+53M1_>dcrcx`70T!2)~rJmChCAy143l2I*2)`n-l%ZnRK)$FZ6 z%*LBUFxynWPH&=PXu^$$gGi%a&kdMF-GoF1Vsz@lWu#fW3MmuTRJAc&Q6pZMR`Wu~ zQT2Q=-9D>2p;_b%F+`Zs%-IW>q1rWo6BzWDs5gZHoO#pt|(wu^sR-sogi+t49t^PAr2beciCOZsf zCVaiOUS;Cuni^&3qG?xyU0E~UsnJji(9K$U`ou1S^)k1@3^!|z%}}Sp7+B_(G=Hj( zW~a_5ZiUm=(zXfqzy%khnXy>U>epYA zmSN9~r1V_te^Y(5$3}}J3%Y%RqfI~n7oa*TVECcLuf}#a540s1P4%EaciY#C@un%|&#NrsuOyC4? z3#f}@EK$H{UQg z05H`7l0V6w>PE?f9EyFa~M-&C-rP8hbSEXv{4K$^ja8H0Ef$xdYvRcYsPD4`XZ=uo<8+ zcN?HF_cwO+zP@{ZYdwEs7hWuBLw?{IXLV{#eU%vja7TB&NFE)4rNGC)VSwzQBkUg8 z!G6GYUYoy2{eZN>kp7ETnxO}9$Kj}%zZ;K z8{HT_FeiVKhdt&Y2Ot!X1Dk;Mn3uwVR3H~90CoaTfl6R}6NY&m_!OwolwpPgvw=;( zSs>_4qPNWO~zk}t_N95N;Oo&y{q%l5!9 zfMoj<-~w3&YvsBT@ddzzg+2glfYX3YbF9CBmB0z$58x5-7F;D?Vg1*p8_UbB2(bt{KQ-1L zpozL*ROyR-a$8pkE{txBDm8jybYqmw@{M6NfBo7KMt6@BBdYM&)!atJ;9PD-8o2`8 z{O=jf)C#hx9mIGg*)SclD7{&6X&_r%(YblClcP7#B7dp9574q0tH0t>k!SG;Ti5(j zQEZmYUvHGP<_n`6up_sSSpY142Ey@y*t0N31Yh_WutXyo zJJMI7zXDw>gLT(JnrXcGIr5m6$;7~k15DHZ7w?OqZq)A(z!SXOh5J&V0=NZ` zz48E9APDFJBmpCUEFc%i2P~B%y1vk%a`5{Kz#{Koq4U39E)u*O1Uvwoz)w$L05A!_ zl95U5Y0LBhUW>D_lgHJtQvhl}1K=?;2qL>(DMIXuodG^LFufTiqhjQYn2{l=77*;i zwD(~me3(cdCe8=)!ji@d)UkU83& zs3{wDX+Sp#*D4@``^{o9k@hm$qrg)NeHkfpr*b`F*Ct#76Xf8^B%?$MC`gdoxbdHp&=ZW)yq3vIH@sZCQ|mBS(j2UO|0ou5J;7%`}9h zUbc31@dYl~;^xfcylr*koE{q?W<9E#6^Wx|JBj-#FtFiy=*z22KTC{E7dWzM}%>sh@toH9x>J;Db$HiZAahim`z!QE6+! zsud?c`FR&u6pp9F_SaMrnL03ley7ek0v5SW|8?5-DMxeq9NX>La!lZg{BD8Ea+q_z zZ)AEmKGXQxnZ&&g&RdU1DWT>bl&;Kv-_E_6rVRf znLGNmvStewH>?PM<@oRQ`<6wFSUYFc{>t^cgAOiEEO}#{-=*$$iir1KkzP#scvawq ze%td`NmhT~v~`o7Yq#EGx)n6)x_9ZZC1=VmU6>Ma_-x%1i+Z^Y_A797%aa@m zn6c^BM88iOuR0y)^{t=m+}?VZua5KF|K;pDXXE#&`{cAZkw2|y!;kFA4ed@e|JCou z;a~ZT>^!T-z$?e^w>jVaTDw-xqDb?NpTD8#{Ct?_By2a(RBO;|z6-(B?CXOQm1n~1 z?sP97%W9OVt;aNS%+4$Se35@b<8Ktxn@VTSFHb7$ax6Zl@#zb>HoLcor`Ic&PZtk) zvwr!CM`5Qr$eNU{EAG+v-ERjCe>c25uPEB5_QMO0Dw{U@bWPdKy{=7aH*b@8diWF7 zp>966$9I`meB;Na_X3N?$F(i6TX1{om)qOS{b|GO`)9Z2mGzHJnLHxLyKMBCS?~2M z`(XZZ_uYerUv3jWLUFMB+x52PWwr5m;B;k=O#0P;A;a>56FR+D;koapMsq$*EKQns zH(YhTv%|WX@4mh(BV}oPos4NE4vyKg^ZT8Wh?=CFyqBA}YtCC2cl_qDyKhPCnKcWS zZ2EF^c8zrzvlhHsyz$Gm%1NiT$hu|~%f{tpB?lGVZ(P)Fh<%Rjh>=apuKm7c`|Dkg zFvY)4Svg>S$f1|tDEeu?bbgn6qZg0abn>(ILnqFB`dz`nqTZhzmr1@DROpb_tg-sR zhSMWc)u&1t=YJdV^R3y3(>HDXrNV9B`GG&*deW}w#9Ol>md-eOaYW6cCZ~VR_}*pT zg7r6gK4`S7Y-GcUZ%xkhE$p@4^G>XP-UiRJ7Yf}Ox3ob=?LL+E+*3Z?_vZO=KE5Yi zZ*?eH(Xivi179^i%O>2%!8{B&h5V781w2& zhgZuBre5kFxbw;NBYT@Ii&;GB&TmH>oESHFPvsxGTkm}Qczk=0V;QXu&k9`f_}=yX zv(`mFd9t-fy;})y_K-Zt-xFK7=%Uk&JDznz2aImny2a=n^>#ZQ|1Iy3&wG(2ANI0; zvN+G{?x8m63&(mzb@*mOMH8D#%bdsMsE*Vc=P`3;VZDN}h2=IkRfjtaO@39}<4)U! z<0Iq09(g&X@17f}69;{}byl6dJGaL>XNS7?>Tz2U>lJ+8vv=K^@h{aqrhc58?|kEC z-(SkJKlo#Eujm0+0=hSOrCmbE@)oT>OrNz;>N;uRfUB-g$H>-CaLkTebL{n5UR&b! zIUj60wOQ@U3vPE66G-_fJc^Tz1@_Gd3C z-nugOmTm9)TOQSH`OenFbq<@PS7wB{cytb}b^3#()gL)~9l!YNcfre&=Ez-#4vl(C z^x*upz4hk)zOnxKgz|Z-L&T3_9}b(^aj<6VP`kS~)_pZ(+`HFnIo)|U`{!Z%a|Wum zS5DkN?7bry{$H*??JOC1-)&=?aDUad;%-g*?Qt0S-99(zhiNq)#gtqL$T5sQB#QfVF9{U2l|$2b8_^(ZV4=&Peb1 z(e9$8h7%*#HFB+ga;k$}*E6C4!>8T(D&5Vo&cV2)Hx&1O`oVvXOM|Q44bSDKMIU?p z$fH$?g7^03eN`j3{L@==qc47xvZ3~-`K=x~{BZdE@{p~2L}R|X|I;_U#@ij)w*1b$ z*bZMTFDUTq+C#qX#8AcS`}RuDG~T_ie$xwew*_P$nLgO5LAM>X!>=bMq|dt)s@$mh z_6MI;yW3CO@TlPH-c91BB@Y?&a(LLm5|L<%b71YE^V@*C+R+Gwh~4iR(T&zq4J^7-Yk;fl*& zzuDmD_HUIGHt%_EhvU_l;>tefLLW(9Qm*Q@!+k@&lIac!u3tM8{_(E7Q+`1Hm@K>5 z^O}5FvOIq9@${m38(-Zq__eH0hTQ5bmieC={5Yp~YJ)=y4;EgX7$H+eZ zv}Aqjes$m4^RVll$UPH}wS6P|{IUrZSNu1hT@utXA*dvx<(nV>?zNy(?!`@BhmOtO ziFvB(dc*B#{*sM&(ioF;Ym=FbUwd$Ko55tPU5g|*e;rhJ>ix-Mos`PsTRi5r`f)~S z(f77fFSd6JkMZeq{f66GKc|4{;vEa6TR-?{f1T8jpMo=2H*)H5_5INwmdH0>f2T{| z`n_kK>X=qMV)8r6h#U1X=JxVUXywz_Hz0U{s%Gn+^9oAyk{{--ja)Woz(wz6E4%L7 zS{iphJ7?+bMK%+^_1T`{G2sN$aDLKz&akvDMK*(AW|f-M%b0-aYE56d9r$Umb~7z#y86)}GQG3TkyE%6f zcSx0~62w_72q@GY#GSn}HJYprfq`m#6Db#~18`7MfoJJTm0YaBttulhO(h-+!g5() zNKjCCpd25Md9x`Q!JWNjnqY5MGY(g2qi~gy5khGpl!mLcQMeMProtyd4()}Ig6DjS zE>EbC5-Q{g6H>y2l=ebOdm$xUND235GiCT98a<-On@v~B;`jvN$~!QcxaW>nTyUX6 zuwkwHqcHHuaK{7E;T$ei$>u{Fj6Z>~8a^tyz$v?(2LL%B41g-)+g=~Y@c zmVZtT8u__Yj@GucwE=N5uFRtWv3lw8FzcGfXMDw5wmmx zOI+c@5^da#%P&P;R2DR9=iAsYB0GEZ)WKH7?Sp8u8bwr&TFBSPG6}fXU_XLhxS)_z zF0`jq#4xmP`0QY@8m?$_ZHG6XSxKhQ z8va{3@D!HX!Hh-gde8){tqzj}=xd7Rdw*k_Y z1prz4=4|SUF(jfRzJQ4p=#0<$#p~Ru23-IZ&PdFFJAPL_t7f zk9i-!|Mz>imi*%@0PQWoCFgc1$zRU`$lsp`(5CuSfX;H!egJKfzX#AUoC1J+aoQIk zzy33THpjmN=s46ifN1Xr%=!D4d~815m8%0qEyhhzIklU>xZ;K?A%~wDoh;SJB-}Oz z_ZTVGVC8_716B@LIbh|0l>=4|SUF(jfRzJQ4p=#0<-q?N4v@1;ZZP@Kc)iZ~@#GHE zdwY6kPw(sL9X&a=_K4~TC(xcBPxDHXZg z%>Wi?4tN7C03VCe&x_Z3K#>Lk=}an;2#n_lpne3_||urrf`b))8sB z+Vo(9FX{}kKKEr!M#R-m`%l!4=P8I|jg0WGXAMN}RZJSb4pcI!_%@JE9133mJ|8U+ z&iL_lKX3g+m;T*E3iddkNVU>8ki`3V)Sk|@iBdE;M@U~JS`NPGKXIJK?(^2)n#j@M zMX;~Z^FP;~NG<=VZVEir>VE_2v9^92?s%&ldx(iR0Xeezf@Yr9hV|lW=6}s(F`M+~ zwA?HSUE*JLBblkQsWq9F(Wx2|msAskmIMC>_xr_k literal 0 HcmV?d00001 diff --git a/nars-dist/Examples/Example-NAL4-translation.doc b/nars-dist/Examples/Example-NAL4-translation.doc new file mode 100644 index 0000000000000000000000000000000000000000..0d459f7ee51422c078098309a2f3955a61b7ab2a GIT binary patch literal 27136 zcmeHP2|$cn`#(*q79~j(UMZ5AN>p50$W=%o*_WxN8m5`dOvw_VEV*vkw`|#$=w7mA zOC)>N!o4K>&gDwi(*JqhnYU)9MRC9HyWjtt!*9<1oO7P@oad}>`4<}$t^1|vU7}>% zi8}dGR*z`Og{y(vk?|W5(jMFx_NA<>41*m2;8dCaA`U#?m`&8<>uC`3+W07TA|cST zU~~xCU`9xN5VxeHwuM}}ARyuhVm(0CjBm9|AwLV~ zew5Lvtv$05A!(4&2Doo4%MU@748sSee#!}$@ak-)K1@D_9%D24n0Ur-1pG0DK*nF4 ztxQMRKLhv@!w{FFCl^#JCsRK1Ti!6?OqjBt3IA4`p~u*ayrqna+!GXk1{EW17`bE8 zF*Xw~gnFagwnn)F8|4oTldeC=K}~*X?DzjNhd%4$k^58 zXTljejK4aYNvCWp^I18b@iTOp{#CZW7O$NC@A5PK#niL5HdEia+SSoV-CPe8>Ba_x zbOx!{B*yTIGm6Um^EqH!ZYZ%t6dfXo7IFBLM8pw@!-S$pj)W%^82I+>Om(rbwc~{F zLhXV%Vs2Z?-rk)OaXBFv@6Oh9aG<;d6vk5=0f53(R0u~vMQ~!c;AhgZ4JiMCfk2K< zi&ShJ?3hTqQBvyeY|7e+?dbS}BfFEMH8shpGvyRV$rr*CQ(|ExR}#S!gj13Tj)X3Y zrbCVANg`x5U{g$SbbXYIquVp8t#WbgD~gl0qjG5x9I;%ZWJO9D0A(7KGu8HMT&l~l{rSnchzhvTpbz-GiL^4HN4`SsaQHZ~-Kss>+c`1f{1HBw?tPgvhlp&B?L zn;@$l3^n&f&77brhC*FMpym#!wFoHmM2IjlN+{;x0)vA8!9tkT#k^3i7^f!=%&Qy; zHl+Uz zcMrM~X~hyH5=L=Fk_l9(5b7X_;Fc>kMbV~^jBFJ|6Qh?v9#D{U;RCu;xgb=hbbVx{ z%j%9Q&ea*#Kd$BTsV@v6K937as=8EwZuwXqs33Y~m#SmMTBBA*w#ipqX(dzF4yi(j z80E)w4o=QBjSwb1taYSwJuDU#$x7FxqbfS=>m;jbKC^Z$UsuY{#x)izzk-!11LYp< zP-PFovQ@D)iZaTyzNY16T{}fA4CN@zXRQ#(XugG>gc{T7L*dFaa~# zLCP)k(Zynduk(jau27n6gsB@CXc!nse+^{jpMQ$-UtB}D=jjO$0d@fH0?g|X5(roW zI0SeHXsJucaKK_fF~D38PO1UPfYX2yKp!{-oC7!wP&XjN8!!=Y1)y7>kY0c!z&U_A zTm_8)ECO5y7{J|;AK+)eJ%AdVCRzc;0CoVH!!6EKz-GW@Kr=Ws7XbDEwBf|u65t0& z20R4V!WIzgFK42kW5nu^mDPTEZ1t1l$ z3a}cm2Cx>e4uJP$pWc1H zvhkM*_7gxW*%+J;HXFvC1Ar?Vhj3L)1_1^Geg@Q%o2q1gH>)ZH0&ggrVP7zMu_5Tg zDS)YfOaSUfFVH2Z7Z(6fFD?e4UR(x1y|@xkonB0Xxb*mC{ zQSc}9s_?qpa}39fcnY^Kmi;9o`3+r zXh0Mo9*_d4E+5jh0U0U;em@3KkoH^X{IBP81Kte=d;sVGKg|F^fGGfc9pv9jo%92Y z@=?=>^r@#I0Eht+07R3)&}DDRSYYeJ>QHL5NM9l(A`(eBgbzUt08Unj(8J&*oB}mf){JvgiFGpq-ZEh0(1kw zEdqqozfmLt!hVGM2p|?sf5Ibg%XWjU-;53*j#~O85OM?q1umpkti1(k{2m0h!*wm9 zrmN1EIy51KgTX8U8zo{x#!~OfvcV>@nmKA|({w1(2g(!EWwYpai6G~_)iq4u1up91 zmSlR;p@x5f%K|tKi)}KjyHFs3`;Sq9aAhwZ!H$jO@0fpfOpc>bkCMbMGxGNqiVoUr zEWD8BJ3h|tvZ2}iU+l*uCv>QH`p)?0`vVT@*h^X&1z%V`Y2eP}du!{PEqojJWZ=k% z#L&2VTeiRZ__A$Qfvr=3`iwR^-ql+;vY=qlgO?_bZI^Efe6qSz7qf-@|{k4^EM^>DAv%b)%{;gkC2M1FLst)6$m+KDsr92}EQWvqSuu~gqGewp6j z?WdeML(?uB9WS!W@OIQ5Gv%@KoxK-=@4c8}!gHU|xbVD&^U>j>|MYn3@JMS|q2Z3b zJ)aa0pL(L@XZu_I$FdiSzg*2qVVkj+?%Tt8cr@KZ4Ig@{E3s-62 z8(x)c?fPZs+|s*?9#N(%wrS-QclS6OaW|&x(W%oLx`leXjgz+P}bc z^v>ihr^|NdIG$VWpFMS#-Gd$)0@p=-c=vUTnD*dKaPMC&K03>=%4e`&7q7u@5ZegpK`-BB+I5p@ULfgX1yof zQ=597T6=lTt%3*lX1HFsV{&a}Z-XIrsoDlf-1F?&`(97B+ibq&rjNx*JO15MjUGOU zH9Ng$Uc)=SdE$O?t*)gcrf2?6UC(THt>r7b-$x#>8q;-d&q0r`l(a4G@vL2IU6xzb zm0yyXUc3a~NzqzghmSjGp}$oE$uIflFah zy1SKe>AjC-&0B2UUhwjielz2iZT)YK{46@(-RjK*&xIK;esBKXA$@|6ZK}qyHwk+V zx1E1Gb6&}vtfYd0-oevH$5|GPyES)FuY#pZHW=m%9{I4X?`Xlf9zQiYloZw0=!4GV zTt4qW(6A9nPJUe$6`AGTZkoK+KR;mMI~P%LSFK%h7EC-A9=z7KVR&M;mUi^KlmR!m ztY*R2-^cqOOP+cE$R9>I{j&5NT{bjh@1C8)DK`%Cy`nPsu}M*Z zj_D=l>FtJT#;K1U)4br>p9c?5^twngUd`APw50v{AE&0@KFwR=`F`B$n0?oGbR0f; z&X+T(=hFLbzQX7JIyg-$w1v6&L*~sfA>td^<|!v#AHAM;A#7jP(;|bs;z5sIe{Pq4 zZRT9pwX-kXA6-Aa+09qsSM~Ci?S9egL(^jgW138!IX%KAt@m!Tx8C+inPzwHr5O@~ z(7~59w(@%A7S6JHSsZI+b6x*+=j@G5ez<@3K+E%bzN7L3GY=aM&~M_jzT|0X$*$EN zJx&>}Zszgf$%nf+_q08RcDt}GGBx4BK!>BBpIM_nbv}_<)J*NcdfnJK(ZvR_Mswz*HA)?y zR;cz;bfNR`z@eO;Z*7-PaPvJr=3#LE+!rB}2cOKE+wj!U!@j!F&W62vz7cp^IF*?7 zHL360&E&H9Q+$fv=fdXGrG5B_ytQ-#gg>zu5kMrF9d_4ZOdSBCnAM0EHoaMhuYaj3N><)THU7Z`;TpF-#m9E8=`>)P8 ztq(|!)E_>)(@fTf;%BEC&Hr<+X|Z47!fow2AH7RQB>XT$k~Li8-HTlZhQ%&;-azMV z>AXiHPR9)r9WI-Edc>lO;r4rW-_+#}DlypG*2P|QD5HDx0l8XZ&g2>JR)p63=$${y z>+prt`o80Wd$o!^_w?WlJx!OfDMe3PZA;nK`)PPUic^+fMEy0L);IDi+Ho#uXQ;Q=ivmtiLAO=Q zhy6Y~tkvL;I{;R?LBt+b4QY(71SL z!`t`Xoqyesnri3OGji9p;ev^Ir+Bx_bC#Pnzh`oY9er`u5S_-|j~Kf=_xB51_`q4X zS9J0>t1USl6Ei=i9`D=CCoyo?;2&K&oC`E%*< zru4{7zZIuik0^bArs%m_7%ySBX#0Q;7en=2Ck)RUeY;ojG{NFu%^zIYmE>Eh*MFl$ zZkhAIcT-rdn(d~&k2fsX&uX=5S7fqYqj6ih@w`7DiO% zT`h~eFr;bg^t;D4zvs=?Nc`;6V|q$go8GPe>f18t;(K=Q1>A%_-iuEx-r8uAcl~IdeD;hyV@S_v~TFJUmkWCDR_8%TH{9@ zXJ)6h>~;5u_7jhcvVM1+KXSVXw{$;ZnAs?MmX@FXajmq!7DRSQVW-4IY0O*LY)|$E z-yv7R(iiR>dSu9`sLjJ(cjfTyZw&bq*Egi``Q>LXoIW|XLrfUw)b$wtx~y|tDvhCF9;`Nh?9^3D~v&PZd&oSH8dfK`_EtYkOzrWAo{N;K0iA?47hQXzj zHG3h(946^DO4G1(?Lp6Na+9%aE#jwp+|eYVWcqj=q43HHK8zxE0xv`=9^p+26G9oEtxcW{jTx zv(WWLqwx8?ZTwnW^|xU=Efdvm(`#XBeo|m*{7$#^$wBum*KhL5%gXmDiH=+QW~JKX zlU9d=jV4_qO_l_#DBJznt?8U_hZd$IzV!1F-$>N7Ny|M~)N19nJ{o6+9XxpAPI=SS zSoZM6LUrp>NG4~hSfvK^RwSUjTC2$24)`gzc2mx%y!xrgXaZ~GO3Mj3_A66TUW!yu zx>OYL6#3fJAQAz+HDN`B=k%In1hgKnUI^*p0Sh52hAR@oW2ml{ z@HEN@j;Xzl*1PaxLqwLaK)A$?gqMDIGscIB0o+P1q1}* z&YZ565fVvMX9ovy2rLyjVm7>K59ksso-#@ zu9kd>lO-jI1y|@;a0Q3A$FTMo2CmSt;NpaYz@7wB$Q(=v#7jfU(>OCB&P7V2tH3R7FvXsB^4&*`$z*Am!*R{a&H4%X}}iB5-z>UKMI2#8Th1t z-k~>KaEnFTa3ewxaKlj!xWy>{B#z#>0YSVv!Q*r3XL8a!P!xe~Be>_qZQBC?W9UOy z@Ze{13os!VOj}l_0qJ!}ci4RL=?!rJ{ECU&nOI8P(L7uothM%%Btdcev2>al%03jIX=p-AwbWVk zd50{if`$38hSCx#;s<^SoI9XwLMEMfH~`BBeS_zNUpLhjLuYL%Yp`;=zfM<`0={L^ zI;I^#q>#1nsHhS9Ip*-Sc>t>S=+11b)vIH2NyiUTSR zs5qeFfQkbu4yZVw;=q5B12ygcS=Y{AOJ$oIEnEuwf4kD1xIcajz%wV<<+>7J60PgE|0Pv0F9snMy9|9ol(}1e>`_=8S zrQ!N?8IZMFyEzn&^+phV@L(ah;m1k`@+5pNeT+dzLx{?#IH2NyiUTSRs5qeFfQkbu z4yZVw;(&?+Dh{YP@c)JbxY@;RFz%u8ULE)GxE;oOd%Uy9`+B^i$Nf9*&2gWO_y4%> z$Gtr6^YQQh<9^-*fDh$xPmlY4Ge8qSQviJ9LEo$6r&PG*#yk|*EdiE*Rsbu2HJ~*B z<88oh3$O*W1K0uV0c-%qe+D?o+~`NBOx-wuFYScz3XLK?=r7+y@QSW3#*}EPF(sl5 zY1Kn%BIFqT3m??UnbE_9^j}7IhOl^9xRcx$b#h5-?W|8&bonT^SdZFd#J4BRU(X%{ ztrw9{_&QKXLg3p#e2K_>0azPaO`&`oLktgUlLymyqR@lUgm;TrDt-fry!VCD!{|C; zhy>mj;une48yhGeIgVquw(W0$}w!NqNmx`j+x*rdYSw?ALrh4?>)=&Jm)#fy>~1<`dY{YzWB-Afyh7A00pX#{L`onOL1awJaKvE81d~;OlO4M5mKw>&%cjEd|}r4 zTs2-b^g}u#q#M8$%Ghv6145SK#!*g$cyRY4s>;U8fiIu%0zTeQ$d`w|k57*e`TO|u z{Bbnu(-4vTv7u0yj_`OZi}^f=A8r z2IU^4j*;1TyW+3oL;n01kOM9H2>kIyNbQeq{B?P-gX)givw!|CpAVmsw!UaP;mh-~ zkiXwhXy|_49{JGF{d_#14u5PY3dSY0Zx4n;#I3`KVUMs%N|7ow zXSGh#`@O|A%}(s*+sW5E(9IUv4#>!q$mQca#WJJwS146_iqL03{~FX7Meq&|L@7f2 z+{EMkI*R=}`Arnl0vRs{jg(k1*xIW#;UP|xCT1q6^y`9=x=eYfqCNN01S8aS;)otxxy)^`cu%5_BT`)NsR0X3c z>I-Ua8W00*oQ!F}F&bH%S1=7p{HvM<_1;0OuDJfgfWf}1rLaaJY(8A83iCGHV2#j< z93EbeUS4XPL29k&Yp|JYKT72w(R9_iuF0UaaMr7*RQd(MlvT@(1O(Q|jZ`lrnz+D; zBuZ71gp^dNLRDkm`WJZ-%|ME&J7WQTnZcFLaEUFuTD_XPIMdO1UcT>R#vQbfdQxL= z`s-xDHXEARU)XA@*6}5^(IXvJrs`gaF(;id8P_YZdFhe3PM4FQOih!d%QEzigPE)h zHtfI1T7)BPVSa3@q7CS8>T@`A6L;1f?(5{Mb|?CrydFujX)+E*ktkLwcuvTl>(LG)1?v23t{aI$ zB3CAltFdc+)v*#UAcGlJBcEVq(%4tO=QZ9o_34If9Kxomu?N~#X`2b8V`hDA#`qbm zrdw9aLVL_CPzbASI*Difqyhg*Ptp;efno1|P^g*$vodANC3Jd>(9oV4bJb%x>}^Ka&Yuymq0DKTMr6&&LZ8_hs5L8ju8X0f zX9gVFBga1@3SKwbR-2$yWJ%NM@>7O5UaHELV$CRq&cfL_IOCb3#%9X0Byy>K1+rxp zwm@EgXn&X?8SV#|yA5^(FHxRgT})eg)n>}*Pj`7t)3`Y)>C+lhDWRom=Njxsbrt|u z(?M$vrblN?30}?d(@t5Li4KF=$&k^d5>K%zTPaRUm!`@xq#1fz8C!CJyf`DQZY8l= zNwN1=4sCE=vmbSF1aqC(kn49YM5PH`(jgW{~ zna(c3QqfeI%4<~N-nzARk*Y5x*N-vArPGhSaw+McgOlbnIz@0 zE^2c!Fq|>q5dNGis8;P&y#U+0YL>FKJ#~zJ)z*A%hLwq)=@jF+U#?Su_E@Xbw$qGk zS!ybt4Yg&4X-sWGd|{}*=y$kfdEL4s!71_eVB1x^Qk8-zCT-3Vxl}bSUC*G9cb8ml z+(Q68eH?EL{=9-TiSeb^6rLIA_;a16&RAL3*fb^78eyutL?Z;N+cQ)zSV2`e!5XS6 zb^DrOgr=a}*uJ{j^QsdH(@@>HUPY56TMtcV#;gNV%btiXh&~^C>4;tDIhb0YI=)A# zkX9LE=qUmn@#$z#BNW~wSdkcSM2e4w?6w6yvab=!mCQww5b5TIp2M#@0z2}6}43nWZugq)Yh2#J-j1Oh}wb!5wzTKDOm zx^)ZOr9P4Bcb8Sl$96+66Di{$t0|=s!eyGLws6@epR60wsXOOu)M-{Jvqq*&qS`WL z6RoDCIxSrxP1b&3t$(b{7V_zgWJ=5Np^b*{^2M8RLDd7*`~7TvPbY~r{wAW7Y>j}wNrV-S{K zzkH1BiS$lybUmh?0)=Z=Q~-u(0mM)yvi#TY7H{3H%Y9eE53mVOoTpeYp-5s z)u~~IGF7UQrAjlzC7PqPDs~ep)PH><*1dZB2|y=qOrK8KFv;WSBO_E-_mu2W~2E@FfF% z3Ng30x3ITo|Jrlgf6bf0_|7L1OaWVgRV_k#ftlbqaI8&81egT&18ZAC`hz)OH!#DS z-#x$_a2hnSC!`N}51azdbqJAy)!-S3z$ZW|uns%}J@B>B9B>M>z#HVlK^B+`_JH%i z4`1+PgSns>Q~(QnH4zKwTj{$2{e+?iSOBg7H+(WP1S|j*paVWx84tb%cR~9`s1x`e z+y`~=l|>Yo3ATWg4smFhvOHlu>FQyXmO?*^vSN=%(eJ$K1KtLx z{`0{S@EWK4T!c2zbuHiusQ%{y5%fJ5%mXU{)xQ&T{yu01T^E5hU^nOrU2gzAq31I2 zoED1TOb7otf$%bCKizCbbx{s(1KR#ZfDZs|dl$e(@H?PwFbB{!_zkc`o3jGWfVRW; zfC%kwAy@>8L2IFq`vx^~HoV08zlC|9?mZ0{v56 z%mK6?s?!pEKe!66fyOTA2fz(*3p8&9oq}|51BAH}G6u{8C7=Sl0RC=-3ac7oqQTMt48gG{g* zoCWpTp)UcW!3^*@*b9CKZ9NH@3{C+%FW5Dh4;}z7Z~RsP=mq+M@gN`U2N%I@@Bp;( zAtVH3f_(4^C<4EL2cV5FAwgge$Oa3*67U(=2<`$aKSEl9P%r|>!QV03yUvXvse0=Q z#(L8|%nXhHhS9dz40>n|dV?*X5%iD-#)8j4BglUY*ab?!Nze}R&jQ&XA5fiC0IHK9 z&=XL-ybGva_5rFF59p&EFtz`GNCtxTPjwLm$^dOAv0NK@h_C_L0N+mfWB)xc3#Vo>MO`sfD!#`1f z6%JB?0?Y;{fXE;7ZV&@L0gJ&-a2qrVz9qk$Zx0wqWTW5K^v_fIsU7s%kR zJ#$YxA83>i`@J?qRN=U*rJ0CWKtG9eDS-Lu9%tGg6@la61~7vz+kpVk9z=sQPzcJv zEno>9HULo|0Z_e50o8j7pn4wzsNNNT*LynlGk^+Y0{Z(hY+uOtUN}0>{a1ec5B#rN zm4E3`ZMHw}8IAgLeS5baPJ|vy5E2LT(Nr?*RRe6yYS90;pzTqpmn_6(bNbOS%}3e_ z&^e=XpmUkw1MS32`~L|Em{sux)?wr|U$eTt#5vB4bWEdup+#}2kGQxZv}Li4wF_uf zu*A|8xD~_87nh2hibt8-6_ko1(~z8L`yZD;l7$1Qi>|=d%mF=xIch_(pv%H!0a*MJ z0C&+Raj!QuWxC`ib#Sw^sFX#f|z$lOgazOzwbRSLE9X3=Bd0z!$T>C2N{M+vf zhU^A|C%^{sbOHmxB!J~!(x-|1$HnT{Lu4SPB89)Vanhb`@?p2Bq+TqCnyIGOm zL`l*~Dv=O5qFw`juB3x2334UDt|ZzO`ob{B8L1PbjujNZ=b)WBmmn8Jk_hqr%Fpnt zes=b3lp}tzE|N$|5^~B!UMi#;hy8Sr%=}FwDTsR=# zzIx6Nqj&o{Mm?VPVoK@8^7Jk4E6R^7jme(qdECM2;@4iIXHRWk>%iIUo15dd*m$X0 zImRDZIDWvI*%y}7ahms_|Fr=lQl=$Nys+}ChtF=e-CE}17iT`D&FY7>=8Y&T8+7S* zec!eVKkt8SaY$#UdGgtY&HD$k#Z{EJ*C3l}awR6o~U_1D$eF2g;mmYWguEMi8(${+Qq^kjEHy(+;k4%@!Gkm=1->I{YLPT~m?o8W0<=DhGj_-DI z%ko)K(9LJrL~_pk?G%@$XPVwP(`TPm?X5Obm*08(W$24F`A^S%a7Em3(JHIm=evdf zka8|7bm!ae9GJHJ3pbmgIcd|EjX$$tP-81*SEizGj?QIiv^1tR|NJt@ms^bWkI9X%wBn*a@}s9-yrdFEFG^eYF0@;%ne! zX*x9yyF;I})y$qma_JZpctqr6$^+T!kg=YBtU#N5F0yrMAIx=$}Wt8Cul%dg6A z@3U)Gw`JQtKaF^vez=?Ky>VUU72o=$`6HjAanT-y77Ol8UBA8UoL@K0dVF?kUfF=i z_;*H4bSWEqCjWyTWgpF7?y!6Ch|6tbMkx+Oz1Lt{URqnnCpK62%4OdU96CJDFShds z6;AtqZ8H1IKBaN<9tNhL54Bo5bM9NalH-@e)JvXLVr88mPun99?94tIk)ccDQ za_KjNms%yZXqxe4!%w3VGESE?E%-j@%H3HZJibJD=Y?y068u@WqoJ+&|XnWX_PimA~(9v-6KX#&vK! zp4|FKzR#zBJi2)xe{Ia)YJ0$;ymYvhubDC%ytgxxMxE}GqX#}YUfN$Kl)mZTVet1`^Xu)~xjm+KW`IM_?)Mat&VG-bde^TL z)3yHbj6ZSN4(sD_R~7Bl zeS2>7kPVmTlZichpDl^|+T)iUKYadme*L`W{f}*%9OBbz)02px@5a74ty!t7M?!dk zwc}E!TVn@Up1q`)el`29dGCf>p4D-Ce`}w$R-0s3-)(Q}7#i@}Panmt`lPn=iHmm* z`Ynr_ooY91SjcqIlk+$BHJJ0;#)ju(%jd1~mpqGnI(%xUA*!vzEFRuk`|Z%2xi??4 zdGK`BmEi{_4ocr%IpM(Y4~`~#tzY+3ZRw!L_8Z#S{gC6UrO6#z8mdn}^ce zQfJL*J^XZnq+bgsd1%4lTlaU>S$p-|AH(7b{I-1q(MxVA9{>8Y*IwI3 z*IXK(%S{YB{?^fFD;0$w?92PMR&M#1cjts%{3L!u-A(gbKePJz$ob{|Tlb2xzJ2`b zo}S|@j&582;8A49ZDDDpg3xcZMDVtsE!wH?*! zd57hLhfEpuq-;6qv}KLk1;2X(PM==!T56|fi$3fd_C}=L(h8ed<&ifN(stGvP}*im z-8HRyMV0!b&HlV7_4A+47rG69`siTA&EO>2)OG1!^=p4L(Kcw@u>GTc?Qwpx;=^y6 zUOKWiFXpLj-xbb#D+2~RoFodeY&ZE)u0z>oQL9hZrp~r)Fm`2ES>*E_xqC}~tn+Te z&H2-0HXfUM1y)*y{8*WKWJr_NMdx;X@ksWr#kA+qQSTIly7z4Td+(M5k3RD5IafNh zSLBC#KK!!5_{ci7nqF_RdDY`AhbYJEpD#+3?yBg$_tR&KrKRpa#`X?5TiB%U&Fz8K zFRmTg*E+!c(kaP_(uY%<@O^Km%p3b=t_s_B}-fOIJd+4T6l5g8|MO^NxLdncH7~wp+U(Et6015td{;h zH??ztcR^N~#jJVF)|V`g8FC`2Xx_#*cMKVs_QlYEG5XJ3}AYtyg(^u13b_6F~raNOhV%=62}S6ubleD+gcw^-kjAh*e%{pP%& zbMD1W&WDfB+KGOu>UhKcSiz?oai%FcX*@sE>B-o!2h+D{b;jISB)0ZT zsXVd8aZc-B-YqTq(R}K~4)%fJu5aADWxvML#(Rcj$3ofGk3Kn2FTwv;zm!!?Y&u^1 zaO|Rz)Xg{F@6xwn@0q7NB^Hl*=Y3_+tp>?+db-E9cJ1r#?YAJkPMaR{3QP0)Kh0ee zylnQsi!RGPkJ!JpH2QJo#3lDWHk-KoZ@h3^+`EiRX*F6tzGBeqyMZ@7Q-iXLJ zJE1&Xtv+7W%i`eBEnD`SRaf0ijO>=iU$Wv?V zCcIHN`qA82A7kVy!wD_%3sVvfMKmcL)0Yx6FcGF9Gy+W;AJ@_?O*JMF*V7UsBKjk` zmSi|;Kfg9T>Ku-NkeK^@j8GT6gX$v2uV5$>Ws2lbmjV4>_X>6qXQ=RUGJcCkAq{mI zC(UpP53{e`S<*2=lj!*Urb&;$5T*Rsz>?MxDUVO4Yjq|5**h?IPJxM|W z<|Md++u>tyo{dpo6Trs=@Yl5GW7_jE9r&0Id`uu86X+sNk;@cgP$L?+h?A7^Xf}f1 zbMXnI(#yePXDnx7>S(3@QFzSAaKr-bFcU61>7qDr)J4dHx7e6O=<5>nkqLctfj6K? z3(yMC4Ct$L^mVEzG5d-OeY8p+uhAuTdOe1@%pjf4ChU<5~!QdxiXR> zmjJ&p4{LBhe_lTc(2ZVOS!sdmZSc=7C@~?W6X`ho%^<<|-q(rkhsmmn_%gBmus4pG zzOvUw3u4)8yC7CXyojHkzm;7?s3)^g!FHklUI6}7R?;F_lL44Nj{!=OjlVROR)^o% ztLW8qM$G;`zxKW*F6`dC07;2NR_2x#mLhYDJ07GWB8TjvYN8vH5yJkMFQ=kv8HCQn zrN~c=xw?{BO;F%`2gd?D?y|Hr6Pa0Ci7fFLjM@0Y(}P_4rym58ia9+MBA$D>FuB`W zS%~OnK@CNFqqU@41jH@FS^&K#$eX#x!IHT_WN}ACmW&rusj%CpT-c4dUWUBry-1^O zfteW*Sy-Z`R^}qAd%YXIkCu?lQA}cStipN)H67e!lZ%D3QW2iL@rBcy3Lj}O8|H$R zT!n@8=I=Iz)k$E5)h_ECl0&92j-$FOU*#NBEZEA<@-0emLhI1xZY4aLYaAOzod|w` z{%z{$Xs8Y2XkZ>y^P%^)WE0T&>xe}MjXmYy9EIPOpgC7oQWt94{#zyR0-o4PkH)Dh zshIZZ{il6W9KV`lL)x`jcN%>e^Dm>+K}gS2T~k}h1=L@>2dFhH0MwH&2h{Br1KJDh z2h@xI2&h$506M<0Kw>maM})NVbwWtpv=|{>>2ya(^SOw`X~#+PpqsJ#G_BrrfFmC{ zNSU5Ue`-wcy|jKbO}dg6D@#aMW+;)hI-1nhBlo(?a)`spL{-8G|{E7}I8w zfJp)-378~cl7LA9CJC4%V3L4I0wxKVBw&)j{~HO=$u6A+(>XMKu1@FibUI9*+tX+E z^m#pfMo;JObZ$=P>GWAWo%hqZJe}v$XZdtKUmwsH<>;KA&ikDJelm=CQBL^s8+~z3 z3|ayg&4rL;ll4%z|_fY(-tC-4H^zz6sOyo*Qt0llX^!VVx11c6`>0y+YE zzB9s55C+0Q7Z3ru0($;Ah~oC?G3EdJM&FoI;%zc9iDJHdOUK)AHQ5>xOEX?Z)P}5T zQEMV(7xNb%)M;&_?zhMrlzY&uJK}P=ct5Q#>a;F3dbbV{G5J%wrR6Z@#@4tfj~XYo zL8yH?NyOKIN|JzY1L+%u{1<@i71jT3g8a>J2`_`{uhyLHg4a>$W{LL?X|D7eNGkgn zh#o*?}q(eUPu{Herg+cmcSco&szya+6-)VyZp3FhQqllphk%HNE6eKi$p zh<)&e<7j%OMq6EYFFtQ$>rXSNnUz;xq*uwm`V?z+_Rr)`ZTH{c=d@*H+Sf?H4B9tG z2Tx;!zMJ;JRo;W6Z_tTDg1qo;K!7+>nUG2UVRdGR5ZjNQLliSGp!?qZdGBEIFyx!D NH8X3|)&Btr{2#wjnScNQ literal 0 HcmV?d00001 diff --git a/nars-dist/Examples/Example-NAL6-translation.doc b/nars-dist/Examples/Example-NAL6-translation.doc new file mode 100644 index 0000000000000000000000000000000000000000..ffa11f4ea0aa853873bed7b5d5fa5cf7a65d9db9 GIT binary patch literal 36864 zcmeHP2S60p)*d=42*HMmIsz&vZ9xGQQ4}Jm2(d+DU0{*bWfv(5Q4IEoF=8}E6D+YL zc1ety*jp^Ip@}Uf5nE!78jU3u{_jlLon6=klDwDq{TzW0hCU znqls_>>?pD3?z%g9w$KzQT|N-%Nz+i|w*r}NNV_5pla!l^MgpML zlZ0XX+0+~DSW-U%QI$z=&6fL@!D8w*pA`#M(}sE*tn!UNmiv!#r}!k(nHJ_^9--W{6CwD?TM+VZ|p~_ zLi*=@Lxzz%M7^X!f=a<=sg=pfM0uuCqjqH3 zn4ay}urQBo*4HO@5bt4ZdHvhs8V zD_3P`Sf%t9S4Y=$PMN0p9Iz%Qg3*GDp&p-EL_rYP0JS!D(*XESrs6xt3m zQxs}r1-SP7*cy&(T;D$2pk!rw=5r)H`-QY^AK=$Euo*j6){YHqFUw_X&`|#}8IF!x z*0(gpd#~oreZcK8Ufw!lr5QY}-kbpXq$t2}a7D+W%oKSh&!KD^HCa&k;%JRvCj>^@_ zRJlr2(myXbz8yc-P<7Ka2}-p%EhO43%nG9&a`jkKDogXN9F5iMkXKpl7};hrzkmSf zY^V%68`O@KwGXUFXDcQ|H+22EBXld61fCS0x^O=&C9T^SQo;_;Qe zt{VuWlJh7mjF`#IA&(qESp2xjupx_=R(!f9O_83dEYFCg>D}WhYgHj*j50Mwk@c0Rsw~{ckT7qai4x`2lWSW;xpv_VzrOZz!za@((xqLh^~-U+ z%oWAyHE!IWBo3O-8Ku?+N>|Q&)1+6OC@){%vV77f)fn3X{DL^jLJTO2Q0K4$FLI#t zSVoCw8ElGtH2e)MjTx*;o;Z@0*etb5IZ~m@VUux}<68!sso}~?`Nxqe)jsdClpB$7 z0B_mb1{shFZ-i@5M-|b-uewIm(zHbp=;d@#PZ>GFJOaJEp_Ybvsk`URo4T?Bue7n| ze2@t8a|FjTTo9jdohX>=*U8_DpwVWgXDNKhIB7i`-VH75gOcZys5RUk{DQ4@YlZb& zXy3S>mt=BrN|0D(j*A}r+L#pX6CsX-&!LfMS4wWphM!r9H9Lu=*&AV!io_}`k7YUT z!$ygu@_(cbjYWCYkn4NgNfpjm(>+N2Y^ek=V>^q}KssZE z1&#Ar^k!^@+QI9pFhR8LLHR+g(HX2zDN~i|N(SlL;NUMt(7Gsq-xkohAhi7O4s-2%8xGb8 zlm1!t;cbDq_rXcU2VRM=IU;z^;r#xKDHaibbemN|J)Kp{7$aBfHh4JysV%qW^`;x; zh*zsJ+L|IQy6M!Kwynxj8m^9BqdI~rJFSQ@TK`NQ?!#)$WEpS4m_BeyQ)y2@!SP4V zYa_SKrQ@euVqZG*-ZNjkLibAO-k`mz*jfi!``uW6S*8a zBg`aDiX#;{h#&;tTct@HsdXaw#of!_2m3H;ACGLGq29vE9yMB#p2MOhOSdvu1$RxA z{Y2k@E@bRjUtgAMliL*S!R2wv&Xq0Wb`dSS%8cde=W-NkDUk6L81PE)!5mo_c0tnurl5N(YbD(@wCYVL&yuXd`xcPych7c$SwDl417IDt5h zp$J$7ebWhCYsYoW<)jT-X)%(J#qmMQxdiM0fO(1}HX%n~H5xU_NOFgHYu>|98MS6y z3<7k-mCsBAZRAY6u*=ISqv#hHUxv|xp@EU|8V^V$PbMlev&&^RR8yyzk`+_OX;Cc< zIL(uX?G~+y%DLI>=V)w}>)6X_%ipZ59EaOTd{U9aMpiYVpW9f|`b&D;)l+4yxm2n% z(=|z1iPDE|+J&8SI(UsV<_(Cf(bkbT17h@Cwyt*3FQbKGb>1!t@hL}#WYypzV=?w2 zDT6&3*P}-y(l9<2N#Y*VRTz#@yC&(;a>+1W=PBYHWXO5%>a2qTPg&s*O1BO%Y)B^ZV}6Q|6N-Fiz4Sx z_^?BLxW!H;xN=+r`s;_NI)YI~8{$S7-?_NJ4)x(yL-L-rju*dMrT0*{Li>mg^ke$+ z$k8`FWk`^iA)?pN6_iOS(%B$MN1VVo_e(d;IKHAe@Y9sTQogK2Ut7XHK2$41J1@x? zqq`c!AA_w+3E?__8SbY}JNUWo)zZg9CWwhMhE!21ueJfglO8<5=N8z11r@y0L{GuR zv4bcs>eA{BM@MV;Koz}7P!Tiqyr0TVD}C=$BvGr~64#Ps3DqJ?T{R^VH!9J9PG0&d zO>O&xaRP(i%FisF$RrBQv5NLwcvk5MF*F0FoJ7$dE02cq#3j1Y`U0a_^;f9)6T;HI zg+u(}mAo8!g`l4N_RwY(yibLOOinM+mg>5pGk((Yd3ubeES-$Q1O{s(XlPR)cfmCx zZsPD+qUx2I9eRGSp`V~#a`eccQRxQ>3RQ-|CJT{J{?K(ckZMVma6=2j4=>QmL&nEq z`a__>YH#ramUtXxoWnn10`&X zu{I#kP-41;Th}GWHg2DZ&(o_zSvqAaZ!+ttn-JU>Y8yWm>7r>=;dK1gqeIj-_+Yvc ze}ls5k4URrcs)SiKF*|5OAJLgrU}yEUJ@`Khj3K#BGQpw(aaIYtE-{M4qhydR*sI= zj>2C@;rP#gWA|^S5a0Q91I7aDfd@dFY7Fxxa0IAXonfMZS-@SOO$~+_2CM*X00DUO zI|JAY)O2K+2p|*q8mLwiU$Fom0r!E{`1~gyxCAuES4J%WFJL?{0oVp?2X+9ic$+*0 z*ay_Z7d#pu4cGzv0W`u_69a*Tz$G9MUroFTtO4!4g z;(%qqJs=ogSi}J%frY>}z`j1i^aPZ^G++yG0q|I6z-r(J;18gCLyQ4f3_O2m z>fgJbp%Vk32fqO?q-t!w`1dhH$9MWdsS(Ly2IeEpLz;Iq=Uj!kHVWx%Ksx6JW3F8W zt^ih;XEg7|0yOXL1LHB@YG95z06qZCyR`t#J15Mw<-iKSEb@Pd2L|#dS$qwU9Snip zBRiN1YzKA#KLTV6;{dXS(}5p=AAuJD*~8HQ*~7KKGvGPk20KVLaiU-owDZo15C{O~(JQyY&SO**eZUALDj*5i4?KSGul)x}@T+|pFMt_FbCG1e0w9?m1Kc3rMnDIEtR~FOLZp6}j|YKx%)i%wbb#jNT7c%|ZNMz@e~1SL z@+Vnj!!}yO9)18cfc9#89R+)s4lD%fz!ok5 z8pHlI0lESE0J4csfrGGzX8Hd^JTQ7a02LeME((ZKhX`=fP%mG&V6Y=dKY@b*1My3p;yfK zg|wSWpW8tg2kaTk66f7bEi4&ph8dnj+X&oG_tYoT7Rd z)cQTF1(4lkS_jQ0p*+0|H|9ZVp@UB1b1h5A`U4eeU zcmP`lOk6iB<~3kww1stQbTw-=kO5=@xXtv3$nKX~B6YwnF@M-HJsAy?&ZIJOMun_b z0GTJ##*+#0WI{ceXivxsi<%o+M$OK#j;37 z!6c)nEcBI$cH?oL4h-l1rZFkVdlmGkahHx>jFNd!x)G^EBfgaYTL-2OY9ycq1xo8v z@5a=71chyV#+I?DZl&T+Y>*?TY)hsF8u4OAvJXr5AY}x~0&MNLc37qd`pe+@wqzW* z4&%F9S=YudFp@29%1q4PUh5B>xq;)gkPhskQD-XDnM3>F_ir)=`(>x9*3LdMVqbuB z)Z-~HClzl#m%i0&#ku24W5(qAoN{u#`kC*DS(95=JA84>?JwiE+WTgDI42xmFt+dd zSyz_Sbe;2{&yBuAQl=#3URk;3;j>@8x1DV%i?^E8V(r6fbB3Hf`}(zCYX^8Q_@vK` zMQy`e=cs0REdRmIGe?>0HsM->_O*78?=u5ng z^k>EBvueeePk-4B76s!jv3+Pdo+A7E(cj6lPJl%Y)9y~$G3jLPYp3?PHXH4~qM(ca zvRvkp*IOy>4KFmjbs_GcZS`&Tlb7FpysE>?^)sGcn)?e|_ruk;`!09scqHZ0=nlKy zns|81@=u%D56n)Rx@_!)O+&ZGpIjDpOxAEk^yYx~U7X%NAGf{N`p!uw4?Cag7ImR@ zg6CVG&K@=NY?Jwm>X!uf`1bd@z0QUVTR&^%;nI!!0*)?<+w;~2pKDRp>X5lTlvfiz zUg>|O_l|;Wmjg_nA!xibI91cfg ztM6l-J6+2Ccuc|hki>0XQ3;h6{;0d-0G~oT z$9%;xzqhyC8|U+B!XxD96F+a$y36xmp5w9gOiQhVY<>tbBK!7$ zIL(FN+Pj?2jlqv8B(@mcz%DEQ+-D#8#x~rqp4M17ecrkFrJYX2p$dY@0elgqfzhF*`A-~?fk_4`T>>lt9}Cq=gVTl=9ah~`l-RJ zRdL1fa~=k#U+!SLVfuS-?jD}7B&OEzDSK?~vSt?aKCiHBlyK%zUfk|kQ?Ks)&3Rw1 zJ&_mIELgndi&0tCHVmIJ|Ba%}U#!=RKfhHKkyfP2&QI$Tu4-1>UqS0HD4qo;28fc0~PgQzxc)E$zP1^+BX>{wCLpSC%?4j!FGbTCY-eJ8*8A z*RPkeJ-yC2+-tXIMg8_yk9^hiSdEyW#eFvIaO&+)U$*S=&8LqyEb16_&}mVlj!$kp zxwP+!UB@>%A77nXIQd#%|6MO`pE%fLS;s}=AN+Q*-s$WC2TK3g*J9W6=Q(YhPYrK= ze1`wx=Z|h5p0OeP#fxoS>)eZ-&{grI;6UWkkFMI^dEi<*sNbk&Ej&i;th3Ml+u!n! zdCm>p^I>>crQLazgN636xbdfSXz2Y2m=sh$<&)V=F{b)=i@v1`xTHDfy0 zK9%u2ub}#!Uwhp=m-WFP6T64^yY3g&s7I^Vz~vq-K1`mmS?Mr-LBAUgFGs63jB;*YaLwv}@NL zdC>zl{XCD!?cVd^p7_sN{{wvu zywvs1sJ=EAuc@bAA9K&DXWgyOYBqa!TigcQEz0X}x31ybA?TIwKZswwu)5o~SMPo! zTNXbn)nU+}wo@&iT)uU%&g|be*S#EjZqDjJ`LoEUgD1BikhyJ;^}{e9IP0oxJZ9CB2Cm{jdq zWbw3!9mfl6#*9kn=8=8$=GI9yY=TD?l-%@Ky)GMYu_|;yL~jR zS?bJb%?F=Pl=p7ps_IbC|ITl_Yi_uH>G`1e0@=3Ml$wj%E~^t;vi4}d^+}Ntch1WD zo$b7E!N4EiPVTmF-@5qv<3cwyaHxA`vaNN*11gKlSE`XDii(a}VZ!RW0w_s(Z7;uP#j3l53TKX??`?(^k^g+38oQ#YI*q<-_zLFI*p`xew~e5LkwzpN9}2H4l@vePB_ zc3f=ooNGav&FNqN;JI>Nn<<-~74GfXD0)htf&E_%Zhf>*T}z*ng=?Q5i4C|FP1PzQrw; zxU6s9BdXXxZPq92Qa}0Oa$&QA$0QD@Z3&dSIaJM#|g`L5>M zb-$c3MQPvi%O1g{Hf_HvO+7xKLGyK&c7OUv`L^|x7tv7@3p#jpZ~jNmru|Ml^6UPd zVsekj_xHcQs?ONRn$;TKZ1Cmk$D^I1oNs>eVUl8ZNzVg|pDj`pdwmz%v+c#g2EA_Y z2)289(d8(bo$Un%lYqbp4e~RqYd7B z+irPd;AcO#9-{tv?}U24w3)hRY13|(cG}(OSXBDjrJ!eu&YG27b~{%W&;M?SNb2h)RbHLEFPY2%XAXoXGAMiZ4XJWl$3yvH= z{Pm31qm$(a&x}@mylT(J7QJgvJ@7Q*K1wwE zKPA4KVMRmlM^~{neB?6jgoOQuEg8BZx|U9s*AnNL7`9=k1iCgps-{nk36+TNZUc{q zeni!V8H~}-t4>#89pMPE_}V!GKgrp_9UsxUvkG;hCJDcR*}=VUpI3cD-C6qS%_O-> zqgHfq&rxK!cMNx|9wu*>s7jBOr?F^2ozYI-!9682Gp(J!e?}r)MR|rFy;+HS_{FMJ zc_uE?hx;d`%g3PMRF!{VKtQm6s$8jdXA_3YI=HJcW$tWdHqMep;w)i!Ams&89?p_R z;!K{Hh?oQ=gcC6b_xT)cnIJJING#J@%xNv=v=MXKh&jPxPOv+hqEf0yVnmd<<43nt z(R_w@=I$R(+;hg`DTGkb*ud8QC^#ZAT=9T(xPXg-E`pN)7o;NaRuk6(o$=bx5rQMYY>Q103DCN8BFN?p%&8I-Uw1NnE)=gH_mdnu$3KW~BJp&QM}K;QA*qPviHUgB;m-A5!`9l84r@{n z=|Q8UBLeJJVh@1og!plFoNTxXmezMInI&Uc;tGE(7Sb+Uc_sRyx@g0tz`}yDw6?)W zZLKW1{Sl$4UPASVLcT|qiN$p$_9;khP{}?I8)n6@Pqd#{@nN(Zu4+?Zz=q?lxLtDz zOnckicG*leGl?@8e>X=UVuR!CMR7(M+>l(_-z$YB^Ni=S$cW&V$KN6YN2wH?p@Djo z?T6|%kJd8)2D3QBZ$WmOy|;4GM(n*Kb-?FVT*0ckvy4{k|~RSdm5MGyk@pN z-lN-iJ^*j*(a&9M*;`KCu z;{9;|ZK_WO=v^+_55RsnGZ&!Oa0&s6#c5xF;`+4!z4-A3K(9k>2dM4CKzZ@Lu^5}r zci{R!RikNRbWU^=7zbQXClv4#(S4MeDh0QV!QDoV`7m?9%mFh8%p5Rtz{~+N2h1EW zbHL02GY8BZFmvGl4F@RLr7)OcXnL+raXf{?^xU4F+0*lSdPYz2JH_S{r_=L)iu);+ zr#PRUU?2nt1=<4CW_zSzKnEZk=m>NIA^^Jo z0*DmO>6-AraL}7`8oX7;GEv-@Z|Qg|t|~`e#>PVA6X}p`HPR-A+0FgM2X&I8=!Xp< z{qw%Dpv*iWUncpYPExeer!^T%u7A>7qN6euo1xG|QcfJNWAy1v621=9Fp2m!klrj5 zzX0S*nEu-U{ac`j$OF@*b$2^O^XE2r50QGMZy<^HG3Y&+qlt1d@xCB^k!bwzLjS~Z zn!A-9e;_qSlNX0gnUPnGo=}1RRT+Of>R9OCf_sfM6?=$rc++tN-Ko;y0_!FAUD@$d z2UXK@(D(>-KybDPfn#QT1s%)_>ykE)tln@j&2IPiaJuL>#v literal 0 HcmV?d00001 diff --git a/nars-dist/javadoc/allclasses-frame.html b/nars-dist/javadoc/allclasses-frame.html index aa0e302a..4b8748d0 100644 --- a/nars-dist/javadoc/allclasses-frame.html +++ b/nars-dist/javadoc/allclasses-frame.html @@ -2,13 +2,13 @@ - + All Classes (NARS Document) - + diff --git a/nars-dist/javadoc/allclasses-noframe.html b/nars-dist/javadoc/allclasses-noframe.html index 32cdf5b9..7455ce1b 100644 --- a/nars-dist/javadoc/allclasses-noframe.html +++ b/nars-dist/javadoc/allclasses-noframe.html @@ -2,13 +2,13 @@ - + All Classes (NARS Document) - + diff --git a/nars-dist/javadoc/constant-values.html b/nars-dist/javadoc/constant-values.html index 52a5dbbd..dc90c629 100644 --- a/nars-dist/javadoc/constant-values.html +++ b/nars-dist/javadoc/constant-values.html @@ -2,13 +2,13 @@ - + Constant Field Values (NARS Document) - + @@ -682,7 +682,7 @@

      public static final java.lang.String INFO -" Open-NARS Version 1.3.1 April 2010 \n" +" Open-NARS Version 1.3.2 May 2010 \n" diff --git a/nars-dist/javadoc/deprecated-list.html b/nars-dist/javadoc/deprecated-list.html index 483ed8b5..1ca41213 100644 --- a/nars-dist/javadoc/deprecated-list.html +++ b/nars-dist/javadoc/deprecated-list.html @@ -2,13 +2,13 @@ - + Deprecated List (NARS Document) - + diff --git a/nars-dist/javadoc/help-doc.html b/nars-dist/javadoc/help-doc.html index 51a95613..77223051 100644 --- a/nars-dist/javadoc/help-doc.html +++ b/nars-dist/javadoc/help-doc.html @@ -2,13 +2,13 @@ - + API Help (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-1.html b/nars-dist/javadoc/index-files/index-1.html index 09862ba9..2adc83bb 100644 --- a/nars-dist/javadoc/index-files/index-1.html +++ b/nars-dist/javadoc/index-files/index-1.html @@ -2,13 +2,13 @@ - + A-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-10.html b/nars-dist/javadoc/index-files/index-10.html index b417c5cd..05c4c3e4 100644 --- a/nars-dist/javadoc/index-files/index-10.html +++ b/nars-dist/javadoc/index-files/index-10.html @@ -2,13 +2,13 @@ - + J-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-11.html b/nars-dist/javadoc/index-files/index-11.html index d0fcdaf9..4c19fc6a 100644 --- a/nars-dist/javadoc/index-files/index-11.html +++ b/nars-dist/javadoc/index-files/index-11.html @@ -2,13 +2,13 @@ - + K-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-12.html b/nars-dist/javadoc/index-files/index-12.html index 89abb946..d8a7e142 100644 --- a/nars-dist/javadoc/index-files/index-12.html +++ b/nars-dist/javadoc/index-files/index-12.html @@ -2,13 +2,13 @@ - + L-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-13.html b/nars-dist/javadoc/index-files/index-13.html index d233bfaf..6ee3f191 100644 --- a/nars-dist/javadoc/index-files/index-13.html +++ b/nars-dist/javadoc/index-files/index-13.html @@ -2,13 +2,13 @@ - + M-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-14.html b/nars-dist/javadoc/index-files/index-14.html index ef9aac19..d2e4b21b 100644 --- a/nars-dist/javadoc/index-files/index-14.html +++ b/nars-dist/javadoc/index-files/index-14.html @@ -2,13 +2,13 @@ - + N-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-15.html b/nars-dist/javadoc/index-files/index-15.html index 2d4721a4..3c3fb93d 100644 --- a/nars-dist/javadoc/index-files/index-15.html +++ b/nars-dist/javadoc/index-files/index-15.html @@ -2,13 +2,13 @@ - + O-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-16.html b/nars-dist/javadoc/index-files/index-16.html index 62311c65..69de6fc3 100644 --- a/nars-dist/javadoc/index-files/index-16.html +++ b/nars-dist/javadoc/index-files/index-16.html @@ -2,13 +2,13 @@ - + P-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-17.html b/nars-dist/javadoc/index-files/index-17.html index 32ed785b..041b1e6f 100644 --- a/nars-dist/javadoc/index-files/index-17.html +++ b/nars-dist/javadoc/index-files/index-17.html @@ -2,13 +2,13 @@ - + Q-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-18.html b/nars-dist/javadoc/index-files/index-18.html index 4c43fb3b..c1f26107 100644 --- a/nars-dist/javadoc/index-files/index-18.html +++ b/nars-dist/javadoc/index-files/index-18.html @@ -2,13 +2,13 @@ - + R-Index (NARS Document) - + @@ -146,6 +146,9 @@
      report(Sentence, boolean) - Static method in class nars.main.Memory
      Display input/output sentence in the MainWindow. +
      reportExecution(Statement) - +Method in class nars.operation.Operator +
      Display a message in the output stream to indicate the reportExecution of an operation
      resemblance(Term, Term, Judgment, Sentence, int) - Static method in class nars.inference.SyllogisticRules
      { M>, P>} |- P> diff --git a/nars-dist/javadoc/index-files/index-19.html b/nars-dist/javadoc/index-files/index-19.html index 4ad71c92..ca7bffca 100644 --- a/nars-dist/javadoc/index-files/index-19.html +++ b/nars-dist/javadoc/index-files/index-19.html @@ -2,13 +2,13 @@ - + S-Index (NARS Document) - + @@ -191,9 +191,6 @@
      showDerivationCheckbox - Variable in class nars.gui.ConceptWindow
        -
      showExecution(Statement) - -Method in class nars.operation.Operator -
      Display a message in the output stream to indicate the execution of an operation
      showing - Variable in class nars.entity.Concept
      Whether the content of the concept is being displayed diff --git a/nars-dist/javadoc/index-files/index-2.html b/nars-dist/javadoc/index-files/index-2.html index c75649fd..f0a99044 100644 --- a/nars-dist/javadoc/index-files/index-2.html +++ b/nars-dist/javadoc/index-files/index-2.html @@ -2,13 +2,13 @@ - + B-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-20.html b/nars-dist/javadoc/index-files/index-20.html index cbb05564..2496cca4 100644 --- a/nars-dist/javadoc/index-files/index-20.html +++ b/nars-dist/javadoc/index-files/index-20.html @@ -2,13 +2,13 @@ - + T-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-21.html b/nars-dist/javadoc/index-files/index-21.html index 09790248..f5b74348 100644 --- a/nars-dist/javadoc/index-files/index-21.html +++ b/nars-dist/javadoc/index-files/index-21.html @@ -2,13 +2,13 @@ - + U-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-22.html b/nars-dist/javadoc/index-files/index-22.html index f7a1a636..809081e8 100644 --- a/nars-dist/javadoc/index-files/index-22.html +++ b/nars-dist/javadoc/index-files/index-22.html @@ -2,13 +2,13 @@ - + V-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-23.html b/nars-dist/javadoc/index-files/index-23.html index 2a117b88..3eba7a9b 100644 --- a/nars-dist/javadoc/index-files/index-23.html +++ b/nars-dist/javadoc/index-files/index-23.html @@ -2,13 +2,13 @@ - + W-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-24.html b/nars-dist/javadoc/index-files/index-24.html new file mode 100644 index 00000000..f008b79b --- /dev/null +++ b/nars-dist/javadoc/index-files/index-24.html @@ -0,0 +1,149 @@ + + + + + + + +_-Index (NARS Document) + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + +
      + +
      + + + +A B C D E F G H I J K L M N O P Q R S T U V W _
      +

      +_

      +
      +
      _premise1 - +Variable in class nars.entity.Judgment +
        +
      _premise2 - +Variable in class nars.entity.Judgment +
        +
      +
      + + + + + + + + + + + + + + + +
      + +
      + + + +A B C D E F G H I J K L M N O P Q R S T U V W _
      + + + diff --git a/nars-dist/javadoc/index-files/index-3.html b/nars-dist/javadoc/index-files/index-3.html index 10b131da..1df9d435 100644 --- a/nars-dist/javadoc/index-files/index-3.html +++ b/nars-dist/javadoc/index-files/index-3.html @@ -2,13 +2,13 @@ - + C-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-4.html b/nars-dist/javadoc/index-files/index-4.html index 59eb7c79..cc8d8acd 100644 --- a/nars-dist/javadoc/index-files/index-4.html +++ b/nars-dist/javadoc/index-files/index-4.html @@ -2,13 +2,13 @@ - + D-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-5.html b/nars-dist/javadoc/index-files/index-5.html index 097baae3..7c23a032 100644 --- a/nars-dist/javadoc/index-files/index-5.html +++ b/nars-dist/javadoc/index-files/index-5.html @@ -2,13 +2,13 @@ - + E-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-6.html b/nars-dist/javadoc/index-files/index-6.html index 66fc9005..409a2f4b 100644 --- a/nars-dist/javadoc/index-files/index-6.html +++ b/nars-dist/javadoc/index-files/index-6.html @@ -2,13 +2,13 @@ - + F-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-7.html b/nars-dist/javadoc/index-files/index-7.html index a83cecba..d807512b 100644 --- a/nars-dist/javadoc/index-files/index-7.html +++ b/nars-dist/javadoc/index-files/index-7.html @@ -2,13 +2,13 @@ - + G-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-8.html b/nars-dist/javadoc/index-files/index-8.html index f1dbe4b3..803109be 100644 --- a/nars-dist/javadoc/index-files/index-8.html +++ b/nars-dist/javadoc/index-files/index-8.html @@ -2,13 +2,13 @@ - + H-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index-files/index-9.html b/nars-dist/javadoc/index-files/index-9.html index 06de8709..e37b388a 100644 --- a/nars-dist/javadoc/index-files/index-9.html +++ b/nars-dist/javadoc/index-files/index-9.html @@ -2,13 +2,13 @@ - + I-Index (NARS Document) - + diff --git a/nars-dist/javadoc/index.html b/nars-dist/javadoc/index.html index 68b7488e..887ac3f4 100644 --- a/nars-dist/javadoc/index.html +++ b/nars-dist/javadoc/index.html @@ -2,7 +2,7 @@ - + NARS Document diff --git a/nars-dist/javadoc/nars/entity/BudgetValue.html b/nars-dist/javadoc/nars/entity/BudgetValue.html index 86df05b7..d8c44578 100644 --- a/nars-dist/javadoc/nars/entity/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/BudgetValue.html @@ -2,13 +2,13 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.6.0_17) on Fri Apr 02 11:12:56 EDT 2010 --> +<!-- Generated by javadoc (build 1.6.0_17) on Sun May 16 11:02:26 EDT 2010 --> <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <TITLE> BudgetValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Concept.html b/nars-dist/javadoc/nars/entity/Concept.html index 9ccb3276..eef9a551 100644 --- a/nars-dist/javadoc/nars/entity/Concept.html +++ b/nars-dist/javadoc/nars/entity/Concept.html @@ -2,13 +2,13 @@ - + Concept (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Goal.html b/nars-dist/javadoc/nars/entity/Goal.html index e0d0e0e4..808b632c 100644 --- a/nars-dist/javadoc/nars/entity/Goal.html +++ b/nars-dist/javadoc/nars/entity/Goal.html @@ -2,13 +2,13 @@ - + Goal (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Item.html b/nars-dist/javadoc/nars/entity/Item.html index c61f8d83..9434131d 100644 --- a/nars-dist/javadoc/nars/entity/Item.html +++ b/nars-dist/javadoc/nars/entity/Item.html @@ -2,13 +2,13 @@ - + Item (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Judgment.html b/nars-dist/javadoc/nars/entity/Judgment.html index 18cedcba..7b486c7c 100644 --- a/nars-dist/javadoc/nars/entity/Judgment.html +++ b/nars-dist/javadoc/nars/entity/Judgment.html @@ -2,13 +2,13 @@ - + Judgment (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Question.html b/nars-dist/javadoc/nars/entity/Question.html index 09af6c7b..4a2bd502 100644 --- a/nars-dist/javadoc/nars/entity/Question.html +++ b/nars-dist/javadoc/nars/entity/Question.html @@ -2,13 +2,13 @@ - + Question (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Sentence.html b/nars-dist/javadoc/nars/entity/Sentence.html index 7ed4b96c..88c747ad 100644 --- a/nars-dist/javadoc/nars/entity/Sentence.html +++ b/nars-dist/javadoc/nars/entity/Sentence.html @@ -2,13 +2,13 @@ - + Sentence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/ShortFloat.html b/nars-dist/javadoc/nars/entity/ShortFloat.html index 522353c2..526a20ef 100644 --- a/nars-dist/javadoc/nars/entity/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/ShortFloat.html @@ -2,13 +2,13 @@ - + ShortFloat (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Stamp.html b/nars-dist/javadoc/nars/entity/Stamp.html index a389aa7e..91e17feb 100644 --- a/nars-dist/javadoc/nars/entity/Stamp.html +++ b/nars-dist/javadoc/nars/entity/Stamp.html @@ -2,13 +2,13 @@ - + Stamp (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/Task.html b/nars-dist/javadoc/nars/entity/Task.html index 898283ae..4a9dc204 100644 --- a/nars-dist/javadoc/nars/entity/Task.html +++ b/nars-dist/javadoc/nars/entity/Task.html @@ -2,13 +2,13 @@ - + Task (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/TaskLink.html b/nars-dist/javadoc/nars/entity/TaskLink.html index f3b0b216..aa756e60 100644 --- a/nars-dist/javadoc/nars/entity/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/TaskLink.html @@ -2,13 +2,13 @@ - + TaskLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/TermLink.html b/nars-dist/javadoc/nars/entity/TermLink.html index d12d11c3..ae597200 100644 --- a/nars-dist/javadoc/nars/entity/TermLink.html +++ b/nars-dist/javadoc/nars/entity/TermLink.html @@ -2,13 +2,13 @@ - + TermLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/TruthValue.html b/nars-dist/javadoc/nars/entity/TruthValue.html index 339da9d6..03f0ec92 100644 --- a/nars-dist/javadoc/nars/entity/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/TruthValue.html @@ -2,13 +2,13 @@ - + TruthValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html index 26f729a3..373dbd17 100644 --- a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.BudgetValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Concept.html b/nars-dist/javadoc/nars/entity/class-use/Concept.html index 23ca9edc..58775a9c 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Concept.html +++ b/nars-dist/javadoc/nars/entity/class-use/Concept.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Concept (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Goal.html b/nars-dist/javadoc/nars/entity/class-use/Goal.html index 628450f4..a60d4c15 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Goal.html +++ b/nars-dist/javadoc/nars/entity/class-use/Goal.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Goal (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Item.html b/nars-dist/javadoc/nars/entity/class-use/Item.html index ccde9610..e6bda666 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Item.html +++ b/nars-dist/javadoc/nars/entity/class-use/Item.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Item (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Judgment.html b/nars-dist/javadoc/nars/entity/class-use/Judgment.html index 82cd237e..b6e48908 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Judgment.html +++ b/nars-dist/javadoc/nars/entity/class-use/Judgment.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Judgment (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Question.html b/nars-dist/javadoc/nars/entity/class-use/Question.html index d9615381..70aefe0d 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Question.html +++ b/nars-dist/javadoc/nars/entity/class-use/Question.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Question (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Sentence.html b/nars-dist/javadoc/nars/entity/class-use/Sentence.html index 9bb201da..de306085 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Sentence.html +++ b/nars-dist/javadoc/nars/entity/class-use/Sentence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Sentence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html index e232ad76..00651f2b 100644 --- a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.ShortFloat (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Stamp.html b/nars-dist/javadoc/nars/entity/class-use/Stamp.html index 17fa2cdf..dfdb5477 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Stamp.html +++ b/nars-dist/javadoc/nars/entity/class-use/Stamp.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Stamp (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Task.html b/nars-dist/javadoc/nars/entity/class-use/Task.html index 35f5ae85..ea1f5ad7 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Task.html +++ b/nars-dist/javadoc/nars/entity/class-use/Task.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Task (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html index 196e8d38..a02ab7b4 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TaskLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TermLink.html b/nars-dist/javadoc/nars/entity/class-use/TermLink.html index 85e571eb..05c4cc3d 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TermLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TermLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TermLink (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html index 95ba3ef6..20bfc0eb 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TruthValue (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-frame.html b/nars-dist/javadoc/nars/entity/package-frame.html index 1add3c6f..d756ff03 100644 --- a/nars-dist/javadoc/nars/entity/package-frame.html +++ b/nars-dist/javadoc/nars/entity/package-frame.html @@ -2,13 +2,13 @@ - + nars.entity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-summary.html b/nars-dist/javadoc/nars/entity/package-summary.html index bde99ef2..eb926b61 100644 --- a/nars-dist/javadoc/nars/entity/package-summary.html +++ b/nars-dist/javadoc/nars/entity/package-summary.html @@ -2,13 +2,13 @@ - + nars.entity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-tree.html b/nars-dist/javadoc/nars/entity/package-tree.html index c73079b9..b8fe7cc2 100644 --- a/nars-dist/javadoc/nars/entity/package-tree.html +++ b/nars-dist/javadoc/nars/entity/package-tree.html @@ -2,13 +2,13 @@ - + nars.entity Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/entity/package-use.html b/nars-dist/javadoc/nars/entity/package-use.html index bb0efbe5..cd57bd96 100644 --- a/nars-dist/javadoc/nars/entity/package-use.html +++ b/nars-dist/javadoc/nars/entity/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.entity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/BagWindow.html b/nars-dist/javadoc/nars/gui/BagWindow.html index 9de9c2ea..d29fd2a3 100644 --- a/nars-dist/javadoc/nars/gui/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/BagWindow.html @@ -2,13 +2,13 @@ - + BagWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/ConceptWindow.html b/nars-dist/javadoc/nars/gui/ConceptWindow.html index 889ce356..791c5956 100644 --- a/nars-dist/javadoc/nars/gui/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/ConceptWindow.html @@ -2,13 +2,13 @@ - + ConceptWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/InferenceWindow.html b/nars-dist/javadoc/nars/gui/InferenceWindow.html index 228d2181..b92a1858 100644 --- a/nars-dist/javadoc/nars/gui/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/InferenceWindow.html @@ -2,13 +2,13 @@ - + InferenceWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/InputWindow.html b/nars-dist/javadoc/nars/gui/InputWindow.html index fd52fe8e..e44be078 100644 --- a/nars-dist/javadoc/nars/gui/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/InputWindow.html @@ -2,13 +2,13 @@ - + InputWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/MainWindow.html b/nars-dist/javadoc/nars/gui/MainWindow.html index 198ccb4a..fc6908f6 100644 --- a/nars-dist/javadoc/nars/gui/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/MainWindow.html @@ -2,13 +2,13 @@ - + MainWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/MessageDialog.html b/nars-dist/javadoc/nars/gui/MessageDialog.html index baf6d899..dc6f7cb6 100644 --- a/nars-dist/javadoc/nars/gui/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/MessageDialog.html @@ -2,13 +2,13 @@ - + MessageDialog (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/NarsFrame.html b/nars-dist/javadoc/nars/gui/NarsFrame.html index 4dfc238d..d6fee1a7 100644 --- a/nars-dist/javadoc/nars/gui/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/NarsFrame.html @@ -2,13 +2,13 @@ - + NarsFrame (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/ParameterWindow.html b/nars-dist/javadoc/nars/gui/ParameterWindow.html index e0c32a8e..606523e4 100644 --- a/nars-dist/javadoc/nars/gui/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/ParameterWindow.html @@ -2,13 +2,13 @@ - + ParameterWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/TermWindow.html b/nars-dist/javadoc/nars/gui/TermWindow.html index c81f35da..41139476 100644 --- a/nars-dist/javadoc/nars/gui/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/TermWindow.html @@ -2,13 +2,13 @@ - + TermWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html index 917f4972..1dba28ca 100644 --- a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.BagWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html index e09cc499..ba42bc38 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ConceptWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html index 9c28dd43..74dde228 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InferenceWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html index cbeb4c9c..5f05b98e 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InputWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html index 0e35362b..11eaeb02 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MainWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html index fa7644e9..8a537488 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MessageDialog (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html index 498e0c10..d5d3c733 100644 --- a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.NarsFrame (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html index 045b9b25..d77819a4 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ParameterWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html index 6b567beb..ac02588f 100644 --- a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.TermWindow (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-frame.html b/nars-dist/javadoc/nars/gui/package-frame.html index 07e87f9c..b0affb94 100644 --- a/nars-dist/javadoc/nars/gui/package-frame.html +++ b/nars-dist/javadoc/nars/gui/package-frame.html @@ -2,13 +2,13 @@ - + nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-summary.html b/nars-dist/javadoc/nars/gui/package-summary.html index e4419471..eb00599c 100644 --- a/nars-dist/javadoc/nars/gui/package-summary.html +++ b/nars-dist/javadoc/nars/gui/package-summary.html @@ -2,13 +2,13 @@ - + nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-tree.html b/nars-dist/javadoc/nars/gui/package-tree.html index b5aea516..9dbe81c5 100644 --- a/nars-dist/javadoc/nars/gui/package-tree.html +++ b/nars-dist/javadoc/nars/gui/package-tree.html @@ -2,13 +2,13 @@ - + nars.gui Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/gui/package-use.html b/nars-dist/javadoc/nars/gui/package-use.html index 6bcc786a..0abd677e 100644 --- a/nars-dist/javadoc/nars/gui/package-use.html +++ b/nars-dist/javadoc/nars/gui/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.gui (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/BudgetFunctions.html index 9bc13630..d97cebf8 100644 --- a/nars-dist/javadoc/nars/inference/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/BudgetFunctions.html @@ -2,13 +2,13 @@ - + BudgetFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/CompositionalRules.html b/nars-dist/javadoc/nars/inference/CompositionalRules.html index 9c3f434f..cc7d2d71 100644 --- a/nars-dist/javadoc/nars/inference/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/CompositionalRules.html @@ -2,13 +2,13 @@ - + CompositionalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/MatchingRules.html b/nars-dist/javadoc/nars/inference/MatchingRules.html index 4a0e8f2f..258af96f 100644 --- a/nars-dist/javadoc/nars/inference/MatchingRules.html +++ b/nars-dist/javadoc/nars/inference/MatchingRules.html @@ -2,13 +2,13 @@ - + MatchingRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/RuleTables.html b/nars-dist/javadoc/nars/inference/RuleTables.html index 52afdd6d..f3341129 100644 --- a/nars-dist/javadoc/nars/inference/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/RuleTables.html @@ -2,13 +2,13 @@ - + RuleTables (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/StructuralRules.html b/nars-dist/javadoc/nars/inference/StructuralRules.html index 3fead103..e89d9061 100644 --- a/nars-dist/javadoc/nars/inference/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/StructuralRules.html @@ -2,13 +2,13 @@ - + StructuralRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/SyllogisticRules.html index a3287b6f..09c21a36 100644 --- a/nars-dist/javadoc/nars/inference/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/SyllogisticRules.html @@ -2,13 +2,13 @@ - + SyllogisticRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/TruthFunctions.html b/nars-dist/javadoc/nars/inference/TruthFunctions.html index 16de961a..94e69d0b 100644 --- a/nars-dist/javadoc/nars/inference/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/TruthFunctions.html @@ -2,13 +2,13 @@ - + TruthFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/UtilityFunctions.html index 6771b636..cfbace07 100644 --- a/nars-dist/javadoc/nars/inference/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/UtilityFunctions.html @@ -2,13 +2,13 @@ - + UtilityFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html index f9a54c88..d3edfbb5 100644 --- a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.BudgetFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html index 882dc24c..aa2c9d83 100644 --- a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.CompositionalRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html index c4a94f6a..f760b07e 100644 --- a/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/MatchingRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.MatchingRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html index c54821e8..1a345eeb 100644 --- a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.RuleTables (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html index de56f6cc..61e836ea 100644 --- a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.StructuralRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html index c292cc39..0e794990 100644 --- a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.SyllogisticRules (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html index 6e36bd7e..e8e53ba8 100644 --- a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.TruthFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html index 9bdb840e..90fa6d25 100644 --- a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.UtilityFunctions (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-frame.html b/nars-dist/javadoc/nars/inference/package-frame.html index b757b994..2802465c 100644 --- a/nars-dist/javadoc/nars/inference/package-frame.html +++ b/nars-dist/javadoc/nars/inference/package-frame.html @@ -2,13 +2,13 @@ - + nars.inference (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-summary.html b/nars-dist/javadoc/nars/inference/package-summary.html index 489fc488..fa453ff2 100644 --- a/nars-dist/javadoc/nars/inference/package-summary.html +++ b/nars-dist/javadoc/nars/inference/package-summary.html @@ -2,13 +2,13 @@ - + nars.inference (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-tree.html b/nars-dist/javadoc/nars/inference/package-tree.html index 45e63e66..0723f576 100644 --- a/nars-dist/javadoc/nars/inference/package-tree.html +++ b/nars-dist/javadoc/nars/inference/package-tree.html @@ -2,13 +2,13 @@ - + nars.inference Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/inference/package-use.html b/nars-dist/javadoc/nars/inference/package-use.html index 182f3e62..4bf75504 100644 --- a/nars-dist/javadoc/nars/inference/package-use.html +++ b/nars-dist/javadoc/nars/inference/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.inference (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/ExperienceIO.html b/nars-dist/javadoc/nars/io/ExperienceIO.html index 69fb555b..ad7ba73e 100644 --- a/nars-dist/javadoc/nars/io/ExperienceIO.html +++ b/nars-dist/javadoc/nars/io/ExperienceIO.html @@ -2,13 +2,13 @@ - + ExperienceIO (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/Record.html b/nars-dist/javadoc/nars/io/Record.html index c1957c2f..d085dcf8 100644 --- a/nars-dist/javadoc/nars/io/Record.html +++ b/nars-dist/javadoc/nars/io/Record.html @@ -2,13 +2,13 @@ - + Record (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html index b1b0aaed..b26cd0a1 100644 --- a/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html +++ b/nars-dist/javadoc/nars/io/StringParser.InvalidInputException.html @@ -2,13 +2,13 @@ - + StringParser.InvalidInputException (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/StringParser.html b/nars-dist/javadoc/nars/io/StringParser.html index b169db2d..6827aaee 100644 --- a/nars-dist/javadoc/nars/io/StringParser.html +++ b/nars-dist/javadoc/nars/io/StringParser.html @@ -2,13 +2,13 @@ - + StringParser (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/Symbols.html b/nars-dist/javadoc/nars/io/Symbols.html index 177880b4..6d827993 100644 --- a/nars-dist/javadoc/nars/io/Symbols.html +++ b/nars-dist/javadoc/nars/io/Symbols.html @@ -2,13 +2,13 @@ - + Symbols (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html index 800da6a6..6a2f3e23 100644 --- a/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html +++ b/nars-dist/javadoc/nars/io/class-use/ExperienceIO.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.ExperienceIO (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/Record.html b/nars-dist/javadoc/nars/io/class-use/Record.html index 618e025b..1a465fc3 100644 --- a/nars-dist/javadoc/nars/io/class-use/Record.html +++ b/nars-dist/javadoc/nars/io/class-use/Record.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.Record (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html index 4595971e..3b94dfa8 100644 --- a/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.InvalidInputException.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.StringParser.InvalidInputException (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.html b/nars-dist/javadoc/nars/io/class-use/StringParser.html index c3f81ce2..4d740aa5 100644 --- a/nars-dist/javadoc/nars/io/class-use/StringParser.html +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.StringParser (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/class-use/Symbols.html b/nars-dist/javadoc/nars/io/class-use/Symbols.html index d87f3556..0931e39b 100644 --- a/nars-dist/javadoc/nars/io/class-use/Symbols.html +++ b/nars-dist/javadoc/nars/io/class-use/Symbols.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.Symbols (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-frame.html b/nars-dist/javadoc/nars/io/package-frame.html index 45edad19..c9904b80 100644 --- a/nars-dist/javadoc/nars/io/package-frame.html +++ b/nars-dist/javadoc/nars/io/package-frame.html @@ -2,13 +2,13 @@ - + nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-summary.html b/nars-dist/javadoc/nars/io/package-summary.html index 7a3321dc..57f14d94 100644 --- a/nars-dist/javadoc/nars/io/package-summary.html +++ b/nars-dist/javadoc/nars/io/package-summary.html @@ -2,13 +2,13 @@ - + nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-tree.html b/nars-dist/javadoc/nars/io/package-tree.html index 53da6b47..035a74b0 100644 --- a/nars-dist/javadoc/nars/io/package-tree.html +++ b/nars-dist/javadoc/nars/io/package-tree.html @@ -2,13 +2,13 @@ - + nars.io Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/io/package-use.html b/nars-dist/javadoc/nars/io/package-use.html index d5af8fe4..2dd2f3b2 100644 --- a/nars-dist/javadoc/nars/io/package-use.html +++ b/nars-dist/javadoc/nars/io/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.io (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/CompoundTerm.html b/nars-dist/javadoc/nars/language/CompoundTerm.html index af3d6ef2..4a65e7bd 100644 --- a/nars-dist/javadoc/nars/language/CompoundTerm.html +++ b/nars-dist/javadoc/nars/language/CompoundTerm.html @@ -2,13 +2,13 @@ - + CompoundTerm (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Conjunction.html b/nars-dist/javadoc/nars/language/Conjunction.html index 6b847870..c41b8ea4 100644 --- a/nars-dist/javadoc/nars/language/Conjunction.html +++ b/nars-dist/javadoc/nars/language/Conjunction.html @@ -2,13 +2,13 @@ - + Conjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/DifferenceExt.html b/nars-dist/javadoc/nars/language/DifferenceExt.html index b49f3ee3..f877778e 100644 --- a/nars-dist/javadoc/nars/language/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/DifferenceExt.html @@ -2,13 +2,13 @@ - + DifferenceExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/DifferenceInt.html b/nars-dist/javadoc/nars/language/DifferenceInt.html index 5c88effd..2d8cde01 100644 --- a/nars-dist/javadoc/nars/language/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/DifferenceInt.html @@ -2,13 +2,13 @@ - + DifferenceInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Disjunction.html b/nars-dist/javadoc/nars/language/Disjunction.html index d021e5bb..4c356515 100644 --- a/nars-dist/javadoc/nars/language/Disjunction.html +++ b/nars-dist/javadoc/nars/language/Disjunction.html @@ -2,13 +2,13 @@ - + Disjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Equivalence.html b/nars-dist/javadoc/nars/language/Equivalence.html index 8c79fc22..3d29b0cf 100644 --- a/nars-dist/javadoc/nars/language/Equivalence.html +++ b/nars-dist/javadoc/nars/language/Equivalence.html @@ -2,13 +2,13 @@ - + Equivalence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/ImageExt.html b/nars-dist/javadoc/nars/language/ImageExt.html index 463f3033..0b76d331 100644 --- a/nars-dist/javadoc/nars/language/ImageExt.html +++ b/nars-dist/javadoc/nars/language/ImageExt.html @@ -2,13 +2,13 @@ - + ImageExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/ImageInt.html b/nars-dist/javadoc/nars/language/ImageInt.html index 269de115..69fdf5ca 100644 --- a/nars-dist/javadoc/nars/language/ImageInt.html +++ b/nars-dist/javadoc/nars/language/ImageInt.html @@ -2,13 +2,13 @@ - + ImageInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Implication.html b/nars-dist/javadoc/nars/language/Implication.html index 2ac02bb8..ee2cf2a2 100644 --- a/nars-dist/javadoc/nars/language/Implication.html +++ b/nars-dist/javadoc/nars/language/Implication.html @@ -2,13 +2,13 @@ - + Implication (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Inheritance.html b/nars-dist/javadoc/nars/language/Inheritance.html index f1eb4686..ad0abd0d 100644 --- a/nars-dist/javadoc/nars/language/Inheritance.html +++ b/nars-dist/javadoc/nars/language/Inheritance.html @@ -2,13 +2,13 @@ - + Inheritance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Instance.html b/nars-dist/javadoc/nars/language/Instance.html index 2e9bf47f..5dfa543c 100644 --- a/nars-dist/javadoc/nars/language/Instance.html +++ b/nars-dist/javadoc/nars/language/Instance.html @@ -2,13 +2,13 @@ - + Instance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/InstanceProperty.html b/nars-dist/javadoc/nars/language/InstanceProperty.html index e80abb89..afd28a66 100644 --- a/nars-dist/javadoc/nars/language/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/InstanceProperty.html @@ -2,13 +2,13 @@ - + InstanceProperty (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/IntersectionExt.html b/nars-dist/javadoc/nars/language/IntersectionExt.html index f110acc9..40e17ee4 100644 --- a/nars-dist/javadoc/nars/language/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/IntersectionExt.html @@ -2,13 +2,13 @@ - + IntersectionExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/IntersectionInt.html b/nars-dist/javadoc/nars/language/IntersectionInt.html index a7b19339..84cc4658 100644 --- a/nars-dist/javadoc/nars/language/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/IntersectionInt.html @@ -2,13 +2,13 @@ - + IntersectionInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Negation.html b/nars-dist/javadoc/nars/language/Negation.html index ee04c70d..4bb65ea1 100644 --- a/nars-dist/javadoc/nars/language/Negation.html +++ b/nars-dist/javadoc/nars/language/Negation.html @@ -2,13 +2,13 @@ - + Negation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Product.html b/nars-dist/javadoc/nars/language/Product.html index f8b0fb22..7ce3f32e 100644 --- a/nars-dist/javadoc/nars/language/Product.html +++ b/nars-dist/javadoc/nars/language/Product.html @@ -2,13 +2,13 @@ - + Product (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Property.html b/nars-dist/javadoc/nars/language/Property.html index 6902ffcb..b4b930a8 100644 --- a/nars-dist/javadoc/nars/language/Property.html +++ b/nars-dist/javadoc/nars/language/Property.html @@ -2,13 +2,13 @@ - + Property (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/SetExt.html b/nars-dist/javadoc/nars/language/SetExt.html index 9f5dce35..3e9f6f41 100644 --- a/nars-dist/javadoc/nars/language/SetExt.html +++ b/nars-dist/javadoc/nars/language/SetExt.html @@ -2,13 +2,13 @@ - + SetExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/SetInt.html b/nars-dist/javadoc/nars/language/SetInt.html index b2573eef..5f498cd9 100644 --- a/nars-dist/javadoc/nars/language/SetInt.html +++ b/nars-dist/javadoc/nars/language/SetInt.html @@ -2,13 +2,13 @@ - + SetInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Similarity.html b/nars-dist/javadoc/nars/language/Similarity.html index b9b0e803..a6318fd4 100644 --- a/nars-dist/javadoc/nars/language/Similarity.html +++ b/nars-dist/javadoc/nars/language/Similarity.html @@ -2,13 +2,13 @@ - + Similarity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Statement.html b/nars-dist/javadoc/nars/language/Statement.html index 4c7db607..656b6b18 100644 --- a/nars-dist/javadoc/nars/language/Statement.html +++ b/nars-dist/javadoc/nars/language/Statement.html @@ -2,13 +2,13 @@ - + Statement (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Term.html b/nars-dist/javadoc/nars/language/Term.html index 594b8891..987d2fa5 100644 --- a/nars-dist/javadoc/nars/language/Term.html +++ b/nars-dist/javadoc/nars/language/Term.html @@ -2,13 +2,13 @@ - + Term (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Variable.VarType.html b/nars-dist/javadoc/nars/language/Variable.VarType.html index 20da2599..f295ffff 100644 --- a/nars-dist/javadoc/nars/language/Variable.VarType.html +++ b/nars-dist/javadoc/nars/language/Variable.VarType.html @@ -2,13 +2,13 @@ - + Variable.VarType (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/Variable.html b/nars-dist/javadoc/nars/language/Variable.html index 560c5bfa..6693b837 100644 --- a/nars-dist/javadoc/nars/language/Variable.html +++ b/nars-dist/javadoc/nars/language/Variable.html @@ -2,13 +2,13 @@ - + Variable (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html index 6985869d..865e0b54 100644 --- a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html +++ b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.CompoundTerm (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Conjunction.html b/nars-dist/javadoc/nars/language/class-use/Conjunction.html index abaff669..fa9dd14d 100644 --- a/nars-dist/javadoc/nars/language/class-use/Conjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Conjunction.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Conjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html index b68ff735..91430496 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.DifferenceExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html index 336206fb..54b7a1ef 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.DifferenceInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Disjunction.html b/nars-dist/javadoc/nars/language/class-use/Disjunction.html index b400ecc6..24671876 100644 --- a/nars-dist/javadoc/nars/language/class-use/Disjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Disjunction.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Disjunction (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Equivalence.html b/nars-dist/javadoc/nars/language/class-use/Equivalence.html index aac1c915..e2be0da8 100644 --- a/nars-dist/javadoc/nars/language/class-use/Equivalence.html +++ b/nars-dist/javadoc/nars/language/class-use/Equivalence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Equivalence (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ImageExt.html b/nars-dist/javadoc/nars/language/class-use/ImageExt.html index 75c2eac2..4d0b53b2 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageExt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImageExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/ImageInt.html b/nars-dist/javadoc/nars/language/class-use/ImageInt.html index f105f76d..c6d05ff3 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageInt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.ImageInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Implication.html b/nars-dist/javadoc/nars/language/class-use/Implication.html index b2da9f18..d4c87ffd 100644 --- a/nars-dist/javadoc/nars/language/class-use/Implication.html +++ b/nars-dist/javadoc/nars/language/class-use/Implication.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Implication (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Inheritance.html b/nars-dist/javadoc/nars/language/class-use/Inheritance.html index 7ca91dca..a1c3adde 100644 --- a/nars-dist/javadoc/nars/language/class-use/Inheritance.html +++ b/nars-dist/javadoc/nars/language/class-use/Inheritance.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Inheritance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Instance.html b/nars-dist/javadoc/nars/language/class-use/Instance.html index aa8b17e8..86639d7b 100644 --- a/nars-dist/javadoc/nars/language/class-use/Instance.html +++ b/nars-dist/javadoc/nars/language/class-use/Instance.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Instance (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html index b10bfa4b..c908be47 100644 --- a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.InstanceProperty (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html index 790367c2..e1e0a272 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.IntersectionExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html index db7ff62b..ce2e2b68 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.IntersectionInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Negation.html b/nars-dist/javadoc/nars/language/class-use/Negation.html index d3eb4be0..eb79c396 100644 --- a/nars-dist/javadoc/nars/language/class-use/Negation.html +++ b/nars-dist/javadoc/nars/language/class-use/Negation.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Negation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Product.html b/nars-dist/javadoc/nars/language/class-use/Product.html index 626a8aa7..8039bd45 100644 --- a/nars-dist/javadoc/nars/language/class-use/Product.html +++ b/nars-dist/javadoc/nars/language/class-use/Product.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Product (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Property.html b/nars-dist/javadoc/nars/language/class-use/Property.html index 9eed7fb1..06e68cf0 100644 --- a/nars-dist/javadoc/nars/language/class-use/Property.html +++ b/nars-dist/javadoc/nars/language/class-use/Property.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Property (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/SetExt.html b/nars-dist/javadoc/nars/language/class-use/SetExt.html index ffb8a79e..eb703e75 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetExt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetExt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.SetExt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/SetInt.html b/nars-dist/javadoc/nars/language/class-use/SetInt.html index 94bb8163..38fc83eb 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetInt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetInt.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.SetInt (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Similarity.html b/nars-dist/javadoc/nars/language/class-use/Similarity.html index 3eb1d8ba..7efc2270 100644 --- a/nars-dist/javadoc/nars/language/class-use/Similarity.html +++ b/nars-dist/javadoc/nars/language/class-use/Similarity.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Similarity (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Statement.html b/nars-dist/javadoc/nars/language/class-use/Statement.html index 024fa2c5..304c6ff5 100644 --- a/nars-dist/javadoc/nars/language/class-use/Statement.html +++ b/nars-dist/javadoc/nars/language/class-use/Statement.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Statement (NARS Document) - + @@ -530,10 +530,10 @@

      private  void -Operator.showExecution(Statement operation) +Operator.reportExecution(Statement operation)
      -          Display a message in the output stream to indicate the execution of an operation +          Display a message in the output stream to indicate the reportExecution of an operation   diff --git a/nars-dist/javadoc/nars/language/class-use/Term.html b/nars-dist/javadoc/nars/language/class-use/Term.html index 9efdf412..17913cf5 100644 --- a/nars-dist/javadoc/nars/language/class-use/Term.html +++ b/nars-dist/javadoc/nars/language/class-use/Term.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Term (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html index 6b71fdb2..eb9b0024 100644 --- a/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html +++ b/nars-dist/javadoc/nars/language/class-use/Variable.VarType.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Variable.VarType (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.html b/nars-dist/javadoc/nars/language/class-use/Variable.html index 70bb472c..55227b95 100644 --- a/nars-dist/javadoc/nars/language/class-use/Variable.html +++ b/nars-dist/javadoc/nars/language/class-use/Variable.html @@ -2,13 +2,13 @@ - + Uses of Class nars.language.Variable (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-frame.html b/nars-dist/javadoc/nars/language/package-frame.html index 8dc14980..9579c99b 100644 --- a/nars-dist/javadoc/nars/language/package-frame.html +++ b/nars-dist/javadoc/nars/language/package-frame.html @@ -2,13 +2,13 @@ - + nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-summary.html b/nars-dist/javadoc/nars/language/package-summary.html index e0c9c3c1..b89e1267 100644 --- a/nars-dist/javadoc/nars/language/package-summary.html +++ b/nars-dist/javadoc/nars/language/package-summary.html @@ -2,13 +2,13 @@ - + nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-tree.html b/nars-dist/javadoc/nars/language/package-tree.html index ba9c4cad..7f07c0f2 100644 --- a/nars-dist/javadoc/nars/language/package-tree.html +++ b/nars-dist/javadoc/nars/language/package-tree.html @@ -2,13 +2,13 @@ - + nars.language Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/language/package-use.html b/nars-dist/javadoc/nars/language/package-use.html index efc71848..d5066d99 100644 --- a/nars-dist/javadoc/nars/language/package-use.html +++ b/nars-dist/javadoc/nars/language/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.language (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/Center.html b/nars-dist/javadoc/nars/main/Center.html index b5b84ae6..b7721b2b 100644 --- a/nars-dist/javadoc/nars/main/Center.html +++ b/nars-dist/javadoc/nars/main/Center.html @@ -2,13 +2,13 @@ - + Center (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/Memory.html b/nars-dist/javadoc/nars/main/Memory.html index 746cd85e..bf4a9b99 100644 --- a/nars-dist/javadoc/nars/main/Memory.html +++ b/nars-dist/javadoc/nars/main/Memory.html @@ -2,13 +2,13 @@ - + Memory (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/NARS.html b/nars-dist/javadoc/nars/main/NARS.html index b39e6807..fdee870f 100644 --- a/nars-dist/javadoc/nars/main/NARS.html +++ b/nars-dist/javadoc/nars/main/NARS.html @@ -2,13 +2,13 @@ - + NARS (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/Parameters.html b/nars-dist/javadoc/nars/main/Parameters.html index 25e8677e..54f7cc8b 100644 --- a/nars-dist/javadoc/nars/main/Parameters.html +++ b/nars-dist/javadoc/nars/main/Parameters.html @@ -2,13 +2,13 @@ - + Parameters (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/Center.html b/nars-dist/javadoc/nars/main/class-use/Center.html index f3d9d0cf..d7aedffd 100644 --- a/nars-dist/javadoc/nars/main/class-use/Center.html +++ b/nars-dist/javadoc/nars/main/class-use/Center.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Center (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/Memory.html b/nars-dist/javadoc/nars/main/class-use/Memory.html index ef894677..367b0b03 100644 --- a/nars-dist/javadoc/nars/main/class-use/Memory.html +++ b/nars-dist/javadoc/nars/main/class-use/Memory.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Memory (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/NARS.html b/nars-dist/javadoc/nars/main/class-use/NARS.html index 0fe207e1..64961261 100644 --- a/nars-dist/javadoc/nars/main/class-use/NARS.html +++ b/nars-dist/javadoc/nars/main/class-use/NARS.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.NARS (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/class-use/Parameters.html b/nars-dist/javadoc/nars/main/class-use/Parameters.html index bb5ae54e..00348725 100644 --- a/nars-dist/javadoc/nars/main/class-use/Parameters.html +++ b/nars-dist/javadoc/nars/main/class-use/Parameters.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Parameters (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-frame.html b/nars-dist/javadoc/nars/main/package-frame.html index 988d789b..dfd74672 100644 --- a/nars-dist/javadoc/nars/main/package-frame.html +++ b/nars-dist/javadoc/nars/main/package-frame.html @@ -2,13 +2,13 @@ - + nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-summary.html b/nars-dist/javadoc/nars/main/package-summary.html index 4274bef0..261cd4f8 100644 --- a/nars-dist/javadoc/nars/main/package-summary.html +++ b/nars-dist/javadoc/nars/main/package-summary.html @@ -2,13 +2,13 @@ - + nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-tree.html b/nars-dist/javadoc/nars/main/package-tree.html index 9044aa4e..4a7430af 100644 --- a/nars-dist/javadoc/nars/main/package-tree.html +++ b/nars-dist/javadoc/nars/main/package-tree.html @@ -2,13 +2,13 @@ - + nars.main Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/main/package-use.html b/nars-dist/javadoc/nars/main/package-use.html index a36b0b14..41a51ff4 100644 --- a/nars-dist/javadoc/nars/main/package-use.html +++ b/nars-dist/javadoc/nars/main/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.main (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/Break.html b/nars-dist/javadoc/nars/operation/Break.html index ca564724..32a1e09e 100644 --- a/nars-dist/javadoc/nars/operation/Break.html +++ b/nars-dist/javadoc/nars/operation/Break.html @@ -2,13 +2,13 @@ - + Break (NARS Document) - + @@ -236,7 +236,7 @@

      Parameters:
      task - The task with the arguments to be passed to the operator -
      Returns:
      The direct collectable results and feedback of the execution
      +
      Returns:
      The direct collectable results and feedback of the reportExecution

  • diff --git a/nars-dist/javadoc/nars/operation/Drop.html b/nars-dist/javadoc/nars/operation/Drop.html new file mode 100644 index 00000000..dcf9b572 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/Drop.html @@ -0,0 +1,305 @@ + + + + + + + +Drop (NARS Document) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.operation +
    +Class Drop

    +
    +java.lang.Object
    +  extended by nars.language.Term
    +      extended by nars.operation.Operator
    +          extended by nars.operation.Drop
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Drop
    extends Operator
    + + +

    +A class used in testing only. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.language.Term
    name
    +  + + + + + + + + + + +
    +Constructor Summary
    Drop(java.lang.String name) + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + java.util.ArrayList<Task>execute(Task task) + +
    +          Required method for every operation, specifying the operation
    + + + + + + + +
    Methods inherited from class nars.operation.Operator
    call, setOperators
    + + + + + + + +
    Methods inherited from class nars.language.Term
    clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, isTemporal, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Drop

    +
    +public Drop(java.lang.String name)
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +execute

    +
    +public java.util.ArrayList<Task> execute(Task task)
    +
    +
    Description copied from class: Operator
    +
    Required method for every operation, specifying the operation +

    +

    +
    Specified by:
    execute in class Operator
    +
    +
    +
    Parameters:
    task - The task with the arguments to be passed to the operator +
    Returns:
    The direct collectable results and feedback of the reportExecution
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/operation/GoTo.html b/nars-dist/javadoc/nars/operation/GoTo.html index ad8cabae..ac127b2c 100644 --- a/nars-dist/javadoc/nars/operation/GoTo.html +++ b/nars-dist/javadoc/nars/operation/GoTo.html @@ -2,13 +2,13 @@ - + GoTo (NARS Document) - + @@ -236,7 +236,7 @@

    Parameters:
    task - The task with the arguments to be passed to the operator -
    Returns:
    The direct collectable results and feedback of the execution
    +
    Returns:
    The direct collectable results and feedback of the reportExecution
    diff --git a/nars-dist/javadoc/nars/operation/Open.html b/nars-dist/javadoc/nars/operation/Open.html index ba7370f0..ebf8984b 100644 --- a/nars-dist/javadoc/nars/operation/Open.html +++ b/nars-dist/javadoc/nars/operation/Open.html @@ -2,13 +2,13 @@ - + Open (NARS Document) - + @@ -236,7 +236,7 @@

    Parameters:
    task - The task with the arguments to be passed to the operator -
    Returns:
    The direct collectable results and feedback of the execution
    +
    Returns:
    The direct collectable results and feedback of the reportExecution
    diff --git a/nars-dist/javadoc/nars/operation/Operator.html b/nars-dist/javadoc/nars/operation/Operator.html index b1a44695..773b0492 100644 --- a/nars-dist/javadoc/nars/operation/Operator.html +++ b/nars-dist/javadoc/nars/operation/Operator.html @@ -2,13 +2,13 @@ - + Operator (NARS Document) - + @@ -180,19 +180,19 @@

    -static java.util.HashMap<java.lang.String,Operator> -setOperators() +private  void +reportExecution(Statement operation)
    -          Register all built-in operators in the Memory +          Display a message in the output stream to indicate the reportExecution of an operation -private  void -showExecution(Statement operation) +static java.util.HashMap<java.lang.String,Operator> +setOperators()
    -          Display a message in the output stream to indicate the execution of an operation +          Register all built-in operators in the Memory   @@ -252,7 +252,7 @@

    Parameters:
    task - The task with the arguments to be passed to the operator -
    Returns:
    The direct collectable results and feedback of the execution
    +
    Returns:
    The direct collectable results and feedback of the reportExecution

    @@ -287,12 +287,13 @@


    -

    -showExecution

    +

    +reportExecution

    -private void showExecution(Statement operation)
    +private void reportExecution(Statement operation)
    -
    Display a message in the output stream to indicate the execution of an operation +
    Display a message in the output stream to indicate the reportExecution of an operation +

    Parameters:
    operation - The content of the operation to be executed
    diff --git a/nars-dist/javadoc/nars/operation/Pick.html b/nars-dist/javadoc/nars/operation/Pick.html index d4e9cad7..276b6797 100644 --- a/nars-dist/javadoc/nars/operation/Pick.html +++ b/nars-dist/javadoc/nars/operation/Pick.html @@ -2,13 +2,13 @@ - + Pick (NARS Document) - + @@ -236,7 +236,7 @@

    Parameters:
    task - The task with the arguments to be passed to the operator -
    Returns:
    The direct collectable results and feedback of the execution
    +
    Returns:
    The direct collectable results and feedback of the reportExecution
    diff --git a/nars-dist/javadoc/nars/operation/Strike.html b/nars-dist/javadoc/nars/operation/Strike.html new file mode 100644 index 00000000..ae1e441d --- /dev/null +++ b/nars-dist/javadoc/nars/operation/Strike.html @@ -0,0 +1,305 @@ + + + + + + + +Strike (NARS Document) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.operation +
    +Class Strike

    +
    +java.lang.Object
    +  extended by nars.language.Term
    +      extended by nars.operation.Operator
    +          extended by nars.operation.Strike
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Strike
    extends Operator
    + + +

    +A class used in testing only. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.language.Term
    name
    +  + + + + + + + + + + +
    +Constructor Summary
    Strike(java.lang.String name) + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + java.util.ArrayList<Task>execute(Task task) + +
    +          Required method for every operation, specifying the operation
    + + + + + + + +
    Methods inherited from class nars.operation.Operator
    call, setOperators
    + + + + + + + +
    Methods inherited from class nars.language.Term
    clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, isTemporal, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Strike

    +
    +public Strike(java.lang.String name)
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +execute

    +
    +public java.util.ArrayList<Task> execute(Task task)
    +
    +
    Description copied from class: Operator
    +
    Required method for every operation, specifying the operation +

    +

    +
    Specified by:
    execute in class Operator
    +
    +
    +
    Parameters:
    task - The task with the arguments to be passed to the operator +
    Returns:
    The direct collectable results and feedback of the reportExecution
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/operation/Throw.html b/nars-dist/javadoc/nars/operation/Throw.html new file mode 100644 index 00000000..847bdd88 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/Throw.html @@ -0,0 +1,305 @@ + + + + + + + +Throw (NARS Document) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.operation +
    +Class Throw

    +
    +java.lang.Object
    +  extended by nars.language.Term
    +      extended by nars.operation.Operator
    +          extended by nars.operation.Throw
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Throw
    extends Operator
    + + +

    +A class used in testing only. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.language.Term
    name
    +  + + + + + + + + + + +
    +Constructor Summary
    Throw(java.lang.String name) + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    + java.util.ArrayList<Task>execute(Task task) + +
    +          Required method for every operation, specifying the operation
    + + + + + + + +
    Methods inherited from class nars.operation.Operator
    call, setOperators
    + + + + + + + +
    Methods inherited from class nars.language.Term
    clone, compareTo, equals, getComplexity, getConstantName, getName, getOrder, hashCode, isConstant, isTemporal, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Throw

    +
    +public Throw(java.lang.String name)
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +execute

    +
    +public java.util.ArrayList<Task> execute(Task task)
    +
    +
    Description copied from class: Operator
    +
    Required method for every operation, specifying the operation +

    +

    +
    Specified by:
    execute in class Operator
    +
    +
    +
    Parameters:
    task - The task with the arguments to be passed to the operator +
    Returns:
    The direct collectable results and feedback of the reportExecution
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/operation/class-use/Break.html b/nars-dist/javadoc/nars/operation/class-use/Break.html index a4966ffa..6c2d98b7 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Break.html +++ b/nars-dist/javadoc/nars/operation/class-use/Break.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Break (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Drop.html b/nars-dist/javadoc/nars/operation/class-use/Drop.html new file mode 100644 index 00000000..e2641d4e --- /dev/null +++ b/nars-dist/javadoc/nars/operation/class-use/Drop.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.operation.Drop (NARS Document) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.operation.Drop

    +
    +No usage of nars.operation.Drop +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/operation/class-use/GoTo.html b/nars-dist/javadoc/nars/operation/class-use/GoTo.html index 9d65e535..e46181d4 100644 --- a/nars-dist/javadoc/nars/operation/class-use/GoTo.html +++ b/nars-dist/javadoc/nars/operation/class-use/GoTo.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.GoTo (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Open.html b/nars-dist/javadoc/nars/operation/class-use/Open.html index 25f9da26..2c21dcf7 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Open.html +++ b/nars-dist/javadoc/nars/operation/class-use/Open.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Open (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Operator.html b/nars-dist/javadoc/nars/operation/class-use/Operator.html index cc3ac80e..e1af217c 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Operator.html +++ b/nars-dist/javadoc/nars/operation/class-use/Operator.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Operator (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Pick.html b/nars-dist/javadoc/nars/operation/class-use/Pick.html index 7f094b0f..b0436fc3 100644 --- a/nars-dist/javadoc/nars/operation/class-use/Pick.html +++ b/nars-dist/javadoc/nars/operation/class-use/Pick.html @@ -2,13 +2,13 @@ - + Uses of Class nars.operation.Pick (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/class-use/Strike.html b/nars-dist/javadoc/nars/operation/class-use/Strike.html new file mode 100644 index 00000000..b36aaee7 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/class-use/Strike.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.operation.Strike (NARS Document) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.operation.Strike

    +
    +No usage of nars.operation.Strike +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/operation/class-use/Throw.html b/nars-dist/javadoc/nars/operation/class-use/Throw.html new file mode 100644 index 00000000..0af19251 --- /dev/null +++ b/nars-dist/javadoc/nars/operation/class-use/Throw.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.operation.Throw (NARS Document) + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.operation.Throw

    +
    +No usage of nars.operation.Throw +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/operation/package-frame.html b/nars-dist/javadoc/nars/operation/package-frame.html index 7dbeee38..1283b15d 100644 --- a/nars-dist/javadoc/nars/operation/package-frame.html +++ b/nars-dist/javadoc/nars/operation/package-frame.html @@ -2,13 +2,13 @@ - + nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-summary.html b/nars-dist/javadoc/nars/operation/package-summary.html index 481e0895..8815c674 100644 --- a/nars-dist/javadoc/nars/operation/package-summary.html +++ b/nars-dist/javadoc/nars/operation/package-summary.html @@ -2,13 +2,13 @@ - + nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-tree.html b/nars-dist/javadoc/nars/operation/package-tree.html index 2cb14a81..06b6d99c 100644 --- a/nars-dist/javadoc/nars/operation/package-tree.html +++ b/nars-dist/javadoc/nars/operation/package-tree.html @@ -2,13 +2,13 @@ - + nars.operation Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/operation/package-use.html b/nars-dist/javadoc/nars/operation/package-use.html index 7ea5987c..83e9bd30 100644 --- a/nars-dist/javadoc/nars/operation/package-use.html +++ b/nars-dist/javadoc/nars/operation/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.operation (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/Bag.html b/nars-dist/javadoc/nars/storage/Bag.html index 0d842c29..b5a01d76 100644 --- a/nars-dist/javadoc/nars/storage/Bag.html +++ b/nars-dist/javadoc/nars/storage/Bag.html @@ -2,13 +2,13 @@ - + Bag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/ConceptBag.html b/nars-dist/javadoc/nars/storage/ConceptBag.html index 61748363..40f32db2 100644 --- a/nars-dist/javadoc/nars/storage/ConceptBag.html +++ b/nars-dist/javadoc/nars/storage/ConceptBag.html @@ -2,13 +2,13 @@ - + ConceptBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/Distributor.html b/nars-dist/javadoc/nars/storage/Distributor.html index 5c82bea1..e5b4ff25 100644 --- a/nars-dist/javadoc/nars/storage/Distributor.html +++ b/nars-dist/javadoc/nars/storage/Distributor.html @@ -2,13 +2,13 @@ - + Distributor (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TaskBuffer.html b/nars-dist/javadoc/nars/storage/TaskBuffer.html index d00b55de..b4b0187d 100644 --- a/nars-dist/javadoc/nars/storage/TaskBuffer.html +++ b/nars-dist/javadoc/nars/storage/TaskBuffer.html @@ -2,13 +2,13 @@ - + TaskBuffer (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/TaskLinkBag.html index cbadbf07..9ca51e6c 100644 --- a/nars-dist/javadoc/nars/storage/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TaskLinkBag.html @@ -2,13 +2,13 @@ - + TaskLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/TermLinkBag.html b/nars-dist/javadoc/nars/storage/TermLinkBag.html index 4f81a8f7..11c1053f 100644 --- a/nars-dist/javadoc/nars/storage/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TermLinkBag.html @@ -2,13 +2,13 @@ - + TermLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/Bag.html b/nars-dist/javadoc/nars/storage/class-use/Bag.html index 877eb9bd..e1545238 100644 --- a/nars-dist/javadoc/nars/storage/class-use/Bag.html +++ b/nars-dist/javadoc/nars/storage/class-use/Bag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.Bag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html index bbda107e..73cb3969 100644 --- a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.ConceptBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/Distributor.html b/nars-dist/javadoc/nars/storage/class-use/Distributor.html index bb658281..a478201e 100644 --- a/nars-dist/javadoc/nars/storage/class-use/Distributor.html +++ b/nars-dist/javadoc/nars/storage/class-use/Distributor.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.Distributor (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html index 7b179651..f243e591 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html +++ b/nars-dist/javadoc/nars/storage/class-use/TaskBuffer.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TaskBuffer (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html index d8d95023..da8985ea 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TaskLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html index 041c31bb..9e843f73 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html @@ -2,13 +2,13 @@ - + Uses of Class nars.storage.TermLinkBag (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-frame.html b/nars-dist/javadoc/nars/storage/package-frame.html index 8e4fa2e7..8f469520 100644 --- a/nars-dist/javadoc/nars/storage/package-frame.html +++ b/nars-dist/javadoc/nars/storage/package-frame.html @@ -2,13 +2,13 @@ - + nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-summary.html b/nars-dist/javadoc/nars/storage/package-summary.html index 427c962c..e13e8589 100644 --- a/nars-dist/javadoc/nars/storage/package-summary.html +++ b/nars-dist/javadoc/nars/storage/package-summary.html @@ -2,13 +2,13 @@ - + nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-tree.html b/nars-dist/javadoc/nars/storage/package-tree.html index 8eef1e28..d67f4d9c 100644 --- a/nars-dist/javadoc/nars/storage/package-tree.html +++ b/nars-dist/javadoc/nars/storage/package-tree.html @@ -2,13 +2,13 @@ - + nars.storage Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/nars/storage/package-use.html b/nars-dist/javadoc/nars/storage/package-use.html index 1113cf48..db2811c0 100644 --- a/nars-dist/javadoc/nars/storage/package-use.html +++ b/nars-dist/javadoc/nars/storage/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.storage (NARS Document) - + diff --git a/nars-dist/javadoc/overview-frame.html b/nars-dist/javadoc/overview-frame.html index 8654d72c..b2b550a3 100644 --- a/nars-dist/javadoc/overview-frame.html +++ b/nars-dist/javadoc/overview-frame.html @@ -2,13 +2,13 @@ - + Overview List (NARS Document) - + diff --git a/nars-dist/javadoc/overview-summary.html b/nars-dist/javadoc/overview-summary.html index 0b0e99ae..d237023c 100644 --- a/nars-dist/javadoc/overview-summary.html +++ b/nars-dist/javadoc/overview-summary.html @@ -2,13 +2,13 @@ - + Overview (NARS Document) - + diff --git a/nars-dist/javadoc/overview-tree.html b/nars-dist/javadoc/overview-tree.html index d0f1a623..6459898a 100644 --- a/nars-dist/javadoc/overview-tree.html +++ b/nars-dist/javadoc/overview-tree.html @@ -2,13 +2,13 @@ - + Class Hierarchy (NARS Document) - + diff --git a/nars-dist/javadoc/serialized-form.html b/nars-dist/javadoc/serialized-form.html index b6e7124f..33b4d3d7 100644 --- a/nars-dist/javadoc/serialized-form.html +++ b/nars-dist/javadoc/serialized-form.html @@ -2,13 +2,13 @@ - + Serialized Form (NARS Document) - + From 7aaa16f731c102e4722efe68b5d621a283850e39 Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Sun, 16 May 2010 16:57:55 +0000 Subject: [PATCH 051/206] remove doc files --- nars-dist/Examples/Example-NAL1-translation.doc | Bin 31744 -> 0 bytes nars-dist/Examples/Example-NAL2-translation.doc | Bin 27136 -> 0 bytes nars-dist/Examples/Example-NAL3-translation.doc | Bin 31232 -> 0 bytes nars-dist/Examples/Example-NAL4-translation.doc | Bin 27136 -> 0 bytes nars-dist/Examples/Example-NAL5-translation.doc | Bin 37376 -> 0 bytes nars-dist/Examples/Example-NAL6-translation.doc | Bin 36864 -> 0 bytes 6 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 nars-dist/Examples/Example-NAL1-translation.doc delete mode 100644 nars-dist/Examples/Example-NAL2-translation.doc delete mode 100644 nars-dist/Examples/Example-NAL3-translation.doc delete mode 100644 nars-dist/Examples/Example-NAL4-translation.doc delete mode 100644 nars-dist/Examples/Example-NAL5-translation.doc delete mode 100644 nars-dist/Examples/Example-NAL6-translation.doc diff --git a/nars-dist/Examples/Example-NAL1-translation.doc b/nars-dist/Examples/Example-NAL1-translation.doc deleted file mode 100644 index 1dd0dc418f09b18a7278f5a6d88147cedc7a42aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31744 zcmeHQ2V7Lg)}LLxfOpEU>`p7G#&EqSzH<#8{$+sKH)P zVpnXaLF`yTO%xT4HMRsL7QS=ta$$F26ZIu8$@g~n{qOWM=bR~bX70>Va_+P8Z@;s= zMO2JG(IW4w8xdWFa2B{bF@94*I)fX--d9&wW3V>>oEq~l(!k?2g+wc}kv1XE%no5C z5&|^~Mvo9fGeV3>^yui(kBT1^)1gX_M%w12i!C9ubLIH0kv#e{rBrpE>S~i(k2*J# zU^nf^(UJSnz6so*`8~UdJPG~8NdXx35)NAsz6 zbD+b9{8m`VN7(n85|RrUXIT*9P?HaW>KR5441cN#m~eGA!xxi}p~u)vJ|>>=b3q<+ z2xR=~Y*jj{{#Bsg6o$A0J%ykTax&$kz7-7<&V;G@neb1w8G4M(w6~IZ(}ss`;X#P)Bjn1roI?HKh$RU{a9NaeH@z` z84|JvhJ7Ds^*Y21p7=)5n18+o9BK`f#7_}O1ro6VMFscsp?sqSNwJiZlRqU*6^KOq zB!6ck7Z<7hO zf`Fu0f<9HUlmQhQ8POm=NY~p72zPR|qsDjip*nVU&7iOh^;{Ym)Jp6?#qwj5V`L4< z%o7VlJfS*~<+0Adnp{;$l4yaL))mU)?~E)Apu?0jg^`#^E>B%1rZCFR)tSo$dAw`n zaqZkuE>8o*YIsnRhZn6Pk2Fz|B%>LNk%$ucG64!Jmnxi&QsR$CDWs~CE+&C5mDVRh zYoD&s?sNhrQYwVx5-V_nIsBb#1$OHsuRvO0Y-YjGI0WJ`lst8>rf(zRE9lNmH>TCAmTUFYipZhjZ_M)xUP0Q)o7B* zqa?Xp1|?nc)A*u9p&(8W!&B^Sbv;0?6O^NYmX483Ppef4(`Op)?R6bg-b&4iZS}y@~h-Z`TBDSH%CiA6Of3>XE)n4CwE9;B zBO*<(-aDXH#QNpcw$V;pB@w$}*HMy+;X$d|Y*G{cM6m+WlzJ;I)Ifa4HN?nA3Wa?` zy--XW2ym_IzX4R;I}vj;oJb`iJ`RNO^7pS2Z>Zq@?&IV)H8_>jZYktPDSyA$$Tn;7cJx)`BN~`bGl2!ae^cfJ+e4bu@ZV7A?EXA zDVcC%N9jDaZ%hQC$$@pSO;f^UhIpL^998)2vBL=y1BE>?%7``x_!{K5;N6r9V5_lb{%>7#Yz_$AUzBRf)VjI6cx5`7ttntWjWnVW2n+SPw45#zS`n z_Tq%ZOBpprEJ+0xw2X|jjcT5tVKD#v*{X)aKV1W`&*u#23rGa423!KX0JMhv zya2#JfDEu2a0KuQ&_bV(Zh$zzBEUYt1AwssA%TDxz&OBSKoLL-R)}tZA%HIc8vsWD zak3k(k{7wh6Bq`(NA>c;lxUAcXQAU z?X5-n14aN66L2fkOdh8g(I5ADvHqF*X6hH~l&MRsKc?Q8dSdE@sRz_O>K%2C`bJ%^ z1*`+0&W{2fqdbh!cvKYfkkJg<>OB>T$?DwjoyOdj6&y!zJHi7t6^)800=0NZYa++b z;H`0i**J4=%hxS-wXVxWEU{jm0F0qcn*f>txByo`CqQ>Vl|lw(&n~qwN_nIomP|3# zpX}~N$e7q|KopeJjL{Q&@eaaS7{$`N!X@m!)%rTH1*>~dM-SA;fZnXr^)+GqjBR-Z z`V7HNRc%%0w61fuxT06H(O2z$MVGMjwRXUOiCmy$^||QD{%>)i)Kc`Yeggr00g-?x zz;Hk^U_Y|T7^SLK@+j4=QjC&^A@sM{wC2s>t4e*%|M%)&N%J&EvC!21PL7B!)-%5E zQUPfIeD5s+EC*}@YzOQIoI_i&>h>ynRgZ^4c8+iC#LZ`lBx z-|7H#0UUrHpbJbA zzVryY-1Km37MngK12r8Vi&J^U{+|us&g!?w|K1yknBv++wQjLa-&VrkrwOmg^$*p6 zzI^@HCkXhfSug7Nlh3#;GcK_XV-cT3Y@e<2OI)b@a=+I3dK?=-o9vZ3wg9_)SRLe- zur2aOX&GjhumkasjK=)SHIT0~{;(Fqu1^YKC$K!O=n$6HK^?GJY%O1tHYtR4P^V1_ zi|uRT6J6v) z6CMDoT|n`$u>XwXD3*p}!qVtixgG!eT7~cL^gKgm=1TWG*t}EdUFv%ti>=M%`%8LW z-{0wZ8jfLm=wCXzLG#iWjRrIt&}cxT0gVPU8qjD!qk(^o2I90$V5^r!3|Jf-*2@bw@sL)Tov&4j7idp;nIYMumGgarXq z!~Ylk`LG?1a(4vaMW@5yF9DPTo&m5qngS>Q7tjR|1{eiM1Y`oT0qXK0U3+LlWuWi- z01DE63Z4J;eBPkDL4el)JBrm39^OyB7K6afjXQ51B?JL zB`8wI66#DK=}Nt*{+0w1LpVW(#uRQW1`hI z%>W|k^0In6*oH0W0K(NZBoUA!8Yu7~wKDhCq**02*qY5sq1>SZAv_Fb6WoWfCu68z zstds;HJovEIW!%L^d$l!rORd$I1~patdEv9oJheVTBJ3ZlC{6_Z{V^9jl=04G8B%G z!iiMb$OyQHBOUIXCK7I*e`@qmu4#`~)89`m*;SUb&wfqW+1%jN495#578Tz)jh;8n zz0rxAsgL)B?bCCTwK0u8yL5cymU(wp8e1%Q8Sx-;M8fpgj63T${qpAL_64O5u3=hJ z+im`((Si}Br33H&+=SbH>Dq_~%RBj6ED+9Xv-$^)ZMq=Cdh%V%&W#UG>@xG-F8iN9 z|Mgf<&huj>$yE*pfu$?QO)YleW*yI8`Rq-Vp>5_8gF%~)yYYtPUNAjU?wB9Q<&2(q z-|gnEv(a~+Ol%_XpW3YKjJDgMVWWNxcT? zQbD$}h4WXtcku2V$_rq@=2o?qimKLJS@+XnP?0CZqS{BoFI|VVB~vCcC@Kstj_=eo}&s)pe^!*F%r%>KEuuTmAIa2EX@P=2YEU_!DKm zY@_bc+uZ|BCEQB!J2Yv^iRr7?+35{UOPsN4{Pmq9_lKQd<$K1}YE95C?jkdjSyw~% z57^Qz_WTLc3%z?>caOH6v~K>`k)^GcEN@=!+4thF<^xK-Ms1n5{zUcmqukTWLklNu zb-dd{TkN&4ub?9O+x0GY!VhGx=Wo2!vSjC;sw?jr6m(4bV)LmWU={#-Azbtj@m&<2 zAv`fJo}Yw`!|-&7{!z-b%dL!WQ?svn#T3~0h~9Q;OF<>+o@3ed_{s|_u9x1uGu7+t z%_f(>?qf9AF^6N6#XsXbYxlDWj_a(}UkkGS-cfk#c+-0i(kxEwnA`YfaIv(1Mw`po z)AM%zNL|_4;d1Mzjz5mrYdhL+POpLYFTQGjyT_vrZS~pS4Ku%ZXWs3_Fg%A@!AH=B zn0H0C9}f`txza z7G|y6hh7`;F6m5n+vn+B7UVzqv1O%8UV4y2j`ou0({>zaKmW$gxvy>(WR*q+Mo$@) zVN*Kx`kaNmOTSvY+T`e<5%<~$j}o8m@p;qzS&8jUU+dj35(@T44IQ548sfXK+@kn~ z<-84{C1DGG@l3kyr@M9bm*Wn{N3RTS96!BKmyD$;UC)vHr&HHPE$(=x=cK$FCj^VTRE}Mqvir(rk6{yLzdxCCIz3Y&7dBz;Cm9x%Qj55w^aqVgR zC4=H6+n@A)ZF#tKbn^)_rX<+s_StUnGSDe&r^U@XxhBLYcF=k44T9c9Wi#!6zMW=k zf5q^bPvM&8ohwf5ZGFZdcw|Y$&I2alhRt19y?R*nYU}cV9>-0Vw+MLs;PtJecQ^q< zx}Du9%9(aI(&f;*$LEf>S{1N-;>#E3n_W&DTvYwr(RPR4zD@Tqy%68_>>QUBZz~_4 zn6uUY-MfNbO`nBK?!|wdT@;x6b%oxOmljRjqQ=^_Ycuv>)1!J9Uu2!JUFco7tdGvS z8E8Ro%<}!boT7rra7s(Wvri*&iV|C7{crI(qU=3 zckq$X_o4?BJ&Bnx==*{>jgKEX5Uiinn?XO^k!PHMt;to0+Zu=GDGTpIPj@O_GK`*=>W_ofTu=2-6wD%L;k zFs+r@y(Q0mmfKqooNs-5$s(hPTASAQE-s9C%^w!(@JtqD(d$5F(BPf-7L$xV{caY9 zedqAw!BcC$o6{t#WyJaYlRLSz+5Nh!*O9S9rne}ub%+Vb=9uPMJQ*9QbMvlv#{JZ1 zTK&xTy)m}?q9Amu?ry>TS?&g=er}&#`zmbXH~Q8WE1sToT@^M@WH@YCry1M)z)$cKYGI zsRlZpW3tO1w%M55by|2r{-fn>%}#zUv+sY>&ie7`L_5*knQez(jp2p2vJm=Z4|?+A zu<_RWx84p5%XTdYNibf~X;ssZ^3A8Cw!{W@eNxJcD(&{o(xE@jitGK&(Y&zc6TG)t z8k%33rmNlcIy-8_^p|_%j5v)?2d#V}es$vqry_%94{Vy>%8d2DFz(!&_2Qg`$Fue} z$}HRPY`%ZRH_5@7n6n+v=WKp^Dunx}NBdE2-g&GZGWTC#6!lBCGA$4ZE4%LM~O?~ytR3vwLjd>u^V1hd9wVm zcbs6__M}bW?&o3+ywZmikGj$O_GIy*ZB}>BZp{j=G8nMNx~SSM@|THhFP#pPD>F?> z_psZ1vsEY?SHjjvKndYC?3yDXM} zxV&G{iZ{#oCH9v>`gOXQV>#gQ0Z-2R2WOABb+f;Fg?F)}qS7UBb6Mn*aoc@wjz5)k zfA-+7FBflTFIlu}O4Q=Yt?iF=+C60GclX>!i0>Vl-0UZh8HKs6d*3?9c@U6a-T#)` z8-6#*`tAo!b~Y`XsT*Q=L^t=hFGarD&ep_exq@pK!Y%Z&oBZvs)=PXdD|TC-xiA-hBBlO(!{~hWid_(61uyA#DsM9R+=G54 zE4++r<{}~bN4QOt_d40^?V*I8oR7ewCC{`T?UxxC%$3CR3?Ergc z*Ck2D?RqcBDanec%G~0;YF<=@&8oFsiwjDEUL|L&eEv0S!uPfZqD{wNCe0UzEvw%C z&f9W!yh|(d;qUu*m0q2$W1m}ey1dQT8~bXX9J+7cv75D`v)E4X%PH#SrI1X)G%!mI z>!VCSb+%TQy94M`VeY1yQFZoHm$3=Vkrie^@)?nW`c)~ZPDSb{oo|Q|Juy+Gq1p)Q zXnYO#WfZyjohA|1M+as^_#+BBWH?B_SRZ}90WcAwYVMc%*}x@n8w#$DNn+s=pPx-+ zL{BGg8%iqUiDP*}iJ0$alg^jg1o#{2`|^BZgh?U1L<$Iqr9M1An*^CG(Z|I_3YVZo zJgKuJkuQe0IJ^oc18-8iOKcJ^6$p!jE*-gCPZtqS09QYw<6Zr1gfdqfN|pw$*fHRW zj_-(J9We}Cv17o+i;00X38biTFd+~x52;P##)P;rY229*cP7Mx3GrY;Jed$r8!ABv zH^f0Av}~w2i7-eWz_@H&{84*`phH+f!D3RE{&^}4gB2P0J1~`Fy3&a9EVeh&LS?4z6^1 znJP~krV=Vo8w8*O&22}y+~hN3u(k*C7c zxbl_%4wIrARo|;+HjrYob+vS~b=X?kPaQ~k*EDjtMsh+I1nDART`U68qy$&od?=5C zHMxY|HNa!z9;VrF#8L;2DX}=ZY#lgyNgIZF^km{A926pgwL2;i?xNYyr5osKv(ac{ zgHSXmC7Q0VJ0O5HKjsPWqw{dI8nM|rY;Emo;JAAO9AiZ#)A{)DWVj~8%bCt^qC*$R z)_%$+E5}o)Rk>MFV|S;^69BJRHt=AU&0-O@whm}YSBs5pr$K}HP(nG!6bS*p4E8k$ zvB3tXmkAqeB`}`h{^K7TwZ+g`Th}N|Rd0VxSCay6$LSvCq>(f-6^~i}=?1D;#gyJ; zdZbE(f>-Yu{ydv)m^=svAvg{+2?sE=6+sVF&^+pwgLzxa2`D{HVRHgc^2tpaSO~_f zgsAH3zd{pC2^w3S2HwL6t=m9N;t)|jeZ`Ba&;-*>^YuuFcH6IVA&d(V_%g$ItV3)A znE)IIJ_q2au>^p%y&8bSaXtXw4#fZ*-7f*Kw#xzdBGs;;X$m&J11-SD;hO>*U%d8U zV>uN-yd~IJ2AU6bBdvb)UH_2-B}uXPQymTFMfs2>?xckXVv;0MNt}!djf0;p;Zvc> zGND8=2BJt8eAF0b{8MK$=`^-R0~!rzG@#LdMgtlRXf&YFfJOrv4QMo=(SSw+f2Rh1 zZ~f1{eCBeFvz6(BuVDS}ShWS$$M*raCj?7!dS?;W>xlqd?@s{W&h9h-?19t!0nNZ( z2*Azo900DxabEz}^_u~B@M8x6H_7({koE~cL+gEYYixPAAzcP!Rcp6|!jW$TF$515 zf(w3RIzk{5^6701IvPSWMxz0Z1~eMbXh5R@jRrIt&}cxT0gVPU8qjD!qk;c78o zcXhlwdErpACj9s%!wOOU|bb$^vOd$?r99=vmguh znGY==?mH3Yzqbtp?I)2~xSc2=F>q=SPdYL;5I=+yODG>Tj{WvS%SXESe>>6Wz_~~) z74KkT-3LSIaWqdDB7^gXcq3B1vHt}9+atLe{p-||{NwoXhVpUTLfO%%=d><{i_V(z zS@f}55$s`x!pX_eb%{REWd@_CykzoDQf{yCshIB1`}osB7+!N z3X|+v3p0f584QEQ(*Jqhd*8bEb|bU=mjCabKHq!Z_bksj&vKskocEl!va>BJzu94V zlPHA%qDkJ@HX}N6=^AkD%G{d};ttoC_P(~Z7L#27aH$UeMG~mqSWGlCn`sg9)btQ4 zkr2=<1U*80+7Qy5#Ey*}`>6C$DV?hD(@e{p1lbTWFINit7Se24q)--bYHN+_(i*#F z3hbdTa8d52SZ#NeGq?l*LT`U`R{`vyO&z41YGR zf%+_{|3*fqsc}gwLUN&Ek_91-vigwJATV-Z`lnogNpCD>`oq*?=rJ)3RGxnD3zI}Fd<_UC+ zbYSd?DaXW2z7YD2c4!Yj=v~qNFfip7gB^V6UYh&Yf0=d|O7i-$hD4@6AB&m#jm3@C zXY7%Q8>`QxGjy2y#$u+Na;z+8<$UIzq08u3IsRC_a{0gOp3xW6&!)yqe?K*Dj6VA2 zW`=}p1h?-8RhPa00mr&Pi8!fTF;^%sps29^epC;UFqSKzdN>78;t6a) zfU}W{3pJ2VbP{I;)MKUwumdPXB63^oM=9| zd_G4M;Ee5f+abfzmG8DDrOldOD; zuE3e6r<60d?(Q^aVN_xYM=Yi!No)zl7m6j=2T2l#l5qK)uFx-3xW`hE1UvGkt7m#($NyhN7hGRIopX@R0y((R&I%GmRf`5GDjq-v(1VqqgI)M7| zC}O8_(3_2Z;RGOLpy*5l zsT>hLFT_AW0-eTwC2>UDde&re;MOx&XDw1^soKLbzEbL7X#XZ1JNOi$A1Ab9>4{EM z$%Nzw9bK{h@kLj}5$EHpIO2lqT&O@OQSo4-6fH7N_^)JKss9R$E0`Hdw%*~W5*qDo zJQR7ae;m`#7ZF>;;ibzzRpcE8HlSd~e~TzkFTRaDYmtq5n^aV2AU&M`<3lrOAc{a0 zk6OljeCdaZH%P+GkCM(Gm?sJ?g+`yLf0F-Ye-w8hXJ~;IspXJlQ_lUgk+R7F6Kz6cuoRWK+hByk3320Ei&k7z$D~?%gG3E zMg__Ft-2W$(&cjMjg_fEKUf)BIMQW~*4LHkDg6+U(pP%oO515tZ-{Ln-Pz%> zB5q=mWTdpSJ!wx!XDdlU>LTf~_5Efl)BToFRoQJ6gp{_lIiSUOlaRA>X+uq7U$xjjMaE3WW!j*9 zEZT%hIp8y@smfyr*L4w}Tc2tfa^tw(9+f2{5v9aQQbe!}5U~Z~1fht}#<@E)B2}uG z@v|RLDpOyzi81a*MnFz|Qk~ZM9M#q9eNX*}{;1I^JaEJxVOy0#>$sL1!%720VE{5B zP^m*&0zGLzpy(mE0trl$xQQH`);Z8)xw8sSp=1xxH+02H;!x^nQ|w_ptPxTF;G9L= zRN55k=Do4t6X>C-u-HKzDzd<=F6t@AGbvqF}x z>?Q@eNgoZ^lYl^~Zskt9nCLo63Pi9hGo0!;KuQe=sNjSl35#^OF5oyJ*Bq!lkn5i^RK4S## z^P&D3eWPx#$#lu+ZmCRHjBZdbs1rs9jLaDsqfAkbC_9uH$_izKvZ`-{5WYLeq)nK9;ZB7Idg91VfUsSH?aI(LMoFVb`e$paFZpb^v>T z1E4dY3!p2&8Q=nN1Gob`0G@zu055R6AkDou(yXs`(ExFp8o;KxH5P1L^y`Xe{MC_pw~KLGV_2D*0wi~yi5tO1}s zR08B}q7&#BZNd?NHsJ(7n{Wjv+XUKzqUWpnS@w6i>T;DT7S(BT6400W@9Di~KQ~hS_DT5IiKI4*%s6NYFASrrnNZx)2#)N-m7}h5}v# z^gx~#fWd$%06ZNO*;flz8(L&^sD>6lw3(IwAO=VPkWGey%AVD-AU1^6fHdfk{zOPb zgiqLn2T8CbBW|{&n=SFSB|f$!)E4wb!b7crIsxi1O93z~$WxaQltm#VnEI{u8xlec zVWon>1Wv4l5DrOzmQtWC3DAv#YY`xk{!J!HkoFn$M*z7P1`;lLUb_=w!?tt+an&&- zF;F8GC~%;(V(+a<>z81#o|koqhQ20GdZ7&|Y)obmSOgOXGLCvtTMRLg^~_aAm!?CJ ze$bwnZkt66=?0_1HMPu$4ldD12Qoctf6G7M${HjNvpX`pmk{1L2_&Oq;9!Dyq;ndd zw{_9Uu}54@dcT_WenweAg=n9{#)>n!VG}aCo;S9r+Tk>I;Y`nF$8Sui-W#<~&q>nJ zB=*e8NrSd6yuGfu#ggYS4+f1&niZdMd()N|Z+`7uSnlW+r8%S1))&o|j4Cf5a_3hw z*Ul@yjd`%fw}-_N-olO>e%7^3=Vn+>yJOkCWzm$NId=;je*NP2qoFy^j+Uj=I2weM zubVid)WtRHSpK@FZ)yx}GglZ4-Ez!>{dw+rlf#u=^Fv&9$4%(wwF zT34Lb@;EeN%v5PbQ&RlpFL}WPU$*co2&SeZZf5gHr)n#LL zFPHThh$BYHhgENH#{wQ_WDWJc8}g4b#8r+({5H9LknD&nHtZ%61jiiwx03lj+>nC+xwbl ztnJkA7L6ZW-hRcJHkDreF8ppju-tphwuPIH*X}&xdTLE%@zm{I@ATFZcrWe8t&06- zlgsVs1KFE6n=iI2+r78u@;jA`j!R!|J_8uc0^lfwtzACHMea8O4n8DuL}(m_ry}%^ zP$oe)GrpOSeZ@Pj(4lwi4=1-3z9hYJEQ61&JHPf?`JLM{ywBV)yRh6Oyi{rZ%w7d~kDjty0@ly7zyxqT0mv?u$)Zt0j zUq=0CJJx@GpCR`zyy|?b_oFWM`Ya#SonO8?@78i~&rw#=1Eq4^ma^c6-L4)MDZJ)o zcF4G50vtAq>y&D#o03(rW3^L+)ltEmcHDW(E246P&WB}KUA>*DabzERPOA$39QN>O z<`o;?cwX`2wJqD8-)G?BpN5WF>{XGK7hr2zbNfwgyY}C2DgX7DVO!G$4g<0i;LSmy`_@k1UH?^1@4W z%U@^vyu}lX5@XkewM?8+v4|+L%P3oS@Tf2>zJn#L9oKt!Izq`QW{4g|EC%(Ov`1S6qW8=hE zimkGL^1k3G98$cum{D*AHIbJaSt%@bjK$HuH04-WlX_ z=w0>MW9`=mu9@=uw{xv8r41{o{o_cdLvP=vcQZMkXn$tD%i6autB=p$9`Np6VV_n{ zBc}D?yv{BO$z5Hg_xQPmnaAMqcAYwoKiKMs-i6{ccT`^^4P;6IM>J z_VqiuyRxmuo%Q-@8KSc-(oE*f%Wai2A-6)~SJ4^25iy^$`#g7CneG#IcFu#CnIA!JF2Zrxcc{?ZRrub|*KXJbGzR*(rQ;sv+o8DdV%x{f@ z^^ir@w^l4OnxeU7Q{U3!nAe;Uk&aI#p%#4(WQGpgeRny@2=9NRIBJLEF9%P4yJNmt zR=b#U`=|N3blmeg*!%GK&u6tQvvrIM%+@u@wRk*!koJu`g4y>cJk{)PzVA(QyDtkP zx9jZT-kj6G3m#9bBN>`h47oZtgza+-&YkL}wr?bO44GYqu7#${JN?6^5M zcxH4`{-ZVarYF9TI1D&pXI*_N*^a+pj{V3haqQ^!7Cis#p^twnYQFvc&9@_>vfTm$UWl$q3g+y*rQT_^#WAp~Gg3d0oDNblrL07J9Y{BpTX4SHR0Rut| zb1U^0RD@K=B_C=&sI1dE({1+sdY8E*FZ?!-|LxDWa_mOdygX4^?UTTrxl^ zrk>o8cLy^|iZ3>wYrc2>EUup8-hN)S+P)WS`Dcb%+UMOY`tBunuGXw~p}nVP`#Xf& z|Ixq0;Il8C!xwXA_6u2dblLZQ}tqXc&kPiuXz+w9`p4t;MP)O`?`UpwHY#~V&h;ig^(jd!;y zo}&|CcvvU*kH!2R+0NOi$yy7RwB1#_A#B)%guEpMpC24HI{CZdPyN|Erz^wWX7rD1 zeR}1|Gsl0L@0pswK6W{k_s#dkJ3B?2%`T}4F7YXueBND+^Uw#hw=Wpj}T{ll(i zGha=gpeGbw*k`iH{+GFBc^5TjR&_J-3bY+i{n%(*S3T!B?1L-0gu6WzazL{`0PMkIx@7{Y#lmPFYq= zP3AVA^$Q1A*{uIIxU{e=^i@j6x@W63CjVr6Al78kCDLYj)T-K@?|dxhCAzdXANhVj zu=vU>ZHL^FQxu zZtkXBQF-=LU(pQa$PK0wa^hE}q&yX=r*uvgC3<3_OhefS>S?ToJu~^CyHPvQ$Ro<_GA0oBuOO6el9LzI6KQ{i=E-@p#buv2MFL+l;{#K zVow0Ve4dNDtE-m_pUoB6P_c<_{x&>`n++vNgRA&)a21>Aj%n_g23PUp;EEj=2Wt{2 zA-iBwAYYnNSH^=$@nFh$GAW)+N;f8@8J9TT4YyFF zpUTlYlLXX8aLtR$Hu;SQ`qez7;b(FVxYmV$Wov7-pu8UG1&dD}y&#T)Uoi=K_N78< zG%PwL#D`9ehO2aX87eIsrIacy8w#l`;zZn3{MH7sXa=AID4-zZ2Yza6u}ivS5Uhj8 z0fb}%{9-Dy!vtw5ER8E$>34SW*C^UP?XrOsi>0Hft)cY7VqV!J1o0zZDQbem9eB*xb<8)?jJq>aet7(}NC7=kX>Jf1*Jkd{~>K z5MeLMhHl+JM~j6)3l%OOkV_1~u=?l1njY%}`qOoEHJh_ z@XPcX_Pd^?fm?9ByFM;C}|QpA#jFM(cxh%586?Ic{FSX z>voV5Q1~^0mk;n6m@K40j9|h#$f~XVCnUkNppO5n1m1%O*HNKqbRm_q*8Wx#nPjqM zksj&NY3CJJNOOe@d^lo0>KJV#6M%l=3jlhR6#%q`4FGi4`2c)+lmgKEUj(2vR042* zqa~wh0x_5R2rSwFJ}>P)k590ks6w z5>QJ(EdjLz)DlojKrMlPrvyH<{%2h}eJRJ;%47+A6x5|_%{E*g-v{73BUqBtZys^I zo(#bC{$v2Y`JD;C_uKeB0N$6Ar2ssJlLNrDIKCIab^TTVp0V5oz!&QK0Z98eK-GG` zu{E|d-H>hrsx}(8gT}Gn2x15~*a$B8vC}bJ36Dd+#-OtyMIF=QJ( zEdjLz)DlojKrI2a1k@7vetH4#!o|H21#av{ih2mPPXJs>SpmhL9^MV(yHCSNuuEV_NPTkJQP3DElyI zJ%R2Mrbys?Abye9cyNIBQQ|muo63KCB!`0+f_4MWKdnDLGWmZB|DCX5S^FCFu~$C4 zLyUxzjbkzAlY%LDFQ)CL@{bLCnw5XJOMj;Q4^#ZK+`rO3+OFDf%1iKn>skY}uL%!$ ze#($bw Kt4se2B=CQPql1h9 diff --git a/nars-dist/Examples/Example-NAL3-translation.doc b/nars-dist/Examples/Example-NAL3-translation.doc deleted file mode 100644 index dafc7c8e0eca0c070c200489f1fd41214740e360..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31232 zcmeHQ2|!d;_kRqlEP^{K>Jw2>*+CW;(8L4{LB%bX9AJRaS#V}>NilLs#Z1gHO;W=p z(@@G>awp3rH`El=N?g-i(lnP``2Ws(^JZfPtQs?kpkyZTI*5Qdpq$m3B%{&5|n zT>6{JN_X9jrE4L>ChnrZp1-H~Y;FF!y11@T95D%jZtrNz8OEf=?a)lhAA{J>AfEz> zK~U>a+HU;SxEAP$K(~&zQO_GMuE#KiDA>i5VcKfTBdJOd_#m{;G=q?CDHhrzloRL) zu~1HUF5LT~KlPC)+*^uG>6qRx0)NK{#0}^fBt6%qP(Sh8FbL^Fn(4ie{#Rpxo)8QA zR`J-YZvWix$S`t2&^sZY5DU+zYxOW1?GHjC=^q6l-$>{|b@%+!fBjdeN1$XVFE1nt z?Ri!#l(!UHDlh1x5L+rQqziO}drPs9&onmWv*~l;UZ5+;*ED|CbJP4U>RynS(9Y+L zh4%j0*b;rR%{5#ZW<@Qm2%z=$Ol|zqjA9M{`5b7g3v8-Vo~6uIr12MOsYa?)__3O? zN;XR+kxSJQwHwRE_wK-UQjZlYSbzU$Ry|fKmrGR90c^{lfT*CBZh?VpKYA!tvtm{= zK1;$X)7ccMDlMQ&SxV&#Mpj$U#f?qupKMsG??gW;?5C~0jkfy8j%Y)8OLjtV2R684 zNDk{_u{EqxCA2+&txCU@Ir7f>s{5(`J3xp5XZb=lS&0q zR;|OhYi@2jEo%E`)F?}-(r|i2swdHK8fUCaTn-~;GRR7z;}tSBQ=(Rzr=(S`Zd?w_ zlyq9=+scol=BK8*+n6UBWmebX(^<7rE+Ii>&^3-E#4G=q>cdZ2gn?zVofHzyb4GIxthLVbi4P=@ONi zuaiwzDdk!wfF(w1tD)T0a$?eRaKgOm8nuLH1J@Fc5yX4aY0C{TtI%l@VwbWy%ZO1a zuyuV;jXQx}Ls~=`|v&wR}3V#-mqTPH*<~ zBn6ACZDu5ygOCnvNXP0M3R3?%yY$_mIYifX{Ul=0Zc|qH`uoYna=BP0m{YQ(Mr3#v zz&LVLXn67k%yEH#!kZzEuN)u3v~voPjpqh$wn8QyC4mLzw20@Tkr1_27%@jJ(Xh%a ziAqe9tA0M!Sq++0CnShfYQH2|wnphUK%&T2=Lj~@Sa-O|R#%d%S}u{NNK`cE!pg82 zDrI&ShPXl_mMW;z9ATED%#uaos0XmD8$YY-XmPFJ8_-Xz$yO<}Er>AGUagw-S7(c5 z;DV9m6SL1~iM|bd1*Aj5G;iDt17`49jd>D5JZaC*TRKJUrz1gJc}7zVnBvE3t1#q_ zg?4d0(DEfbl%{OcRwO|uXo~hT=1rCulb$6Baa8qMsb?xD5+h**aa|8F>AE@H)KdXF zs;yopjA~?IsFESnhRDbl+6Iz`5&x?g7v2D~N(Dc|s-G8(>o36ceGZ?G^RYC0RktqhRJ=hG!e$FQ7n*A9<(S_tc` z4%ZwLn??hZrx7El+VfVWU3NnT5uv;cw3b@GDmAU#sEfLGY5Qtqsto43f1K6&g)!eU zeh~sYubl<7>t!>nhK=Wo2rFQN#jzNZzJe2hmW-a^ddk&S_#6!9W&>1OwIN2VH)#pk zzh|zYl?sXAiU~@o^TeoIymm)c=Y{FCSy#|h*P>&%DUMfLcr<3TmFm*5&N3m6S&=kl zgpp~C(k*!6*^F#juaj;*%V+v`amCcdw8#}spY%($7@Z@bXN)N=J!8U686!B8=2&A= z(?6~<&=l&EFb4TC$?2UTbFd*m7LDt@UUw)PHCQ{ZSSDq{n@9ttG31S5E!?=`D)@)S z5Jaq<5+*(mN1)=+53M1_>dcrcx`70T!2)~rJmChCAy143l2I*2)`n-l%ZnRK)$FZ6 z%*LBUFxynWPH&=PXu^$$gGi%a&kdMF-GoF1Vsz@lWu#fW3MmuTRJAc&Q6pZMR`Wu~ zQT2Q=-9D>2p;_b%F+`Zs%-IW>q1rWo6BzWDs5gZHoO#pt|(wu^sR-sogi+t49t^PAr2beciCOZsf zCVaiOUS;Cuni^&3qG?xyU0E~UsnJji(9K$U`ou1S^)k1@3^!|z%}}Sp7+B_(G=Hj( zW~a_5ZiUm=(zXfqzy%khnXy>U>epYA zmSN9~r1V_te^Y(5$3}}J3%Y%RqfI~n7oa*TVECcLuf}#a540s1P4%EaciY#C@un%|&#NrsuOyC4? z3#f}@EK$H{UQg z05H`7l0V6w>PE?f9EyFa~M-&C-rP8hbSEXv{4K$^ja8H0Ef$xdYvRcYsPD4`XZ=uo<8+ zcN?HF_cwO+zP@{ZYdwEs7hWuBLw?{IXLV{#eU%vja7TB&NFE)4rNGC)VSwzQBkUg8 z!G6GYUYoy2{eZN>kp7ETnxO}9$Kj}%zZ;K z8{HT_FeiVKhdt&Y2Ot!X1Dk;Mn3uwVR3H~90CoaTfl6R}6NY&m_!OwolwpPgvw=;( zSs>_4qPNWO~zk}t_N95N;Oo&y{q%l5!9 zfMoj<-~w3&YvsBT@ddzzg+2glfYX3YbF9CBmB0z$58x5-7F;D?Vg1*p8_UbB2(bt{KQ-1L zpozL*ROyR-a$8pkE{txBDm8jybYqmw@{M6NfBo7KMt6@BBdYM&)!atJ;9PD-8o2`8 z{O=jf)C#hx9mIGg*)SclD7{&6X&_r%(YblClcP7#B7dp9574q0tH0t>k!SG;Ti5(j zQEZmYUvHGP<_n`6up_sSSpY142Ey@y*t0N31Yh_WutXyo zJJMI7zXDw>gLT(JnrXcGIr5m6$;7~k15DHZ7w?OqZq)A(z!SXOh5J&V0=NZ` zz48E9APDFJBmpCUEFc%i2P~B%y1vk%a`5{Kz#{Koq4U39E)u*O1Uvwoz)w$L05A!_ zl95U5Y0LBhUW>D_lgHJtQvhl}1K=?;2qL>(DMIXuodG^LFufTiqhjQYn2{l=77*;i zwD(~me3(cdCe8=)!ji@d)UkU83& zs3{wDX+Sp#*D4@``^{o9k@hm$qrg)NeHkfpr*b`F*Ct#76Xf8^B%?$MC`gdoxbdHp&=ZW)yq3vIH@sZCQ|mBS(j2UO|0ou5J;7%`}9h zUbc31@dYl~;^xfcylr*koE{q?W<9E#6^Wx|JBj-#FtFiy=*z22KTC{E7dWzM}%>sh@toH9x>J;Db$HiZAahim`z!QE6+! zsud?c`FR&u6pp9F_SaMrnL03ley7ek0v5SW|8?5-DMxeq9NX>La!lZg{BD8Ea+q_z zZ)AEmKGXQxnZ&&g&RdU1DWT>bl&;Kv-_E_6rVRf znLGNmvStewH>?PM<@oRQ`<6wFSUYFc{>t^cgAOiEEO}#{-=*$$iir1KkzP#scvawq ze%td`NmhT~v~`o7Yq#EGx)n6)x_9ZZC1=VmU6>Ma_-x%1i+Z^Y_A797%aa@m zn6c^BM88iOuR0y)^{t=m+}?VZua5KF|K;pDXXE#&`{cAZkw2|y!;kFA4ed@e|JCou z;a~ZT>^!T-z$?e^w>jVaTDw-xqDb?NpTD8#{Ct?_By2a(RBO;|z6-(B?CXOQm1n~1 z?sP97%W9OVt;aNS%+4$Se35@b<8Ktxn@VTSFHb7$ax6Zl@#zb>HoLcor`Ic&PZtk) zvwr!CM`5Qr$eNU{EAG+v-ERjCe>c25uPEB5_QMO0Dw{U@bWPdKy{=7aH*b@8diWF7 zp>966$9I`meB;Na_X3N?$F(i6TX1{om)qOS{b|GO`)9Z2mGzHJnLHxLyKMBCS?~2M z`(XZZ_uYerUv3jWLUFMB+x52PWwr5m;B;k=O#0P;A;a>56FR+D;koapMsq$*EKQns zH(YhTv%|WX@4mh(BV}oPos4NE4vyKg^ZT8Wh?=CFyqBA}YtCC2cl_qDyKhPCnKcWS zZ2EF^c8zrzvlhHsyz$Gm%1NiT$hu|~%f{tpB?lGVZ(P)Fh<%Rjh>=apuKm7c`|Dkg zFvY)4Svg>S$f1|tDEeu?bbgn6qZg0abn>(ILnqFB`dz`nqTZhzmr1@DROpb_tg-sR zhSMWc)u&1t=YJdV^R3y3(>HDXrNV9B`GG&*deW}w#9Ol>md-eOaYW6cCZ~VR_}*pT zg7r6gK4`S7Y-GcUZ%xkhE$p@4^G>XP-UiRJ7Yf}Ox3ob=?LL+E+*3Z?_vZO=KE5Yi zZ*?eH(Xivi179^i%O>2%!8{B&h5V781w2& zhgZuBre5kFxbw;NBYT@Ii&;GB&TmH>oESHFPvsxGTkm}Qczk=0V;QXu&k9`f_}=yX zv(`mFd9t-fy;})y_K-Zt-xFK7=%Uk&JDznz2aImny2a=n^>#ZQ|1Iy3&wG(2ANI0; zvN+G{?x8m63&(mzb@*mOMH8D#%bdsMsE*Vc=P`3;VZDN}h2=IkRfjtaO@39}<4)U! z<0Iq09(g&X@17f}69;{}byl6dJGaL>XNS7?>Tz2U>lJ+8vv=K^@h{aqrhc58?|kEC z-(SkJKlo#Eujm0+0=hSOrCmbE@)oT>OrNz;>N;uRfUB-g$H>-CaLkTebL{n5UR&b! zIUj60wOQ@U3vPE66G-_fJc^Tz1@_Gd3C z-nugOmTm9)TOQSH`OenFbq<@PS7wB{cytb}b^3#()gL)~9l!YNcfre&=Ez-#4vl(C z^x*upz4hk)zOnxKgz|Z-L&T3_9}b(^aj<6VP`kS~)_pZ(+`HFnIo)|U`{!Z%a|Wum zS5DkN?7bry{$H*??JOC1-)&=?aDUad;%-g*?Qt0S-99(zhiNq)#gtqL$T5sQB#QfVF9{U2l|$2b8_^(ZV4=&Peb1 z(e9$8h7%*#HFB+ga;k$}*E6C4!>8T(D&5Vo&cV2)Hx&1O`oVvXOM|Q44bSDKMIU?p z$fH$?g7^03eN`j3{L@==qc47xvZ3~-`K=x~{BZdE@{p~2L}R|X|I;_U#@ij)w*1b$ z*bZMTFDUTq+C#qX#8AcS`}RuDG~T_ie$xwew*_P$nLgO5LAM>X!>=bMq|dt)s@$mh z_6MI;yW3CO@TlPH-c91BB@Y?&a(LLm5|L<%b71YE^V@*C+R+Gwh~4iR(T&zq4J^7-Yk;fl*& zzuDmD_HUIGHt%_EhvU_l;>tefLLW(9Qm*Q@!+k@&lIac!u3tM8{_(E7Q+`1Hm@K>5 z^O}5FvOIq9@${m38(-Zq__eH0hTQ5bmieC={5Yp~YJ)=y4;EgX7$H+eZ zv}Aqjes$m4^RVll$UPH}wS6P|{IUrZSNu1hT@utXA*dvx<(nV>?zNy(?!`@BhmOtO ziFvB(dc*B#{*sM&(ioF;Ym=FbUwd$Ko55tPU5g|*e;rhJ>ix-Mos`PsTRi5r`f)~S z(f77fFSd6JkMZeq{f66GKc|4{;vEa6TR-?{f1T8jpMo=2H*)H5_5INwmdH0>f2T{| z`n_kK>X=qMV)8r6h#U1X=JxVUXywz_Hz0U{s%Gn+^9oAyk{{--ja)Woz(wz6E4%L7 zS{iphJ7?+bMK%+^_1T`{G2sN$aDLKz&akvDMK*(AW|f-M%b0-aYE56d9r$Umb~7z#y86)}GQG3TkyE%6f zcSx0~62w_72q@GY#GSn}HJYprfq`m#6Db#~18`7MfoJJTm0YaBttulhO(h-+!g5() zNKjCCpd25Md9x`Q!JWNjnqY5MGY(g2qi~gy5khGpl!mLcQMeMProtyd4()}Ig6DjS zE>EbC5-Q{g6H>y2l=ebOdm$xUND235GiCT98a<-On@v~B;`jvN$~!QcxaW>nTyUX6 zuwkwHqcHHuaK{7E;T$ei$>u{Fj6Z>~8a^tyz$v?(2LL%B41g-)+g=~Y@c zmVZtT8u__Yj@GucwE=N5uFRtWv3lw8FzcGfXMDw5wmmx zOI+c@5^da#%P&P;R2DR9=iAsYB0GEZ)WKH7?Sp8u8bwr&TFBSPG6}fXU_XLhxS)_z zF0`jq#4xmP`0QY@8m?$_ZHG6XSxKhQ z8va{3@D!HX!Hh-gde8){tqzj}=xd7Rdw*k_Y z1prz4=4|SUF(jfRzJQ4p=#0<$#p~Ru23-IZ&PdFFJAPL_t7f zk9i-!|Mz>imi*%@0PQWoCFgc1$zRU`$lsp`(5CuSfX;H!egJKfzX#AUoC1J+aoQIk zzy33THpjmN=s46ifN1Xr%=!D4d~815m8%0qEyhhzIklU>xZ;K?A%~wDoh;SJB-}Oz z_ZTVGVC8_716B@LIbh|0l>=4|SUF(jfRzJQ4p=#0<-q?N4v@1;ZZP@Kc)iZ~@#GHE zdwY6kPw(sL9X&a=_K4~TC(xcBPxDHXZg z%>Wi?4tN7C03VCe&x_Z3K#>Lk=}an;2#n_lpne3_||urrf`b))8sB z+Vo(9FX{}kKKEr!M#R-m`%l!4=P8I|jg0WGXAMN}RZJSb4pcI!_%@JE9133mJ|8U+ z&iL_lKX3g+m;T*E3iddkNVU>8ki`3V)Sk|@iBdE;M@U~JS`NPGKXIJK?(^2)n#j@M zMX;~Z^FP;~NG<=VZVEir>VE_2v9^92?s%&ldx(iR0Xeezf@Yr9hV|lW=6}s(F`M+~ zwA?HSUE*JLBblkQsWq9F(Wx2|msAskmIMC>_xr_k diff --git a/nars-dist/Examples/Example-NAL4-translation.doc b/nars-dist/Examples/Example-NAL4-translation.doc deleted file mode 100644 index 0d459f7ee51422c078098309a2f3955a61b7ab2a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27136 zcmeHP2|$cn`#(*q79~j(UMZ5AN>p50$W=%o*_WxN8m5`dOvw_VEV*vkw`|#$=w7mA zOC)>N!o4K>&gDwi(*JqhnYU)9MRC9HyWjtt!*9<1oO7P@oad}>`4<}$t^1|vU7}>% zi8}dGR*z`Og{y(vk?|W5(jMFx_NA<>41*m2;8dCaA`U#?m`&8<>uC`3+W07TA|cST zU~~xCU`9xN5VxeHwuM}}ARyuhVm(0CjBm9|AwLV~ zew5Lvtv$05A!(4&2Doo4%MU@748sSee#!}$@ak-)K1@D_9%D24n0Ur-1pG0DK*nF4 ztxQMRKLhv@!w{FFCl^#JCsRK1Ti!6?OqjBt3IA4`p~u*ayrqna+!GXk1{EW17`bE8 zF*Xw~gnFagwnn)F8|4oTldeC=K}~*X?DzjNhd%4$k^58 zXTljejK4aYNvCWp^I18b@iTOp{#CZW7O$NC@A5PK#niL5HdEia+SSoV-CPe8>Ba_x zbOx!{B*yTIGm6Um^EqH!ZYZ%t6dfXo7IFBLM8pw@!-S$pj)W%^82I+>Om(rbwc~{F zLhXV%Vs2Z?-rk)OaXBFv@6Oh9aG<;d6vk5=0f53(R0u~vMQ~!c;AhgZ4JiMCfk2K< zi&ShJ?3hTqQBvyeY|7e+?dbS}BfFEMH8shpGvyRV$rr*CQ(|ExR}#S!gj13Tj)X3Y zrbCVANg`x5U{g$SbbXYIquVp8t#WbgD~gl0qjG5x9I;%ZWJO9D0A(7KGu8HMT&l~l{rSnchzhvTpbz-GiL^4HN4`SsaQHZ~-Kss>+c`1f{1HBw?tPgvhlp&B?L zn;@$l3^n&f&77brhC*FMpym#!wFoHmM2IjlN+{;x0)vA8!9tkT#k^3i7^f!=%&Qy; zHl+Uz zcMrM~X~hyH5=L=Fk_l9(5b7X_;Fc>kMbV~^jBFJ|6Qh?v9#D{U;RCu;xgb=hbbVx{ z%j%9Q&ea*#Kd$BTsV@v6K937as=8EwZuwXqs33Y~m#SmMTBBA*w#ipqX(dzF4yi(j z80E)w4o=QBjSwb1taYSwJuDU#$x7FxqbfS=>m;jbKC^Z$UsuY{#x)izzk-!11LYp< zP-PFovQ@D)iZaTyzNY16T{}fA4CN@zXRQ#(XugG>gc{T7L*dFaa~# zLCP)k(Zynduk(jau27n6gsB@CXc!nse+^{jpMQ$-UtB}D=jjO$0d@fH0?g|X5(roW zI0SeHXsJucaKK_fF~D38PO1UPfYX2yKp!{-oC7!wP&XjN8!!=Y1)y7>kY0c!z&U_A zTm_8)ECO5y7{J|;AK+)eJ%AdVCRzc;0CoVH!!6EKz-GW@Kr=Ws7XbDEwBf|u65t0& z20R4V!WIzgFK42kW5nu^mDPTEZ1t1l$ z3a}cm2Cx>e4uJP$pWc1H zvhkM*_7gxW*%+J;HXFvC1Ar?Vhj3L)1_1^Geg@Q%o2q1gH>)ZH0&ggrVP7zMu_5Tg zDS)YfOaSUfFVH2Z7Z(6fFD?e4UR(x1y|@xkonB0Xxb*mC{ zQSc}9s_?qpa}39fcnY^Kmi;9o`3+r zXh0Mo9*_d4E+5jh0U0U;em@3KkoH^X{IBP81Kte=d;sVGKg|F^fGGfc9pv9jo%92Y z@=?=>^r@#I0Eht+07R3)&}DDRSYYeJ>QHL5NM9l(A`(eBgbzUt08Unj(8J&*oB}mf){JvgiFGpq-ZEh0(1kw zEdqqozfmLt!hVGM2p|?sf5Ibg%XWjU-;53*j#~O85OM?q1umpkti1(k{2m0h!*wm9 zrmN1EIy51KgTX8U8zo{x#!~OfvcV>@nmKA|({w1(2g(!EWwYpai6G~_)iq4u1up91 zmSlR;p@x5f%K|tKi)}KjyHFs3`;Sq9aAhwZ!H$jO@0fpfOpc>bkCMbMGxGNqiVoUr zEWD8BJ3h|tvZ2}iU+l*uCv>QH`p)?0`vVT@*h^X&1z%V`Y2eP}du!{PEqojJWZ=k% z#L&2VTeiRZ__A$Qfvr=3`iwR^-ql+;vY=qlgO?_bZI^Efe6qSz7qf-@|{k4^EM^>DAv%b)%{;gkC2M1FLst)6$m+KDsr92}EQWvqSuu~gqGewp6j z?WdeML(?uB9WS!W@OIQ5Gv%@KoxK-=@4c8}!gHU|xbVD&^U>j>|MYn3@JMS|q2Z3b zJ)aa0pL(L@XZu_I$FdiSzg*2qVVkj+?%Tt8cr@KZ4Ig@{E3s-62 z8(x)c?fPZs+|s*?9#N(%wrS-QclS6OaW|&x(W%oLx`leXjgz+P}bc z^v>ihr^|NdIG$VWpFMS#-Gd$)0@p=-c=vUTnD*dKaPMC&K03>=%4e`&7q7u@5ZegpK`-BB+I5p@ULfgX1yof zQ=597T6=lTt%3*lX1HFsV{&a}Z-XIrsoDlf-1F?&`(97B+ibq&rjNx*JO15MjUGOU zH9Ng$Uc)=SdE$O?t*)gcrf2?6UC(THt>r7b-$x#>8q;-d&q0r`l(a4G@vL2IU6xzb zm0yyXUc3a~NzqzghmSjGp}$oE$uIflFah zy1SKe>AjC-&0B2UUhwjielz2iZT)YK{46@(-RjK*&xIK;esBKXA$@|6ZK}qyHwk+V zx1E1Gb6&}vtfYd0-oevH$5|GPyES)FuY#pZHW=m%9{I4X?`Xlf9zQiYloZw0=!4GV zTt4qW(6A9nPJUe$6`AGTZkoK+KR;mMI~P%LSFK%h7EC-A9=z7KVR&M;mUi^KlmR!m ztY*R2-^cqOOP+cE$R9>I{j&5NT{bjh@1C8)DK`%Cy`nPsu}M*Z zj_D=l>FtJT#;K1U)4br>p9c?5^twngUd`APw50v{AE&0@KFwR=`F`B$n0?oGbR0f; z&X+T(=hFLbzQX7JIyg-$w1v6&L*~sfA>td^<|!v#AHAM;A#7jP(;|bs;z5sIe{Pq4 zZRT9pwX-kXA6-Aa+09qsSM~Ci?S9egL(^jgW138!IX%KAt@m!Tx8C+inPzwHr5O@~ z(7~59w(@%A7S6JHSsZI+b6x*+=j@G5ez<@3K+E%bzN7L3GY=aM&~M_jzT|0X$*$EN zJx&>}Zszgf$%nf+_q08RcDt}GGBx4BK!>BBpIM_nbv}_<)J*NcdfnJK(ZvR_Mswz*HA)?y zR;cz;bfNR`z@eO;Z*7-PaPvJr=3#LE+!rB}2cOKE+wj!U!@j!F&W62vz7cp^IF*?7 zHL360&E&H9Q+$fv=fdXGrG5B_ytQ-#gg>zu5kMrF9d_4ZOdSBCnAM0EHoaMhuYaj3N><)THU7Z`;TpF-#m9E8=`>)P8 ztq(|!)E_>)(@fTf;%BEC&Hr<+X|Z47!fow2AH7RQB>XT$k~Li8-HTlZhQ%&;-azMV z>AXiHPR9)r9WI-Edc>lO;r4rW-_+#}DlypG*2P|QD5HDx0l8XZ&g2>JR)p63=$${y z>+prt`o80Wd$o!^_w?WlJx!OfDMe3PZA;nK`)PPUic^+fMEy0L);IDi+Ho#uXQ;Q=ivmtiLAO=Q zhy6Y~tkvL;I{;R?LBt+b4QY(71SL z!`t`Xoqyesnri3OGji9p;ev^Ir+Bx_bC#Pnzh`oY9er`u5S_-|j~Kf=_xB51_`q4X zS9J0>t1USl6Ei=i9`D=CCoyo?;2&K&oC`E%*< zru4{7zZIuik0^bArs%m_7%ySBX#0Q;7en=2Ck)RUeY;ojG{NFu%^zIYmE>Eh*MFl$ zZkhAIcT-rdn(d~&k2fsX&uX=5S7fqYqj6ih@w`7DiO% zT`h~eFr;bg^t;D4zvs=?Nc`;6V|q$go8GPe>f18t;(K=Q1>A%_-iuEx-r8uAcl~IdeD;hyV@S_v~TFJUmkWCDR_8%TH{9@ zXJ)6h>~;5u_7jhcvVM1+KXSVXw{$;ZnAs?MmX@FXajmq!7DRSQVW-4IY0O*LY)|$E z-yv7R(iiR>dSu9`sLjJ(cjfTyZw&bq*Egi``Q>LXoIW|XLrfUw)b$wtx~y|tDvhCF9;`Nh?9^3D~v&PZd&oSH8dfK`_EtYkOzrWAo{N;K0iA?47hQXzj zHG3h(946^DO4G1(?Lp6Na+9%aE#jwp+|eYVWcqj=q43HHK8zxE0xv`=9^p+26G9oEtxcW{jTx zv(WWLqwx8?ZTwnW^|xU=Efdvm(`#XBeo|m*{7$#^$wBum*KhL5%gXmDiH=+QW~JKX zlU9d=jV4_qO_l_#DBJznt?8U_hZd$IzV!1F-$>N7Ny|M~)N19nJ{o6+9XxpAPI=SS zSoZM6LUrp>NG4~hSfvK^RwSUjTC2$24)`gzc2mx%y!xrgXaZ~GO3Mj3_A66TUW!yu zx>OYL6#3fJAQAz+HDN`B=k%In1hgKnUI^*p0Sh52hAR@oW2ml{ z@HEN@j;Xzl*1PaxLqwLaK)A$?gqMDIGscIB0o+P1q1}* z&YZ565fVvMX9ovy2rLyjVm7>K59ksso-#@ zu9kd>lO-jI1y|@;a0Q3A$FTMo2CmSt;NpaYz@7wB$Q(=v#7jfU(>OCB&P7V2tH3R7FvXsB^4&*`$z*Am!*R{a&H4%X}}iB5-z>UKMI2#8Th1t z-k~>KaEnFTa3ewxaKlj!xWy>{B#z#>0YSVv!Q*r3XL8a!P!xe~Be>_qZQBC?W9UOy z@Ze{13os!VOj}l_0qJ!}ci4RL=?!rJ{ECU&nOI8P(L7uothM%%Btdcev2>al%03jIX=p-AwbWVk zd50{if`$38hSCx#;s<^SoI9XwLMEMfH~`BBeS_zNUpLhjLuYL%Yp`;=zfM<`0={L^ zI;I^#q>#1nsHhS9Ip*-Sc>t>S=+11b)vIH2NyiUTSR zs5qeFfQkbu4yZVw;=q5B12ygcS=Y{AOJ$oIEnEuwf4kD1xIcajz%wV<<+>7J60PgE|0Pv0F9snMy9|9ol(}1e>`_=8S zrQ!N?8IZMFyEzn&^+phV@L(ah;m1k`@+5pNeT+dzLx{?#IH2NyiUTSRs5qeFfQkbu z4yZVw;(&?+Dh{YP@c)JbxY@;RFz%u8ULE)GxE;oOd%Uy9`+B^i$Nf9*&2gWO_y4%> z$Gtr6^YQQh<9^-*fDh$xPmlY4Ge8qSQviJ9LEo$6r&PG*#yk|*EdiE*Rsbu2HJ~*B z<88oh3$O*W1K0uV0c-%qe+D?o+~`NBOx-wuFYScz3XLK?=r7+y@QSW3#*}EPF(sl5 zY1Kn%BIFqT3m??UnbE_9^j}7IhOl^9xRcx$b#h5-?W|8&bonT^SdZFd#J4BRU(X%{ ztrw9{_&QKXLg3p#e2K_>0azPaO`&`oLktgUlLymyqR@lUgm;TrDt-fry!VCD!{|C; zhy>mj;une48yhGeIgVquw(W0$}w!NqNmx`j+x*rdYSw?ALrh4?>)=&Jm)#fy>~1<`dY{YzWB-Afyh7A00pX#{L`onOL1awJaKvE81d~;OlO4M5mKw>&%cjEd|}r4 zTs2-b^g}u#q#M8$%Ghv6145SK#!*g$cyRY4s>;U8fiIu%0zTeQ$d`w|k57*e`TO|u z{Bbnu(-4vTv7u0yj_`OZi}^f=A8r z2IU^4j*;1TyW+3oL;n01kOM9H2>kIyNbQeq{B?P-gX)givw!|CpAVmsw!UaP;mh-~ zkiXwhXy|_49{JGF{d_#14u5PY3dSY0Zx4n;#I3`KVUMs%N|7ow zXSGh#`@O|A%}(s*+sW5E(9IUv4#>!q$mQca#WJJwS146_iqL03{~FX7Meq&|L@7f2 z+{EMkI*R=}`Arnl0vRs{jg(k1*xIW#;UP|xCT1q6^y`9=x=eYfqCNN01S8aS;)otxxy)^`cu%5_BT`)NsR0X3c z>I-Ua8W00*oQ!F}F&bH%S1=7p{HvM<_1;0OuDJfgfWf}1rLaaJY(8A83iCGHV2#j< z93EbeUS4XPL29k&Yp|JYKT72w(R9_iuF0UaaMr7*RQd(MlvT@(1O(Q|jZ`lrnz+D; zBuZ71gp^dNLRDkm`WJZ-%|ME&J7WQTnZcFLaEUFuTD_XPIMdO1UcT>R#vQbfdQxL= z`s-xDHXEARU)XA@*6}5^(IXvJrs`gaF(;id8P_YZdFhe3PM4FQOih!d%QEzigPE)h zHtfI1T7)BPVSa3@q7CS8>T@`A6L;1f?(5{Mb|?CrydFujX)+E*ktkLwcuvTl>(LG)1?v23t{aI$ zB3CAltFdc+)v*#UAcGlJBcEVq(%4tO=QZ9o_34If9Kxomu?N~#X`2b8V`hDA#`qbm zrdw9aLVL_CPzbASI*Difqyhg*Ptp;efno1|P^g*$vodANC3Jd>(9oV4bJb%x>}^Ka&Yuymq0DKTMr6&&LZ8_hs5L8ju8X0f zX9gVFBga1@3SKwbR-2$yWJ%NM@>7O5UaHELV$CRq&cfL_IOCb3#%9X0Byy>K1+rxp zwm@EgXn&X?8SV#|yA5^(FHxRgT})eg)n>}*Pj`7t)3`Y)>C+lhDWRom=Njxsbrt|u z(?M$vrblN?30}?d(@t5Li4KF=$&k^d5>K%zTPaRUm!`@xq#1fz8C!CJyf`DQZY8l= zNwN1=4sCE=vmbSF1aqC(kn49YM5PH`(jgW{~ zna(c3QqfeI%4<~N-nzARk*Y5x*N-vArPGhSaw+McgOlbnIz@0 zE^2c!Fq|>q5dNGis8;P&y#U+0YL>FKJ#~zJ)z*A%hLwq)=@jF+U#?Su_E@Xbw$qGk zS!ybt4Yg&4X-sWGd|{}*=y$kfdEL4s!71_eVB1x^Qk8-zCT-3Vxl}bSUC*G9cb8ml z+(Q68eH?EL{=9-TiSeb^6rLIA_;a16&RAL3*fb^78eyutL?Z;N+cQ)zSV2`e!5XS6 zb^DrOgr=a}*uJ{j^QsdH(@@>HUPY56TMtcV#;gNV%btiXh&~^C>4;tDIhb0YI=)A# zkX9LE=qUmn@#$z#BNW~wSdkcSM2e4w?6w6yvab=!mCQww5b5TIp2M#@0z2}6}43nWZugq)Yh2#J-j1Oh}wb!5wzTKDOm zx^)ZOr9P4Bcb8Sl$96+66Di{$t0|=s!eyGLws6@epR60wsXOOu)M-{Jvqq*&qS`WL z6RoDCIxSrxP1b&3t$(b{7V_zgWJ=5Np^b*{^2M8RLDd7*`~7TvPbY~r{wAW7Y>j}wNrV-S{K zzkH1BiS$lybUmh?0)=Z=Q~-u(0mM)yvi#TY7H{3H%Y9eE53mVOoTpeYp-5s z)u~~IGF7UQrAjlzC7PqPDs~ep)PH><*1dZB2|y=qOrK8KFv;WSBO_E-_mu2W~2E@FfF% z3Ng30x3ITo|Jrlgf6bf0_|7L1OaWVgRV_k#ftlbqaI8&81egT&18ZAC`hz)OH!#DS z-#x$_a2hnSC!`N}51azdbqJAy)!-S3z$ZW|uns%}J@B>B9B>M>z#HVlK^B+`_JH%i z4`1+PgSns>Q~(QnH4zKwTj{$2{e+?iSOBg7H+(WP1S|j*paVWx84tb%cR~9`s1x`e z+y`~=l|>Yo3ATWg4smFhvOHlu>FQyXmO?*^vSN=%(eJ$K1KtLx z{`0{S@EWK4T!c2zbuHiusQ%{y5%fJ5%mXU{)xQ&T{yu01T^E5hU^nOrU2gzAq31I2 zoED1TOb7otf$%bCKizCbbx{s(1KR#ZfDZs|dl$e(@H?PwFbB{!_zkc`o3jGWfVRW; zfC%kwAy@>8L2IFq`vx^~HoV08zlC|9?mZ0{v56 z%mK6?s?!pEKe!66fyOTA2fz(*3p8&9oq}|51BAH}G6u{8C7=Sl0RC=-3ac7oqQTMt48gG{g* zoCWpTp)UcW!3^*@*b9CKZ9NH@3{C+%FW5Dh4;}z7Z~RsP=mq+M@gN`U2N%I@@Bp;( zAtVH3f_(4^C<4EL2cV5FAwgge$Oa3*67U(=2<`$aKSEl9P%r|>!QV03yUvXvse0=Q z#(L8|%nXhHhS9dz40>n|dV?*X5%iD-#)8j4BglUY*ab?!Nze}R&jQ&XA5fiC0IHK9 z&=XL-ybGva_5rFF59p&EFtz`GNCtxTPjwLm$^dOAv0NK@h_C_L0N+mfWB)xc3#Vo>MO`sfD!#`1f z6%JB?0?Y;{fXE;7ZV&@L0gJ&-a2qrVz9qk$Zx0wqWTW5K^v_fIsU7s%kR zJ#$YxA83>i`@J?qRN=U*rJ0CWKtG9eDS-Lu9%tGg6@la61~7vz+kpVk9z=sQPzcJv zEno>9HULo|0Z_e50o8j7pn4wzsNNNT*LynlGk^+Y0{Z(hY+uOtUN}0>{a1ec5B#rN zm4E3`ZMHw}8IAgLeS5baPJ|vy5E2LT(Nr?*RRe6yYS90;pzTqpmn_6(bNbOS%}3e_ z&^e=XpmUkw1MS32`~L|Em{sux)?wr|U$eTt#5vB4bWEdup+#}2kGQxZv}Li4wF_uf zu*A|8xD~_87nh2hibt8-6_ko1(~z8L`yZD;l7$1Qi>|=d%mF=xIch_(pv%H!0a*MJ z0C&+Raj!QuWxC`ib#Sw^sFX#f|z$lOgazOzwbRSLE9X3=Bd0z!$T>C2N{M+vf zhU^A|C%^{sbOHmxB!J~!(x-|1$HnT{Lu4SPB89)Vanhb`@?p2Bq+TqCnyIGOm zL`l*~Dv=O5qFw`juB3x2334UDt|ZzO`ob{B8L1PbjujNZ=b)WBmmn8Jk_hqr%Fpnt zes=b3lp}tzE|N$|5^~B!UMi#;hy8Sr%=}FwDTsR=# zzIx6Nqj&o{Mm?VPVoK@8^7Jk4E6R^7jme(qdECM2;@4iIXHRWk>%iIUo15dd*m$X0 zImRDZIDWvI*%y}7ahms_|Fr=lQl=$Nys+}ChtF=e-CE}17iT`D&FY7>=8Y&T8+7S* zec!eVKkt8SaY$#UdGgtY&HD$k#Z{EJ*C3l}awR6o~U_1D$eF2g;mmYWguEMi8(${+Qq^kjEHy(+;k4%@!Gkm=1->I{YLPT~m?o8W0<=DhGj_-DI z%ko)K(9LJrL~_pk?G%@$XPVwP(`TPm?X5Obm*08(W$24F`A^S%a7Em3(JHIm=evdf zka8|7bm!ae9GJHJ3pbmgIcd|EjX$$tP-81*SEizGj?QIiv^1tR|NJt@ms^bWkI9X%wBn*a@}s9-yrdFEFG^eYF0@;%ne! zX*x9yyF;I})y$qma_JZpctqr6$^+T!kg=YBtU#N5F0yrMAIx=$}Wt8Cul%dg6A z@3U)Gw`JQtKaF^vez=?Ky>VUU72o=$`6HjAanT-y77Ol8UBA8UoL@K0dVF?kUfF=i z_;*H4bSWEqCjWyTWgpF7?y!6Ch|6tbMkx+Oz1Lt{URqnnCpK62%4OdU96CJDFShds z6;AtqZ8H1IKBaN<9tNhL54Bo5bM9NalH-@e)JvXLVr88mPun99?94tIk)ccDQ za_KjNms%yZXqxe4!%w3VGESE?E%-j@%H3HZJibJD=Y?y068u@WqoJ+&|XnWX_PimA~(9v-6KX#&vK! zp4|FKzR#zBJi2)xe{Ia)YJ0$;ymYvhubDC%ytgxxMxE}GqX#}YUfN$Kl)mZTVet1`^Xu)~xjm+KW`IM_?)Mat&VG-bde^TL z)3yHbj6ZSN4(sD_R~7Bl zeS2>7kPVmTlZichpDl^|+T)iUKYadme*L`W{f}*%9OBbz)02px@5a74ty!t7M?!dk zwc}E!TVn@Up1q`)el`29dGCf>p4D-Ce`}w$R-0s3-)(Q}7#i@}Panmt`lPn=iHmm* z`Ynr_ooY91SjcqIlk+$BHJJ0;#)ju(%jd1~mpqGnI(%xUA*!vzEFRuk`|Z%2xi??4 zdGK`BmEi{_4ocr%IpM(Y4~`~#tzY+3ZRw!L_8Z#S{gC6UrO6#z8mdn}^ce zQfJL*J^XZnq+bgsd1%4lTlaU>S$p-|AH(7b{I-1q(MxVA9{>8Y*IwI3 z*IXK(%S{YB{?^fFD;0$w?92PMR&M#1cjts%{3L!u-A(gbKePJz$ob{|Tlb2xzJ2`b zo}S|@j&582;8A49ZDDDpg3xcZMDVtsE!wH?*! zd57hLhfEpuq-;6qv}KLk1;2X(PM==!T56|fi$3fd_C}=L(h8ed<&ifN(stGvP}*im z-8HRyMV0!b&HlV7_4A+47rG69`siTA&EO>2)OG1!^=p4L(Kcw@u>GTc?Qwpx;=^y6 zUOKWiFXpLj-xbb#D+2~RoFodeY&ZE)u0z>oQL9hZrp~r)Fm`2ES>*E_xqC}~tn+Te z&H2-0HXfUM1y)*y{8*WKWJr_NMdx;X@ksWr#kA+qQSTIly7z4Td+(M5k3RD5IafNh zSLBC#KK!!5_{ci7nqF_RdDY`AhbYJEpD#+3?yBg$_tR&KrKRpa#`X?5TiB%U&Fz8K zFRmTg*E+!c(kaP_(uY%<@O^Km%p3b=t_s_B}-fOIJd+4T6l5g8|MO^NxLdncH7~wp+U(Et6015td{;h zH??ztcR^N~#jJVF)|V`g8FC`2Xx_#*cMKVs_QlYEG5XJ3}AYtyg(^u13b_6F~raNOhV%=62}S6ubleD+gcw^-kjAh*e%{pP%& zbMD1W&WDfB+KGOu>UhKcSiz?oai%FcX*@sE>B-o!2h+D{b;jISB)0ZT zsXVd8aZc-B-YqTq(R}K~4)%fJu5aADWxvML#(Rcj$3ofGk3Kn2FTwv;zm!!?Y&u^1 zaO|Rz)Xg{F@6xwn@0q7NB^Hl*=Y3_+tp>?+db-E9cJ1r#?YAJkPMaR{3QP0)Kh0ee zylnQsi!RGPkJ!JpH2QJo#3lDWHk-KoZ@h3^+`EiRX*F6tzGBeqyMZ@7Q-iXLJ zJE1&Xtv+7W%i`eBEnD`SRaf0ijO>=iU$Wv?V zCcIHN`qA82A7kVy!wD_%3sVvfMKmcL)0Yx6FcGF9Gy+W;AJ@_?O*JMF*V7UsBKjk` zmSi|;Kfg9T>Ku-NkeK^@j8GT6gX$v2uV5$>Ws2lbmjV4>_X>6qXQ=RUGJcCkAq{mI zC(UpP53{e`S<*2=lj!*Urb&;$5T*Rsz>?MxDUVO4Yjq|5**h?IPJxM|W z<|Md++u>tyo{dpo6Trs=@Yl5GW7_jE9r&0Id`uu86X+sNk;@cgP$L?+h?A7^Xf}f1 zbMXnI(#yePXDnx7>S(3@QFzSAaKr-bFcU61>7qDr)J4dHx7e6O=<5>nkqLctfj6K? z3(yMC4Ct$L^mVEzG5d-OeY8p+uhAuTdOe1@%pjf4ChU<5~!QdxiXR> zmjJ&p4{LBhe_lTc(2ZVOS!sdmZSc=7C@~?W6X`ho%^<<|-q(rkhsmmn_%gBmus4pG zzOvUw3u4)8yC7CXyojHkzm;7?s3)^g!FHklUI6}7R?;F_lL44Nj{!=OjlVROR)^o% ztLW8qM$G;`zxKW*F6`dC07;2NR_2x#mLhYDJ07GWB8TjvYN8vH5yJkMFQ=kv8HCQn zrN~c=xw?{BO;F%`2gd?D?y|Hr6Pa0Ci7fFLjM@0Y(}P_4rym58ia9+MBA$D>FuB`W zS%~OnK@CNFqqU@41jH@FS^&K#$eX#x!IHT_WN}ACmW&rusj%CpT-c4dUWUBry-1^O zfteW*Sy-Z`R^}qAd%YXIkCu?lQA}cStipN)H67e!lZ%D3QW2iL@rBcy3Lj}O8|H$R zT!n@8=I=Iz)k$E5)h_ECl0&92j-$FOU*#NBEZEA<@-0emLhI1xZY4aLYaAOzod|w` z{%z{$Xs8Y2XkZ>y^P%^)WE0T&>xe}MjXmYy9EIPOpgC7oQWt94{#zyR0-o4PkH)Dh zshIZZ{il6W9KV`lL)x`jcN%>e^Dm>+K}gS2T~k}h1=L@>2dFhH0MwH&2h{Br1KJDh z2h@xI2&h$506M<0Kw>maM})NVbwWtpv=|{>>2ya(^SOw`X~#+PpqsJ#G_BrrfFmC{ zNSU5Ue`-wcy|jKbO}dg6D@#aMW+;)hI-1nhBlo(?a)`spL{-8G|{E7}I8w zfJp)-378~cl7LA9CJC4%V3L4I0wxKVBw&)j{~HO=$u6A+(>XMKu1@FibUI9*+tX+E z^m#pfMo;JObZ$=P>GWAWo%hqZJe}v$XZdtKUmwsH<>;KA&ikDJelm=CQBL^s8+~z3 z3|ayg&4rL;ll4%z|_fY(-tC-4H^zz6sOyo*Qt0llX^!VVx11c6`>0y+YE zzB9s55C+0Q7Z3ru0($;Ah~oC?G3EdJM&FoI;%zc9iDJHdOUK)AHQ5>xOEX?Z)P}5T zQEMV(7xNb%)M;&_?zhMrlzY&uJK}P=ct5Q#>a;F3dbbV{G5J%wrR6Z@#@4tfj~XYo zL8yH?NyOKIN|JzY1L+%u{1<@i71jT3g8a>J2`_`{uhyLHg4a>$W{LL?X|D7eNGkgn zh#o*?}q(eUPu{Herg+cmcSco&szya+6-)VyZp3FhQqllphk%HNE6eKi$p zh<)&e<7j%OMq6EYFFtQ$>rXSNnUz;xq*uwm`V?z+_Rr)`ZTH{c=d@*H+Sf?H4B9tG z2Tx;!zMJ;JRo;W6Z_tTDg1qo;K!7+>nUG2UVRdGR5ZjNQLliSGp!?qZdGBEIFyx!D NH8X3|)&Btr{2#wjnScNQ diff --git a/nars-dist/Examples/Example-NAL6-translation.doc b/nars-dist/Examples/Example-NAL6-translation.doc deleted file mode 100644 index ffa11f4ea0aa853873bed7b5d5fa5cf7a65d9db9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36864 zcmeHP2S60p)*d=42*HMmIsz&vZ9xGQQ4}Jm2(d+DU0{*bWfv(5Q4IEoF=8}E6D+YL zc1ety*jp^Ip@}Uf5nE!78jU3u{_jlLon6=klDwDq{TzW0hCU znqls_>>?pD3?z%g9w$KzQT|N-%Nz+i|w*r}NNV_5pla!l^MgpML zlZ0XX+0+~DSW-U%QI$z=&6fL@!D8w*pA`#M(}sE*tn!UNmiv!#r}!k(nHJ_^9--W{6CwD?TM+VZ|p~_ zLi*=@Lxzz%M7^X!f=a<=sg=pfM0uuCqjqH3 zn4ay}urQBo*4HO@5bt4ZdHvhs8V zD_3P`Sf%t9S4Y=$PMN0p9Iz%Qg3*GDp&p-EL_rYP0JS!D(*XESrs6xt3m zQxs}r1-SP7*cy&(T;D$2pk!rw=5r)H`-QY^AK=$Euo*j6){YHqFUw_X&`|#}8IF!x z*0(gpd#~oreZcK8Ufw!lr5QY}-kbpXq$t2}a7D+W%oKSh&!KD^HCa&k;%JRvCj>^@_ zRJlr2(myXbz8yc-P<7Ka2}-p%EhO43%nG9&a`jkKDogXN9F5iMkXKpl7};hrzkmSf zY^V%68`O@KwGXUFXDcQ|H+22EBXld61fCS0x^O=&C9T^SQo;_;Qe zt{VuWlJh7mjF`#IA&(qESp2xjupx_=R(!f9O_83dEYFCg>D}WhYgHj*j50Mwk@c0Rsw~{ckT7qai4x`2lWSW;xpv_VzrOZz!za@((xqLh^~-U+ z%oWAyHE!IWBo3O-8Ku?+N>|Q&)1+6OC@){%vV77f)fn3X{DL^jLJTO2Q0K4$FLI#t zSVoCw8ElGtH2e)MjTx*;o;Z@0*etb5IZ~m@VUux}<68!sso}~?`Nxqe)jsdClpB$7 z0B_mb1{shFZ-i@5M-|b-uewIm(zHbp=;d@#PZ>GFJOaJEp_Ybvsk`URo4T?Bue7n| ze2@t8a|FjTTo9jdohX>=*U8_DpwVWgXDNKhIB7i`-VH75gOcZys5RUk{DQ4@YlZb& zXy3S>mt=BrN|0D(j*A}r+L#pX6CsX-&!LfMS4wWphM!r9H9Lu=*&AV!io_}`k7YUT z!$ygu@_(cbjYWCYkn4NgNfpjm(>+N2Y^ek=V>^q}KssZE z1&#Ar^k!^@+QI9pFhR8LLHR+g(HX2zDN~i|N(SlL;NUMt(7Gsq-xkohAhi7O4s-2%8xGb8 zlm1!t;cbDq_rXcU2VRM=IU;z^;r#xKDHaibbemN|J)Kp{7$aBfHh4JysV%qW^`;x; zh*zsJ+L|IQy6M!Kwynxj8m^9BqdI~rJFSQ@TK`NQ?!#)$WEpS4m_BeyQ)y2@!SP4V zYa_SKrQ@euVqZG*-ZNjkLibAO-k`mz*jfi!``uW6S*8a zBg`aDiX#;{h#&;tTct@HsdXaw#of!_2m3H;ACGLGq29vE9yMB#p2MOhOSdvu1$RxA z{Y2k@E@bRjUtgAMliL*S!R2wv&Xq0Wb`dSS%8cde=W-NkDUk6L81PE)!5mo_c0tnurl5N(YbD(@wCYVL&yuXd`xcPych7c$SwDl417IDt5h zp$J$7ebWhCYsYoW<)jT-X)%(J#qmMQxdiM0fO(1}HX%n~H5xU_NOFgHYu>|98MS6y z3<7k-mCsBAZRAY6u*=ISqv#hHUxv|xp@EU|8V^V$PbMlev&&^RR8yyzk`+_OX;Cc< zIL(uX?G~+y%DLI>=V)w}>)6X_%ipZ59EaOTd{U9aMpiYVpW9f|`b&D;)l+4yxm2n% z(=|z1iPDE|+J&8SI(UsV<_(Cf(bkbT17h@Cwyt*3FQbKGb>1!t@hL}#WYypzV=?w2 zDT6&3*P}-y(l9<2N#Y*VRTz#@yC&(;a>+1W=PBYHWXO5%>a2qTPg&s*O1BO%Y)B^ZV}6Q|6N-Fiz4Sx z_^?BLxW!H;xN=+r`s;_NI)YI~8{$S7-?_NJ4)x(yL-L-rju*dMrT0*{Li>mg^ke$+ z$k8`FWk`^iA)?pN6_iOS(%B$MN1VVo_e(d;IKHAe@Y9sTQogK2Ut7XHK2$41J1@x? zqq`c!AA_w+3E?__8SbY}JNUWo)zZg9CWwhMhE!21ueJfglO8<5=N8z11r@y0L{GuR zv4bcs>eA{BM@MV;Koz}7P!Tiqyr0TVD}C=$BvGr~64#Ps3DqJ?T{R^VH!9J9PG0&d zO>O&xaRP(i%FisF$RrBQv5NLwcvk5MF*F0FoJ7$dE02cq#3j1Y`U0a_^;f9)6T;HI zg+u(}mAo8!g`l4N_RwY(yibLOOinM+mg>5pGk((Yd3ubeES-$Q1O{s(XlPR)cfmCx zZsPD+qUx2I9eRGSp`V~#a`eccQRxQ>3RQ-|CJT{J{?K(ckZMVma6=2j4=>QmL&nEq z`a__>YH#ramUtXxoWnn10`&X zu{I#kP-41;Th}GWHg2DZ&(o_zSvqAaZ!+ttn-JU>Y8yWm>7r>=;dK1gqeIj-_+Yvc ze}ls5k4URrcs)SiKF*|5OAJLgrU}yEUJ@`Khj3K#BGQpw(aaIYtE-{M4qhydR*sI= zj>2C@;rP#gWA|^S5a0Q91I7aDfd@dFY7Fxxa0IAXonfMZS-@SOO$~+_2CM*X00DUO zI|JAY)O2K+2p|*q8mLwiU$Fom0r!E{`1~gyxCAuES4J%WFJL?{0oVp?2X+9ic$+*0 z*ay_Z7d#pu4cGzv0W`u_69a*Tz$G9MUroFTtO4!4g z;(%qqJs=ogSi}J%frY>}z`j1i^aPZ^G++yG0q|I6z-r(J;18gCLyQ4f3_O2m z>fgJbp%Vk32fqO?q-t!w`1dhH$9MWdsS(Ly2IeEpLz;Iq=Uj!kHVWx%Ksx6JW3F8W zt^ih;XEg7|0yOXL1LHB@YG95z06qZCyR`t#J15Mw<-iKSEb@Pd2L|#dS$qwU9Snip zBRiN1YzKA#KLTV6;{dXS(}5p=AAuJD*~8HQ*~7KKGvGPk20KVLaiU-owDZo15C{O~(JQyY&SO**eZUALDj*5i4?KSGul)x}@T+|pFMt_FbCG1e0w9?m1Kc3rMnDIEtR~FOLZp6}j|YKx%)i%wbb#jNT7c%|ZNMz@e~1SL z@+Vnj!!}yO9)18cfc9#89R+)s4lD%fz!ok5 z8pHlI0lESE0J4csfrGGzX8Hd^JTQ7a02LeME((ZKhX`=fP%mG&V6Y=dKY@b*1My3p;yfK zg|wSWpW8tg2kaTk66f7bEi4&ph8dnj+X&oG_tYoT7Rd z)cQTF1(4lkS_jQ0p*+0|H|9ZVp@UB1b1h5A`U4eeU zcmP`lOk6iB<~3kww1stQbTw-=kO5=@xXtv3$nKX~B6YwnF@M-HJsAy?&ZIJOMun_b z0GTJ##*+#0WI{ceXivxsi<%o+M$OK#j;37 z!6c)nEcBI$cH?oL4h-l1rZFkVdlmGkahHx>jFNd!x)G^EBfgaYTL-2OY9ycq1xo8v z@5a=71chyV#+I?DZl&T+Y>*?TY)hsF8u4OAvJXr5AY}x~0&MNLc37qd`pe+@wqzW* z4&%F9S=YudFp@29%1q4PUh5B>xq;)gkPhskQD-XDnM3>F_ir)=`(>x9*3LdMVqbuB z)Z-~HClzl#m%i0&#ku24W5(qAoN{u#`kC*DS(95=JA84>?JwiE+WTgDI42xmFt+dd zSyz_Sbe;2{&yBuAQl=#3URk;3;j>@8x1DV%i?^E8V(r6fbB3Hf`}(zCYX^8Q_@vK` zMQy`e=cs0REdRmIGe?>0HsM->_O*78?=u5ng z^k>EBvueeePk-4B76s!jv3+Pdo+A7E(cj6lPJl%Y)9y~$G3jLPYp3?PHXH4~qM(ca zvRvkp*IOy>4KFmjbs_GcZS`&Tlb7FpysE>?^)sGcn)?e|_ruk;`!09scqHZ0=nlKy zns|81@=u%D56n)Rx@_!)O+&ZGpIjDpOxAEk^yYx~U7X%NAGf{N`p!uw4?Cag7ImR@ zg6CVG&K@=NY?Jwm>X!uf`1bd@z0QUVTR&^%;nI!!0*)?<+w;~2pKDRp>X5lTlvfiz zUg>|O_l|;Wmjg_nA!xibI91cfg ztM6l-J6+2Ccuc|hki>0XQ3;h6{;0d-0G~oT z$9%;xzqhyC8|U+B!XxD96F+a$y36xmp5w9gOiQhVY<>tbBK!7$ zIL(FN+Pj?2jlqv8B(@mcz%DEQ+-D#8#x~rqp4M17ecrkFrJYX2p$dY@0elgqfzhF*`A-~?fk_4`T>>lt9}Cq=gVTl=9ah~`l-RJ zRdL1fa~=k#U+!SLVfuS-?jD}7B&OEzDSK?~vSt?aKCiHBlyK%zUfk|kQ?Ks)&3Rw1 zJ&_mIELgndi&0tCHVmIJ|Ba%}U#!=RKfhHKkyfP2&QI$Tu4-1>UqS0HD4qo;28fc0~PgQzxc)E$zP1^+BX>{wCLpSC%?4j!FGbTCY-eJ8*8A z*RPkeJ-yC2+-tXIMg8_yk9^hiSdEyW#eFvIaO&+)U$*S=&8LqyEb16_&}mVlj!$kp zxwP+!UB@>%A77nXIQd#%|6MO`pE%fLS;s}=AN+Q*-s$WC2TK3g*J9W6=Q(YhPYrK= ze1`wx=Z|h5p0OeP#fxoS>)eZ-&{grI;6UWkkFMI^dEi<*sNbk&Ej&i;th3Ml+u!n! zdCm>p^I>>crQLazgN636xbdfSXz2Y2m=sh$<&)V=F{b)=i@v1`xTHDfy0 zK9%u2ub}#!Uwhp=m-WFP6T64^yY3g&s7I^Vz~vq-K1`mmS?Mr-LBAUgFGs63jB;*YaLwv}@NL zdC>zl{XCD!?cVd^p7_sN{{wvu zywvs1sJ=EAuc@bAA9K&DXWgyOYBqa!TigcQEz0X}x31ybA?TIwKZswwu)5o~SMPo! zTNXbn)nU+}wo@&iT)uU%&g|be*S#EjZqDjJ`LoEUgD1BikhyJ;^}{e9IP0oxJZ9CB2Cm{jdq zWbw3!9mfl6#*9kn=8=8$=GI9yY=TD?l-%@Ky)GMYu_|;yL~jR zS?bJb%?F=Pl=p7ps_IbC|ITl_Yi_uH>G`1e0@=3Ml$wj%E~^t;vi4}d^+}Ntch1WD zo$b7E!N4EiPVTmF-@5qv<3cwyaHxA`vaNN*11gKlSE`XDii(a}VZ!RW0w_s(Z7;uP#j3l53TKX??`?(^k^g+38oQ#YI*q<-_zLFI*p`xew~e5LkwzpN9}2H4l@vePB_ zc3f=ooNGav&FNqN;JI>Nn<<-~74GfXD0)htf&E_%Zhf>*T}z*ng=?Q5i4C|FP1PzQrw; zxU6s9BdXXxZPq92Qa}0Oa$&QA$0QD@Z3&dSIaJM#|g`L5>M zb-$c3MQPvi%O1g{Hf_HvO+7xKLGyK&c7OUv`L^|x7tv7@3p#jpZ~jNmru|Ml^6UPd zVsekj_xHcQs?ONRn$;TKZ1Cmk$D^I1oNs>eVUl8ZNzVg|pDj`pdwmz%v+c#g2EA_Y z2)289(d8(bo$Un%lYqbp4e~RqYd7B z+irPd;AcO#9-{tv?}U24w3)hRY13|(cG}(OSXBDjrJ!eu&YG27b~{%W&;M?SNb2h)RbHLEFPY2%XAXoXGAMiZ4XJWl$3yvH= z{Pm31qm$(a&x}@mylT(J7QJgvJ@7Q*K1wwE zKPA4KVMRmlM^~{neB?6jgoOQuEg8BZx|U9s*AnNL7`9=k1iCgps-{nk36+TNZUc{q zeni!V8H~}-t4>#89pMPE_}V!GKgrp_9UsxUvkG;hCJDcR*}=VUpI3cD-C6qS%_O-> zqgHfq&rxK!cMNx|9wu*>s7jBOr?F^2ozYI-!9682Gp(J!e?}r)MR|rFy;+HS_{FMJ zc_uE?hx;d`%g3PMRF!{VKtQm6s$8jdXA_3YI=HJcW$tWdHqMep;w)i!Ams&89?p_R z;!K{Hh?oQ=gcC6b_xT)cnIJJING#J@%xNv=v=MXKh&jPxPOv+hqEf0yVnmd<<43nt z(R_w@=I$R(+;hg`DTGkb*ud8QC^#ZAT=9T(xPXg-E`pN)7o;NaRuk6(o$=bx5rQMYY>Q103DCN8BFN?p%&8I-Uw1NnE)=gH_mdnu$3KW~BJp&QM}K;QA*qPviHUgB;m-A5!`9l84r@{n z=|Q8UBLeJJVh@1og!plFoNTxXmezMInI&Uc;tGE(7Sb+Uc_sRyx@g0tz`}yDw6?)W zZLKW1{Sl$4UPASVLcT|qiN$p$_9;khP{}?I8)n6@Pqd#{@nN(Zu4+?Zz=q?lxLtDz zOnckicG*leGl?@8e>X=UVuR!CMR7(M+>l(_-z$YB^Ni=S$cW&V$KN6YN2wH?p@Djo z?T6|%kJd8)2D3QBZ$WmOy|;4GM(n*Kb-?FVT*0ckvy4{k|~RSdm5MGyk@pN z-lN-iJ^*j*(a&9M*;`KCu z;{9;|ZK_WO=v^+_55RsnGZ&!Oa0&s6#c5xF;`+4!z4-A3K(9k>2dM4CKzZ@Lu^5}r zci{R!RikNRbWU^=7zbQXClv4#(S4MeDh0QV!QDoV`7m?9%mFh8%p5Rtz{~+N2h1EW zbHL02GY8BZFmvGl4F@RLr7)OcXnL+raXf{?^xU4F+0*lSdPYz2JH_S{r_=L)iu);+ zr#PRUU?2nt1=<4CW_zSzKnEZk=m>NIA^^Jo z0*DmO>6-AraL}7`8oX7;GEv-@Z|Qg|t|~`e#>PVA6X}p`HPR-A+0FgM2X&I8=!Xp< z{qw%Dpv*iWUncpYPExeer!^T%u7A>7qN6euo1xG|QcfJNWAy1v621=9Fp2m!klrj5 zzX0S*nEu-U{ac`j$OF@*b$2^O^XE2r50QGMZy<^HG3Y&+qlt1d@xCB^k!bwzLjS~Z zn!A-9e;_qSlNX0gnUPnGo=}1RRT+Of>R9OCf_sfM6?=$rc++tN-Ko;y0_!FAUD@$d z2UXK@(D(>-KybDPfn#QT1s%)_>ykE)tln@j&2IPiaJuL>#v From c7d47152c4b152022279da5368da758d5bb4e82a Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Thu, 10 Jun 2010 16:33:34 +0000 Subject: [PATCH 052/206] code for open-nars 1.3.3 From b7c7d97701d18433dafb85e93a85700f382d8343 Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Thu, 10 Jun 2010 16:36:00 +0000 Subject: [PATCH 053/206] open-nars 1.3.3: change in display format of operations and real-time procedural inference --- nars/entity/Concept.java | 65 ++++++---- nars/entity/Question.java | 26 ++++ nars/entity/Sentence.java | 12 +- nars/entity/Stamp.java | 22 +++- nars/entity/TaskLink.java | 61 ++++++---- nars/inference/MatchingRules.java | 31 +++-- nars/inference/RuleTables.java | 89 ++++++++++++-- nars/inference/StructuralRules.java | 5 +- nars/inference/SyllogisticRules.java | 170 ++++++++++++++++++++++----- nars/inference/TruthFunctions.java | 2 +- nars/io/StringParser.java | 4 +- nars/io/Symbols.java | 4 +- nars/language/CompoundTerm.java | 2 +- nars/language/Conjunction.java | 27 ++++- nars/language/Equivalence.java | 12 ++ nars/language/Implication.java | 15 +++ nars/language/Inheritance.java | 55 +++++++++ nars/language/Statement.java | 32 +++++ nars/language/Term.java | 16 ++- nars/language/Variable.java | 7 +- nars/main/Memory.java | 117 +++++++++--------- nars/main/NARS.java | 2 +- nars/main/Parameters.java | 2 + nars/operation/Operator.java | 5 +- nars/operation/Wait.java | 92 +++++++++++++++ 25 files changed, 689 insertions(+), 186 deletions(-) create mode 100644 nars/operation/Wait.java diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index 2b156363..8dc6b52b 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -70,7 +70,7 @@ public final class Concept extends Item { */ public Concept(Term tm) { super(); - key = tm.toString(); + key = tm.getName(); term = tm; questions = new ArrayList(); goals = new ArrayList(); @@ -98,57 +98,63 @@ private void checkRevisibility() { *

    * called in Memory.immediateProcess only * @param task The task to be processed + * @return Whether to continue the processing of the task */ - public void directProcess(Task task) { + public boolean directProcess(Task task) { Sentence sentence = task.getSentence(); + boolean toContinue; if (sentence instanceof Question) { - processQuestion((Question) sentence, task); + toContinue = processQuestion((Question) sentence, task); } else if (sentence instanceof Goal) { - processGoal((Goal) sentence, task); + toContinue = processGoal((Goal) sentence, task); } else { - processJudgment((Judgment) sentence, task); + toContinue = processJudgment((Judgment) sentence, task); } if (showing) { window.post(displayContent()); } + return toContinue; } /** * To answer a question by existing beliefs * @param ques The question to be answered * @param task The task to be processed + * @return Whether to continue the processing of the task */ - private void processQuestion(Question ques, Task task) { - boolean duplicate = false; + private boolean processQuestion(Question ques, Task task) { + boolean toContinue = true; for (Question q : questions) { if (q.getContent().equals(ques.getContent()) && (q.getEventTime() == ques.getEventTime())) { - duplicate = true; + toContinue = false; break; } } - if (!duplicate) { + if (toContinue) { questions.add(ques); } for (Judgment judg : beliefs) { MatchingRules.trySolution(ques, judg, task); } + return toContinue; } /** * Direct processing a new goal * @param goal The goal to be processed * @param task The task to be processed + * @return Whether to continue the processing of the task */ - private void processGoal(Goal goal, Task task) { + private boolean processGoal(Goal goal, Task task) { boolean revised = false; if (revisible) { revised = reviseTable(goal, goals); if (revised) { - return; + return false; } } for (Judgment judg : beliefs) { - MatchingRules.trySolution(goal, judg, task); + MatchingRules.trySolution(goal, judg, task); } if (task.aboveThreshold()) { Term content = goal.getContent(); @@ -158,14 +164,16 @@ private void processGoal(Goal goal, Task task) { float netDesire = goal.getTruth().getExpectation(); if (netDesire > Parameters.DECISION_THRESHOLD) { ((Operator) pred).call(task); - task.setPriority(0.0f); // each operation call is executed once - return; + return false; } } } - addToTable(goal, goals, Parameters.MAXMUM_GOALS_LENGTH); + addToTable(goal, goals, Parameters.MAXMUM_GOALS_LENGTH); Question ques = new Question(goal); Memory.activatedTask(task.getBudget(), ques, false); + return true; + } else { + return false; } } @@ -173,8 +181,9 @@ private void processGoal(Goal goal, Task task) { * To accept a new judgment as belief, and check for revisions and solutions * @param judg The judgment to be accepted * @param task The task to be processed + * @return Whether to continue the processing of the task */ - private void processJudgment(Judgment judg, Task task) { + private boolean processJudgment(Judgment judg, Task task) { if (revisible) { reviseTable(judg, beliefs); } @@ -187,6 +196,12 @@ private void processJudgment(Judgment judg, Task task) { } addToTable(judg, beliefs, Parameters.MAXMUM_BELIEF_LENGTH); // generateNegation(task); // may be recovered in the future + if (judg.isEvent()) { + Memory.eventProcessing(task); + } + return true; + } else { + return false; } } @@ -205,7 +220,6 @@ private void processJudgment(Judgment judg, Task task) { // } // } // } - /** * Revise existing beliefs or goals * @param judg The judgment (belief or goal) to be processed @@ -236,9 +250,9 @@ private void addToTable(Judgment newJudgment, ArrayList table, int capacity) { Judgment judgment2; float rank2; int i; - for (i = 0; i < table.size(); i++) { + for (i = 0; i < table.size(); i++) { judgment2 = (Judgment) table.get(i); - rank2 = BudgetFunctions.rankBelief(judgment2); + rank2 = BudgetFunctions.rankBelief(judgment2); if (rank1 >= rank2) { if (newJudgment.equivalentTo(judgment2)) { return; @@ -369,13 +383,13 @@ public Judgment getBelief(Task task) { belief = beliefs.get(i); Record.append(" * Selected Belief: " + belief + "\n"); if (taskSentence.noOverlapping(belief)) { - long time1 = taskSentence.getEventTime(); - long time2 = belief.getEventTime(); - if ((time1 == time2) || (time2 == Stamp.ALWAYS) || (taskSentence instanceof Goal)) { + long taskTime = taskSentence.getEventTime(); + long beliefTime = belief.getEventTime(); + if ((taskTime == beliefTime) || (beliefTime == Stamp.ALWAYS) || (taskSentence instanceof Goal)) { return belief; } - Judgment belief2 = (Judgment) belief.clone(); - TruthValue v = TruthFunctions.temporalCasting(belief.getTruth(), time2, time1, taskSentence.getCreationTime()); + Judgment belief2 = (Judgment) belief.clone(); // will this mess up priority adjustment? + TruthValue v = TruthFunctions.temporalCasting(belief.getTruth(), beliefTime, taskTime, taskSentence.getCreationTime()); belief2.setTruth(v); return belief2; } @@ -397,6 +411,9 @@ public void fire() { Record.append(" * Selected TaskLink: " + tLink + "\n"); Task task = tLink.getTargetTask(); Memory.currentTask = task; // one of the two places where this variable is set + if (task.getSentence() instanceof Question) { + ((Question) task.getSentence()).checkFeedback(); + } if (tLink.getType() == TermLink.TRANSFORM) { RuleTables.transformTask(task, tLink); // to turn this into structural inference as below? return; diff --git a/nars/entity/Question.java b/nars/entity/Question.java index 331c5fb1..d064a768 100644 --- a/nars/entity/Question.java +++ b/nars/entity/Question.java @@ -23,11 +23,13 @@ import nars.language.Term; import nars.io.Symbols; +import nars.main.*; /** * A Question is a sentence without a truth value, and may conain query variables */ public class Question extends Sentence { + private boolean needFeedback = false; /** * Constructor @@ -50,4 +52,28 @@ public Question(Goal g) { punctuation = Symbols.QUESTION_MARK; stamp = new Stamp(0, true); } + + /** + * Construct a question to check whether a prediction can be confirmed + * @param j The judgment that provides a default answer + */ + public Question(Judgment j) { + content = j.cloneContent(); + punctuation = Symbols.QUESTION_MARK; + stamp = Memory.newStamp; + bestSolution = j; + needFeedback = (stamp.getEventTime() >= Center.getTime()); + } + + public void checkFeedback() { + if (needFeedback) { + if (stamp.getEventTime() <= Center.getTime()) { + needFeedback = false; // only do once + if ((bestSolution == null) || + (bestSolution.getTruth().getExpectation() < Parameters.DEFAULT_CONFIRMATION_EXPECTATION)) { + Memory.lackConfirmation(content, stamp.getEventTime()); + } + } + } + } } diff --git a/nars/entity/Sentence.java b/nars/entity/Sentence.java index 40e7f71f..2e4c81fe 100644 --- a/nars/entity/Sentence.java +++ b/nars/entity/Sentence.java @@ -199,6 +199,8 @@ public void setBestSolution(Judgment judg) { /** * Check whether one sentence has stamp overlapping with another one, and change the system cash + *

    + * Normally 'this' is a task, and 'that' is a belief * @param that The sentence to be checked against * @return Whether the two have overlapping stamps */ @@ -251,7 +253,7 @@ public String toString() { */ public String toString2() { StringBuffer s = new StringBuffer(); - s.append(content.getName()); + s.append(content.toString()); s.append(punctuation + " "); s.append(tenseToString()); if (truth != null) { @@ -271,7 +273,7 @@ public String toString2() { * @return The String */ private String tenseToString() { - if (!isTemporal()) { + if (!isEvent()) { return ""; } long delta = getEventTime() - Center.getTime(); @@ -300,7 +302,11 @@ public long getEventTime() { return getStamp().getEventTime(); } - public boolean isTemporal() { + /** + * Check if the truth-value of the Sentence is about a certain time + * @return Whether the sentence is about an event + */ + public boolean isEvent() { return (getEventTime() != Stamp.ALWAYS); } } diff --git a/nars/entity/Stamp.java b/nars/entity/Stamp.java index 4603383f..a39acdd1 100644 --- a/nars/entity/Stamp.java +++ b/nars/entity/Stamp.java @@ -218,8 +218,8 @@ public boolean equals(Object that) { if (!(that instanceof Stamp)) { return false; } - if ((creationTime != ((Stamp) that).getCreationTime()) || eventTime != ((Stamp) that).getEventTime()) { - return false; + if (eventTime != ((Stamp) that).getEventTime()) { + return false; // creation time does not matter } TreeSet set1 = toSet(); TreeSet set2 = ((Stamp) that).toSet(); @@ -256,10 +256,20 @@ public long getEventTime() { * Adjust the eventTime of the truth-value * @param d The direction and extent of the change */ - public void adjustEventTime(int d) { - if (eventTime != ALWAYS) { - eventTime += d; - } +// public void adjustEventTime(int d) { +// if (eventTime != ALWAYS) { +// eventTime += d; +// } else { +// eventTime = d + Center.getTime(); +// } +// } + + /** + * Set the eventTime of the truth-value + * @param t The new event time + */ + public void setEventTime(long t) { + eventTime = t; } /** diff --git a/nars/entity/TaskLink.java b/nars/entity/TaskLink.java index cee1eb52..0e01b3ea 100644 --- a/nars/entity/TaskLink.java +++ b/nars/entity/TaskLink.java @@ -23,7 +23,7 @@ import java.util.*; import nars.language.Term; -import nars.main.Parameters; +import nars.main.*; /** * Reference to a Task. @@ -36,7 +36,9 @@ public class TaskLink extends TermLink { /** The Task linked. The "target" field in TermLink is not used here. */ private Task targetTask; /** Remember the TermLinks that has been used recently with this TaskLink */ - private ArrayList record; + private String recordedLinks[]; + private long recordingTime[]; + int counter, first; /** * Constructor @@ -56,7 +58,10 @@ public TaskLink(Task t, TermLink template, BudgetValue v) { type = template.getType(); index = template.getIndices(); } - record = new ArrayList(Parameters.TERM_LINK_RECORD_LENGTH); + recordedLinks = new String[Parameters.TERM_LINK_RECORD_LENGTH]; + recordingTime = new long[Parameters.TERM_LINK_RECORD_LENGTH]; + counter = 0; + first = 0; setKey(); // as defined in TermLink key += t.getKey(); } @@ -70,25 +75,23 @@ public Task getTargetTask() { } /** - * Get the TermLink record + * Get the TermLink recordedLinks * @return The list of TermLinks recently used */ - ArrayList getRecord() { - return record; + String[] getRecordedLinks() { + return recordedLinks; } - /** - * Merge one TaskLink into another - * @param that The other TaskLink - */ - public void merge(Item that) { - super.merge(that); // merge the budgets - ArrayList v = ((TaskLink) that).getRecord(); - for (int i = 0; i < v.size(); i++) { // merge the records - if (record.size() <= Parameters.TERM_LINK_RECORD_LENGTH) { - record.add(v.get(i)); - } - } + long[] getRecordingTime() { + return recordingTime; + } + + int getCounter() { + return counter; + } + + int getFirst() { + return first; } /** @@ -105,14 +108,24 @@ public boolean novel(TermLink termLink) { return false; } String linkKey = termLink.getKey(); - for (String recorded : record) { - if (linkKey.equals(recorded)) { - return false; + int next = 0; + int i; + for (i = 0; i < counter; i++) { + next = (i + first) % Parameters.TERM_LINK_RECORD_LENGTH; + if (linkKey.equals(recordedLinks[next])) { + if (Center.getTime() < recordingTime[next] + Parameters.TERM_LINK_RECORD_LENGTH) { + return false; + } else { + recordingTime[next] = Center.getTime(); + return true; + } } } - record.add(linkKey); // add knowledge reference to record - if (record.size() > Parameters.TERM_LINK_RECORD_LENGTH) { // keep a constant length - record.remove(0); + next = (i + first) % Parameters.TERM_LINK_RECORD_LENGTH; + recordedLinks[next] = linkKey; // add knowledge reference to recordedLinks + recordingTime[next] = Center.getTime(); + if (counter < Parameters.TERM_LINK_RECORD_LENGTH) { // keep a constant length + counter++; } return true; } diff --git a/nars/inference/MatchingRules.java b/nars/inference/MatchingRules.java index ce678b65..b0b76dfc 100644 --- a/nars/inference/MatchingRules.java +++ b/nars/inference/MatchingRules.java @@ -66,12 +66,12 @@ public static void revision(Judgment newBelief, Judgment oldBelief, boolean feed long time2 = oldBelief.getEventTime(); TruthValue newTruth = newBelief.getTruth(); TruthValue oldTruth = oldBelief.getTruth(); - if ((time1 != time2) && (time2 >= 0)) { + if (time1 != time2) { oldTruth = TruthFunctions.temporalCasting(oldTruth, time2, time1, Memory.currentTask.getSentence().getCreationTime()); Term term1 = newBelief.getContent(); Term term2 = oldBelief.getContent(); if (term2.isTemporal() && (!term1.isTemporal() || (term2.getOrder() != term1.getOrder()))) { - oldTruth = TruthFunctions.temporalCasting(oldTruth, term2.getOrder(), term1.getOrder(), 0); + oldTruth = TruthFunctions.temporalCasting(oldTruth, term2.getOrder(), term1.getOrder(), 0); // to be refined } } TruthValue truth = TruthFunctions.revision(newTruth, oldTruth); @@ -87,11 +87,24 @@ public static void revision(Judgment newBelief, Judgment oldBelief, boolean feed * @param task The task to be processed */ public static void trySolution(Sentence problem, Judgment belief, Task task) { + if (problem instanceof Question) { + long taskTime = problem.getEventTime(); + long beliefTime = belief.getEventTime(); + if (taskTime != beliefTime) { + belief = (Judgment) belief.clone(); + TruthValue castedTruth = TruthFunctions.temporalCasting(belief.getTruth(), beliefTime, taskTime, problem.getCreationTime()); + belief.setTruth(castedTruth); + belief.getStamp().setEventTime(taskTime); + } + } Judgment oldBest = problem.getBestSolution(); if (oldBest != null) { float oldQ = solutionQuality(problem, oldBest); float newQ = solutionQuality(problem, belief); if (oldQ >= newQ) { + if (problem instanceof Question) { + ((Question) problem).checkFeedback(); + } return; } } @@ -109,11 +122,11 @@ public static void trySolution(Sentence problem, Judgment belief, Task task) { * @return The quality of the judgment as the solution */ public static float solutionQuality(Sentence problem, Judgment solution) { - long t1 = problem.getEventTime(); - long t2 = solution.getEventTime(); + long taskTime = problem.getEventTime(); + long beliefTime = solution.getEventTime(); TruthValue truth = solution.getTruth(); - if ((t2 != Stamp.ALWAYS) && (t1 != t2)) { - truth = TruthFunctions.temporalCasting(truth, t2, t1, problem.getCreationTime()); + if ((beliefTime != Stamp.ALWAYS) && (taskTime != beliefTime)) { + truth = TruthFunctions.temporalCasting(truth, beliefTime, taskTime, problem.getCreationTime()); } if (problem instanceof Goal) { return truth.getExpectation(); @@ -176,9 +189,9 @@ private static void inferToSym(Judgment judgment1, Judgment judgment2) { } else { int order = s1.getOrder(); if (order < 0) { - content = Equivalence.make(t1, t2, true, - order); + content = Equivalence.make(t1, t2, true, -order); } else { - content = Equivalence.make(t1, t2, judgment1.isTemporal(), order); + content = Equivalence.make(t1, t2, judgment1.isEvent(), order); } } TruthValue value1 = judgment1.getTruth(); @@ -198,7 +211,7 @@ private static void inferToAsym(Judgment asym, Judgment sym, int order) { Statement statement = (Statement) asym.getContent(); Term sub = statement.getPredicate(); Term pre = statement.getSubject(); - Statement content = Statement.make(statement, sub, pre, sym.isTemporal(), order); + Statement content = Statement.make(statement, sub, pre, sym.isEvent(), order); TruthValue truth = TruthFunctions.reduceConjunction(sym.getTruth(), asym.getTruth()); BudgetValue budget = BudgetFunctions.forward(truth); Memory.doublePremiseTask(budget, content, truth, sym, asym); diff --git a/nars/inference/RuleTables.java b/nars/inference/RuleTables.java index 5900dba5..79c011fd 100644 --- a/nars/inference/RuleTables.java +++ b/nars/inference/RuleTables.java @@ -38,7 +38,8 @@ public final class RuleTables { */ public static void reason(TaskLink tLink, TermLink bLink) { Task task = Memory.currentTask; - Term taskTerm = (Term) task.getContent().clone(); // cloning for substitution + Sentence taskSentence = task.getSentence(); + Term taskTerm = (Term) taskSentence.getContent().clone(); // cloning for substitution Term beliefTerm = (Term) bLink.getTarget().clone(); // cloning for substitution Concept beliefConcept = Memory.termToConcept(beliefTerm); Judgment belief = null; @@ -47,7 +48,7 @@ public static void reason(TaskLink tLink, TermLink bLink) { } Memory.currentBelief = belief; // may be null if ((belief != null) && (Variable.findSubstitute(Variable.VarType.QUERY, taskTerm, beliefTerm) != null)) { - MatchingRules.match(task, belief); + MatchingRules.match(task, belief); } short tIndex = tLink.getIndex(0); short bIndex = bLink.getIndex(0); @@ -58,71 +59,88 @@ public static void reason(TaskLink tLink, TermLink bLink) { if ((task.getSentence() instanceof Goal) && Conjunction.isSequence(taskTerm) && (bIndex > 0)) { // more general solution? return; } + compoundAndSelf((CompoundTerm) taskTerm, beliefTerm, true); break; + case TermLink.COMPOUND: compoundAndSelf((CompoundTerm) beliefTerm, taskTerm, false); break; + case TermLink.COMPONENT_STATEMENT: if (belief != null) { SyllogisticRules.detachment(task.getSentence(), belief, bIndex); } + break; case TermLink.COMPOUND_STATEMENT: if (belief != null) { SyllogisticRules.detachment(belief, task.getSentence(), bIndex); } + break; case TermLink.COMPONENT_CONDITION: if (belief != null) { bIndex = bLink.getIndex(1); SyllogisticRules.conditionalDedInd((Implication) taskTerm, bIndex, beliefTerm, tIndex); } + break; case TermLink.COMPOUND_CONDITION: if (belief != null) { bIndex = bLink.getIndex(1); SyllogisticRules.conditionalDedInd((Implication) beliefTerm, bIndex, taskTerm, tIndex); } + break; } + break; case TermLink.COMPOUND: switch (bLink.getType()) { case TermLink.COMPOUND: compoundAndCompound((CompoundTerm) taskTerm, (CompoundTerm) beliefTerm); break; + case TermLink.COMPOUND_STATEMENT: compoundAndStatement((CompoundTerm) taskTerm, tIndex, (Statement) beliefTerm, bIndex, beliefTerm); break; + case TermLink.COMPOUND_CONDITION: if (belief != null) { SyllogisticRules.conditionalDedInd((Implication) beliefTerm, bIndex, taskTerm, -1); } + break; } + break; case TermLink.COMPOUND_STATEMENT: switch (bLink.getType()) { case TermLink.COMPONENT: componentAndStatement((CompoundTerm) Memory.currentTerm, bIndex, (Statement) taskTerm, tIndex); break; + case TermLink.COMPOUND: compoundAndStatement((CompoundTerm) beliefTerm, bIndex, (Statement) taskTerm, tIndex, beliefTerm); break; + case TermLink.COMPOUND_STATEMENT: if (belief != null) { bIndex = bLink.getIndex(1); syllogisms(tLink, bLink, taskTerm, beliefTerm); } + break; case TermLink.COMPOUND_CONDITION: if (belief != null) { bIndex = bLink.getIndex(1); conditionalDedIndWithVar((Implication) beliefTerm, bIndex, (Statement) taskTerm, tIndex); } + break; } + break; case TermLink.COMPOUND_CONDITION: switch (bLink.getType()) { @@ -130,10 +148,13 @@ public static void reason(TaskLink tLink, TermLink bLink) { if (belief != null) { conditionalDedIndWithVar((Implication) taskTerm, tIndex, (Statement) beliefTerm, bIndex); } + break; } + break; } + } /* ----- syllogistic inferences ----- */ @@ -159,6 +180,7 @@ private static void syllogisms(TaskLink tLink, TermLink bLink, Term taskTerm, Te } else { detachmentWithVar(belief, taskSentence, bLink.getIndex(0)); } + } else if (taskTerm instanceof Similarity) { if (beliefTerm instanceof Inheritance) { figure = indexToFigure(bLink, tLink); @@ -167,6 +189,7 @@ private static void syllogisms(TaskLink tLink, TermLink bLink, Term taskTerm, Te figure = indexToFigure(bLink, tLink); symmetricSymmetric(belief, taskSentence, figure); } + } else if (taskTerm instanceof Implication) { if (beliefTerm instanceof Implication) { figure = indexToFigure(tLink, bLink); @@ -177,6 +200,7 @@ private static void syllogisms(TaskLink tLink, TermLink bLink, Term taskTerm, Te } else if (beliefTerm instanceof Inheritance) { detachmentWithVar(taskSentence, belief, tLink.getIndex(0)); } + } else if (taskTerm instanceof Equivalence) { if (beliefTerm instanceof Implication) { figure = indexToFigure(bLink, tLink); @@ -187,6 +211,7 @@ private static void syllogisms(TaskLink tLink, TermLink bLink, Term taskTerm, Te } else if (beliefTerm instanceof Inheritance) { detachmentWithVar(taskSentence, belief, tLink.getIndex(0)); } + } } @@ -210,46 +235,55 @@ private static int indexToFigure(TermLink link1, TermLink link2) { private static void asymmetricAsymmetric(Sentence sentence, Judgment belief, int figure) { Statement s1 = (Statement) sentence.cloneContent(); Statement s2 = (Statement) belief.cloneContent(); - Term t1, t2; + Term t1, + t2; switch (figure) { case 11: // induction if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getSubject(), s2.getSubject(), s1, s2)) { t1 = s2.getPredicate(); - t2 = s1.getPredicate(); + t2 = + s1.getPredicate(); SyllogisticRules.abdIndCom(t1, t2, sentence, belief, figure); CompositionalRules.composeCompound(sentence, belief, 0); } + break; case 12: // deduction if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getSubject(), s2.getPredicate(), s1, s2)) { t1 = s2.getSubject(); - t2 = s1.getPredicate(); + t2 = + s1.getPredicate(); if (Variable.unify(Variable.VarType.QUERY, t1, t2, s1, s2)) { MatchingRules.matchReverse(); } else { SyllogisticRules.dedExe(t1, t2, sentence, belief); } + } break; case 21: // exemplification if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getPredicate(), s2.getSubject(), s1, s2)) { t1 = s1.getSubject(); - t2 = s2.getPredicate(); + t2 = + s2.getPredicate(); if (Variable.unify(Variable.VarType.QUERY, t1, t2, s1, s2)) { MatchingRules.matchReverse(); } else { SyllogisticRules.dedExe(t1, t2, sentence, belief); } + } break; case 22: // abduction if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getPredicate(), s2.getPredicate(), s1, s2)) { t1 = s1.getSubject(); - t2 = s2.getSubject(); + t2 = + s2.getSubject(); if (!SyllogisticRules.conditionalAbd(t1, t2, s1, s2)) { // if conditional abduction, skip the following SyllogisticRules.abdIndCom(t1, t2, sentence, belief, figure); CompositionalRules.composeCompound(sentence, belief, 1); } + } break; default: @@ -266,53 +300,63 @@ private static void asymmetricAsymmetric(Sentence sentence, Judgment belief, int private static void asymmetricSymmetric(Sentence asym, Sentence sym, int figure) { Statement asymSt = (Statement) asym.cloneContent(); Statement symSt = (Statement) sym.cloneContent(); - Term t1, t2; + Term t1, + t2; switch (figure) { case 11: if (Variable.unify(Variable.VarType.INDEPENDENT, asymSt.getSubject(), symSt.getSubject(), asymSt, symSt)) { t1 = asymSt.getPredicate(); - t2 = symSt.getPredicate(); + t2 = + symSt.getPredicate(); if (Variable.unify(Variable.VarType.QUERY, t1, t2, asymSt, symSt)) { MatchingRules.matchAsymSym(asym, sym, figure); } else { SyllogisticRules.analogy(t2, t1, asym, sym, figure); } + } break; case 12: if (Variable.unify(Variable.VarType.INDEPENDENT, asymSt.getSubject(), symSt.getPredicate(), asymSt, symSt)) { t1 = asymSt.getPredicate(); - t2 = symSt.getSubject(); + t2 = + symSt.getSubject(); if (Variable.unify(Variable.VarType.QUERY, t1, t2, asymSt, symSt)) { MatchingRules.matchAsymSym(asym, sym, figure); } else { SyllogisticRules.analogy(t2, t1, asym, sym, figure); } + } break; case 21: if (Variable.unify(Variable.VarType.INDEPENDENT, asymSt.getPredicate(), symSt.getSubject(), asymSt, symSt)) { t1 = asymSt.getSubject(); - t2 = symSt.getPredicate(); + t2 = + symSt.getPredicate(); if (Variable.unify(Variable.VarType.QUERY, t1, t2, asymSt, symSt)) { MatchingRules.matchAsymSym(asym, sym, figure); } else { SyllogisticRules.analogy(t1, t2, asym, sym, figure); } + } break; case 22: if (Variable.unify(Variable.VarType.INDEPENDENT, asymSt.getPredicate(), symSt.getPredicate(), asymSt, symSt)) { t1 = asymSt.getSubject(); - t2 = symSt.getSubject(); + t2 = + symSt.getSubject(); if (Variable.unify(Variable.VarType.QUERY, t1, t2, asymSt, symSt)) { MatchingRules.matchAsymSym(asym, sym, figure); } else { SyllogisticRules.analogy(t1, t2, asym, sym, figure); } + } break; } + } /** @@ -329,23 +373,28 @@ private static void symmetricSymmetric(Judgment belief, Sentence taskSentence, i if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getSubject(), s2.getSubject(), s1, s2)) { SyllogisticRules.resemblance(s1.getPredicate(), s2.getPredicate(), belief, taskSentence, figure); } + break; case 12: if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getSubject(), s2.getPredicate(), s1, s2)) { SyllogisticRules.resemblance(s1.getPredicate(), s2.getSubject(), belief, taskSentence, figure); } + break; case 21: if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getPredicate(), s2.getSubject(), s1, s2)) { SyllogisticRules.resemblance(s1.getSubject(), s2.getPredicate(), belief, taskSentence, figure); } + break; case 22: if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getPredicate(), s2.getPredicate(), s1, s2)) { SyllogisticRules.resemblance(s1.getSubject(), s2.getSubject(), belief, taskSentence, figure); } + break; } + } /* ----- conditional inferences ----- */ @@ -371,6 +420,7 @@ private static void detachmentWithVar(Sentence originalMainSentence, Sentence su SyllogisticRules.introVarIndInner((Statement) content, s2, statement); // tense??? CompositionalRules.introVarDepInner(statement, s2, content); // tense??? } + } } } @@ -388,13 +438,16 @@ private static void conditionalDedIndWithVar(Implication conditional, short inde Term component2 = null; if (statement instanceof Inheritance) { component2 = statement; - side = -1; + side = + -1; } else if (statement instanceof Implication) { component2 = statement.componentAt(side); } + if ((component2 != null) && Variable.unify(Variable.VarType.ALL, component, component2, conditional, statement)) { SyllogisticRules.conditionalDedInd(conditional, index, statement, side); } + } /* ----- structural inferences ----- */ @@ -411,12 +464,14 @@ private static void compoundAndSelf(CompoundTerm compound, Term component, boole } else if (compound.containComponent(component)) { StructuralRules.structuralCompound(compound, component, compoundTask); } + } else if ((compound instanceof Negation) && !Memory.currentTask.isStructural()) { if (compoundTask) { StructuralRules.transformNegation(((Negation) compound).componentAt(0)); } else { StructuralRules.transformNegation(compound); } + } } @@ -432,6 +487,7 @@ private static void compoundAndCompound(CompoundTerm taskTerm, CompoundTerm beli } else if (taskTerm.size() < beliefTerm.size()) { compoundAndSelf(beliefTerm, taskTerm, false); } + } } @@ -454,6 +510,7 @@ private static void compoundAndStatement(CompoundTerm compound, short index, Sta SyllogisticRules.introVarIndInner(statement, (Statement) component, compound); CompositionalRules.introVarDepInner(compound, component, statement); } + } } else { if (!task.isStructural() && task.getSentence().isJudgment()) { @@ -462,9 +519,11 @@ private static void compoundAndStatement(CompoundTerm compound, short index, Sta if (!(compound instanceof SetExt) && !(compound instanceof SetInt)) { StructuralRules.structuralCompose2(compound, index, statement, side); } // {A --> B, A @ (A&C)} |- (A&C) --> (B&C) + } else if ((statement instanceof Similarity) && !(compound instanceof Conjunction)) { StructuralRules.structuralCompose2(compound, index, statement, side); } // {A <-> B, A @ (A&C)} |- (A&C) <-> (B&C) + } } } @@ -485,14 +544,17 @@ private static void componentAndStatement(CompoundTerm compound, short index, St } else { StructuralRules.transformSetRelation(compound, statement, side); } + } else if (statement instanceof Similarity) { StructuralRules.structuralDecompose2(statement); // {(C-B) --> (C-A), A @ (C-A)} |- A --> B if ((compound instanceof SetExt) || (compound instanceof SetInt)) { StructuralRules.transformSetRelation(compound, statement, side); } + } else if ((statement instanceof Implication) && (compound instanceof Negation)) { StructuralRules.contraposition(statement); } + } } @@ -516,6 +578,7 @@ public static void transformTask(Task task, TaskLink tLink) { } else { return; } + } if (inh instanceof Inheritance) { StructuralRules.transformProductImage((Inheritance) inh, content, indices, task); diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index 5ef45515..489c8a0a 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -381,7 +381,8 @@ static void transformProductImage(Inheritance inh, CompoundTerm oldContent, shor componentList = ((CompoundTerm) condition).cloneComponents(); componentList.set(indices[1], newInh); Term newCond = CompoundTerm.make((CompoundTerm) condition, componentList); - content = Implication.make(newCond, ((Statement) oldContent).getPredicate(), false, 0); + content = Implication.make(newCond, ((Statement) oldContent).getPredicate(), + ((Statement) oldContent).isTemporal(), oldContent.getOrder()); } else { componentList = oldContent.cloneComponents(); componentList.set(indices[0], newInh); @@ -471,7 +472,7 @@ static void contraposition(Statement statement) { Term pred = statement.getPredicate(); Task task = Memory.currentTask; Sentence sentence = task.getSentence(); - Term content = Statement.make(statement, Negation.make(pred), Negation.make(subj), sentence.isTemporal(), -statement.getOrder()); + Term content = Statement.make(statement, Negation.make(pred), Negation.make(subj), sentence.isEvent(), -statement.getOrder()); TruthValue truth = sentence.getTruth(); BudgetValue budget; if (sentence instanceof Question) { diff --git a/nars/inference/SyllogisticRules.java b/nars/inference/SyllogisticRules.java index 24faa648..c2f8b3c5 100644 --- a/nars/inference/SyllogisticRules.java +++ b/nars/inference/SyllogisticRules.java @@ -26,6 +26,7 @@ import nars.language.*; import nars.io.Symbols; import nars.main.Memory; +import nars.operation.*; /** * Syllogisms: Inference rules based on the transitivity of the relation. @@ -66,7 +67,7 @@ static void dedExe(Term term1, Term term2, Sentence sentence, Judgment belief) { int order1 = sentence.getContent().getOrder(); int order2 = belief.getContent().getOrder(); int order = temporalSyllogism(order1, order2, 21); - boolean temporal = (sentence.isTemporal() || belief.isTemporal()); + boolean temporal = (sentence.isEvent() || belief.isEvent()); Statement content = (Statement) sentence.getContent(); Statement content1 = Statement.make(content, term1, term2, temporal, order); Statement content2 = Statement.make(content, term2, term1, temporal, -order); @@ -115,7 +116,7 @@ static void abdIndCom(Term term1, Term term2, Sentence taskSentence, Judgment be int order1 = st1.getOrder(); int order2 = st2.getOrder(); int order = temporalSyllogism(order1, order2, figure); - boolean temporal = (taskSentence.isTemporal() || belief.isTemporal()); + boolean temporal = (taskSentence.isEvent() || belief.isEvent()); Statement statement1, statement2, statement3; statement1 = Statement.make(st1, term1, term2, temporal, order); statement2 = Statement.make(st1, term2, term1, temporal, -order); @@ -181,7 +182,7 @@ static void analogy(Term term1, Term term2, Sentence asym, Sentence sym, int fig default: return; } - boolean temporal = (asym.isTemporal() || sym.isTemporal()); + boolean temporal = (asym.isEvent() || sym.isEvent()); Term content = Statement.make(asymSt, term1, term2, temporal, order); Memory.doublePremiseTask(budget, content, truth, asym, sym); } @@ -215,7 +216,7 @@ static void resemblance(Term term1, Term term2, Judgment belief, Sentence senten int order1 = st1.getOrder(); int order2 = st2.getOrder(); int order = temporalSyllogism(order1, order2, figure); - boolean temporal = (sentence.isTemporal() || belief.isTemporal()); + boolean temporal = (sentence.isEvent() || belief.isEvent()); Term statement = Statement.make(st1, term1, term2, temporal, order); Memory.doublePremiseTask(budget, statement, truth, belief, sentence); } @@ -233,6 +234,21 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int side) { Term subject = statement.getSubject(); Term predicate = statement.getPredicate(); Term content; + if ((mainSentence.getContent().getOrder() != 0) && subSentence.isEvent()) { + long time1 = subSentence.getEventTime(); + int dif = mainSentence.getContent().getOrder(); + long eventTime; + if (side == 0) { + eventTime = time1 + dif; + } else { + int t = Wait.getWaitingTime(subject, false); + eventTime = time1 - dif * t; + if (t != 0) { + subject = CompoundTerm.replaceComponent((CompoundTerm) subject, ((CompoundTerm) subject).size() - 1, null); + } + } + Memory.newStamp.setEventTime(eventTime); + } if (side == 0) { // term.equals(subject)) { content = predicate; } else if (side == 1) { // term.equals(predicate)) { @@ -251,6 +267,7 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int side) { TruthValue truth = null; BudgetValue budget; if (taskSentence instanceof Question) { + if (statement instanceof Equivalence) { budget = BudgetFunctions.backward(beliefTruth); } else if (side == 0) { @@ -278,12 +295,7 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int side) { } budget = BudgetFunctions.forward(truth); } - int dif = statement.getOrder(); - if (side == 0) { - Memory.newStamp.adjustEventTime(dif); - } else { - Memory.newStamp.adjustEventTime(- dif); - } + Memory.doublePremiseTask(budget, content, truth, mainSentence, subSentence); } @@ -304,48 +316,73 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, HashMap substitute = Variable.findSubstitute(Variable.VarType.ALL, premise2, belief.getContent()); boolean conditionalTask = (substitute != null); Term commonComponent; + Term newComponent = null; if (side == 0) { commonComponent = ((Statement) premise2).getSubject(); - newComponent = ((Statement) premise2).getPredicate(); + newComponent = + ((Statement) premise2).getPredicate(); } else if (side == 1) { commonComponent = ((Statement) premise2).getPredicate(); - newComponent = ((Statement) premise2).getSubject(); + newComponent = + ((Statement) premise2).getSubject(); } else { commonComponent = premise2; } + Conjunction oldCondition = (Conjunction) premise1.getSubject(); boolean match = Variable.unify(Variable.VarType.INDEPENDENT, oldCondition.componentAt(index), commonComponent, premise1, premise2); if (!match && (commonComponent.getClass() == oldCondition.getClass())) { match = Variable.unify(Variable.VarType.INDEPENDENT, oldCondition.componentAt(index), ((CompoundTerm) commonComponent).componentAt(index), premise1, premise2); } + if (!match) { return; } + Term newCondition; if (oldCondition.equals(commonComponent)) { newCondition = null; } else { newCondition = CompoundTerm.replaceComponent(oldCondition, index, newComponent); - if ((newCondition instanceof Conjunction) && ((CompoundTerm) newCondition).size() == 1) { - newCondition = ((CompoundTerm) newCondition).componentAt(0); +// if ((newCondition instanceof Conjunction) && ((CompoundTerm) newCondition).size() == 1) { +// newCondition = ((CompoundTerm) newCondition).componentAt(0); +// } + if (premise1.isTemporal()) { + int t = Wait.getWaitingTime(newCondition, true); + if (t > 0) { + if (newCondition instanceof Inheritance) { + newCondition = null; + } else { + newCondition = CompoundTerm.replaceComponent((CompoundTerm) newCondition, 0, null); + } + + long conditionTime = (belief.getContent().equals(premise2)) ? belief.getEventTime() : taskSentence.getEventTime(); + if (conditionTime != Stamp.ALWAYS) { + Memory.newStamp.setEventTime(conditionTime + t); + } + + } } } Term content; - boolean temporal = (taskSentence.isTemporal() || belief.isTemporal()); + boolean temporal = (taskSentence.isEvent() || belief.isEvent()); int order = premise1.getOrder() + premise2.getOrder(); if (newCondition != null) { content = Statement.make(premise1, newCondition, premise1.getPredicate(), temporal, order); } else { content = premise1.getPredicate(); } + if (content == null) { return; } + TruthValue truth1 = taskSentence.getTruth(); TruthValue truth2 = belief.getTruth(); TruthValue truth = null; BudgetValue budget; + if (taskSentence instanceof Question) { budget = BudgetFunctions.backwardWeak(truth2); } else { @@ -357,6 +394,7 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, } else { truth = TruthFunctions.desireDed(truth1, truth2); } + budget = BudgetFunctions.forward(truth); } else { if (deduction) { @@ -366,10 +404,17 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, } else { truth = TruthFunctions.induction(truth1, truth2); } + } budget = BudgetFunctions.forward(truth); } - Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); + + if (deduction && premise1.isTemporal() && (Memory.newStamp.getEventTime() != Stamp.ALWAYS)) { + Memory.predictionWithConfirmation(budget, content, truth, taskSentence, belief); + } else { + Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); + } + } /** @@ -384,41 +429,50 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s if (!(st1 instanceof Implication) || !(st2 instanceof Implication)) { return false; } + if (!(cond1 instanceof Conjunction) && !(cond2 instanceof Conjunction)) { return false; } + int order1 = st1.getOrder(); int order2 = st2.getOrder(); if (order1 != order2) { return false; } + Term term1 = null; Term term2 = null; if (cond1 instanceof Conjunction) { term1 = CompoundTerm.reduceComponents((Conjunction) cond1, cond2); } + if (cond2 instanceof Conjunction) { term2 = CompoundTerm.reduceComponents((Conjunction) cond2, cond1); } + if ((term1 == null) && (term2 == null)) { return false; } + Task task = Memory.currentTask; Sentence sentence = task.getSentence(); Judgment belief = Memory.currentBelief; - boolean temporal = (sentence.isTemporal() || belief.isTemporal()); + boolean temporal = (sentence.isEvent() || belief.isEvent()); TruthValue value1 = sentence.getTruth(); TruthValue value2 = belief.getTruth(); boolean keepOrder = (Variable.findSubstitute(Variable.VarType.INDEPENDENT, st1, task.getContent()) != null); Term content; + TruthValue truth = null; BudgetValue budget; + if (term1 != null) { if (term2 != null) { content = Statement.make(st2, term2, term1, temporal, order2); } else { content = term1; } + if (sentence instanceof Question) { budget = BudgetFunctions.backwardWeak(value2); } else { @@ -428,19 +482,24 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s } else { truth = TruthFunctions.desireInd(value1, value2); } + } else { truth = TruthFunctions.abduction(value2, value1); } + budget = BudgetFunctions.forward(truth); } + Memory.doublePremiseTask(budget, content, truth, sentence, belief); } + if (term2 != null) { if (term1 != null) { content = Statement.make(st1, term1, term2, temporal, order1); } else { content = term2; } + if (sentence instanceof Question) { budget = BudgetFunctions.backwardWeak(value2); } else { @@ -450,13 +509,17 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s } else { truth = TruthFunctions.desireInd(value1, value2); } + } else { truth = TruthFunctions.abduction(value1, value2); } + budget = BudgetFunctions.forward(truth); } + Memory.doublePremiseTask(budget, content, truth, sentence, belief); } + return true; } @@ -472,26 +535,32 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s private static Statement introVarInd(Sentence sentence1, Sentence sentence2, int figure, boolean isImplication) { Statement premise1 = (Statement) sentence1.getContent(); Statement premise2 = (Statement) sentence2.getContent(); - Statement state1, state2; + Statement state1, + state2; Variable v1 = new Variable(Symbols.VARIABLE_TAG + "0"); Variable v2 = new Variable(Symbols.VARIABLE_TAG + "0"); if (figure == 11) { state1 = Statement.make(premise1, v1, premise1.getPredicate()); - state2 = Statement.make(premise2, v2, premise2.getPredicate()); + state2 = + Statement.make(premise2, v2, premise2.getPredicate()); } else { state1 = Statement.make(premise1, premise1.getSubject(), v1); - state2 = Statement.make(premise2, premise2.getSubject(), v2); + state2 = + Statement.make(premise2, premise2.getSubject(), v2); } + long time1 = sentence1.getEventTime(); // override Concept.getBelief? long time2 = sentence2.getEventTime(); int dif = (int) (time2 - time1); - boolean temporal = (sentence1.isTemporal() && sentence2.isTemporal()); + boolean temporal = (sentence1.isEvent() && sentence2.isEvent()); Statement content; + if (isImplication) { content = Implication.make(state1, state2, temporal, dif); } else { content = Equivalence.make(state1, state2, temporal, dif); } + return content; } @@ -508,44 +577,56 @@ static void introVarIndInner(Statement premise1, Statement premise2, CompoundTer if (!taskSentence.isJudgment()) { return; } + if (premise1.getClass() != premise2.getClass()) { return; } + Variable var1 = new Variable(Symbols.VARIABLE_TAG + "0"); Variable var2 = new Variable(Symbols.VARIABLE_TAG + "0"); - Statement state1, state2; + Statement state1, + state2; if (premise1.getSubject().equals(premise2.getSubject())) { state1 = Statement.make(premise1, var1, premise1.getPredicate()); - state2 = Statement.make(premise2, var2, premise2.getPredicate()); + state2 = + Statement.make(premise2, var2, premise2.getPredicate()); } else if (premise1.getPredicate().equals(premise2.getPredicate())) { state1 = Statement.make(premise1, premise1.getSubject(), var1); - state2 = Statement.make(premise2, premise2.getSubject(), var2); + state2 = + Statement.make(premise2, premise2.getSubject(), var2); } else { return; } + Sentence belief = Memory.currentBelief; - Term compound, content; + Term compound, + content; TruthValue truth; + if (premise1.equals(taskSentence.getContent())) { truth = TruthFunctions.induction(belief.getTruth(), taskSentence.getTruth()); } else { truth = TruthFunctions.induction(taskSentence.getTruth(), belief.getTruth()); } + if (oldCompound instanceof Implication) { compound = Statement.make((Statement) oldCompound, oldCompound.componentAt(0), state2); - content = Statement.make((Statement) oldCompound, state1, compound); + content = + Statement.make((Statement) oldCompound, state1, compound); } else if (oldCompound instanceof Conjunction) { compound = Implication.make(state1, state2, false, 0); - content = CompoundTerm.replaceComponent(oldCompound, premise2, compound); + content = + CompoundTerm.replaceComponent(oldCompound, premise2, compound); } else { return; } + BudgetValue budget = BudgetFunctions.forward(truth); Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); } /** - * { S>, P>} |- { P>,

    S>, P>} + * {(E1, E2)} |- { E2>, E1>, E2>} * @param task1 The first premise * @param task2 The second premise */ @@ -554,6 +635,14 @@ public static void temporalIndCom(Task task1, Task task2) { Judgment judg2 = (Judgment) task2.getSentence(); Term term1 = judg1.getContent(); Term term2 = judg2.getContent(); + if ((term1 instanceof CompoundTerm) && ((CompoundTerm) term1).containComponent(term2)) { + return; + } + + if ((term2 instanceof CompoundTerm) && ((CompoundTerm) term2).containComponent(term1)) { + return; + } + if ((term1 instanceof Inheritance) && (term2 instanceof Inheritance)) { Statement s1 = (Statement) term1; Statement s2 = (Statement) term2; @@ -561,34 +650,51 @@ public static void temporalIndCom(Task task1, Task task2) { Variable var2 = new Variable(Symbols.VARIABLE_TAG + "0"); if (s1.getSubject().equals(s2.getSubject())) { term1 = Statement.make(s1, var1, s1.getPredicate()); - term2 = Statement.make(s2, var2, s2.getPredicate()); + term2 = + Statement.make(s2, var2, s2.getPredicate()); } else if (s1.getPredicate().equals(s2.getPredicate())) { term1 = Statement.make(s1, s1.getSubject(), var1); - term2 = Statement.make(s2, s2.getSubject(), var2); + term2 = + Statement.make(s2, s2.getSubject(), var2); } + } else { // to generalize Term condition; - if ((term1 instanceof Implication) && (term2 instanceof Inheritance)) { + if (term1 instanceof Implication) { condition = ((Implication) term1).getSubject(); if (condition.equals(term2)) { return; } + if ((condition instanceof Conjunction) && ((Conjunction) condition).containComponent(term2)) { return; } - } else if ((term1 instanceof Inheritance) && (term2 instanceof Implication)) { + + } else if (term2 instanceof Implication) { condition = ((Implication) term2).getSubject(); if (condition.equals(term1)) { return; } + if ((condition instanceof Conjunction) && ((Conjunction) condition).containComponent(term1)) { return; } + } } long time1 = judg1.getEventTime(); long time2 = judg2.getEventTime(); int distance = (int) (time2 - time1); + if (Math.abs(distance) > 1) { + Wait oper = (Wait) Memory.nameToOperator("^wait"); + Term delta = oper.createOperation(Math.abs(distance)); + ArrayList argument = new ArrayList(); + argument.add(term2); + argument.add(delta); + term2 = + Conjunction.make(argument, 1); + } + Statement statement1 = Implication.make(term1, term2, true, distance); Statement statement2 = Implication.make(term2, term1, true, -distance); Statement statement3 = Equivalence.make(term1, term2, true, distance); diff --git a/nars/inference/TruthFunctions.java b/nars/inference/TruthFunctions.java index 51867034..5738415c 100644 --- a/nars/inference/TruthFunctions.java +++ b/nars/inference/TruthFunctions.java @@ -97,7 +97,7 @@ static TruthValue revision(TruthValue v1, TruthValue v2) { public static TruthValue temporalCasting(TruthValue v1, long t1, long t2, long t) { float f1 = v1.getFrequency(); float c1 = v1.getConfidence(); - float c = w2c(c1); + float c = w2c(c1); // minimum has nothing to do with distance if (t2 != Stamp.ALWAYS) { float c2 = c1 * (1 - Math.abs(t1 - t2) / (float) (Math.abs(t - t1) + Math.abs(t - t2))); if (c2 > c) { diff --git a/nars/io/StringParser.java b/nars/io/StringParser.java index a9ef0f1b..c037221a 100644 --- a/nars/io/StringParser.java +++ b/nars/io/StringParser.java @@ -314,8 +314,8 @@ private static Term parseSimpleTerm(String s0) throws InvalidInputException { if ((prefix == VARIABLE_TAG) || (prefix == QUERY_VARIABLE_TAG)) { term = new Variable(s); // the only place to directly call this constructor } else { - term = new Term(s); - } // the only place to directly call this constructor + term = new Term(s); // the only place to directly call this constructor + } return term; } diff --git a/nars/io/Symbols.java b/nars/io/Symbols.java index 4f45ac89..0283e577 100644 --- a/nars/io/Symbols.java +++ b/nars/io/Symbols.java @@ -20,8 +20,6 @@ */ package nars.io; -import java.awt.*; - /** * The ASCII symbols used in I/O. */ @@ -30,7 +28,7 @@ public class Symbols { /* sentence type and delimitors */ public static final char JUDGMENT_MARK = '.'; public static final char QUESTION_MARK = '?'; - public static final char GOAL_MARK = '!'; + public static final char GOAL_MARK = '!'; //QUESTION_GOAL_MARK = '@'; /* Tense markers */ public static final String TENSE_MARK = ":"; diff --git a/nars/language/CompoundTerm.java b/nars/language/CompoundTerm.java index e0ce4d5a..9ff753bd 100644 --- a/nars/language/CompoundTerm.java +++ b/nars/language/CompoundTerm.java @@ -297,7 +297,7 @@ protected static String makeCompoundName(String op, ArrayList arg) { protected static String makeSetName(char opener, ArrayList arg, char closer) { StringBuffer name = new StringBuffer(); name.append(opener); - name.append(arg.get(0).toString()); + name.append(arg.get(0).getName()); for (int i = 1; i < arg.size(); i++) { name.append(Symbols.ARGUMENT_SEPARATOR); name.append(arg.get(i).getName()); diff --git a/nars/language/Conjunction.java b/nars/language/Conjunction.java index a0f76ae6..4757c8d0 100644 --- a/nars/language/Conjunction.java +++ b/nars/language/Conjunction.java @@ -84,10 +84,12 @@ public String operator() { * @return String representation of the order */ public static String getConjunctionSymbol(int t) { - if (t == -1) + if (t == -1) { return Symbols.CONJUNCTION_OPERATOR; - if (t == 1) + } + if (t == 1) { return Symbols.SEQUENCE_OPERATOR; + } return Symbols.PARALLEL_OPERATOR; } @@ -100,7 +102,6 @@ public boolean isCommutative() { return (temporalOrder < 1); } - /** * Return the temporal order. * @return Temporal order of the components @@ -147,7 +148,7 @@ public static Term make(ArrayList argList, int order) { } name = makeCompoundName(Symbols.SEQUENCE_OPERATOR, argList); Term t = Memory.nameToListedTerm(name); - return (t != null) ? t : new Conjunction(name, argList, order); + return (t != null) ? t : new Conjunction(name, argList, order); } else { TreeSet set = new TreeSet(argList); // sort/merge arguments return make(set, order); @@ -194,7 +195,7 @@ public static Term make(Term term1, Term term2, int order) { argument.add(term1); argument.add(term2); } - return make(argument, order); + return make(argument, order); } else { // to be refined to check other cases TreeSet set; if (order == 0) { @@ -210,7 +211,7 @@ public static Term make(Term term1, Term term2, int order) { set.add((Term) term1.clone()); // (&,R,(&,P,Q)) = (&,P,Q,R) } else { set = new TreeSet(); - set.add(term1); + set.add(term1); set.add(term2); return make(set, order); } @@ -236,4 +237,18 @@ public static Term make(Term term1, Term term2, int order) { } return null; // report error? how about compound sets? } + + /** + * Given operations special treatment, used in display only. + * @return The name of the term as a String + */ + @Override + public String toString() { + StringBuffer buf = new StringBuffer(Symbols.COMPOUND_TERM_OPENER + operator() + ","); + for (Term t : components) { + buf.append(t.toString() + Symbols.ARGUMENT_SEPARATOR); + } + buf.setCharAt(buf.length() - 1, Symbols.COMPOUND_TERM_CLOSER); + return buf.toString(); + } } diff --git a/nars/language/Equivalence.java b/nars/language/Equivalence.java index f94c7da9..a2d97cca 100644 --- a/nars/language/Equivalence.java +++ b/nars/language/Equivalence.java @@ -194,4 +194,16 @@ public static String getEquivalenceSymbol(boolean temporal, int distance) { public boolean isTemporal() { return isTemporal; } + + /** + * Given operations special treatment, used in display only. + * @return The name of the term as a String + */ + @Override + public String toString() { + StringBuffer buf = new StringBuffer(Symbols.STATEMENT_OPENER + ""); + buf.append(getSubject() + operator()); + buf.append(getPredicate().toString() + Symbols.STATEMENT_CLOSER); + return buf.toString(); + } } diff --git a/nars/language/Implication.java b/nars/language/Implication.java index fe5e439c..482a69c3 100644 --- a/nars/language/Implication.java +++ b/nars/language/Implication.java @@ -125,6 +125,9 @@ public static Implication make(Term subject, Term predicate, boolean temporal, i } if (predicate instanceof Implication) { Term oldCondition = ((Implication) predicate).getSubject(); + if ((oldCondition instanceof Conjunction) && ((Conjunction) oldCondition).containComponent(subject)) { + return null; + } Term newCondition; if (temporal) { newCondition = Conjunction.make(subject, oldCondition, order); @@ -182,4 +185,16 @@ public static String getSymbol(int t) { public boolean isTemporal() { return isTemporal; } + + /** + * Given operations special treatment, used in display only. + * @return The name of the term as a String + */ + @Override + public String toString() { + StringBuffer buf = new StringBuffer(Symbols.STATEMENT_OPENER + ""); + buf.append(getSubject() + operator()); + buf.append(getPredicate().toString() + Symbols.STATEMENT_CLOSER); + return buf.toString(); + } } diff --git a/nars/language/Inheritance.java b/nars/language/Inheritance.java index fb1cd91b..4b6ae111 100644 --- a/nars/language/Inheritance.java +++ b/nars/language/Inheritance.java @@ -85,5 +85,60 @@ public static Inheritance make(Term subject, Term predicate) { public String operator() { return Symbols.INHERITANCE_RELATION; } + + /** + * Get the operator of the term if it is an operation, with an optional opeartor. + * @param opName An optional operator name to be matched + * @return The list representation of the operation + */ + @Override + public ArrayList isOperation(String opName) { + ArrayList list = null; + Term subj = getSubject(); + Term pred = getPredicate(); + Term operator; + String str; + if (subj instanceof Product) { + str = pred.getName(); + if ((opName == null) || (opName.equals(str))) { + operator = Memory.nameToOperator(str); + if (operator != null) { + list = ((CompoundTerm) subj).cloneComponents(); + list.add(0, operator); + } + } + } else if (pred instanceof ImageExt) { + int index = ((ImageExt) pred).getRelationIndex(); + str = ((ImageExt) pred).componentAt(index).getName(); + if ((opName == null) || (opName.equals(str))) { + operator = Memory.nameToOperator(str); + if (operator != null) { + list = ((ImageExt) pred).cloneComponents(); + list.set(index, subj); + list.add(0, operator); + } + } + } + return list; + } + + /** + * Given operations special treatment, used in display only. + * @return The name of the term as a String + */ + @Override + public String toString() { + ArrayList list = isOperation(null); + if (list == null) { + return super.toString(); + } else { + StringBuffer buf = new StringBuffer("("); + for (Term t : list) { + buf.append(t.toString() + ','); + } + buf.setCharAt(buf.length()-1, ')'); + return buf.toString(); + } + } } diff --git a/nars/language/Statement.java b/nars/language/Statement.java index f2a38487..8f1d1bcf 100644 --- a/nars/language/Statement.java +++ b/nars/language/Statement.java @@ -23,6 +23,8 @@ import java.util.ArrayList; import nars.io.Symbols; +import nars.main.Memory; +import nars.operation.Operator; /** * A statement is a compound term, consisting of a subject, a predicate, @@ -287,4 +289,34 @@ public Term getSubject() { public Term getPredicate() { return components.get(1); } + + /** + * Return the operator if the statement is an operation + * @return The second component + */ + public String getOperatorName() { // useful??? + if (this instanceof Inheritance) { + Term t = getPredicate(); + String s = t.getName(); + Operator op = Memory.nameToOperator(s); + if (op != null) { + return op.getName(); + } else if (getSubject() instanceof ImageInt) { + ImageInt subj = (ImageInt) getSubject(); + s = subj.componentAt(subj.getRelationIndex()).getName(); + op = Memory.nameToOperator(s); + if (op != null) { + return s; + } + } else if (getPredicate() instanceof ImageExt) { + ImageExt pred = (ImageExt) getPredicate(); + s = pred.componentAt(pred.getRelationIndex()).getName(); + op = Memory.nameToOperator(s); + if (op != null) { + return s; + } + } + } + return null; + } } diff --git a/nars/language/Term.java b/nars/language/Term.java index 3a861c08..e95566a2 100644 --- a/nars/language/Term.java +++ b/nars/language/Term.java @@ -20,6 +20,8 @@ */ package nars.language; +import java.util.ArrayList; + /** * Term is the basic component of Narsese, and the object of processing in NARS. *

    @@ -28,7 +30,8 @@ */ public class Term implements Cloneable, Comparable { - /** A Term is identified uniquely by its name, a sequence of characters in a + /** + * A Term is identified uniquely by its name, a sequence of characters in a * given alphabet (ASCII or Unicode) */ protected String name; @@ -48,7 +51,7 @@ public Term(String name) { } /** - * The same as getName, used in display. + * The same as getName by default, used in display only. * @return The name of the term as a String */ @Override @@ -144,4 +147,13 @@ public boolean isTemporal() { public int getOrder() { return 0; } + + /** + * Get the operator of the term if it is an operation, with an optional opeartor. + * @param opName An optional operator name to be matched + * @return The list representation of the operation + */ + public ArrayList isOperation(String opName) { + return null; + } } diff --git a/nars/language/Variable.java b/nars/language/Variable.java index 274c47e2..ecfe80ec 100644 --- a/nars/language/Variable.java +++ b/nars/language/Variable.java @@ -172,7 +172,7 @@ public String getName() { if (dependency != null) { for (Variable v : dependency) { if (v.getType() == VarType.INDEPENDENT) { - buffer.append(v.toString()); + buffer.append(v.getName()); } } } @@ -364,4 +364,9 @@ private static HashMap findSubstituteVar(VarType type, Variable va return subs; } } + + @Override + public String toString() { + return getName(); + } } diff --git a/nars/main/Memory.java b/nars/main/Memory.java index 61748757..da3d4714 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -167,37 +167,18 @@ public static boolean noResult() { newTasks list, to be processed in the next cycle. Some of them are reported and/or logged. */ /** - * Input task processing. - * @param task the input task + * Input task processing. Invoked by the outside or inside enviornment. + * Outside: StringParser (input); Inside: Operator (feedback). + * Input tasks with low priority are ignored, and the others are put into task buffer. + * @param task The input task */ public static void inputTask(Task task) { - Record.append("!!! Input: " + task + "\n"); if (task.aboveThreshold()) { + Record.append("!!! Perceived: " + task + "\n"); report(task.getSentence(), true); // report input newTasks.add(task); // wait to be processed in the next cycle - novelTasks.refresh(); // refresh display } else { - Record.append("!!! Ignored: " + task + "\n"); - } - } - - /** - * Derived task comes from the inference rules. - * @param task the derived task - */ - private static void derivedTask(Task task) { - Record.append("!!! Derived: " + task + "\n"); - if (task.aboveThreshold()) { - float budget = task.getBudget().summary(); - @SuppressWarnings("static-access") - float minSilent = Center.mainWindow.silentW.value() / 100.0f; - if (budget > minSilent) { // only report significient derived Tasks - report(task.getSentence(), false); - } - newTasks.add(task); - novelTasks.refresh(); - } else { - Record.append("!!! Ignored: " + task + "\n"); + Record.append("!!! Neglected: " + task + "\n"); } } @@ -210,15 +191,14 @@ private static void derivedTask(Task task) { public static void executedTask(Task task) { Record.append("!!! Executed: " + task.getSentence() + "\n"); Goal g = (Goal) task.getSentence(); - Judgment j = new Judgment(g); + Judgment j = new Judgment(g); // perceived execution Task newTask = new Task(j, task.getBudget()); report(newTask.getSentence(), false); newTasks.add(newTask); - novelTasks.refresh(); } /** - * Activated task coming from MatchingRules.trySolution + * Activated task called in MatchingRules.trySolution and Concept.processGoal * @param budget The budget value of the new Task * @param sentence The content of the new Task * @param isInput Whether the question is input @@ -235,7 +215,25 @@ public static void activatedTask(BudgetValue budget, Sentence sentence, boolean } } newTasks.add(task); - novelTasks.refresh(); + } + + /** + * Derived task comes from the inference rules. + * @param task the derived task + */ + private static void derivedTask(Task task) { + if (task.aboveThreshold()) { + Record.append("!!! Derived: " + task + "\n"); + float budget = task.getBudget().summary(); + @SuppressWarnings("static-access") + float minSilent = Center.mainWindow.silentW.value() / 100.0f; + if (budget > minSilent) { // only report significient derived Tasks + report(task.getSentence(), false); + } + newTasks.add(task); + } else { + Record.append("!!! Ignored: " + task + "\n"); + } } /* --------------- new task building --------------- */ @@ -256,6 +254,28 @@ public static void doublePremiseTask(BudgetValue budget, Term content, TruthValu } } + public static void predictionWithConfirmation(BudgetValue budget, Term content, TruthValue truth, + Sentence premise1, Sentence premise2) { + if (content != null) { + Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, newStamp, premise1, premise2); + Task newTask = new Task(newSentence, budget); + derivedTask(newTask); + Question ques = new Question((Judgment) newSentence); + newTask = new Task(ques, budget); + derivedTask(newTask); + } + } + + public static void lackConfirmation(Term content, long t) { + TruthValue tv = new TruthValue(0f, 2*Parameters.DEFAULT_CONFIRMATION_EXPECTATION - 1); + BudgetValue bv = new BudgetValue(Parameters.DEFAULT_JUDGMENT_PRIORITY, Parameters.DEFAULT_JUDGMENT_DURABILITY, 1); + Stamp st = new Stamp(); + st.setEventTime(t); + Judgment j = new Judgment(content, '.', tv, st, null, null); + Task newTask = new Task(j, bv); + derivedTask(newTask); + } + /** * The final operations of the revision rules, called from MatchingRules * @param budget The budget value of the new task @@ -328,11 +348,14 @@ public static void convertedJudgment(TruthValue truth, BudgetValue budget) { * An atomic working cycle of the system: process new Tasks, then fire a concept *

    * Called from Center.tick only + *

    + * In the future, it is possible to adjust the occuring ratio of the two actions */ public static void cycle() { // keep the following order processTask(); processConcept(); + novelTasks.refresh(); // refresh display } /** @@ -346,12 +369,6 @@ private static void processTask() { task = newTasks.remove(0); if (task.getSentence().isInput() || (termToConcept(task.getContent()) != null)) { // new input or existing concept immediateProcess(task); -// if (task.getSentence().isInput() && (task.getSentence() instanceof Question)) { -// Concept concept = Memory.nameToConcept(task.getSentence().getContent().getName()); -// if (concept != null) { -// concept.startPlay(false); -// } -// } } else { novelTasks.putIn(task); // delayed processing } @@ -372,13 +389,12 @@ private static void processConcept() { Record.append(" * Selected Concept: " + currentTerm + "\n"); concepts.putBack(currentConcept); // current Concept remains in the bag all the time currentConcept.fire(); // a working cycle - novelTasks.refresh(); // show new result } } /* ---------- task processing ---------- */ /** - * Imediate processing of a new task, in constant time + * Immediate processing of a new task, in constant time * Local processing, in one concept only * @param task the task to be accepted */ @@ -390,15 +406,10 @@ private static void immediateProcess(Task task) { Record.append("!!! Insert: " + task + "\n"); Term content = task.getContent(); Concept c = getConcept(content); - if (c == null) { - return; - } - c.directProcess(task); - if (task.aboveThreshold()) { // still need to be processed - continuedProcess(task, content); - Sentence s = task.getSentence(); - if (s.isJudgment() && s.isTemporal()) { - eventProcessing(task); + if (c != null) { + boolean toContinue = c.directProcess(task); + if (toContinue && task.aboveThreshold()) { // still need to be processed + linkToTask(task, content, c); } } } @@ -411,17 +422,13 @@ private static void immediateProcess(Task task) { * @param task The task to be linked * @param content The content of the task */ - private static void continuedProcess(Task task, Term content) { - TaskLink taskLink; - Concept contentConcept = getConcept(content); - if (contentConcept == null) { - return; - } + private static void linkToTask(Task task, Term content, Concept contentConcept) { BudgetValue budget = task.getBudget(); - taskLink = new TaskLink(task, null, budget); // link type: SELF + TaskLink taskLink = new TaskLink(task, null, budget); // link type: SELF contentConcept.insertTaskLink(taskLink); if (content instanceof CompoundTerm) { - ArrayList termLinks = (contentConcept != null) ? contentConcept.getTermLinkTemplates() + ArrayList termLinks = (contentConcept != null) + ? contentConcept.getTermLinkTemplates() : ((CompoundTerm) content).prepareComponentLinks(); // use saved if exist if (termLinks.size() > 0) { BudgetValue subBudget = BudgetFunctions.distributeAmongLinks(budget, termLinks.size()); @@ -450,7 +457,7 @@ private static void continuedProcess(Task task, Term content) { * called in Memory.immediateProcess * @param event1 A new event */ - private static void eventProcessing(Task event1) { + public static void eventProcessing(Task event1) { Task event2 = recentEvents.takeOut(); if (event2 != null) { if (event1.getSentence().noOverlapping(event2.getSentence())) { diff --git a/nars/main/NARS.java b/nars/main/NARS.java index efc54306..f8502729 100644 --- a/nars/main/NARS.java +++ b/nars/main/NARS.java @@ -35,7 +35,7 @@ public class NARS extends Applet implements Runnable { * The information about the version and date of the project. */ public static final String INFO = - " Open-NARS Version 1.3.2 May 2010 \n"; + " Open-NARS Version 1.3.3 June 2010 \n"; /** * The project websites. */ diff --git a/nars/main/Parameters.java b/nars/main/Parameters.java index 19972274..71d70801 100644 --- a/nars/main/Parameters.java +++ b/nars/main/Parameters.java @@ -60,6 +60,8 @@ public class Parameters { public static final float PRIORITY_THRESHOLD = (float) 0.06; /* ---------- default input values ---------- */ + /** Default expectation for conformation. */ + public static final float DEFAULT_CONFIRMATION_EXPECTATION = (float) 0.8; /** Default confidence of input judgment. */ public static final float DEFAULT_JUDGMENT_CONFIDENCE = (float) 0.9; /** Default priority of input judgment */ diff --git a/nars/operation/Operator.java b/nars/operation/Operator.java index b2ba2060..18804818 100644 --- a/nars/operation/Operator.java +++ b/nars/operation/Operator.java @@ -69,7 +69,9 @@ public void call(Task task) { */ public static HashMap setOperators() { HashMap table = new HashMap(); + /* operators for internal operations */ + table.put("^wait", new Wait("^wait")); /* operators for testing examples */ table.put("^go-to", new GoTo("^go-to")); @@ -79,6 +81,7 @@ public static HashMap setOperators() { table.put("^drop", new Drop("^drop")); table.put("^throw", new Throw("^throw")); table.put("^strike", new Strike("^strike")); + return table; } @@ -87,7 +90,7 @@ public static HashMap setOperators() { *

    * @param operation The content of the operation to be executed */ - private void reportExecution(Statement operation) { + protected void reportExecution(Statement operation) { Term operator = operation.getPredicate(); Term arguments = operation.getSubject(); String argList = arguments.toString().substring(3); // skip the product prefix "(*," diff --git a/nars/operation/Wait.java b/nars/operation/Wait.java new file mode 100644 index 00000000..73cd74a8 --- /dev/null +++ b/nars/operation/Wait.java @@ -0,0 +1,92 @@ +/* + * Break.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ +package nars.operation; + +import java.util.ArrayList; + +import nars.entity.Task; +import nars.language.*; +import nars.main.*; + +/** + * A class used in testing only. + */ +public class Wait extends Operator { + + public Wait(String name) { + super(name); + } + + /** + * Execute an operation, then handle feedback + * @param task The task to be executed + */ + @Override + public void call(Task task) { + execute(task); + } + + public ArrayList execute(Task task) { + Statement content = (Statement) task.getContent(); + String delta = ((CompoundTerm) content.getSubject()).componentAt(0).getName(); + int targetTime = (int) task.getSentence().getCreationTime() + Integer.parseInt(delta); + if (Center.getTime() < targetTime) { + Memory.activatedTask(task.getBudget(), task.getSentence(), false); + } else { + reportExecution(content); + Memory.executedTask(task); + } + return null; + } + + public Term createOperation(int distance) { + Term t = new Term(Integer.toString(distance)); + ArrayList argument = new ArrayList(); + argument.add(t); + Term p = Product.make(argument); + return Inheritance.make(p, this); + } + + public static int getWaitingTime(Term term) { + ArrayList list = term.isOperation("^wait"); + if (list != null) { + return Integer.parseInt(list.get(1).toString()); + } else { + return 0; + } + } + + public static int getWaitingTime(Term t, boolean front) { + if (t instanceof CompoundTerm) { + if (t instanceof Inheritance) { + return getWaitingTime(t); + } else if ((t instanceof Conjunction) && Conjunction.isSequence(t)) { + if (front) { + return getWaitingTime(((Conjunction) t).componentAt(0)); + } else { + return getWaitingTime(((Conjunction) t).componentAt(((Conjunction) t).size()-1)); + } + } + } + return 0; + } +} + From e89c397ac530ab2428c7a3b98338b158fd7c7fdd Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Mon, 23 Aug 2010 18:56:33 +0000 Subject: [PATCH 054/206] open-nars 1.4.0. See http://code.google.com/p/open-nars/wiki/OpenNarsOneDotFour --- nars/entity/BudgetValue.java | 5 +- nars/entity/Concept.java | 172 ++++++++++++-------- nars/entity/Goal.java | 6 +- nars/entity/Judgment.java | 27 ++-- nars/entity/Quest.java | 41 +++++ nars/entity/Question.java | 6 +- nars/entity/Sentence.java | 55 ++++++- nars/entity/Stamp.java | 6 +- nars/entity/Task.java | 8 +- nars/entity/TruthValue.java | 23 +++ nars/inference/MatchingRules.java | 20 ++- nars/inference/RuleTables.java | 17 +- nars/inference/StructuralRules.java | 16 +- nars/inference/SyllogisticRules.java | 232 ++++++++++++++++++--------- nars/io/StringParser.java | 5 +- nars/io/Symbols.java | 3 +- nars/language/CompoundTerm.java | 6 +- nars/language/Conjunction.java | 14 +- nars/language/Equivalence.java | 12 -- nars/language/Implication.java | 12 -- nars/language/Inheritance.java | 4 +- nars/language/Statement.java | 12 ++ nars/language/Term.java | 2 +- nars/language/Variable.java | 14 +- nars/main/Memory.java | 154 +++++++++++++++--- nars/main/NARS.java | 2 +- nars/main/Parameters.java | 12 +- nars/operation/Assess.java | 49 ++++++ nars/operation/Believe.java | 56 +++++++ nars/operation/Break.java | 2 + nars/operation/Consider.java | 48 ++++++ nars/operation/Drop.java | 3 +- nars/operation/GoTo.java | 3 +- nars/operation/Open.java | 3 +- nars/operation/Operator.java | 38 ++++- nars/operation/Pick.java | 3 +- nars/operation/Remind.java | 48 ++++++ nars/operation/Strike.java | 2 + nars/operation/Throw.java | 3 +- nars/operation/Wait.java | 21 ++- nars/operation/Want.java | 56 +++++++ nars/operation/Wonder.java | 49 ++++++ nars/storage/Bag.java | 3 +- nars/storage/ConceptBag.java | 10 ++ nars/storage/TaskBuffer.java | 2 +- 45 files changed, 1009 insertions(+), 276 deletions(-) create mode 100644 nars/entity/Quest.java create mode 100644 nars/operation/Assess.java create mode 100644 nars/operation/Believe.java create mode 100644 nars/operation/Consider.java create mode 100644 nars/operation/Remind.java create mode 100644 nars/operation/Want.java create mode 100644 nars/operation/Wonder.java diff --git a/nars/entity/BudgetValue.java b/nars/entity/BudgetValue.java index b6bbc89c..818f4e54 100644 --- a/nars/entity/BudgetValue.java +++ b/nars/entity/BudgetValue.java @@ -22,7 +22,7 @@ import nars.inference.*; import nars.io.Symbols; -import nars.main.Parameters; +import nars.main.*; /** * A triple of priority (current), durability (decay), and quality (long-term average). @@ -198,7 +198,8 @@ public float summary() { * @return The decision on whether to process the Item */ public boolean aboveThreshold() { - return (summary() >= Parameters.BUDGET_THRESHOLD); + return (summary() >= Memory.busyValue()*Parameters.BUDGET_THRESHOLD); +// return (summary() >= Parameters.BUDGET_THRESHOLD); } /** diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index 8dc6b52b..bc6ebc6b 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -50,7 +50,7 @@ public final class Concept extends Item { /** Question directly asked about the term */ private ArrayList questions; /** Goals directly requested on the term */ - private ArrayList goals; + private ArrayList goals; /** Judgments directly made about the term, with non-future tense */ private ArrayList beliefs; /** Most recent and confidence judgment */ @@ -73,7 +73,7 @@ public Concept(Term tm) { key = tm.getName(); term = tm; questions = new ArrayList(); - goals = new ArrayList(); + goals = new ArrayList(); beliefs = new ArrayList(); taskLinks = new TaskLinkBag(); termLinks = new TermLinkBag(); @@ -98,22 +98,25 @@ private void checkRevisibility() { *

    * called in Memory.immediateProcess only * @param task The task to be processed - * @return Whether to continue the processing of the task */ - public boolean directProcess(Task task) { - Sentence sentence = task.getSentence(); - boolean toContinue; - if (sentence instanceof Question) { - toContinue = processQuestion((Question) sentence, task); - } else if (sentence instanceof Goal) { - toContinue = processGoal((Goal) sentence, task); + public void directProcess(Task task) { + Sentence problem = task.getSentence(); + if (problem instanceof Quest) { + processQuestion((Quest) problem, task); + } else if (problem instanceof Question) { + processQuestion((Question) problem, task); + } else if (problem instanceof Goal) { + processGoal((Goal) problem, task); } else { - toContinue = processJudgment((Judgment) sentence, task); + processJudgment((Judgment) problem, task); + } + if (task.aboveThreshold()) { // still need to be processed + Memory.linkToTask(task, problem.getContent(), this); } if (showing) { window.post(displayContent()); } - return toContinue; + Memory.rememberAction(task); } /** @@ -122,21 +125,30 @@ public boolean directProcess(Task task) { * @param task The task to be processed * @return Whether to continue the processing of the task */ - private boolean processQuestion(Question ques, Task task) { - boolean toContinue = true; - for (Question q : questions) { - if (q.getContent().equals(ques.getContent()) && (q.getEventTime() == ques.getEventTime())) { - toContinue = false; - break; + public float processQuestion(Question ques, Task task) { + boolean newQuestion = true; + if (questions != null) { + for (Question q : questions) { + if (q.getContent().equals(ques.getContent()) && (q.getEventTime() == ques.getEventTime())) { + ques = q; + newQuestion = false; + break; + } } } - if (toContinue) { + if (newQuestion) { questions.add(ques); } - for (Judgment judg : beliefs) { - MatchingRules.trySolution(ques, judg, task); + if (questions.size() > Parameters.MAXMUM_QUESTIONS_LENGTH) { + questions.remove(0); // FIFO + } + Judgment newAnswer = (ques instanceof Quest) ? evaluation(ques, goals) : evaluation(ques, beliefs); + if (newAnswer != null) { + MatchingRules.trySolution(ques, newAnswer, task); + return newAnswer.getTruth().getExpectation(); + } else { + return 0.5f; } - return toContinue; } /** @@ -145,63 +157,62 @@ private boolean processQuestion(Question ques, Task task) { * @param task The task to be processed * @return Whether to continue the processing of the task */ - private boolean processGoal(Goal goal, Task task) { - boolean revised = false; + private void processGoal(Goal goal, Task task) { if (revisible) { - revised = reviseTable(goal, goals); - if (revised) { - return false; + Judgment oldGoal = evaluation(goal, goals); + if ((oldGoal != null) && (goal.noOverlapping(oldGoal))) { + MatchingRules.revision(goal, oldGoal, false); } } - for (Judgment judg : beliefs) { - MatchingRules.trySolution(goal, judg, task); + addToTable(goal, goals, Parameters.MAXMUM_GOALS_LENGTH); + if (task.aboveThreshold()) { + Judgment fact = evaluation(goal, beliefs); + if (fact != null) { + MatchingRules.trySolution(goal, fact, task); + } } if (task.aboveThreshold()) { Term content = goal.getContent(); - if (content instanceof Inheritance) { - Term pred = ((Inheritance) content).getPredicate(); - if (pred instanceof Operator) { - float netDesire = goal.getTruth().getExpectation(); - if (netDesire > Parameters.DECISION_THRESHOLD) { - ((Operator) pred).call(task); - return false; - } + ArrayList list = content.parseOperation(null); + if (list != null) { + Operator op = (Operator) list.get(0); + float netDesire = goal.getTruth().getExpectation(); + if (netDesire > Parameters.DECISION_THRESHOLD) { + op.call(task); + task.setPriority(0); } + } else { + Question ques = new Question(goal); + Memory.activatedTask(task.getBudget(), ques, false); } - addToTable(goal, goals, Parameters.MAXMUM_GOALS_LENGTH); - Question ques = new Question(goal); - Memory.activatedTask(task.getBudget(), ques, false); - return true; - } else { - return false; } } /** - * To accept a new judgment as belief, and check for revisions and solutions + * To accept a new judgment as isBelief, and check for revisions and solutions * @param judg The judgment to be accepted * @param task The task to be processed * @return Whether to continue the processing of the task */ - private boolean processJudgment(Judgment judg, Task task) { + private void processJudgment(Judgment judg, Task task) { if (revisible) { - reviseTable(judg, beliefs); + Judgment oldBelief = evaluation(judg, beliefs); + if ((oldBelief != null) && (judg.noOverlapping(oldBelief))) { + MatchingRules.revision(judg, oldBelief, false); + } } if (task.aboveThreshold()) { for (Question ques : questions) { MatchingRules.trySolution(ques, judg, task); } - for (Goal goal : goals) { - MatchingRules.trySolution(goal, judg, task); + for (Judgment goal : goals) { + MatchingRules.trySolution((Goal) goal, judg, task); } addToTable(judg, beliefs, Parameters.MAXMUM_BELIEF_LENGTH); // generateNegation(task); // may be recovered in the future if (judg.isEvent()) { Memory.eventProcessing(task); } - return true; - } else { - return false; } } @@ -222,23 +233,22 @@ private boolean processJudgment(Judgment judg, Task task) { // } /** * Revise existing beliefs or goals - * @param judg The judgment (belief or goal) to be processed + * @param judg The judgment (isBelief or goal) to be processed * @param table The table to be revised - * @return Whether the new belief triggered a revision + * @return Whether the new isBelief triggered a revision */ - private boolean reviseTable(Judgment judg, ArrayList table) { - boolean revised = false; - for (Object belief : table) { - if (judg.noOverlapping((Judgment) belief)) { - MatchingRules.revision(judg, (Judgment) belief, false); - revised = true; - } - } - return revised; - } - +// private boolean reviseTable(Judgment judg, ArrayList table) { +// boolean revised = false; +// for (Object isBelief : table) { +// if (judg.noOverlapping((Judgment) isBelief)) { +// MatchingRules.revision(judg, (Judgment) isBelief, false); +// revised = true; +// } +// } +// return revised; +// } /** - * Add a new belief or goal into the table + * Add a new isBelief or goal into the table * Sort the beliefs/goals by rank, and remove redundant or low rank one * @param newJudgment The judgment to be processed * @param table The table to be revised @@ -246,7 +256,7 @@ private boolean reviseTable(Judgment judg, ArrayList table) { */ @SuppressWarnings("unchecked") private void addToTable(Judgment newJudgment, ArrayList table, int capacity) { - float rank1 = BudgetFunctions.rankBelief(newJudgment); // for the new belief + float rank1 = BudgetFunctions.rankBelief(newJudgment); // for the new isBelief Judgment judgment2; float rank2; int i; @@ -270,6 +280,28 @@ private void addToTable(Judgment newJudgment, ArrayList table, int capacity) { } } +// public float evaluation(boolean isBelief) { +// Judgment j = isBelief ? evaluation(null, beliefs) : evaluation(null, goals); +// return j.getTruth().getExpectation(); +// } + + private Judgment evaluation(Sentence query, ArrayList list) { + if (list == null) { + return null; + } + float currentBest = 0; + float beliefQuality; + Judgment candidate = null; + for (Judgment judg : list) { + beliefQuality = MatchingRules.solutionQuality(query, judg); + if (beliefQuality > currentBest) { + currentBest = beliefQuality; + candidate = judg; + } + } + return candidate; + } + /* ---------- insert Links for indirect processing ---------- */ /** * Insert a TaskLink into the TaskLink bag @@ -368,13 +400,13 @@ public ArrayList getTermLinkTemplates() { } /** - * Select a belief to interact with the given task in inference + * Select a isBelief to interact with the given task in inference *

    * get the first qualified one *

    * only called in RuleTables.reason * @param task The selected task - * @return The selected belief + * @return The selected isBelief */ public Judgment getBelief(Task task) { Sentence taskSentence = task.getSentence(); @@ -411,7 +443,7 @@ public void fire() { Record.append(" * Selected TaskLink: " + tLink + "\n"); Task task = tLink.getTargetTask(); Memory.currentTask = task; // one of the two places where this variable is set - if (task.getSentence() instanceof Question) { + if (task.getSentence().isQuestion()) { ((Question) task.getSentence()).checkFeedback(); } if (tLink.getType() == TermLink.TRANSFORM) { @@ -468,7 +500,7 @@ public void stop() { } /** - * Collect direct belief, questions, and goals for display + * Collect direct isBelief, questions, and goals for display * @return String representation of direct content */ public String displayContent() { diff --git a/nars/entity/Goal.java b/nars/entity/Goal.java index 5086ae6c..ed5835c9 100644 --- a/nars/entity/Goal.java +++ b/nars/entity/Goal.java @@ -22,6 +22,7 @@ package nars.entity; import nars.language.Term; +import nars.io.Symbols; /** * A Goal is an event to be realized, and may conain query variables @@ -39,5 +40,8 @@ public class Goal extends Judgment { public Goal(Term term, char punc, TruthValue t, Stamp s) { super(term, punc, t, s, null, null); } -} + public Goal(Term term, TruthValue t, Stamp s) { + super(term, Symbols.GOAL_MARK, t, s, null, null); + } +} diff --git a/nars/entity/Judgment.java b/nars/entity/Judgment.java index 8bb7b71c..128d5886 100644 --- a/nars/entity/Judgment.java +++ b/nars/entity/Judgment.java @@ -48,25 +48,32 @@ public Judgment(Term term, char punc, TruthValue t, Stamp b, Sentence premise1, punctuation = punc; truth = t; stamp = b; - if (premise1 instanceof Judgment) { - _premise1 = (Judgment) premise1; - } - if (premise2 instanceof Judgment) { - _premise2 = (Judgment) premise2; - } +// if (premise1 instanceof Judgment) { +// _premise1 = (Judgment) premise1; +// } +// if (premise2 instanceof Judgment) { +// _premise2 = (Judgment) premise2; +// } } /** - * Construct a Judgment to indicate an operation just executed - * @param g The goal that trigger the execution + * Construct a Judgment from a term + * @param t The content of the judgment */ - public Judgment(Goal g) { - content = g.cloneContent(); + public Judgment(Term t) { + content = t; punctuation = Symbols.JUDGMENT_MARK; truth = new TruthValue(1.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); stamp = new Stamp(0, true); } + public Judgment(Term t, TruthValue v, Stamp s) { + content = t; + punctuation = Symbols.JUDGMENT_MARK; + truth = v; + stamp = s; + } + /** * Check whether the judgment is equivalent to another one *

    diff --git a/nars/entity/Quest.java b/nars/entity/Quest.java new file mode 100644 index 00000000..80ccfa18 --- /dev/null +++ b/nars/entity/Quest.java @@ -0,0 +1,41 @@ +/* + * Question.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ + +package nars.entity; + +import nars.language.Term; +import nars.io.Symbols; + +/** + * A Quest is a question on the desire-value of a statement + */ +public class Quest extends Question { + + public Quest(Term term, char punc, Stamp s) { + super(term, punc, s); + } + + public Quest(Goal g) { + content = g.cloneContent(); + punctuation = Symbols.QUEST_MARK; + stamp = new Stamp(0, true); + } +} diff --git a/nars/entity/Question.java b/nars/entity/Question.java index d064a768..fdffa377 100644 --- a/nars/entity/Question.java +++ b/nars/entity/Question.java @@ -31,6 +31,9 @@ public class Question extends Sentence { private boolean needFeedback = false; + public Question() { + } + /** * Constructor * @param term The content @@ -62,7 +65,8 @@ public Question(Judgment j) { punctuation = Symbols.QUESTION_MARK; stamp = Memory.newStamp; bestSolution = j; - needFeedback = (stamp.getEventTime() >= Center.getTime()); + needFeedback = true; +// needFeedback = (stamp.getEventTime() >= Center.getTime()); } public void checkFeedback() { diff --git a/nars/entity/Sentence.java b/nars/entity/Sentence.java index 2e4c81fe..aec5f16e 100644 --- a/nars/entity/Sentence.java +++ b/nars/entity/Sentence.java @@ -20,6 +20,8 @@ */ package nars.entity; +import java.util.*; + import nars.io.Symbols; import nars.language.*; import nars.main.*; @@ -69,6 +71,9 @@ public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, case Symbols.QUESTION_MARK: s = new Question(term, punc, stamp); break; + case Symbols.QUEST_MARK: + s = new Quest(term, punc, stamp); + break; default: return null; } @@ -91,7 +96,9 @@ public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp st ((CompoundTerm) term).renameVariables(); } Sentence s = null; - if (oldS instanceof Question) { + if (oldS instanceof Quest) { + s = new Quest(term, Symbols.QUEST_MARK, stamp); + } else if (oldS instanceof Question) { s = new Question(term, Symbols.QUESTION_MARK, stamp); } else if (oldS instanceof Goal) { s = new Goal(term, Symbols.GOAL_MARK, truth, stamp); @@ -108,10 +115,10 @@ public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp st @Override public Object clone() { if (this instanceof Judgment) { - return make((Term) content.clone(), punctuation, truth, stamp, + return make((Term) content.clone(), punctuation, truth, (Stamp) stamp.clone(), ((Judgment) this)._premise1, ((Judgment) this)._premise2); } else { - return make((Term) content.clone(), punctuation, truth, stamp, null, null); + return make((Term) content.clone(), punctuation, truth, (Stamp) stamp.clone(), null, null); } } @@ -163,6 +170,14 @@ public boolean isJudgment() { return (punctuation == Symbols.JUDGMENT_MARK); } + /** + * Distinguish Question from Quest ("instanceof Question" doesn't work) + * @return Whether the object is a Question + */ + public boolean isQuestion() { + return (punctuation == Symbols.QUESTION_MARK); + } + /** * Check input sentence * @return Whether the @@ -210,11 +225,11 @@ public boolean noOverlapping(Sentence that) { } /** - * Get a stable String representation for a Sentece + * Get a stable String representation for a Sentece, called from Task only * Different from toString: tense symbol is replaced by the actual value * @return String representation for a Sentece */ - public String toKey() { + public String forTaskKey() { StringBuffer s = new StringBuffer(); s.append(content.getName()); s.append(punctuation + " "); @@ -225,6 +240,36 @@ public String toKey() { return s.toString(); } + public Term toTerm() { + String opName; + switch (punctuation) { + case Symbols.JUDGMENT_MARK: + opName = "^believe"; + break; + case Symbols.GOAL_MARK: + opName = "^want"; + break; + case Symbols.QUESTION_MARK: + opName = "^wonder"; + break; + case Symbols.QUEST_MARK: + opName = "^assess"; + break; + default: + return null; + } + Term opTerm = Memory.nameToOperator(opName); + ArrayList arg = new ArrayList(); + arg.add(content); + if (truth != null) { + String word = truth.toWord(); + arg.add(new Term(word)); + } + Term argTerm = Product.make(arg); + Term operation = Inheritance.make(argTerm, opTerm); + return operation; + } + /** * Get a String representation of the sentence * @return The String diff --git a/nars/entity/Stamp.java b/nars/entity/Stamp.java index a39acdd1..1fdbee82 100644 --- a/nars/entity/Stamp.java +++ b/nars/entity/Stamp.java @@ -103,7 +103,7 @@ public Stamp(String tense) { * For single-premise rules * @param old The stamp of the single premise */ - public Stamp(Stamp old) { + private Stamp(Stamp old) { length = old.length(); trail = old.getList(); creationTime = Center.getTime(); @@ -165,6 +165,10 @@ public static Stamp make(Stamp first, Stamp second) { } } + public Object clone() { + return new Stamp(this); + } + /** * Initialize the stamp machenism of the system, called in Center */ diff --git a/nars/entity/Task.java b/nars/entity/Task.java index 2b8c7116..22cdfce7 100644 --- a/nars/entity/Task.java +++ b/nars/entity/Task.java @@ -26,7 +26,7 @@ /** * A task to be processed, consists of a Sentence and a BudgetValue */ -public class Task extends Item { +public class Task extends Item implements Cloneable { /** The sentence of the Task */ private Sentence sentence; /** Whether it is derived by a structural rule */ @@ -40,7 +40,11 @@ public class Task extends Item { public Task(Sentence s, BudgetValue b) { super(b); sentence = s; - key = sentence.toKey(); + key = sentence.forTaskKey(); + } + + public Object clone() { + return new Task(sentence, (BudgetValue) this); } /** diff --git a/nars/entity/TruthValue.java b/nars/entity/TruthValue.java index 2b563c9b..30452d18 100644 --- a/nars/entity/TruthValue.java +++ b/nars/entity/TruthValue.java @@ -21,6 +21,7 @@ package nars.entity; import nars.io.Symbols; +import nars.main.Parameters; /** * Frequency and confidence. @@ -54,6 +55,16 @@ public TruthValue(TruthValue v) { confidence = new ShortFloat(v.getConfidence()); } + public static TruthValue make(String str) { + if (str.equals("TRUE")) { + return new TruthValue(1.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); + } else if (str.equals("FALSE")) { + return new TruthValue(0.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); + } else { + return null; + } + } + /** * Get the frequency value * @return The frequency value @@ -109,6 +120,18 @@ public int hashCode() { return hash; } + public String toWord() { + float e = getExpectation(); + float t = Parameters.EXPECTATION_THRESHOLD; + if (e > t) { + return "TRUE"; + } + if (e < 1 - t) { + return "FALSE"; + } + return "UNSURE"; + } + /** * The String representation of a TruthValue * @return The String diff --git a/nars/inference/MatchingRules.java b/nars/inference/MatchingRules.java index b0b76dfc..10d94847 100644 --- a/nars/inference/MatchingRules.java +++ b/nars/inference/MatchingRules.java @@ -81,7 +81,7 @@ public static void revision(Judgment newBelief, Judgment oldBelief, boolean feed } /** - * Check if a Judgment provide a better answer to a Question + * Check if a Judgment provide a better answer to a Question or Goal * @param problem The Goal or Question to be answered * @param belief The proposed answer * @param task The task to be processed @@ -98,17 +98,22 @@ public static void trySolution(Sentence problem, Judgment belief, Task task) { } } Judgment oldBest = problem.getBestSolution(); + float newQ = solutionQuality(problem, belief); if (oldBest != null) { float oldQ = solutionQuality(problem, oldBest); - float newQ = solutionQuality(problem, belief); if (oldQ >= newQ) { - if (problem instanceof Question) { - ((Question) problem).checkFeedback(); + if (problem instanceof Goal) { + Memory.adjustHappy(oldQ, task.getPriority()); } return; } } problem.setBestSolution(belief); + if (problem instanceof Goal) { + Memory.adjustHappy(newQ, task.getPriority()); + } else if (problem.isQuestion()) { + ((Question) problem).checkFeedback(); + } BudgetValue budget = BudgetFunctions.solutionEval(problem, belief, task); if ((budget != null) && budget.aboveThreshold()) { Memory.activatedTask(budget, belief, problem.isInput()); @@ -122,13 +127,16 @@ public static void trySolution(Sentence problem, Judgment belief, Task task) { * @return The quality of the judgment as the solution */ public static float solutionQuality(Sentence problem, Judgment solution) { + if (problem == null) { + return solution.getTruth().getExpectation(); + } long taskTime = problem.getEventTime(); long beliefTime = solution.getEventTime(); TruthValue truth = solution.getTruth(); - if ((beliefTime != Stamp.ALWAYS) && (taskTime != beliefTime)) { + if ((taskTime != beliefTime) && (beliefTime != Stamp.ALWAYS)) { truth = TruthFunctions.temporalCasting(truth, beliefTime, taskTime, problem.getCreationTime()); } - if (problem instanceof Goal) { + if ((problem instanceof Goal) || (problem instanceof Quest)) { return truth.getExpectation(); } else if (problem.getContent().isConstant()) { // "yes/no" question return truth.getConfidence(); diff --git a/nars/inference/RuleTables.java b/nars/inference/RuleTables.java index 79c011fd..84be9232 100644 --- a/nars/inference/RuleTables.java +++ b/nars/inference/RuleTables.java @@ -52,6 +52,7 @@ public static void reason(TaskLink tLink, TermLink bLink) { } short tIndex = tLink.getIndex(0); short bIndex = bLink.getIndex(0); + short[] ind; switch (tLink.getType()) { // dispatch first by TaskLink type case TermLink.SELF: switch (bLink.getType()) { @@ -71,13 +72,11 @@ public static void reason(TaskLink tLink, TermLink bLink) { if (belief != null) { SyllogisticRules.detachment(task.getSentence(), belief, bIndex); } - break; case TermLink.COMPOUND_STATEMENT: if (belief != null) { SyllogisticRules.detachment(belief, task.getSentence(), bIndex); } - break; case TermLink.COMPONENT_CONDITION: if (belief != null) { @@ -108,7 +107,11 @@ public static void reason(TaskLink tLink, TermLink bLink) { case TermLink.COMPOUND_CONDITION: if (belief != null) { - SyllogisticRules.conditionalDedInd((Implication) beliefTerm, bIndex, taskTerm, -1); + if (beliefTerm instanceof Implication) { + SyllogisticRules.conditionalDedInd((Implication) beliefTerm, bIndex, taskTerm, -1); + } else if (beliefTerm instanceof Equivalence) { + SyllogisticRules.conditionalAna((Equivalence) beliefTerm, bIndex, taskTerm, -1); + } } break; @@ -573,12 +576,14 @@ public static void transformTask(Task task, TaskLink tLink) { } else if (indices.length == 3) { // <<(*, term, #) --> #> ==> #> inh = content.componentAt(indices[0]); } else if (indices.length == 4) { // <(&&, <(*, term, #) --> #>, #) ==> #> - if ((indices[0] == 0) && (content instanceof Implication) && (content.componentAt(0) instanceof Conjunction)) { - inh = ((CompoundTerm) content.componentAt(0)).componentAt(indices[1]); + Term component = content.componentAt(indices[0]); + if ((component instanceof Conjunction) && (((content instanceof Implication) && (indices[0] == 0)) || (content instanceof Equivalence))) { +// if ((indices[0] == 0) && (content instanceof Implication) && (content.componentAt(0) instanceof Conjunction)) { +// inh = ((CompoundTerm) content.componentAt(0)).componentAt(indices[1]); + inh = ((CompoundTerm) component).componentAt(indices[1]); } else { return; } - } if (inh instanceof Inheritance) { StructuralRules.transformProductImage((Inheritance) inh, content, indices, task); diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index 489c8a0a..44e97a53 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -55,12 +55,18 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta } if (side == 0) { if (components.contains(sub)) { + if (pred instanceof CompoundTerm) { + return; + } sub = compound; components.set(index, pred); pred = CompoundTerm.make(compound, components); } } else { if (components.contains(pred)) { + if (sub instanceof CompoundTerm) { + return; + } components.set(index, sub); sub = CompoundTerm.make(compound, components); pred = compound; @@ -377,11 +383,11 @@ static void transformProductImage(Inheritance inh, CompoundTerm oldContent, shor } else { ArrayList componentList; Term condition = oldContent.componentAt(0); - if ((oldContent instanceof Implication) && (condition instanceof Conjunction)) { + if (((oldContent instanceof Implication) || (oldContent instanceof Equivalence)) && (condition instanceof Conjunction)) { componentList = ((CompoundTerm) condition).cloneComponents(); componentList.set(indices[1], newInh); Term newCond = CompoundTerm.make((CompoundTerm) condition, componentList); - content = Implication.make(newCond, ((Statement) oldContent).getPredicate(), + content = Statement.make((Statement) oldContent, newCond, ((Statement) oldContent).getPredicate(), ((Statement) oldContent).isTemporal(), oldContent.getOrder()); } else { componentList = oldContent.cloneComponents(); @@ -433,7 +439,11 @@ static void structuralCompound(CompoundTerm compound, Term component, boolean co if ((sentence.isJudgment()) == (compoundTask == (compound instanceof Conjunction))) { truth = TruthFunctions.deduction(truth, RELIANCE); } else if (sentence instanceof Goal) { - truth = TruthFunctions.abduction(truth, RELIANCE); + if (compound.getOrder() > 0) { + truth = TruthFunctions.deduction(truth, RELIANCE); + } else { + truth = TruthFunctions.abduction(truth, RELIANCE); + } } else { return; } diff --git a/nars/inference/SyllogisticRules.java b/nars/inference/SyllogisticRules.java index c2f8b3c5..3d0a3c70 100644 --- a/nars/inference/SyllogisticRules.java +++ b/nars/inference/SyllogisticRules.java @@ -51,8 +51,13 @@ static void dedExe(Term term1, Term term2, Sentence sentence, Judgment belief) { TruthValue truth2 = null; BudgetValue budget1, budget2; if (sentence instanceof Question) { - budget1 = BudgetFunctions.backwardWeak(value2); - budget2 = BudgetFunctions.backwardWeak(value2); + if (sentence instanceof Quest) { + budget1 = BudgetFunctions.backward(value2); + budget2 = BudgetFunctions.backward(value2); + } else { + budget1 = BudgetFunctions.backwardWeak(value2); + budget2 = BudgetFunctions.backwardWeak(value2); + } } else { if (sentence instanceof Goal) { truth1 = TruthFunctions.desireWeak(value1, value2); @@ -96,9 +101,15 @@ static void abdIndCom(Term term1, Term term2, Sentence taskSentence, Judgment be TruthValue value1 = taskSentence.getTruth(); TruthValue value2 = belief.getTruth(); if (taskSentence instanceof Question) { - budget1 = BudgetFunctions.backward(value2); - budget2 = BudgetFunctions.backwardWeak(value2); - budget3 = BudgetFunctions.backward(value2); + if (taskSentence instanceof Quest) { + budget1 = BudgetFunctions.backwardWeak(value2); + budget2 = BudgetFunctions.backward(value2); + budget3 = BudgetFunctions.backwardWeak(value2); + } else { + budget1 = BudgetFunctions.backward(value2); + budget2 = BudgetFunctions.backwardWeak(value2); + budget3 = BudgetFunctions.backward(value2); + } } else { if (taskSentence instanceof Goal) { truth1 = TruthFunctions.desireStrong(value1, value2); @@ -225,16 +236,21 @@ static void resemblance(Term term1, Term term2, Judgment belief, Sentence senten /** * {< S> ==> P>>, S>} |- P> * {< S> ==> P>>, P>} |- S> + * {< S> <=> P>>, S>} |- P> + * {< S> <=> P>>, P>} |- S> * @param mainSentence The implication/equivalence premise * @param subSentence The premise on part of s1 * @param side The location of s2 in s1 */ static void detachment(Sentence mainSentence, Sentence subSentence, int side) { Statement statement = (Statement) mainSentence.getContent(); + if (!(statement instanceof Implication) && !(statement instanceof Equivalence)) { + return; + } Term subject = statement.getSubject(); Term predicate = statement.getPredicate(); Term content; - if ((mainSentence.getContent().getOrder() != 0) && subSentence.isEvent()) { + if ((mainSentence.getContent().getOrder() != 0) && (subSentence.isEvent() || (subSentence instanceof Goal))) { long time1 = subSentence.getEventTime(); int dif = mainSentence.getContent().getOrder(); long eventTime; @@ -247,7 +263,9 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int side) { subject = CompoundTerm.replaceComponent((CompoundTerm) subject, ((CompoundTerm) subject).size() - 1, null); } } - Memory.newStamp.setEventTime(eventTime); + if (!(subSentence instanceof Goal)) { + Memory.newStamp.setEventTime(eventTime); + } } if (side == 0) { // term.equals(subject)) { content = predicate; @@ -267,13 +285,22 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int side) { TruthValue truth = null; BudgetValue budget; if (taskSentence instanceof Question) { - - if (statement instanceof Equivalence) { - budget = BudgetFunctions.backward(beliefTruth); - } else if (side == 0) { - budget = BudgetFunctions.backwardWeak(beliefTruth); + if (taskSentence instanceof Quest) { + if (statement instanceof Equivalence) { + budget = BudgetFunctions.backwardWeak(beliefTruth); + } else if (side == 0) { + budget = BudgetFunctions.backward(beliefTruth); + } else { + budget = BudgetFunctions.backwardWeak(beliefTruth); + } } else { - budget = BudgetFunctions.backward(beliefTruth); + if (statement instanceof Equivalence) { + budget = BudgetFunctions.backward(beliefTruth); + } else if (side == 0) { + budget = BudgetFunctions.backwardWeak(beliefTruth); + } else { + budget = BudgetFunctions.backward(beliefTruth); + } } } else { if (taskSentence instanceof Goal) { @@ -295,7 +322,6 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int side) { } budget = BudgetFunctions.forward(truth); } - Memory.doublePremiseTask(budget, content, truth, mainSentence, subSentence); } @@ -316,30 +342,24 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, HashMap substitute = Variable.findSubstitute(Variable.VarType.ALL, premise2, belief.getContent()); boolean conditionalTask = (substitute != null); Term commonComponent; - Term newComponent = null; if (side == 0) { commonComponent = ((Statement) premise2).getSubject(); - newComponent = - ((Statement) premise2).getPredicate(); + newComponent = ((Statement) premise2).getPredicate(); } else if (side == 1) { commonComponent = ((Statement) premise2).getPredicate(); - newComponent = - ((Statement) premise2).getSubject(); + newComponent = ((Statement) premise2).getSubject(); } else { commonComponent = premise2; } - Conjunction oldCondition = (Conjunction) premise1.getSubject(); boolean match = Variable.unify(Variable.VarType.INDEPENDENT, oldCondition.componentAt(index), commonComponent, premise1, premise2); if (!match && (commonComponent.getClass() == oldCondition.getClass())) { match = Variable.unify(Variable.VarType.INDEPENDENT, oldCondition.componentAt(index), ((CompoundTerm) commonComponent).componentAt(index), premise1, premise2); } - if (!match) { return; } - Term newCondition; if (oldCondition.equals(commonComponent)) { newCondition = null; @@ -373,16 +393,13 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, } else { content = premise1.getPredicate(); } - if (content == null) { return; } - TruthValue truth1 = taskSentence.getTruth(); TruthValue truth2 = belief.getTruth(); TruthValue truth = null; BudgetValue budget; - if (taskSentence instanceof Question) { budget = BudgetFunctions.backwardWeak(truth2); } else { @@ -394,7 +411,6 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, } else { truth = TruthFunctions.desireDed(truth1, truth2); } - budget = BudgetFunctions.forward(truth); } else { if (deduction) { @@ -404,17 +420,112 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, } else { truth = TruthFunctions.induction(truth1, truth2); } - } budget = BudgetFunctions.forward(truth); } - - if (deduction && premise1.isTemporal() && (Memory.newStamp.getEventTime() != Stamp.ALWAYS)) { + if (deduction && taskSentence.isJudgment() && premise1.isTemporal() && (Memory.newStamp.getEventTime() != Stamp.ALWAYS)) { Memory.predictionWithConfirmation(budget, content, truth, taskSentence, belief); } else { Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); } + } + /** + * {<(&&, S1, S2) <=> P>, (&&, S1, S2)} |- P + * @param premise1 The equivalence premise + * @param index The location of the shared term in the condition of premise1 + * @param premise2 The premise which, or part of which, appears in the condition of premise1 + * @param side The location of the shared term in premise2: 0 for subject, 1 for predicate, -1 for the whole term + */ + static void conditionalAna(Equivalence premise1, short index, Term premise2, int side) { + Task task = Memory.currentTask; + Sentence taskSentence = task.getSentence(); + Judgment belief = Memory.currentBelief; + HashMap substitute = Variable.findSubstitute(Variable.VarType.ALL, premise2, belief.getContent()); + boolean conditionalTask = (substitute != null); + Term commonComponent; + Term newComponent = null; + if (side == 0) { + commonComponent = ((Statement) premise2).getSubject(); + newComponent = ((Statement) premise2).getPredicate(); + } else if (side == 1) { + commonComponent = ((Statement) premise2).getPredicate(); + newComponent = ((Statement) premise2).getSubject(); + } else { + commonComponent = premise2; + } + Conjunction oldCondition = (Conjunction) premise1.getSubject(); + boolean match = Variable.unify(Variable.VarType.DEPENDENT, oldCondition.componentAt(index), commonComponent, premise1, premise2); + if (!match && (commonComponent.getClass() == oldCondition.getClass())) { + match = Variable.unify(Variable.VarType.DEPENDENT, oldCondition.componentAt(index), ((CompoundTerm) commonComponent).componentAt(index), premise1, premise2); + } + if (!match) { + return; + } + Term newCondition; + if (oldCondition.equals(commonComponent)) { + newCondition = null; + } else { + newCondition = CompoundTerm.replaceComponent(oldCondition, index, newComponent); +// if ((newCondition instanceof Conjunction) && ((CompoundTerm) newCondition).size() == 1) { +// newCondition = ((CompoundTerm) newCondition).componentAt(0); +// } + if (premise1.isTemporal()) { + int t = Wait.getWaitingTime(newCondition, true); + if (t > 0) { + if (newCondition instanceof Inheritance) { + newCondition = null; + } else { + newCondition = CompoundTerm.replaceComponent((CompoundTerm) newCondition, 0, null); + } + + long conditionTime = (belief.getContent().equals(premise2)) ? belief.getEventTime() : taskSentence.getEventTime(); + if (conditionTime != Stamp.ALWAYS) { + Memory.newStamp.setEventTime(conditionTime + t); + } + + } + } + } + Term content; + boolean temporal = (taskSentence.isEvent() || belief.isEvent()); + int order = premise1.getOrder() + premise2.getOrder(); + if (newCondition != null) { + content = Statement.make(premise1, newCondition, premise1.getPredicate(), temporal, order); + } else { + content = premise1.getPredicate(); + } + if (content == null) { + return; + } + TruthValue truth1 = taskSentence.getTruth(); + TruthValue truth2 = belief.getTruth(); + TruthValue truth = null; + BudgetValue budget; + if (taskSentence instanceof Question) { + budget = BudgetFunctions.backwardWeak(truth2); + } else { + if (taskSentence instanceof Goal) { + if (conditionalTask) { + truth = TruthFunctions.desireWeak(truth1, truth2); + } else { + truth = TruthFunctions.desireDed(truth1, truth2); + } + budget = BudgetFunctions.forward(truth); + } else { + if (conditionalTask) { + truth = TruthFunctions.comparison(truth1, truth2); + } else { + truth = TruthFunctions.analogy(truth1, truth2); + } + } + budget = BudgetFunctions.forward(truth); + } + if (taskSentence.isJudgment() && premise1.isTemporal() && (Memory.newStamp.getEventTime() != Stamp.ALWAYS)) { + Memory.predictionWithConfirmation(budget, content, truth, taskSentence, belief); + } else { + Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); + } } /** @@ -429,31 +540,25 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s if (!(st1 instanceof Implication) || !(st2 instanceof Implication)) { return false; } - if (!(cond1 instanceof Conjunction) && !(cond2 instanceof Conjunction)) { return false; } - int order1 = st1.getOrder(); int order2 = st2.getOrder(); if (order1 != order2) { return false; } - Term term1 = null; Term term2 = null; if (cond1 instanceof Conjunction) { term1 = CompoundTerm.reduceComponents((Conjunction) cond1, cond2); } - if (cond2 instanceof Conjunction) { term2 = CompoundTerm.reduceComponents((Conjunction) cond2, cond1); } - if ((term1 == null) && (term2 == null)) { return false; } - Task task = Memory.currentTask; Sentence sentence = task.getSentence(); Judgment belief = Memory.currentBelief; @@ -462,17 +567,14 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s TruthValue value2 = belief.getTruth(); boolean keepOrder = (Variable.findSubstitute(Variable.VarType.INDEPENDENT, st1, task.getContent()) != null); Term content; - TruthValue truth = null; BudgetValue budget; - if (term1 != null) { if (term2 != null) { content = Statement.make(st2, term2, term1, temporal, order2); } else { content = term1; } - if (sentence instanceof Question) { budget = BudgetFunctions.backwardWeak(value2); } else { @@ -482,24 +584,19 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s } else { truth = TruthFunctions.desireInd(value1, value2); } - } else { truth = TruthFunctions.abduction(value2, value1); } - budget = BudgetFunctions.forward(truth); } - Memory.doublePremiseTask(budget, content, truth, sentence, belief); } - if (term2 != null) { if (term1 != null) { content = Statement.make(st1, term1, term2, temporal, order1); } else { content = term2; } - if (sentence instanceof Question) { budget = BudgetFunctions.backwardWeak(value2); } else { @@ -509,17 +606,13 @@ static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement s } else { truth = TruthFunctions.desireInd(value1, value2); } - } else { truth = TruthFunctions.abduction(value1, value2); } - budget = BudgetFunctions.forward(truth); } - Memory.doublePremiseTask(budget, content, truth, sentence, belief); } - return true; } @@ -577,50 +670,38 @@ static void introVarIndInner(Statement premise1, Statement premise2, CompoundTer if (!taskSentence.isJudgment()) { return; } - if (premise1.getClass() != premise2.getClass()) { return; } - Variable var1 = new Variable(Symbols.VARIABLE_TAG + "0"); Variable var2 = new Variable(Symbols.VARIABLE_TAG + "0"); - Statement state1, - state2; + Statement state1, state2; if (premise1.getSubject().equals(premise2.getSubject())) { state1 = Statement.make(premise1, var1, premise1.getPredicate()); - state2 = - Statement.make(premise2, var2, premise2.getPredicate()); + state2 = Statement.make(premise2, var2, premise2.getPredicate()); } else if (premise1.getPredicate().equals(premise2.getPredicate())) { state1 = Statement.make(premise1, premise1.getSubject(), var1); - state2 = - Statement.make(premise2, premise2.getSubject(), var2); + state2 = Statement.make(premise2, premise2.getSubject(), var2); } else { return; } - Sentence belief = Memory.currentBelief; - Term compound, - content; + Term compound, content; TruthValue truth; - if (premise1.equals(taskSentence.getContent())) { truth = TruthFunctions.induction(belief.getTruth(), taskSentence.getTruth()); } else { truth = TruthFunctions.induction(taskSentence.getTruth(), belief.getTruth()); } - if (oldCompound instanceof Implication) { compound = Statement.make((Statement) oldCompound, oldCompound.componentAt(0), state2); - content = - Statement.make((Statement) oldCompound, state1, compound); + content = Statement.make((Statement) oldCompound, state1, compound); } else if (oldCompound instanceof Conjunction) { compound = Implication.make(state1, state2, false, 0); - content = - CompoundTerm.replaceComponent(oldCompound, premise2, compound); + content = CompoundTerm.replaceComponent(oldCompound, premise2, compound); } else { return; } - BudgetValue budget = BudgetFunctions.forward(truth); Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); } @@ -638,11 +719,9 @@ public static void temporalIndCom(Task task1, Task task2) { if ((term1 instanceof CompoundTerm) && ((CompoundTerm) term1).containComponent(term2)) { return; } - if ((term2 instanceof CompoundTerm) && ((CompoundTerm) term2).containComponent(term1)) { return; } - if ((term1 instanceof Inheritance) && (term2 instanceof Inheritance)) { Statement s1 = (Statement) term1; Statement s2 = (Statement) term2; @@ -650,14 +729,11 @@ public static void temporalIndCom(Task task1, Task task2) { Variable var2 = new Variable(Symbols.VARIABLE_TAG + "0"); if (s1.getSubject().equals(s2.getSubject())) { term1 = Statement.make(s1, var1, s1.getPredicate()); - term2 = - Statement.make(s2, var2, s2.getPredicate()); + term2 = Statement.make(s2, var2, s2.getPredicate()); } else if (s1.getPredicate().equals(s2.getPredicate())) { term1 = Statement.make(s1, s1.getSubject(), var1); - term2 = - Statement.make(s2, s2.getSubject(), var2); + term2 = Statement.make(s2, s2.getSubject(), var2); } - } else { // to generalize Term condition; if (term1 instanceof Implication) { @@ -665,21 +741,17 @@ public static void temporalIndCom(Task task1, Task task2) { if (condition.equals(term2)) { return; } - if ((condition instanceof Conjunction) && ((Conjunction) condition).containComponent(term2)) { return; } - } else if (term2 instanceof Implication) { condition = ((Implication) term2).getSubject(); if (condition.equals(term1)) { return; } - if ((condition instanceof Conjunction) && ((Conjunction) condition).containComponent(term1)) { return; } - } } long time1 = judg1.getEventTime(); @@ -691,10 +763,8 @@ public static void temporalIndCom(Task task1, Task task2) { ArrayList argument = new ArrayList(); argument.add(term2); argument.add(delta); - term2 = - Conjunction.make(argument, 1); + term2 = Conjunction.make(argument, 1); } - Statement statement1 = Implication.make(term1, term2, true, distance); Statement statement2 = Implication.make(term2, term1, true, -distance); Statement statement3 = Equivalence.make(term1, term2, true, distance); @@ -709,6 +779,10 @@ public static void temporalIndCom(Task task1, Task task2) { Memory.doublePremiseTask(budget1, statement1, truth1, judg1, judg2); Memory.doublePremiseTask(budget2, statement2, truth2, judg2, judg1); Memory.doublePremiseTask(budget3, statement3, truth3, judg1, judg2); + Memory.newStamp.setEventTime(Stamp.ALWAYS); + Memory.doublePremiseTask(budget1, statement1, truth1, judg1, judg2); + Memory.doublePremiseTask(budget2, statement2, truth2, judg2, judg1); + Memory.doublePremiseTask(budget3, statement3, truth3, judg1, judg2); } /** diff --git a/nars/io/StringParser.java b/nars/io/StringParser.java index c037221a..50f38400 100644 --- a/nars/io/StringParser.java +++ b/nars/io/StringParser.java @@ -175,7 +175,7 @@ private static String getTruthString(StringBuffer s) throws InvalidInputExceptio * @return the input TruthValue */ private static TruthValue parseTruth(String s, char type) { - if (type == QUESTION_MARK) { + if ((type == QUESTION_MARK) || (type == QUEST_MARK)) { return null; } float frequency = 1.0f; @@ -213,6 +213,7 @@ private static BudgetValue parseBudget(String s, char punctuation, TruthValue tr durability = Parameters.DEFAULT_GOAL_DURABILITY; break; case QUESTION_MARK: + case QUEST_MARK: priority = Parameters.DEFAULT_QUESTION_PRIORITY; durability = Parameters.DEFAULT_QUESTION_DURABILITY; break; @@ -228,7 +229,7 @@ private static BudgetValue parseBudget(String s, char punctuation, TruthValue tr durability = Float.parseFloat(s.substring(i + 1)); } } - float quality = (punctuation == QUESTION_MARK) ? 1 : BudgetFunctions.truthToQuality(truth); + float quality = (truth == null) ? 1 : BudgetFunctions.truthToQuality(truth); return new BudgetValue(priority, durability, quality); } diff --git a/nars/io/Symbols.java b/nars/io/Symbols.java index 0283e577..84e08b6b 100644 --- a/nars/io/Symbols.java +++ b/nars/io/Symbols.java @@ -27,8 +27,9 @@ public class Symbols { /* sentence type and delimitors */ public static final char JUDGMENT_MARK = '.'; + public static final char GOAL_MARK = '!'; public static final char QUESTION_MARK = '?'; - public static final char GOAL_MARK = '!'; //QUESTION_GOAL_MARK = '@'; + public static final char QUEST_MARK = '@'; /* Tense markers */ public static final String TENSE_MARK = ":"; diff --git a/nars/language/CompoundTerm.java b/nars/language/CompoundTerm.java index 9ff753bd..74f6a833 100644 --- a/nars/language/CompoundTerm.java +++ b/nars/language/CompoundTerm.java @@ -703,8 +703,10 @@ private void prepareComponentLinks(ArrayList componentLinks, short typ if (t1.isConstant()) { componentLinks.add(new TermLink(t1, type, i)); } - if ((this instanceof Implication) && (i == 0) && (t1 instanceof Conjunction)) { - ((CompoundTerm) t1).prepareComponentLinks(componentLinks, TermLink.COMPOUND_CONDITION, (CompoundTerm) t1); +// if ((this instanceof Implication) && (i == 0) && (t1 instanceof Conjunction)) { + // 7/8/2010 + if ((t1 instanceof Conjunction) && ((this instanceof Equivalence) || ((this instanceof Implication) && (i == 0)))) { + ((CompoundTerm) t1).prepareComponentLinks(componentLinks, TermLink.COMPOUND_CONDITION, (CompoundTerm) t1); } else if (t1 instanceof CompoundTerm) { for (int j = 0; j < ((CompoundTerm) t1).size(); j++) { // second level components t2 = ((CompoundTerm) t1).componentAt(j); diff --git a/nars/language/Conjunction.java b/nars/language/Conjunction.java index 4757c8d0..785d004f 100644 --- a/nars/language/Conjunction.java +++ b/nars/language/Conjunction.java @@ -84,10 +84,10 @@ public String operator() { * @return String representation of the order */ public static String getConjunctionSymbol(int t) { - if (t == -1) { + if (t < 0) { return Symbols.CONJUNCTION_OPERATOR; } - if (t == 1) { + if (t > 0) { return Symbols.SEQUENCE_OPERATOR; } return Symbols.PARALLEL_OPERATOR; @@ -141,7 +141,7 @@ public boolean isTemporal() { * @param order The temporal order of the components */ public static Term make(ArrayList argList, int order) { - if (order == 1) { + if (order > 0) { String name; if (argList.size() == 1) { return argList.get(0); @@ -185,11 +185,15 @@ public static Term make(TreeSet set, int order) { */ @SuppressWarnings("unchecked") public static Term make(Term term1, Term term2, int order) { - if (order == 1) { + if (order > 0) { ArrayList argument; if (isSequence(term2)) { // to be refined to check other cases argument = ((CompoundTerm) term2).cloneComponents(); - argument.add(0, term1); + if (isSequence(term1)) { + argument.addAll(0, ((CompoundTerm) term1).cloneComponents()); + } else { + argument.add(0, term1); + } } else { argument = new ArrayList(); argument.add(term1); diff --git a/nars/language/Equivalence.java b/nars/language/Equivalence.java index a2d97cca..f94c7da9 100644 --- a/nars/language/Equivalence.java +++ b/nars/language/Equivalence.java @@ -194,16 +194,4 @@ public static String getEquivalenceSymbol(boolean temporal, int distance) { public boolean isTemporal() { return isTemporal; } - - /** - * Given operations special treatment, used in display only. - * @return The name of the term as a String - */ - @Override - public String toString() { - StringBuffer buf = new StringBuffer(Symbols.STATEMENT_OPENER + ""); - buf.append(getSubject() + operator()); - buf.append(getPredicate().toString() + Symbols.STATEMENT_CLOSER); - return buf.toString(); - } } diff --git a/nars/language/Implication.java b/nars/language/Implication.java index 482a69c3..ef042aed 100644 --- a/nars/language/Implication.java +++ b/nars/language/Implication.java @@ -185,16 +185,4 @@ public static String getSymbol(int t) { public boolean isTemporal() { return isTemporal; } - - /** - * Given operations special treatment, used in display only. - * @return The name of the term as a String - */ - @Override - public String toString() { - StringBuffer buf = new StringBuffer(Symbols.STATEMENT_OPENER + ""); - buf.append(getSubject() + operator()); - buf.append(getPredicate().toString() + Symbols.STATEMENT_CLOSER); - return buf.toString(); - } } diff --git a/nars/language/Inheritance.java b/nars/language/Inheritance.java index 4b6ae111..6a019f3f 100644 --- a/nars/language/Inheritance.java +++ b/nars/language/Inheritance.java @@ -92,7 +92,7 @@ public String operator() { * @return The list representation of the operation */ @Override - public ArrayList isOperation(String opName) { + public ArrayList parseOperation(String opName) { ArrayList list = null; Term subj = getSubject(); Term pred = getPredicate(); @@ -128,7 +128,7 @@ public ArrayList isOperation(String opName) { */ @Override public String toString() { - ArrayList list = isOperation(null); + ArrayList list = parseOperation(null); if (list == null) { return super.toString(); } else { diff --git a/nars/language/Statement.java b/nars/language/Statement.java index 8f1d1bcf..ceabcac6 100644 --- a/nars/language/Statement.java +++ b/nars/language/Statement.java @@ -319,4 +319,16 @@ public String getOperatorName() { // useful??? } return null; } + + /** + * Given operations special treatment, used in display only. + * @return The name of the term as a String + */ + @Override + public String toString() { + StringBuffer buf = new StringBuffer(Symbols.STATEMENT_OPENER + ""); + buf.append(getSubject() + " " + operator() + " "); + buf.append(getPredicate().toString() + Symbols.STATEMENT_CLOSER); + return buf.toString(); + } } diff --git a/nars/language/Term.java b/nars/language/Term.java index e95566a2..fc6db9d7 100644 --- a/nars/language/Term.java +++ b/nars/language/Term.java @@ -153,7 +153,7 @@ public int getOrder() { * @param opName An optional operator name to be matched * @return The list representation of the operation */ - public ArrayList isOperation(String opName) { + public ArrayList parseOperation(String opName) { return null; } } diff --git a/nars/language/Variable.java b/nars/language/Variable.java index ecfe80ec..0156c8cb 100644 --- a/nars/language/Variable.java +++ b/nars/language/Variable.java @@ -214,16 +214,20 @@ public static boolean unify(VarType type, Term t1, Term t2, Term compound1, Term if (t1.isConstant() && t1.equals(t2)) {// to constant Terms are unified if equals return true; } - if (!(compound1 instanceof CompoundTerm) || !(compound2 instanceof CompoundTerm)) { - return false; - } +// if (!(compound1 instanceof CompoundTerm) || !(compound2 instanceof CompoundTerm)) { +// return false; +// } HashMap substitute = findSubstitute(type, t1, t2, new HashMap()); // find substitution if (substitute == null) { // not unifiable return false; } if (!substitute.isEmpty()) { - ((CompoundTerm) compound1).substituteComponent(substitute, true); // apply the substitution to the first compound - ((CompoundTerm) compound2).substituteComponent(substitute, false); // apply the substitution to the second compound + if (compound1 instanceof CompoundTerm) { + ((CompoundTerm) compound1).substituteComponent(substitute, true); // apply the substitution to the first compound + } + if (compound2 instanceof CompoundTerm) { + ((CompoundTerm) compound2).substituteComponent(substitute, false); // apply the substitution to the second compound + } } return true; } diff --git a/nars/main/Memory.java b/nars/main/Memory.java index da3d4714..3ec81af6 100644 --- a/nars/main/Memory.java +++ b/nars/main/Memory.java @@ -46,6 +46,11 @@ public class Memory { private static TaskBuffer novelTasks; /** List of recent events, for temporal learning */ private static TaskBuffer recentEvents; + /* ---------- global variables used to record emotional values ---------- */ + /** average desire-value */ + private static float happy; + /** average priority */ + private static float busy; /* ---------- global variables used to reduce method arguments ---------- */ /** Shortcut to the selected Term */ public static Term currentTerm; @@ -59,6 +64,7 @@ public class Memory { public static Judgment currentBelief; /** Shortcut to the derived Stamp */ public static Stamp newStamp; + /* ---------- global variables used to record emotional values ---------- */ /* ---------- initialization ---------- */ /** @@ -72,6 +78,8 @@ public static void init() { newTasks = new ArrayList(); // initially empty, without capacity limit novelTasks = new TaskBuffer(); // initially empty, with capacity limit recentEvents = new TaskBuffer(); // with a different capacity? + happy = 0.5f; + busy = 0.5f; } /* ---------- access utilities ---------- */ @@ -162,6 +170,10 @@ public static boolean noResult() { return (newTasks.size() == 0); } + public static Term mostActive() { + return concepts.mostActive(); + } + /* ---------- new task entries ---------- */ /* There are several types of new tasks, all added into the newTasks list, to be processed in the next cycle. @@ -183,17 +195,39 @@ public static void inputTask(Task task) { } /** - * Reporting executed task, and remember the event + * Reporting executed task, and rememberAction the event *

    * called from Operator.call only * @param task the executed task */ public static void executedTask(Task task) { Record.append("!!! Executed: " + task.getSentence() + "\n"); - Goal g = (Goal) task.getSentence(); - Judgment j = new Judgment(g); // perceived execution +// Goal g = (Goal) task.getSentence(); +// Judgment j = new Judgment(g.cloneContent()); // perceived execution +// Task newTask = new Task(j, task.getBudget()); +// report(newTask.getSentence(), false); +// newTasks.add(newTask); + } + + /** + * To rememberAction an internal action as an operation + *

    + * called from Concept + * @param task The task processed + */ + public static void rememberAction(Task task) { + Term content = task.getContent(); + if (content instanceof Inheritance) { + if (((Inheritance) content).parseOperation(null) != null) + return; // to present infinite recursions + } + Sentence sentence = task.getSentence(); + TruthValue truth = new TruthValue(1.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); + Stamp stamp = (Stamp) task.getSentence().getStamp().clone(); + stamp.setEventTime(Center.getTime()); + Judgment j = new Judgment(sentence.toTerm(), truth, stamp); Task newTask = new Task(j, task.getBudget()); - report(newTask.getSentence(), false); + Record.append("Remembered: " + j.toString2()); newTasks.add(newTask); } @@ -231,11 +265,43 @@ private static void derivedTask(Task task) { report(task.getSentence(), false); } newTasks.add(task); + rememberInference(task); } else { Record.append("!!! Ignored: " + task + "\n"); } } + private static void rememberInference(Task derived) { + Sentence sentence = derived.getSentence(); + TruthValue t1 = sentence.getTruth(); + if ((t1 != null) && t1.toWord().equals("UNSURE")) { + return; + } + Term pred = sentence.getContent(); + if (!((pred instanceof Inheritance) && ((Inheritance) pred).parseOperation(null) != null)) { + pred = sentence.toTerm(); + } + Term subj = currentTask.getSentence().getContent(); + if (!((subj instanceof Inheritance) && ((Inheritance) subj).parseOperation(null) != null)) { + subj = currentTask.getSentence().toTerm(); + } + if (currentBelief != null) { + Term b = currentBelief.toTerm(); + Term c = Conjunction.make(subj, b, -1); + subj = c; + } else { + return; // temporary solution + } + Term imp = Implication.make(subj, pred, false, 0); + if (imp != null) { + TruthValue truth = new TruthValue(1.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); + Judgment j = new Judgment(imp, truth, sentence.getStamp()); + Task newTask = new Task(j, derived.getBudget()); + Record.append("Remembered: " + j.toString2()); + newTasks.add(newTask); + } + } + /* --------------- new task building --------------- */ /** * Shared final operations by all double-premise rules, called from the rules except StructuralRules @@ -248,7 +314,7 @@ private static void derivedTask(Task task) { public static void doublePremiseTask(BudgetValue budget, Term content, TruthValue truth, Sentence premise1, Sentence premise2) { if (content != null) { - Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, newStamp, premise1, premise2); + Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, (Stamp) newStamp.clone(), premise1, premise2); Task newTask = new Task(newSentence, budget); derivedTask(newTask); } @@ -305,7 +371,7 @@ public static void revisionTask(BudgetValue budget, Term content, TruthValue tru */ public static void singlePremiseTask(BudgetValue budget, Term content, TruthValue truth, Sentence premise) { Sentence sentence = currentTask.getSentence(); - Sentence newSentence = Sentence.make(sentence, content, truth, new Stamp(sentence.getStamp()), premise, null); + Sentence newSentence = Sentence.make(sentence, content, truth, (Stamp) sentence.getStamp().clone(), premise, null); Task newTask = new Task(newSentence, budget); newTask.setStructural(); derivedTask(newTask); @@ -336,7 +402,7 @@ public static void convertedJudgment(TruthValue truth, BudgetValue budget) { otherTerm = (subj.equals(subjB)) ? predB : subjB; content = Statement.make(content, subj, otherTerm); } - Stamp stamp = new Stamp(Memory.currentBelief.getStamp()); + Stamp stamp = (Stamp) Memory.currentBelief.getStamp().clone(); Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, truth, stamp, Memory.currentBelief, null); Task newTask = new Task(newJudgment, budget); newTask.setStructural(); @@ -352,28 +418,36 @@ public static void convertedJudgment(TruthValue truth, BudgetValue budget) { * In the future, it is possible to adjust the occuring ratio of the two actions */ public static void cycle() { - // keep the following order - processTask(); - processConcept(); - novelTasks.refresh(); // refresh display + processNewTask(); + if (noResult()) { + processNovelTask(); + } + if (noResult()) { + processConcept(); + } + novelTasks.refresh(); } /** * Process the newTasks accumulated in the previous cycle, accept input ones * and those that corresponding to existing concepts, plus one from the buffer. */ - private static void processTask() { + private static void processNewTask() { Task task; int counter = newTasks.size(); // don't include new tasks produced in the current cycle while (counter-- > 0) { task = newTasks.remove(0); + adjustBusy(task.summary(), task.getPriority()); if (task.getSentence().isInput() || (termToConcept(task.getContent()) != null)) { // new input or existing concept immediateProcess(task); } else { novelTasks.putIn(task); // delayed processing } } - task = novelTasks.takeOut(); // select a task from novelTasks + } + + private static void processNovelTask() { + Task task = novelTasks.takeOut(); // select a task from novelTasks if (task != null) { immediateProcess(task); } @@ -383,6 +457,7 @@ private static void processTask() { * Select a concept to fire. */ private static void processConcept() { + resetCurrent(); Concept currentConcept = concepts.takeOut(); if (currentConcept != null) { currentTerm = currentConcept.getTerm(); @@ -392,6 +467,15 @@ private static void processConcept() { } } + private static void resetCurrent() { + currentTerm = null; + currentTaskLink = null; + currentTask = null; + currentBeliefLink = null; + currentBelief = null; + newStamp = null; + } + /* ---------- task processing ---------- */ /** * Immediate processing of a new task, in constant time @@ -399,18 +483,13 @@ private static void processConcept() { * @param task the task to be accepted */ private static void immediateProcess(Task task) { + resetCurrent(); currentTask = task; // one of the two places where this variable is set - currentBelief = null; - currentTaskLink = null; - currentBeliefLink = null; Record.append("!!! Insert: " + task + "\n"); Term content = task.getContent(); Concept c = getConcept(content); if (c != null) { - boolean toContinue = c.directProcess(task); - if (toContinue && task.aboveThreshold()) { // still need to be processed - linkToTask(task, content, c); - } + c.directProcess(task); } } @@ -422,7 +501,7 @@ private static void immediateProcess(Task task) { * @param task The task to be linked * @param content The content of the task */ - private static void linkToTask(Task task, Term content, Concept contentConcept) { + public static void linkToTask(Task task, Term content, Concept contentConcept) { BudgetValue budget = task.getBudget(); TaskLink taskLink = new TaskLink(task, null, budget); // link type: SELF contentConcept.insertTaskLink(taskLink); @@ -465,9 +544,40 @@ public static void eventProcessing(Task event1) { } recentEvents.putBack(event2); } - recentEvents.putIn(event1); + Term content = event1.getContent(); + if (!(content instanceof Implication) && !(content instanceof Equivalence)) { + recentEvents.putIn(event1); + } } + /* ---------- status evaluation ---------- */ + + public static float happyValue() { + return happy; + } + + public static float busyValue() { + return busy; + } + + public static void adjustHappy(float newValue, float weight) { + float oldV = happy; + happy += newValue * weight; + happy /= 1.0f + weight; + if (Math.abs(oldV - happy) > 0.1) { + Record.append("HAPPY: " + (int) (oldV*10.0) + " to " + (int) (happy*10.0) + "\n"); + } + } + public static void adjustBusy(float newValue, float weight) { + float oldV = busy; + busy += newValue * weight; + busy /= (1.0f + weight); + if (Math.abs(oldV - busy) > 0.1) { + Record.append("BUSY: " + (int) (oldV*10.0) + " to " + (int) (busy*10.0) + "\n"); + } + } + + /* ---------- display ---------- */ /** * Display active concepts, called from MainWindow. diff --git a/nars/main/NARS.java b/nars/main/NARS.java index f8502729..3d0ead9f 100644 --- a/nars/main/NARS.java +++ b/nars/main/NARS.java @@ -35,7 +35,7 @@ public class NARS extends Applet implements Runnable { * The information about the version and date of the project. */ public static final String INFO = - " Open-NARS Version 1.3.3 June 2010 \n"; + " Open-NARS Version 1.4.0 August 2010 \n"; /** * The project websites. */ diff --git a/nars/main/Parameters.java b/nars/main/Parameters.java index 71d70801..4e687120 100644 --- a/nars/main/Parameters.java +++ b/nars/main/Parameters.java @@ -50,12 +50,14 @@ public class Parameters { public static final float RELIANCE = (float) 0.9; // the same as default confidence /** The desireability threthold for an operation to be executed. */ public static final float DECISION_THRESHOLD = (float) 0.66; + /** The expectation threthold for "true". */ + public static final float EXPECTATION_THRESHOLD = (float) 0.66; /** Range of temporal induction in input events. */ public static final int MAXMUM_EVENTS_LENGTH = 10; /* ---------- budget thresholds ---------- */ - /** The budget threthold for task to be accepted. */ - public static final float BUDGET_THRESHOLD = (float) 0.001; + /** The budget threthold rate for task to be accepted. */ + public static final float BUDGET_THRESHOLD = (float) 0.2; /** The priority threthold for operation to be executed. */ public static final float PRIORITY_THRESHOLD = (float) 0.06; @@ -99,7 +101,9 @@ public class Parameters { /** Remember recently used TermLink on a Task */ public static final int TERM_LINK_RECORD_LENGTH = 10; /** Maximum number of beliefs kept in a Concept */ - public static final int MAXMUM_BELIEF_LENGTH = 5; + public static final int MAXMUM_BELIEF_LENGTH = 7; /** Maximum number of goals kept in a Concept */ - public static final int MAXMUM_GOALS_LENGTH = 5; + public static final int MAXMUM_GOALS_LENGTH = 7; + /** Maximum number of goals kept in a Concept */ + public static final int MAXMUM_QUESTIONS_LENGTH = 5; } diff --git a/nars/operation/Assess.java b/nars/operation/Assess.java new file mode 100644 index 00000000..004788ad --- /dev/null +++ b/nars/operation/Assess.java @@ -0,0 +1,49 @@ +/* + * Assess.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ + +package nars.operation; + +import java.util.ArrayList; +import nars.entity.*; +import nars.language.*; +import nars.main.*; +import nars.io.Symbols; + +/** + * To activate a group of Terms + */ +public class Assess extends Operator { + public Assess(String name) { + super(name); + } + + public ArrayList execute(Task t) { + Task task = (Task) t.clone(); + Inheritance content = (Inheritance) task.getContent(); + ArrayList list = content.parseOperation("^assess"); + Term query = list.get(1); + Concept c = Memory.termToConcept(query); + c.processQuestion(new Quest((Goal) t.getSentence()), t); + Memory.executedTask(task); + return null; + } +} + diff --git a/nars/operation/Believe.java b/nars/operation/Believe.java new file mode 100644 index 00000000..d869ccfa --- /dev/null +++ b/nars/operation/Believe.java @@ -0,0 +1,56 @@ +/* + * Believe.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ + +package nars.operation; + +import java.util.ArrayList; +import nars.entity.*; +import nars.language.*; +import nars.main.*; +import nars.io.Symbols; + +/** + * To activate a group of Terms + */ +public class Believe extends Operator { + public Believe(String name) { + super(name); + } + + public ArrayList execute(Task task) { + Sentence sentence = task.getSentence(); + Inheritance operation = (Inheritance) sentence.getContent(); + ArrayList list = operation.parseOperation("^believe"); + Term content = list.get(1); + String str = list.get(2).getName(); + TruthValue truth = TruthValue.make(str); + if (truth == null) { + return null; + } + Judgment j = new Judgment(content, truth, sentence.getStamp()); + Task newTask = new Task(j, task.getBudget()); + ArrayList feedback = new ArrayList(); + feedback.add(newTask); + Memory.executedTask(task); + return feedback; + } +} + diff --git a/nars/operation/Break.java b/nars/operation/Break.java index 1271bf0f..e6e5b3d4 100644 --- a/nars/operation/Break.java +++ b/nars/operation/Break.java @@ -23,6 +23,7 @@ import java.util.ArrayList; import nars.entity.Task; +import nars.main.Memory; /** * A class used in testing only. @@ -33,6 +34,7 @@ public Break(String name) { } public ArrayList execute(Task task) { + Memory.executedTask(task); return null; } } diff --git a/nars/operation/Consider.java b/nars/operation/Consider.java new file mode 100644 index 00000000..02c1bb5c --- /dev/null +++ b/nars/operation/Consider.java @@ -0,0 +1,48 @@ +/* + * Consider.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ + +package nars.operation; + +import java.util.ArrayList; +import nars.entity.*; +import nars.language.*; +import nars.main.*; + +/** + * To activate a group of Terms + */ +public class Consider extends Operator { + public Consider(String name) { + super(name); + } + + public ArrayList execute(Task t) { + Task task = (Task) t.clone(); + Inheritance content = (Inheritance) task.getContent(); + ArrayList list = content.parseOperation("^consider"); + Term v = list.get(1); + Term term = Memory.mostActive(); + Variable.unify(Variable.VarType.QUERY, v, term, content, term); + Memory.executedTask(task); + return null; + } +} + diff --git a/nars/operation/Drop.java b/nars/operation/Drop.java index 33549769..3f1870e5 100644 --- a/nars/operation/Drop.java +++ b/nars/operation/Drop.java @@ -23,6 +23,7 @@ import java.util.ArrayList; import nars.entity.Task; +import nars.main.Memory; /** * A class used in testing only. @@ -33,7 +34,7 @@ public Drop(String name) { } public ArrayList execute(Task task) { -// System.out.println("EXECUTE in " + name + " " + task); + Memory.executedTask(task); return null; } } diff --git a/nars/operation/GoTo.java b/nars/operation/GoTo.java index 2011a0e0..1d13b280 100644 --- a/nars/operation/GoTo.java +++ b/nars/operation/GoTo.java @@ -24,6 +24,7 @@ import java.io.*; import java.util.ArrayList; import nars.entity.Task; +import nars.main.Memory; /** * A class used in testing only. @@ -34,7 +35,7 @@ public GoTo(String name) { } public ArrayList execute(Task task) { -// System.out.println("EXECUTE in " + name + " " + task.getSentence()); + Memory.executedTask(task); return null; } } diff --git a/nars/operation/Open.java b/nars/operation/Open.java index 5a223e52..13478013 100644 --- a/nars/operation/Open.java +++ b/nars/operation/Open.java @@ -24,6 +24,7 @@ import java.io.*; import java.util.ArrayList; import nars.entity.Task; +import nars.main.Memory; /** * A class used in testing only. @@ -34,7 +35,7 @@ public Open(String name) { } public ArrayList execute(Task task) { -// System.out.println("EXECUTE in " + name + " " + task); + Memory.executedTask(task); return null; } } diff --git a/nars/operation/Operator.java b/nars/operation/Operator.java index 18804818..7576fdc0 100644 --- a/nars/operation/Operator.java +++ b/nars/operation/Operator.java @@ -52,7 +52,7 @@ public Operator(String name) { public void call(Task task) { ArrayList feedback = execute(task); reportExecution((Statement) task.getContent()); - Memory.executedTask(task); +// Memory.executedTask(task); if (feedback != null) { for (Task t : feedback) { Memory.inputTask(t); @@ -70,8 +70,40 @@ public void call(Task task) { public static HashMap setOperators() { HashMap table = new HashMap(); - /* operators for internal operations */ - table.put("^wait", new Wait("^wait")); + /* operators for tasks */ + table.put("^believe", new Believe("^believe")); // accept a statement with a default truth-value + table.put("^want", new Want("^want")); // accept a statement with a default desire-value + table.put("^wonder", new Wonder("^wonder")); // find the truth-value of a statement + table.put("^assess", new Assess("^assess")); // find the desire-value of a statement + /* operators for internal perceptions */ + table.put("^consider", new Consider("^consider")); // find the most active concept + table.put("^remind", new Remind("^remind")); // create/activate a concept + table.put("^wait", new Wait("^wait")); // wait for a certain number of clock cycle + /* + * observe // process a new task (Channel ID: optional?) + * think // carry out a working cycle + * do // turn a statement into a goal + * + * possibility // return the possibility of a term + * doubt // decrease the confidence of a belief + * hesitate // decrease the confidence of a goal + * + * feel // the overall happyness, average solution quality, and predictions + * busy // the overall business + * + * tell // output a judgment (Channel ID: optional?) + * ask // output a question/quest (Channel ID: optional?) + * demand // output a goal (Channel ID: optional?) + * + * count // count the number of elements in a set + * arithmatic // + - * / + * comparisons // < = > + * inference // binary inference + * + * assume // local assumption ??? + * name // turn a compount term into an atomic term ??? + * ??? // rememberAction the history of the system? excutions of operatons? + */ /* operators for testing examples */ table.put("^go-to", new GoTo("^go-to")); diff --git a/nars/operation/Pick.java b/nars/operation/Pick.java index d7b7130d..42c05de5 100644 --- a/nars/operation/Pick.java +++ b/nars/operation/Pick.java @@ -24,6 +24,7 @@ import java.io.*; import java.util.ArrayList; import nars.entity.Task; +import nars.main.Memory; /** * A class used in testing only. @@ -34,7 +35,7 @@ public Pick(String name) { } public ArrayList execute(Task task) { -// System.out.println("EXECUTE in " + name + " " + task); + Memory.executedTask(task); return null; } } diff --git a/nars/operation/Remind.java b/nars/operation/Remind.java new file mode 100644 index 00000000..34294108 --- /dev/null +++ b/nars/operation/Remind.java @@ -0,0 +1,48 @@ +/* + * Remind.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ +package nars.operation; + +import java.util.ArrayList; +import nars.entity.*; +import nars.language.*; +import nars.main.*; + +/** + * To activate a group of Terms + */ +public class Remind extends Operator { + + public Remind(String name) { + super(name); + } + + public ArrayList execute(Task task) { + Inheritance content = (Inheritance) task.getContent(); + ArrayList list = content.parseOperation("^remind"); + Term t = list.get(1); + Concept c = Memory.getConcept(t); + BudgetValue v = new BudgetValue(Parameters.DEFAULT_QUESTION_PRIORITY, Parameters.DEFAULT_QUESTION_DURABILITY, 1); + Memory.activateConcept(c, v); + Memory.executedTask(task); + return null; + } +} + diff --git a/nars/operation/Strike.java b/nars/operation/Strike.java index 15d8d383..f7b5fe0d 100644 --- a/nars/operation/Strike.java +++ b/nars/operation/Strike.java @@ -23,6 +23,7 @@ import java.util.ArrayList; import nars.entity.Task; +import nars.main.Memory; /** * A class used in testing only. @@ -33,6 +34,7 @@ public Strike(String name) { } public ArrayList execute(Task task) { + Memory.executedTask(task); return null; } } diff --git a/nars/operation/Throw.java b/nars/operation/Throw.java index d8c819ad..5aed5f50 100644 --- a/nars/operation/Throw.java +++ b/nars/operation/Throw.java @@ -23,6 +23,7 @@ import java.util.ArrayList; import nars.entity.Task; +import nars.main.Memory; /** * A class used in testing only. @@ -33,7 +34,7 @@ public Throw(String name) { } public ArrayList execute(Task task) { -// System.out.println("EXECUTE in " + name + " " + task); + Memory.executedTask(task); return null; } } diff --git a/nars/operation/Wait.java b/nars/operation/Wait.java index 73cd74a8..0da6dc53 100644 --- a/nars/operation/Wait.java +++ b/nars/operation/Wait.java @@ -24,7 +24,6 @@ import nars.entity.Task; import nars.language.*; -import nars.main.*; /** * A class used in testing only. @@ -45,15 +44,15 @@ public void call(Task task) { } public ArrayList execute(Task task) { - Statement content = (Statement) task.getContent(); - String delta = ((CompoundTerm) content.getSubject()).componentAt(0).getName(); - int targetTime = (int) task.getSentence().getCreationTime() + Integer.parseInt(delta); - if (Center.getTime() < targetTime) { - Memory.activatedTask(task.getBudget(), task.getSentence(), false); - } else { - reportExecution(content); - Memory.executedTask(task); - } +// Statement content = (Statement) task.getContent(); +// String delta = ((CompoundTerm) content.getSubject()).componentAt(0).getName(); +// int targetTime = (int) task.getSentence().getCreationTime() + Integer.parseInt(delta); +// if (Center.getTime() < targetTime) { +// Memory.activatedTask(task.getBudget(), task.getSentence(), false); +// } else { +// reportExecution(content); +// Memory.executedTask(task); +// } return null; } @@ -66,7 +65,7 @@ public Term createOperation(int distance) { } public static int getWaitingTime(Term term) { - ArrayList list = term.isOperation("^wait"); + ArrayList list = term.parseOperation("^wait"); if (list != null) { return Integer.parseInt(list.get(1).toString()); } else { diff --git a/nars/operation/Want.java b/nars/operation/Want.java new file mode 100644 index 00000000..d80d2b57 --- /dev/null +++ b/nars/operation/Want.java @@ -0,0 +1,56 @@ +/* + * Want.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ + +package nars.operation; + +import java.util.ArrayList; +import nars.entity.*; +import nars.language.*; +import nars.main.*; +import nars.io.Symbols; + +/** + * To activate a group of Terms + */ +public class Want extends Operator { + public Want(String name) { + super(name); + } + + public ArrayList execute(Task task) { + Sentence sentence = task.getSentence(); + Inheritance operation = (Inheritance) sentence.getContent(); + ArrayList list = operation.parseOperation("^want"); + Term content = list.get(1); + String str = list.get(2).getName(); + TruthValue truth = TruthValue.make(str); + if (truth == null) { + return null; + } + Judgment j = new Goal(content, truth, sentence.getStamp()); + Task newTask = new Task(j, task.getBudget()); + ArrayList feedback = new ArrayList(); + feedback.add(newTask); + Memory.executedTask(task); + return feedback; + } +} + diff --git a/nars/operation/Wonder.java b/nars/operation/Wonder.java new file mode 100644 index 00000000..25a8a443 --- /dev/null +++ b/nars/operation/Wonder.java @@ -0,0 +1,49 @@ +/* + * Wonder.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ + +package nars.operation; + +import java.util.ArrayList; +import nars.entity.*; +import nars.language.*; +import nars.main.*; +import nars.io.Symbols; + +/** + * To activate a group of Terms + */ +public class Wonder extends Operator { + public Wonder(String name) { + super(name); + } + + public ArrayList execute(Task t) { + Task task = (Task) t.clone(); + Inheritance content = (Inheritance) task.getContent(); + ArrayList list = content.parseOperation("^wonder"); + Term query = list.get(1); + Concept c = Memory.termToConcept(query); + c.processQuestion(new Question((Goal) t.getSentence()), t); + Memory.executedTask(task); + return null; + } +} + diff --git a/nars/storage/Bag.java b/nars/storage/Bag.java index 5f83d1e8..3422dd6f 100644 --- a/nars/storage/Bag.java +++ b/nars/storage/Bag.java @@ -157,6 +157,7 @@ public boolean putIn(Type newItem) { *

    * The only place where the forgetting rate is applied * @param oldItem The Item to put back + * @return Whether the new Item is added into the Bag */ public boolean putBack(Type oldItem) { BudgetFunctions.forget(oldItem.getBudget(), forgetRate(), RELATIVE_THRESHOLD); @@ -210,7 +211,7 @@ public Type pickOut(String key) { * @param n The level index * @return Whether that level is empty */ - private boolean emptyLevel(int n) { + protected boolean emptyLevel(int n) { return ((itemTable[n] == null) || itemTable[n].isEmpty()); } diff --git a/nars/storage/ConceptBag.java b/nars/storage/ConceptBag.java index 381b03e0..e4363ab8 100644 --- a/nars/storage/ConceptBag.java +++ b/nars/storage/ConceptBag.java @@ -24,6 +24,7 @@ import nars.entity.Concept; import nars.main.Parameters; import nars.gui.MainWindow; +import nars.language.Term; /** * Contains Concepts. @@ -45,4 +46,13 @@ protected int capacity() { protected int forgetRate() { return MainWindow.forgetCW.value(); } + + public Term mostActive() { + int i = TOTAL_LEVEL - 1; + while (emptyLevel(i)) { + i--; + } + Concept c = itemTable[i].get(0); + return c.getTerm(); + } } \ No newline at end of file diff --git a/nars/storage/TaskBuffer.java b/nars/storage/TaskBuffer.java index bf898369..50f3be6f 100644 --- a/nars/storage/TaskBuffer.java +++ b/nars/storage/TaskBuffer.java @@ -44,7 +44,7 @@ protected int capacity() { protected int forgetRate() { return Parameters.NEW_TASK_FORGETTING_CYCLE; } - + /** * Sepecial treatment: the display also include Tasks in the NewTask list * @return New Tasks in the buffer and list for display From 42fd3a480888ed68bba37507428a932e16aec9cd Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Mon, 21 Jan 2013 22:15:26 +0000 Subject: [PATCH 055/206] open-nars 1.5.0 distribution --- nars-dist/Examples/Example-NAL1-abridged.txt | 71 - nars-dist/Examples/Example-NAL1-complete.txt | 122 -- nars-dist/Examples/Example-NAL1-in.txt | 44 + nars-dist/Examples/Example-NAL1-out.txt | 65 + nars-dist/Examples/Example-NAL2-abridged.txt | 141 -- nars-dist/Examples/Example-NAL2-complete.txt | 210 -- nars-dist/Examples/Example-NAL2-in.txt | 91 + nars-dist/Examples/Example-NAL2-out.txt | 119 ++ nars-dist/Examples/Example-NAL3-abridged.txt | 120 -- nars-dist/Examples/Example-NAL3-in.txt | 72 + ...NAL3-complete.txt => Example-NAL3-out.txt} | 258 +-- nars-dist/Examples/Example-NAL4-abridged.txt | 93 - nars-dist/Examples/Example-NAL4-complete.txt | 101 - nars-dist/Examples/Example-NAL4-in.txt | 49 + nars-dist/Examples/Example-NAL4-out.txt | 53 + nars-dist/Examples/Example-NAL5-abridged.txt | 240 --- nars-dist/Examples/Example-NAL5-in.txt | 151 ++ ...NAL5-complete.txt => Example-NAL5-out.txt} | 472 ++-- nars-dist/Examples/Example-NAL6-abridged.txt | 225 -- nars-dist/Examples/Example-NAL6-complete.txt | 313 --- nars-dist/Examples/Example-NAL6-in.txt | 143 ++ nars-dist/Examples/Example-NAL6-out.txt | 165 ++ nars-dist/Examples/Example-NAL7-abridged.txt | 102 - nars-dist/Examples/Example-NAL7-complete.txt | 294 --- .../Examples/Example-NAL8-1-abridged.txt | 184 -- .../Examples/Example-NAL8-1-complete.txt | 589 ----- .../Examples/Example-NAL8-2-abridged.txt | 48 - .../Examples/Example-NAL8-2-complete.txt | 131 -- .../Examples/Example-NAL8-3-abridged.txt | 52 - .../Examples/Example-NAL8-3-complete.txt | 121 -- .../Examples/Example-NAL8-4-abridged.txt | 64 - .../Examples/Example-NAL8-4-complete.txt | 152 -- .../Examples/Example-NAL8-5-abridged.txt | 79 - .../Examples/Example-NAL8-5-complete.txt | 116 - nars-dist/javadoc/allclasses-frame.html | 102 +- nars-dist/javadoc/allclasses-noframe.html | 102 +- nars-dist/javadoc/constant-values.html | 320 +-- nars-dist/javadoc/deprecated-list.html | 8 +- nars-dist/javadoc/help-doc.html | 8 +- nars-dist/javadoc/index-files/index-1.html | 85 +- nars-dist/javadoc/index-files/index-10.html | 18 +- nars-dist/javadoc/index-files/index-11.html | 12 +- nars-dist/javadoc/index-files/index-12.html | 32 +- nars-dist/javadoc/index-files/index-13.html | 321 ++- nars-dist/javadoc/index-files/index-14.html | 111 +- nars-dist/javadoc/index-files/index-15.html | 123 +- nars-dist/javadoc/index-files/index-16.html | 139 +- nars-dist/javadoc/index-files/index-17.html | 24 +- nars-dist/javadoc/index-files/index-18.html | 134 +- nars-dist/javadoc/index-files/index-19.html | 277 +-- nars-dist/javadoc/index-files/index-2.html | 44 +- nars-dist/javadoc/index-files/index-20.html | 251 +-- nars-dist/javadoc/index-files/index-21.html | 36 +- nars-dist/javadoc/index-files/index-22.html | 53 +- nars-dist/javadoc/index-files/index-23.html | 43 +- nars-dist/javadoc/index-files/index-3.html | 411 ++-- nars-dist/javadoc/index-files/index-4.html | 119 +- nars-dist/javadoc/index-files/index-5.html | 99 +- nars-dist/javadoc/index-files/index-6.html | 58 +- nars-dist/javadoc/index-files/index-7.html | 209 +- nars-dist/javadoc/index-files/index-8.html | 37 +- nars-dist/javadoc/index-files/index-9.html | 309 +-- nars-dist/javadoc/index.html | 4 +- nars-dist/javadoc/nars/container/Bag.html | 668 ++++++ .../javadoc/nars/container/ConceptBag.html | 320 +++ nars-dist/javadoc/nars/container/Memory.html | 868 ++++++++ .../javadoc/nars/container/NovelTaskBag.html | 320 +++ .../javadoc/nars/container/TaskLinkBag.html | 320 +++ .../javadoc/nars/container/TermLinkBag.html | 344 +++ .../javadoc/nars/container/class-use/Bag.html | 233 ++ .../nars/container/class-use/ConceptBag.html | 145 ++ .../nars/container/class-use/Memory.html | 962 +++++++++ .../container/class-use/NovelTaskBag.html | 145 ++ .../nars/container/class-use/TaskLinkBag.html | 145 ++ .../nars/container/class-use/TermLinkBag.html | 145 ++ .../javadoc/nars/container/package-frame.html | 43 + .../nars/container/package-summary.html | 221 ++ .../javadoc/nars/container/package-tree.html | 156 ++ .../javadoc/nars/container/package-use.html | 293 +++ .../javadoc/nars/entity/BudgetValue.html | 59 +- nars-dist/javadoc/nars/entity/Concept.html | 434 +--- nars-dist/javadoc/nars/entity/Item.html | 402 +++- nars-dist/javadoc/nars/entity/Sentence.html | 533 +---- nars-dist/javadoc/nars/entity/ShortFloat.html | 126 +- nars-dist/javadoc/nars/entity/Stamp.html | 419 +--- nars-dist/javadoc/nars/entity/Task.html | 248 ++- nars-dist/javadoc/nars/entity/TaskLink.html | 154 +- nars-dist/javadoc/nars/entity/TermLink.html | 158 +- nars-dist/javadoc/nars/entity/TruthValue.html | 191 +- .../nars/entity/class-use/BudgetValue.html | 328 +-- .../nars/entity/class-use/Concept.html | 112 +- .../javadoc/nars/entity/class-use/Item.html | 76 +- .../nars/entity/class-use/Sentence.html | 378 +--- .../nars/entity/class-use/ShortFloat.html | 24 +- .../javadoc/nars/entity/class-use/Stamp.html | 142 +- .../javadoc/nars/entity/class-use/Task.html | 415 +--- .../nars/entity/class-use/TaskLink.html | 107 +- .../nars/entity/class-use/TermLink.html | 176 +- .../nars/entity/class-use/TruthValue.html | 750 +------ .../javadoc/nars/entity/package-frame.html | 12 +- .../javadoc/nars/entity/package-summary.html | 35 +- .../javadoc/nars/entity/package-tree.html | 21 +- .../javadoc/nars/entity/package-use.html | 206 +- nars-dist/javadoc/nars/gui/BagWindow.html | 242 +-- nars-dist/javadoc/nars/gui/ConceptWindow.html | 262 +-- .../javadoc/nars/gui/InferenceWindow.html | 204 +- nars-dist/javadoc/nars/gui/InputWindow.html | 239 +-- nars-dist/javadoc/nars/gui/MainWindow.html | 308 +-- nars-dist/javadoc/nars/gui/MessageDialog.html | 30 +- nars-dist/javadoc/nars/gui/NarsFrame.html | 218 +- .../javadoc/nars/gui/ParameterWindow.html | 255 +-- nars-dist/javadoc/nars/gui/TermWindow.html | 171 +- .../javadoc/nars/gui/class-use/BagWindow.html | 46 +- .../nars/gui/class-use/ConceptWindow.html | 46 +- .../nars/gui/class-use/InferenceWindow.html | 46 +- .../nars/gui/class-use/InputWindow.html | 26 +- .../nars/gui/class-use/MainWindow.html | 45 +- .../nars/gui/class-use/MessageDialog.html | 8 +- .../javadoc/nars/gui/class-use/NarsFrame.html | 8 +- .../nars/gui/class-use/ParameterWindow.html | 16 +- .../nars/gui/class-use/TermWindow.html | 10 +- nars-dist/javadoc/nars/gui/package-frame.html | 6 +- .../javadoc/nars/gui/package-summary.html | 8 +- nars-dist/javadoc/nars/gui/package-tree.html | 14 +- nars-dist/javadoc/nars/gui/package-use.html | 64 +- .../nars/inference/BudgetFunctions.html | 218 +- .../nars/inference/CompositionalRules.html | 237 +- .../javadoc/nars/inference/LocalRules.html | 400 ++++ .../javadoc/nars/inference/RuleTables.html | 326 +-- .../nars/inference/StructuralRules.html | 317 +-- .../nars/inference/SyllogisticRules.html | 330 +-- .../nars/inference/TruthFunctions.html | 623 +----- .../nars/inference/UtilityFunctions.html | 8 +- .../inference/class-use/BudgetFunctions.html | 8 +- .../class-use/CompositionalRules.html | 8 +- .../nars/inference/class-use/LocalRules.html | 145 ++ .../nars/inference/class-use/RuleTables.html | 8 +- .../inference/class-use/StructuralRules.html | 8 +- .../inference/class-use/SyllogisticRules.html | 8 +- .../inference/class-use/TruthFunctions.html | 8 +- .../inference/class-use/UtilityFunctions.html | 8 +- .../javadoc/nars/inference/package-frame.html | 8 +- .../nars/inference/package-summary.html | 21 +- .../javadoc/nars/inference/package-tree.html | 10 +- .../javadoc/nars/inference/package-use.html | 8 +- .../javadoc/nars/io/ExperienceReader.html | 318 +++ .../javadoc/nars/io/ExperienceWriter.html | 317 +++ .../javadoc/nars/io/InferenceRecorder.html | 407 ++++ nars-dist/javadoc/nars/io/InputChannel.html | 216 ++ nars-dist/javadoc/nars/io/OutputChannel.html | 214 ++ nars-dist/javadoc/nars/io/StringParser.html | 401 +--- nars-dist/javadoc/nars/io/Symbols.html | 274 +-- .../nars/io/class-use/ExperienceReader.html | 145 ++ .../nars/io/class-use/ExperienceWriter.html | 145 ++ .../nars/io/class-use/InferenceRecorder.html | 208 ++ .../nars/io/class-use/InputChannel.html | 247 +++ .../nars/io/class-use/OutputChannel.html | 247 +++ .../nars/io/class-use/StringParser.html | 8 +- .../javadoc/nars/io/class-use/Symbols.html | 10 +- nars-dist/javadoc/nars/io/package-frame.html | 28 +- .../javadoc/nars/io/package-summary.html | 54 +- nars-dist/javadoc/nars/io/package-tree.html | 26 +- nars-dist/javadoc/nars/io/package-use.html | 84 +- nars-dist/javadoc/nars/main/NARS.html | 37 +- nars-dist/javadoc/nars/main/Parameters.html | 122 +- nars-dist/javadoc/nars/main/Reasoner.html | 527 +++++ .../javadoc/nars/main/class-use/NARS.html | 8 +- .../nars/main/class-use/Parameters.html | 8 +- .../javadoc/nars/main/class-use/Reasoner.html | 247 +++ .../javadoc/nars/main/package-frame.html | 14 +- .../javadoc/nars/main/package-summary.html | 32 +- nars-dist/javadoc/nars/main/package-tree.html | 20 +- nars-dist/javadoc/nars/main/package-use.html | 74 +- nars-dist/javadoc/nars/term/CompoundTerm.html | 1131 ++++++++++ nars-dist/javadoc/nars/term/Conjunction.html | 445 ++++ .../javadoc/nars/term/DifferenceExt.html | 355 +++ .../javadoc/nars/term/DifferenceInt.html | 355 +++ nars-dist/javadoc/nars/term/Disjunction.html | 404 ++++ nars-dist/javadoc/nars/term/Equivalence.html | 431 ++++ nars-dist/javadoc/nars/term/ImageExt.html | 506 +++++ nars-dist/javadoc/nars/term/ImageInt.html | 506 +++++ nars-dist/javadoc/nars/term/Implication.html | 406 ++++ nars-dist/javadoc/nars/term/Inheritance.html | 341 +++ nars-dist/javadoc/nars/term/Instance.html | 327 +++ .../javadoc/nars/term/InstanceProperty.html | 327 +++ .../javadoc/nars/term/IntersectionExt.html | 404 ++++ .../javadoc/nars/term/IntersectionInt.html | 404 ++++ nars-dist/javadoc/nars/term/Negation.html | 353 +++ nars-dist/javadoc/nars/term/Product.html | 357 ++++ nars-dist/javadoc/nars/term/Property.html | 327 +++ nars-dist/javadoc/nars/term/SetExt.html | 427 ++++ nars-dist/javadoc/nars/term/SetInt.html | 427 ++++ nars-dist/javadoc/nars/term/Similarity.html | 366 ++++ nars-dist/javadoc/nars/term/Statement.html | 593 ++++++ nars-dist/javadoc/nars/term/Term.html | 561 +++++ nars-dist/javadoc/nars/term/Variable.html | 515 +++++ .../nars/term/class-use/CompoundTerm.html | 397 ++++ .../nars/term/class-use/Conjunction.html | 145 ++ .../nars/term/class-use/DifferenceExt.html | 145 ++ .../nars/term/class-use/DifferenceInt.html | 145 ++ .../nars/term/class-use/Disjunction.html | 145 ++ .../nars/term/class-use/Equivalence.html | 183 ++ .../javadoc/nars/term/class-use/ImageExt.html | 184 ++ .../javadoc/nars/term/class-use/ImageInt.html | 184 ++ .../nars/term/class-use/Implication.html | 183 ++ .../nars/term/class-use/Inheritance.html | 183 ++ .../javadoc/nars/term/class-use/Instance.html | 145 ++ .../nars/term/class-use/InstanceProperty.html | 145 ++ .../nars/term/class-use/IntersectionExt.html | 145 ++ .../nars/term/class-use/IntersectionInt.html | 145 ++ .../javadoc/nars/term/class-use/Negation.html | 145 ++ .../javadoc/nars/term/class-use/Product.html | 195 ++ .../javadoc/nars/term/class-use/Property.html | 145 ++ .../javadoc/nars/term/class-use/SetExt.html | 145 ++ .../javadoc/nars/term/class-use/SetInt.html | 145 ++ .../nars/term/class-use/Similarity.html | 183 ++ .../nars/term/class-use/Statement.html | 333 +++ .../javadoc/nars/term/class-use/Term.html | 1897 +++++++++++++++++ .../javadoc/nars/term/class-use/Variable.html | 189 ++ .../javadoc/nars/term/package-frame.html | 77 + .../javadoc/nars/term/package-summary.html | 318 +++ nars-dist/javadoc/nars/term/package-tree.html | 161 ++ nars-dist/javadoc/nars/term/package-use.html | 308 +++ nars-dist/javadoc/overview-frame.html | 14 +- nars-dist/javadoc/overview-summary.html | 60 +- nars-dist/javadoc/overview-tree.html | 69 +- nars-dist/javadoc/package-list | 5 +- nars-dist/javadoc/serialized-form.html | 193 +- 228 files changed, 30902 insertions(+), 15412 deletions(-) delete mode 100644 nars-dist/Examples/Example-NAL1-abridged.txt delete mode 100644 nars-dist/Examples/Example-NAL1-complete.txt create mode 100644 nars-dist/Examples/Example-NAL1-in.txt create mode 100644 nars-dist/Examples/Example-NAL1-out.txt delete mode 100644 nars-dist/Examples/Example-NAL2-abridged.txt delete mode 100644 nars-dist/Examples/Example-NAL2-complete.txt create mode 100644 nars-dist/Examples/Example-NAL2-in.txt create mode 100644 nars-dist/Examples/Example-NAL2-out.txt delete mode 100644 nars-dist/Examples/Example-NAL3-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL3-in.txt rename nars-dist/Examples/{Example-NAL3-complete.txt => Example-NAL3-out.txt} (62%) delete mode 100644 nars-dist/Examples/Example-NAL4-abridged.txt delete mode 100644 nars-dist/Examples/Example-NAL4-complete.txt create mode 100644 nars-dist/Examples/Example-NAL4-in.txt create mode 100644 nars-dist/Examples/Example-NAL4-out.txt delete mode 100644 nars-dist/Examples/Example-NAL5-abridged.txt create mode 100644 nars-dist/Examples/Example-NAL5-in.txt rename nars-dist/Examples/{Example-NAL5-complete.txt => Example-NAL5-out.txt} (88%) delete mode 100644 nars-dist/Examples/Example-NAL6-abridged.txt delete mode 100644 nars-dist/Examples/Example-NAL6-complete.txt create mode 100644 nars-dist/Examples/Example-NAL6-in.txt create mode 100644 nars-dist/Examples/Example-NAL6-out.txt delete mode 100644 nars-dist/Examples/Example-NAL7-abridged.txt delete mode 100644 nars-dist/Examples/Example-NAL7-complete.txt delete mode 100644 nars-dist/Examples/Example-NAL8-1-abridged.txt delete mode 100644 nars-dist/Examples/Example-NAL8-1-complete.txt delete mode 100644 nars-dist/Examples/Example-NAL8-2-abridged.txt delete mode 100644 nars-dist/Examples/Example-NAL8-2-complete.txt delete mode 100644 nars-dist/Examples/Example-NAL8-3-abridged.txt delete mode 100644 nars-dist/Examples/Example-NAL8-3-complete.txt delete mode 100644 nars-dist/Examples/Example-NAL8-4-abridged.txt delete mode 100644 nars-dist/Examples/Example-NAL8-4-complete.txt delete mode 100644 nars-dist/Examples/Example-NAL8-5-abridged.txt delete mode 100644 nars-dist/Examples/Example-NAL8-5-complete.txt create mode 100644 nars-dist/javadoc/nars/container/Bag.html create mode 100644 nars-dist/javadoc/nars/container/ConceptBag.html create mode 100644 nars-dist/javadoc/nars/container/Memory.html create mode 100644 nars-dist/javadoc/nars/container/NovelTaskBag.html create mode 100644 nars-dist/javadoc/nars/container/TaskLinkBag.html create mode 100644 nars-dist/javadoc/nars/container/TermLinkBag.html create mode 100644 nars-dist/javadoc/nars/container/class-use/Bag.html create mode 100644 nars-dist/javadoc/nars/container/class-use/ConceptBag.html create mode 100644 nars-dist/javadoc/nars/container/class-use/Memory.html create mode 100644 nars-dist/javadoc/nars/container/class-use/NovelTaskBag.html create mode 100644 nars-dist/javadoc/nars/container/class-use/TaskLinkBag.html create mode 100644 nars-dist/javadoc/nars/container/class-use/TermLinkBag.html create mode 100644 nars-dist/javadoc/nars/container/package-frame.html create mode 100644 nars-dist/javadoc/nars/container/package-summary.html create mode 100644 nars-dist/javadoc/nars/container/package-tree.html create mode 100644 nars-dist/javadoc/nars/container/package-use.html create mode 100644 nars-dist/javadoc/nars/inference/LocalRules.html create mode 100644 nars-dist/javadoc/nars/inference/class-use/LocalRules.html create mode 100644 nars-dist/javadoc/nars/io/ExperienceReader.html create mode 100644 nars-dist/javadoc/nars/io/ExperienceWriter.html create mode 100644 nars-dist/javadoc/nars/io/InferenceRecorder.html create mode 100644 nars-dist/javadoc/nars/io/InputChannel.html create mode 100644 nars-dist/javadoc/nars/io/OutputChannel.html create mode 100644 nars-dist/javadoc/nars/io/class-use/ExperienceReader.html create mode 100644 nars-dist/javadoc/nars/io/class-use/ExperienceWriter.html create mode 100644 nars-dist/javadoc/nars/io/class-use/InferenceRecorder.html create mode 100644 nars-dist/javadoc/nars/io/class-use/InputChannel.html create mode 100644 nars-dist/javadoc/nars/io/class-use/OutputChannel.html create mode 100644 nars-dist/javadoc/nars/main/Reasoner.html create mode 100644 nars-dist/javadoc/nars/main/class-use/Reasoner.html create mode 100644 nars-dist/javadoc/nars/term/CompoundTerm.html create mode 100644 nars-dist/javadoc/nars/term/Conjunction.html create mode 100644 nars-dist/javadoc/nars/term/DifferenceExt.html create mode 100644 nars-dist/javadoc/nars/term/DifferenceInt.html create mode 100644 nars-dist/javadoc/nars/term/Disjunction.html create mode 100644 nars-dist/javadoc/nars/term/Equivalence.html create mode 100644 nars-dist/javadoc/nars/term/ImageExt.html create mode 100644 nars-dist/javadoc/nars/term/ImageInt.html create mode 100644 nars-dist/javadoc/nars/term/Implication.html create mode 100644 nars-dist/javadoc/nars/term/Inheritance.html create mode 100644 nars-dist/javadoc/nars/term/Instance.html create mode 100644 nars-dist/javadoc/nars/term/InstanceProperty.html create mode 100644 nars-dist/javadoc/nars/term/IntersectionExt.html create mode 100644 nars-dist/javadoc/nars/term/IntersectionInt.html create mode 100644 nars-dist/javadoc/nars/term/Negation.html create mode 100644 nars-dist/javadoc/nars/term/Product.html create mode 100644 nars-dist/javadoc/nars/term/Property.html create mode 100644 nars-dist/javadoc/nars/term/SetExt.html create mode 100644 nars-dist/javadoc/nars/term/SetInt.html create mode 100644 nars-dist/javadoc/nars/term/Similarity.html create mode 100644 nars-dist/javadoc/nars/term/Statement.html create mode 100644 nars-dist/javadoc/nars/term/Term.html create mode 100644 nars-dist/javadoc/nars/term/Variable.html create mode 100644 nars-dist/javadoc/nars/term/class-use/CompoundTerm.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Conjunction.html create mode 100644 nars-dist/javadoc/nars/term/class-use/DifferenceExt.html create mode 100644 nars-dist/javadoc/nars/term/class-use/DifferenceInt.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Disjunction.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Equivalence.html create mode 100644 nars-dist/javadoc/nars/term/class-use/ImageExt.html create mode 100644 nars-dist/javadoc/nars/term/class-use/ImageInt.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Implication.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Inheritance.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Instance.html create mode 100644 nars-dist/javadoc/nars/term/class-use/InstanceProperty.html create mode 100644 nars-dist/javadoc/nars/term/class-use/IntersectionExt.html create mode 100644 nars-dist/javadoc/nars/term/class-use/IntersectionInt.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Negation.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Product.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Property.html create mode 100644 nars-dist/javadoc/nars/term/class-use/SetExt.html create mode 100644 nars-dist/javadoc/nars/term/class-use/SetInt.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Similarity.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Statement.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Term.html create mode 100644 nars-dist/javadoc/nars/term/class-use/Variable.html create mode 100644 nars-dist/javadoc/nars/term/package-frame.html create mode 100644 nars-dist/javadoc/nars/term/package-summary.html create mode 100644 nars-dist/javadoc/nars/term/package-tree.html create mode 100644 nars-dist/javadoc/nars/term/package-use.html diff --git a/nars-dist/Examples/Example-NAL1-abridged.txt b/nars-dist/Examples/Example-NAL1-abridged.txt deleted file mode 100644 index 87fcdd64..00000000 --- a/nars-dist/Examples/Example-NAL1-abridged.txt +++ /dev/null @@ -1,71 +0,0 @@ -********** revision - IN: swimmer>. - IN: swimmer>. %0.10;0.60% - -1 - - OUT: swimmer>. %0.87;0.91% - -********** deduction - IN: animal>. - - IN: bird>. -1 - - OUT: animal>. %1.00;0.81% - -********** abduction - IN: competition>. - IN: competition>. %0.8% -1 - - OUT: chess>. %1.00;0.39% - - OUT: sport>. %0.80;0.45% - -********** induction - IN: swimmer>. %0.7% - - IN: bird>. -1 - - OUT: swimmer>. %0.70;0.45% - OUT: bird>. %1.00;0.36% - - - -********** exemplification - IN: bird>. - - IN: animal>. -1 - - OUT: robin>. %1.00;0.45% - -********** conversion - IN: swimmer>. - IN: bird>? - -2 - - OUT: bird>. %1.00;0.47% - -********** "y/n" question - IN: swimmer>. - IN: swimmer>? -1 - - OUT: swimmer>. %1.00;0.90% - -********** "wh" question - IN: swimmer>. - - IN: swimmer>? -1 - - OUT: swimmer>. %1.00;0.90% - OUT: bird>? - OUT: ?1>? - - OUT: bird>? - diff --git a/nars-dist/Examples/Example-NAL1-complete.txt b/nars-dist/Examples/Example-NAL1-complete.txt deleted file mode 100644 index b54f1b45..00000000 --- a/nars-dist/Examples/Example-NAL1-complete.txt +++ /dev/null @@ -1,122 +0,0 @@ -********** revision - IN: swimmer>. %1.00;0.90% {0 : 1} - - IN: swimmer>. %0.10;0.60% {0 : 2} - -1 - - OUT: swimmer>. %0.87;0.91% {1 : 1;2} - -********** deduction - IN: animal>. %1.00;0.90% {0 : 1} - - IN: bird>. %1.00;0.90% {0 : 2} - -1 - - OUT: animal>. %1.00;0.81% {1 : 2;1} - - OUT: robin>. %1.00;0.45% {1 : 2;1} - -********** abduction - IN: competition>. %1.00;0.90% {0 : 1} - - IN: competition>. %0.80;0.90% {0 : 2} - -1 - - OUT: chess>. %1.00;0.39% {1 : 2;1} - - OUT: sport>. %0.80;0.45% {1 : 2;1} - - OUT: sport>. %0.80;0.45% {1 : 2;1} - - OUT: < #1> =|> #1>>. %1.00;0.39% {1 : 2;1} - - OUT: < #1> =|> #1>>. %0.80;0.45% {1 : 2;1} - - OUT: < #1> <=> #1>>. %0.80;0.45% {1 : 2;1} - - OUT: <(&,chess,sport) --> competition>. %1.00;0.97% {1 : 2;1} - - OUT: <(|,chess,sport) --> competition>. %0.80;0.83% {1 : 2;1} - - OUT: <(~,sport,chess) --> competition>. %0.20;0.88% {1 : 2;1} - - OUT: <(~,chess,sport) --> competition>. %0.00;0.92% {1 : 2;1} - - OUT: (&&, #1()>, #1()>). %0.80;0.83% {1 : 2;1} - -********** induction - IN: swimmer>. %0.70;0.90% {0 : 1} - - IN: bird>. %1.00;0.90% {0 : 2} - -1 - - OUT: swimmer>. %0.70;0.45% {1 : 2;1} - - OUT: bird>. %1.00;0.36% {1 : 2;1} - - OUT: swimmer>. %0.70;0.45% {1 : 2;1} - - OUT: <<#1 --> bird> =|> <#1 --> swimmer>>. %0.70;0.45% {1 : 2;1} - - OUT: <<#1 --> swimmer> =|> <#1 --> bird>>. %1.00;0.36% {1 : 2;1} - - OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.70;0.45% {1 : 2;1} - - OUT: (|,bird,swimmer)>. %1.00;0.96% {1 : 2;1} - - OUT: (&,bird,swimmer)>. %0.70;0.84% {1 : 2;1} - - OUT: (-,swimmer,bird)>. %0.00;0.93% {1 : 2;1} - - OUT: (-,bird,swimmer)>. %0.30;0.87% {1 : 2;1} - - OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.70;0.84% {1 : 2;1} - -********** exemplification - IN: bird>. %1.00;0.90% {0 : 1} - - IN: animal>. %1.00;0.90% {0 : 2} - -1 - - OUT: animal>. %1.00;0.81% {1 : 2;1} - - OUT: robin>. %1.00;0.45% {1 : 2;1} - -********** conversion - IN: swimmer>. %1.00;0.90% {0 : 1} - - IN: bird>? {0 : 2} - -2 - - OUT: bird>. %1.00;0.47% {2 : 1} - -********** "y/n" question - IN: swimmer>. %1.00;0.90% {0 : 1} - - IN: swimmer>? {0 : 2} - -1 - - OUT: swimmer>. %1.00;0.90% {0 : 1} - -********** "wh" question - IN: swimmer>. %1.00;0.90% {0 : 1} - - IN: swimmer>? {0 : 2} - -1 - - OUT: swimmer>. %1.00;0.90% {0 : 1} - - OUT: bird>? {1 : 1;2} - - OUT: ?1>? {1 : 1;2} - - OUT: bird>? {1 : 1;2} - diff --git a/nars-dist/Examples/Example-NAL1-in.txt b/nars-dist/Examples/Example-NAL1-in.txt new file mode 100644 index 00000000..4c5ec1b6 --- /dev/null +++ b/nars-dist/Examples/Example-NAL1-in.txt @@ -0,0 +1,44 @@ +********** revision + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: swimmer>. %0.10;0.60% {0 : 2} +1 + OUT: swimmer>. %0.87;0.91% {1 : 1;2} +********** deduction + IN: animal>. %1.00;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +1 + OUT: animal>. %1.00;0.81% {1 : 2;1} +********** abduction + IN: competition>. %1.00;0.90% {0 : 1} + IN: competition>. %0.90;0.90% {0 : 2} +1 + OUT: chess>. %1.00;0.42% {1 : 2;1} + OUT: sport>. %0.90;0.45% {1 : 2;1} +********* induction + IN: swimmer>. %0.90;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +1 + OUT: swimmer>. %0.90;0.45% {1 : 2;1} + OUT: bird>. %1.00;0.42% {1 : 2;1} +********** exemplification + IN: bird>. %1.00;0.90% {0 : 1} + IN: animal>. %1.00;0.90% {0 : 2} +1 + OUT: robin>. %1.00;0.45% {1 : 2;1} +********** conversion + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: bird>? {0 : 2} +2 + OUT: bird>. %1.00;0.47% {0 : 1} +********** "y/n" question + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: swimmer>? {0 : 2} +1 + OUT: swimmer>. %1.00;0.90% {0 : 1} +********** "wh" question + IN: swimmer>. %1.00;0.80% {0 : 1} + IN: swimmer>? {0 : 2} +1 + OUT: swimmer>. %1.00;0.80% {0 : 1} + OUT: bird>? {1 : 1;2} + OUT: ?3>? {1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL1-out.txt b/nars-dist/Examples/Example-NAL1-out.txt new file mode 100644 index 00000000..5849c219 --- /dev/null +++ b/nars-dist/Examples/Example-NAL1-out.txt @@ -0,0 +1,65 @@ +********** revision + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: swimmer>. %0.10;0.60% {0 : 2} +1 + OUT: swimmer>. %0.87;0.91% {1 : 1;2} +********** deduction + IN: animal>. %1.00;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +1 + OUT: animal>. %1.00;0.81% {1 : 2;1} + OUT: robin>. %1.00;0.45% {1 : 2;1} +********** abduction + IN: competition>. %1.00;0.90% {0 : 1} + IN: competition>. %0.90;0.90% {0 : 2} +1 + OUT: chess>. %1.00;0.42% {1 : 2;1} + OUT: sport>. %0.90;0.45% {1 : 2;1} + OUT: sport>. %0.90;0.45% {1 : 2;1} + OUT: < #V1> ==> #V1>>. %1.00;0.42% {1 : 2;1} + OUT: < #V2> ==> #V2>>. %0.90;0.45% {1 : 2;1} + OUT: < #V3> <=> #V3>>. %0.90;0.45% {1 : 2;1} + OUT: <(&,chess,sport) --> competition>. %1.00;0.98% {1 : 2;1} + OUT: <(|,chess,sport) --> competition>. %0.90;0.82% {1 : 2;1} + OUT: <(~,sport,chess) --> competition>. %0.10;0.89% {1 : 2;1} + OUT: <(~,chess,sport) --> competition>. %0.00;0.91% {1 : 2;1} + OUT: (&&, competition>, competition>). %0.90;0.82% {1 : 2;1} +********* induction + IN: swimmer>. %0.90;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +1 + OUT: swimmer>. %0.90;0.45% {1 : 2;1} + OUT: bird>. %1.00;0.42% {1 : 2;1} + OUT: swimmer>. %0.90;0.45% {1 : 2;1} + OUT: <<#V1 --> bird> ==> <#V1 --> swimmer>>. %0.90;0.45% {1 : 2;1} + OUT: <<#V2 --> swimmer> ==> <#V2 --> bird>>. %1.00;0.42% {1 : 2;1} + OUT: <<#V3 --> bird> <=> <#V3 --> swimmer>>. %0.90;0.45% {1 : 2;1} + OUT: (|,bird,swimmer)>. %1.00;0.98% {1 : 2;1} + OUT: (&,bird,swimmer)>. %0.90;0.82% {1 : 2;1} + OUT: (-,swimmer,bird)>. %0.00;0.91% {1 : 2;1} + OUT: (-,bird,swimmer)>. %0.10;0.89% {1 : 2;1} + OUT: (&&, bird>, swimmer>). %0.90;0.82% {1 : 2;1} +********** exemplification + IN: bird>. %1.00;0.90% {0 : 1} + IN: animal>. %1.00;0.90% {0 : 2} +1 + OUT: animal>. %1.00;0.81% {1 : 2;1} + OUT: robin>. %1.00;0.45% {1 : 2;1} +********** conversion + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: bird>? {0 : 2} +2 + OUT: bird>. %1.00;0.47% {0 : 1} +********** "y/n" question + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: swimmer>? {0 : 2} +1 + OUT: swimmer>. %1.00;0.90% {0 : 1} +********** "wh" question + IN: swimmer>. %1.00;0.80% {0 : 1} + IN: swimmer>? {0 : 2} +1 + OUT: swimmer>. %1.00;0.80% {0 : 1} + OUT: bird>? {1 : 1;2} + OUT: ?3>? {1 : 1;2} + OUT: bird>? {1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL2-abridged.txt b/nars-dist/Examples/Example-NAL2-abridged.txt deleted file mode 100644 index d2f654d5..00000000 --- a/nars-dist/Examples/Example-NAL2-abridged.txt +++ /dev/null @@ -1,141 +0,0 @@ -********** revision - IN: swan>. - IN: swan>. %0.10;0.60% -1 - - OUT: swan>. %0.87;0.91% - - -********** comparison - IN: swimmer>. %0.7% - - IN: bird>. - -1 - - OUT: swimmer>. %0.70;0.45% - - -********** comparison - IN: competition>. - - IN: competition>. %0.8% -1 - - OUT: sport>. %0.80;0.45% - - -********** analogy - IN: swimmer>. - IN: swan>. -1 - - OUT: swimmer>. %1.00;0.81% - -********** analogy - IN: swimmer>. - - IN: swan>. -1 - - OUT: swimmer>. %1.00;0.81% - - -********** resemblance - IN: swan>. - - IN: swan>. - -1 - - OUT: robin>. %1.00;0.81% - -********** instance and property - IN: . - IN: . - IN: . - -********** conversions between inheritance and similarity - IN: bird>. - IN: swan>. %0.1% -1 - OUT: swan>. %0.10;0.89% - -********** conversions between inheritance and similarity - IN: bird>. - - IN: swan>. %0.1% - -1 - OUT: swan>. %0.10;0.74% - - -********** conversions between inheritance and similarity - IN: bird>. %0.9% - - IN: swan>? -2 - - OUT: swan>. %0.90;0.47% - -********** conversions between inheritance and similarity - IN: swan>. %0.9% - IN: bird>? - -2 - - OUT: bird>. %0.90;0.81% - -********** set definition - IN: <{Tweety} --> {Birdie}>. -6 - - OUT: <{Birdie} <-> {Tweety}>. %1.00;0.90% - - -********** set definition - IN: <[smart] --> [bright]>. - -5 - - OUT: <[bright] <-> [smart]>. %1.00;0.90% - -********** set definition - IN: <{Birdie} <-> {Tweety}>. -5 - - OUT: Tweety>. %1.00;0.90% - OUT: <{Tweety} --> {Birdie}>. %1.00;0.90% - -********** set definition - IN: <[bright] <-> [smart]>. - -5 - - OUT: smart>. %1.00;0.90% - OUT: <[bright] --> [smart]>. %1.00;0.90% - -********** structure transformation - IN: Tweety>. %0.9% - IN: <{Birdie} <-> {Tweety}>? -5 - OUT: <{Birdie} <-> {Tweety}>. %0.90;0.90% - -********** structure transformation - IN: smart>. %0.9% - IN: <[bright] --> [smart]>? - -9 - OUT: <[bright] <-> [smart]>. %0.90;0.90% - -********** question derivation - IN: swimmer>. - IN: <{?x} --> swimmer>? - -1 - - OUT: <{?1} --> bird>? - OUT: {?1}>? - - OUT: <{?1} <-> bird>? - diff --git a/nars-dist/Examples/Example-NAL2-complete.txt b/nars-dist/Examples/Example-NAL2-complete.txt deleted file mode 100644 index cf9d6101..00000000 --- a/nars-dist/Examples/Example-NAL2-complete.txt +++ /dev/null @@ -1,210 +0,0 @@ -********** revision - IN: swan>. %1.00;0.90% {0 : 1} - - IN: swan>. %0.10;0.60% {0 : 2} - -1 - - OUT: swan>. %0.87;0.91% {1 : 1;2} - -********** comparison - IN: swimmer>. %0.70;0.90% {0 : 1} - - IN: bird>. %1.00;0.90% {0 : 2} - -1 - - OUT: swimmer>. %0.70;0.45% {1 : 2;1} - - OUT: bird>. %1.00;0.36% {1 : 2;1} - - OUT: swimmer>. %0.70;0.45% {1 : 2;1} - - OUT: <<#1 --> bird> =|> <#1 --> swimmer>>. %0.70;0.45% {1 : 2;1} - - OUT: <<#1 --> swimmer> =|> <#1 --> bird>>. %1.00;0.36% {1 : 2;1} - - OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.70;0.45% {1 : 2;1} - - OUT: (|,bird,swimmer)>. %1.00;0.96% {1 : 2;1} - - OUT: (&,bird,swimmer)>. %0.70;0.84% {1 : 2;1} - - OUT: (-,swimmer,bird)>. %0.00;0.93% {1 : 2;1} - - OUT: (-,bird,swimmer)>. %0.30;0.87% {1 : 2;1} - - OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.70;0.84% {1 : 2;1} - -********** comparison - IN: competition>. %1.00;0.90% {0 : 1} - - IN: competition>. %0.80;0.90% {0 : 2} - -1 - - OUT: chess>. %1.00;0.39% {1 : 2;1} - - OUT: sport>. %0.80;0.45% {1 : 2;1} - - OUT: sport>. %0.80;0.45% {1 : 2;1} - - OUT: < #1> =|> #1>>. %1.00;0.39% {1 : 2;1} - - OUT: < #1> =|> #1>>. %0.80;0.45% {1 : 2;1} - - OUT: < #1> <=> #1>>. %0.80;0.45% {1 : 2;1} - - OUT: <(&,chess,sport) --> competition>. %1.00;0.97% {1 : 2;1} - - OUT: <(|,chess,sport) --> competition>. %0.80;0.83% {1 : 2;1} - - OUT: <(~,sport,chess) --> competition>. %0.20;0.88% {1 : 2;1} - - OUT: <(~,chess,sport) --> competition>. %0.00;0.92% {1 : 2;1} - - OUT: (&&, #1()>, #1()>). %0.80;0.83% {1 : 2;1} - -********** analogy - IN: swimmer>. %1.00;0.90% {0 : 1} - - IN: swan>. %1.00;0.90% {0 : 2} - -1 - - OUT: swimmer>. %1.00;0.81% {1 : 2;1} - -********** analogy - IN: swimmer>. %1.00;0.90% {0 : 1} - - IN: swan>. %1.00;0.90% {0 : 2} - -1 - - OUT: swimmer>. %1.00;0.81% {1 : 2;1} - -********** resemblance - IN: swan>. %1.00;0.90% {0 : 1} - - IN: swan>. %1.00;0.90% {0 : 2} - -1 - - OUT: robin>. %1.00;0.81% {1 : 2;1} - -********** instance and property - IN: <{Tweety} --> bird>. %1.00;0.90% {0 : 1} - - IN: [black]>. %1.00;0.90% {0 : 2} - - IN: <{Tweety} --> [yellow]>. %1.00;0.90% {0 : 3} - -********** conversions between inheritance and similarity - IN: bird>. %1.00;0.90% {0 : 1} - - IN: swan>. %0.10;0.90% {0 : 2} - -1 - - OUT: swan>. %0.10;0.89% {1 : 2;1} - -********** conversions between inheritance and similarity - IN: bird>. %1.00;0.90% {0 : 1} - - IN: swan>. %0.10;0.90% {0 : 2} - -1 - - OUT: swan>. %0.10;0.74% {1 : 2;1} - -********** conversions between inheritance and similarity - IN: bird>. %0.90;0.90% {0 : 1} - - IN: swan>? {0 : 2} - -2 - - OUT: swan>. %0.90;0.47% {2 : 1} - -********** conversions between inheritance and similarity - IN: swan>. %0.90;0.90% {0 : 1} - - IN: bird>? {0 : 2} - -2 - - OUT: bird>. %0.90;0.81% {2 : 1} - -********** set definition - IN: <{Tweety} --> {Birdie}>. %1.00;0.90% {0 : 1} - -6 - - OUT: <{Birdie} <-> {Tweety}>. %1.00;0.90% {6 : 1} - -********** set definition - IN: <[smart] --> [bright]>. %1.00;0.90% {0 : 1} - -5 - - OUT: <[bright] <-> [smart]>. %1.00;0.90% {5 : 1} - -********** set definition - IN: <{Birdie} <-> {Tweety}>. %1.00;0.90% {0 : 1} - -5 - - OUT: Tweety>. %1.00;0.90% {5 : 1} - - OUT: <{Tweety} --> {Birdie}>. %1.00;0.90% {5 : 1} - -********** set definition - IN: <[bright] <-> [smart]>. %1.00;0.90% {0 : 1} - -5 - - OUT: smart>. %1.00;0.90% {5 : 1} - - OUT: <[bright] --> [smart]>. %1.00;0.90% {5 : 1} - -********** structure transformation - IN: Tweety>. %0.90;0.90% {0 : 1} - - IN: <{Birdie} <-> {Tweety}>? {0 : 2} - -2 - - OUT: Tweety>? {2 : 2} - - OUT: <{Tweety} --> {Birdie}>? {2 : 2} - -3 - - OUT: <{Birdie} <-> {Tweety}>. %0.90;0.90% {5 : 1} - -********** structure transformation - IN: smart>. %0.90;0.90% {0 : 1} - - IN: <[bright] --> [smart]>? {0 : 2} - -2 - - OUT: <[bright] <-> [smart]>? {2 : 2} - -7 - - OUT: <[bright] <-> [smart]>. %0.90;0.90% {9 : 1} - -********** question derivation - IN: swimmer>. %1.00;0.90% {0 : 1} - - IN: <{?1} --> swimmer>? {0 : 2} - -1 - - OUT: <{?1} --> bird>? {1 : 1;2} - - OUT: {?1}>? {1 : 1;2} - - OUT: <{?1} <-> bird>? {1 : 1;2} - diff --git a/nars-dist/Examples/Example-NAL2-in.txt b/nars-dist/Examples/Example-NAL2-in.txt new file mode 100644 index 00000000..da4944c3 --- /dev/null +++ b/nars-dist/Examples/Example-NAL2-in.txt @@ -0,0 +1,91 @@ +********** revision + IN: swan>. %1.00;0.90% {0 : 1} + IN: swan>. %0.10;0.60% {0 : 2} +1 + OUT: swan>. %0.87;0.91% {1 : 1;2} +********** comparison + IN: swimmer>. %0.90;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +1 + OUT: swimmer>. %0.90;0.45% {1 : 2;1} +********** comparison + IN: competition>. %1.00;0.90% {0 : 1} + IN: competition>. %0.90;0.90% {0 : 2} +1 + OUT: sport>. %0.90;0.45% {1 : 2;1} +********** analogy + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: swan>. %1.00;0.90% {0 : 2} +1 + OUT: swimmer>. %1.00;0.81% {1 : 2;1} +********** analogy + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: swan>. %1.00;0.90% {0 : 2} +1 + OUT: swimmer>. %1.00;0.81% {1 : 2;1} +********** resemblance + IN: swan>. %1.00;0.90% {0 : 1} + IN: swan>. %1.00;0.90% {0 : 2} +1 + OUT: robin>. %1.00;0.81% {1 : 2;1} +********** conversions between inheritance and similarity + IN: bird>. %1.00;0.90% {0 : 1} + IN: swan>. %0.10;0.90% {0 : 2} +1 + OUT: swan>. %0.10;0.89% {1 : 2;1} +********** conversions between inheritance and similarity + IN: bird>. %1.00;0.90% {0 : 1} + IN: swan>. %0.10;0.90% {0 : 2} +1 + OUT: swan>. %0.10;0.74% {1 : 2;1} +********** conversions between inheritance and similarity + IN: bird>. %0.90;0.90% {0 : 1} + IN: swan>? {0 : 2} +2 + OUT: swan>. %0.90;0.47% {0 : 1} +********** conversions between inheritance and similarity + IN: swan>. %0.90;0.90% {0 : 1} + IN: bird>? {0 : 2} +1 + OUT: bird>. %0.90;0.81% {0 : 1} +********** set definition + IN: <{Tweety} --> {Birdie}>. %1.00;0.90% {0 : 1} +6 + OUT: <{Birdie} <-> {Tweety}>. %1.00;0.90% {0 : 1} +********** set definition + IN: <[smart] --> [bright]>. %1.00;0.90% {0 : 1} +5 + OUT: <[bright] <-> [smart]>. %1.00;0.90% {0 : 1} +********** set definition + IN: <{Birdie} <-> {Tweety}>. %1.00;0.90% {0 : 1} +1 + OUT: Tweety>. %1.00;0.90% {0 : 1} + OUT: <{Tweety} --> {Birdie}>. %1.00;0.90% {0 : 1} +1 + OUT: Tweety>. %1.00;0.90% {0 : 1} + OUT: <{Birdie} --> {Tweety}>. %1.00;0.90% {0 : 1} +********** set definition + IN: <[bright] <-> [smart]>. %1.00;0.90% {0 : 1} +5 + OUT: smart>. %1.00;0.90% {0 : 1} + OUT: <[bright] --> [smart]>. %1.00;0.90% {0 : 1} +2 + OUT: smart>. %1.00;0.90% {0 : 1} + OUT: <[smart] --> [bright]>. %1.00;0.90% {0 : 1} +********** structure transformation + IN: Tweety>. %0.90;0.90% {0 : 1} + IN: <{Birdie} <-> {Tweety}>? {0 : 2} +7 + OUT: <{Birdie} <-> {Tweety}>. %0.90;0.90% {0 : 1} +********** structure transformation + IN: smart>. %0.90;0.90% {0 : 1} + IN: <[bright] --> [smart]>? {0 : 2} +6 + OUT: <[bright] <-> [smart]>. %0.90;0.90% {0 : 1} +********** question derivation + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: <{?1} --> swimmer>? {0 : 2} +1 + OUT: <{?1} --> bird>? {1 : 1;2} + OUT: {?1}>? {1 : 1;2} + OUT: {?1}>? {1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL2-out.txt b/nars-dist/Examples/Example-NAL2-out.txt new file mode 100644 index 00000000..ba6c46fe --- /dev/null +++ b/nars-dist/Examples/Example-NAL2-out.txt @@ -0,0 +1,119 @@ +********** revision + IN: swan>. %1.00;0.90% {0 : 1} + IN: swan>. %0.10;0.60% {0 : 2} +1 + OUT: swan>. %0.87;0.91% {1 : 1;2} +********** comparison + IN: swimmer>. %0.90;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +1 + OUT: swimmer>. %0.90;0.45% {1 : 2;1} + OUT: bird>. %1.00;0.42% {1 : 2;1} + OUT: swimmer>. %0.90;0.45% {1 : 2;1} + OUT: <<#V1 --> bird> ==> <#V1 --> swimmer>>. %0.90;0.45% {1 : 2;1} + OUT: <<#V2 --> swimmer> ==> <#V2 --> bird>>. %1.00;0.42% {1 : 2;1} + OUT: <<#V3 --> bird> <=> <#V3 --> swimmer>>. %0.90;0.45% {1 : 2;1} + OUT: (|,bird,swimmer)>. %1.00;0.98% {1 : 2;1} + OUT: (&,bird,swimmer)>. %0.90;0.82% {1 : 2;1} + OUT: (-,swimmer,bird)>. %0.00;0.91% {1 : 2;1} + OUT: (-,bird,swimmer)>. %0.10;0.89% {1 : 2;1} + OUT: (&&, bird>, swimmer>). %0.90;0.82% {1 : 2;1} +********** comparison + IN: competition>. %1.00;0.90% {0 : 1} + IN: competition>. %0.90;0.90% {0 : 2} +1 + OUT: chess>. %1.00;0.42% {1 : 2;1} + OUT: sport>. %0.90;0.45% {1 : 2;1} + OUT: sport>. %0.90;0.45% {1 : 2;1} + OUT: < #V1> ==> #V1>>. %1.00;0.42% {1 : 2;1} + OUT: < #V2> ==> #V2>>. %0.90;0.45% {1 : 2;1} + OUT: < #V3> <=> #V3>>. %0.90;0.45% {1 : 2;1} + OUT: <(&,chess,sport) --> competition>. %1.00;0.98% {1 : 2;1} + OUT: <(|,chess,sport) --> competition>. %0.90;0.82% {1 : 2;1} + OUT: <(~,sport,chess) --> competition>. %0.10;0.89% {1 : 2;1} + OUT: <(~,chess,sport) --> competition>. %0.00;0.91% {1 : 2;1} + OUT: (&&, competition>, competition>). %0.90;0.82% {1 : 2;1} +********** analogy + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: swan>. %1.00;0.90% {0 : 2} +1 + OUT: swimmer>. %1.00;0.81% {1 : 2;1} +********** analogy + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: swan>. %1.00;0.90% {0 : 2} +1 + OUT: swimmer>. %1.00;0.81% {1 : 2;1} +********** resemblance + IN: swan>. %1.00;0.90% {0 : 1} + IN: swan>. %1.00;0.90% {0 : 2} +1 + OUT: robin>. %1.00;0.81% {1 : 2;1} +********** conversions between inheritance and similarity + IN: bird>. %1.00;0.90% {0 : 1} + IN: swan>. %0.10;0.90% {0 : 2} +1 + OUT: swan>. %0.10;0.89% {1 : 2;1} +********** conversions between inheritance and similarity + IN: bird>. %1.00;0.90% {0 : 1} + IN: swan>. %0.10;0.90% {0 : 2} +1 + OUT: swan>. %0.10;0.74% {1 : 2;1} +********** conversions between inheritance and similarity + IN: bird>. %0.90;0.90% {0 : 1} + IN: swan>? {0 : 2} +2 + OUT: swan>. %0.90;0.47% {0 : 1} +********** conversions between inheritance and similarity + IN: swan>. %0.90;0.90% {0 : 1} + IN: bird>? {0 : 2} +1 + OUT: bird>. %0.90;0.81% {0 : 1} +********** set definition + IN: <{Tweety} --> {Birdie}>. %1.00;0.90% {0 : 1} +6 + OUT: <{Birdie} <-> {Tweety}>. %1.00;0.90% {0 : 1} +********** set definition + IN: <[smart] --> [bright]>. %1.00;0.90% {0 : 1} +5 + OUT: <[bright] <-> [smart]>. %1.00;0.90% {0 : 1} +********** set definition + IN: <{Birdie} <-> {Tweety}>. %1.00;0.90% {0 : 1} +1 + OUT: Tweety>. %1.00;0.90% {0 : 1} + OUT: <{Tweety} --> {Birdie}>. %1.00;0.90% {0 : 1} +1 + OUT: Tweety>. %1.00;0.90% {0 : 1} + OUT: <{Birdie} --> {Tweety}>. %1.00;0.90% {0 : 1} +********** set definition + IN: <[bright] <-> [smart]>. %1.00;0.90% {0 : 1} +5 + OUT: smart>. %1.00;0.90% {0 : 1} + OUT: <[bright] --> [smart]>. %1.00;0.90% {0 : 1} +2 + OUT: smart>. %1.00;0.90% {0 : 1} + OUT: <[smart] --> [bright]>. %1.00;0.90% {0 : 1} +********** structure transformation + IN: Tweety>. %0.90;0.90% {0 : 1} + IN: <{Birdie} <-> {Tweety}>? {0 : 2} +2 + OUT: Tweety>? {0 : 2} + OUT: <{Tweety} --> {Birdie}>? {0 : 2} +2 + OUT: Tweety>? {0 : 2} + OUT: <{Birdie} --> {Tweety}>? {0 : 2} +3 + OUT: <{Birdie} <-> {Tweety}>. %0.90;0.90% {0 : 1} +********** structure transformation + IN: smart>. %0.90;0.90% {0 : 1} + IN: <[bright] --> [smart]>? {0 : 2} +2 + OUT: <[bright] <-> [smart]>? {0 : 2} +4 + OUT: <[bright] <-> [smart]>. %0.90;0.90% {0 : 1} +********** question derivation + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: <{?1} --> swimmer>? {0 : 2} +1 + OUT: <{?1} --> bird>? {1 : 1;2} + OUT: {?1}>? {1 : 1;2} + OUT: {?1}>? {1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL3-abridged.txt b/nars-dist/Examples/Example-NAL3-abridged.txt deleted file mode 100644 index c2f296e4..00000000 --- a/nars-dist/Examples/Example-NAL3-abridged.txt +++ /dev/null @@ -1,120 +0,0 @@ -********** compound composition, two premises - IN: swimmer>. %0.9% - IN: bird>. %0.8% -1 - - OUT: (|,bird,swimmer)>. %0.98;0.96% - OUT: (&,bird,swimmer)>. %0.72;0.84% - - OUT: (-,swimmer,bird)>. %0.18;0.89% - - OUT: (-,bird,swimmer)>. %0.08;0.91% - - -********** compound composition, two premises - IN: competition>. %0.9% - IN: competition>. %0.8% -1 - - OUT: <(&,chess,sport) --> competition>. %0.98;0.96% - - OUT: <(|,chess,sport) --> competition>. %0.72;0.84% - - OUT: <(~,sport,chess) --> competition>. %0.18;0.89% - - OUT: <(~,chess,sport) --> competition>. %0.08;0.91% - - -********** compound decomposition, two premises - IN: (|,bird,swimmer)>. - IN: swimmer>. %0% - -1 - OUT: bird>. %1.00;0.81% - - -********** compound decomposition, two premises - IN: swimmer>. %0% - IN: (-,mammal,swimmer)>. %0% -4 - OUT: mammal>. %0.00;0.81% - -********** set operations - IN: {Mars,Pluto,Venus}>. %0.9% - - IN: {Pluto,Saturn}>. %0.7% - -1 - OUT: {Mars,Pluto,Saturn,Venus}>. %0.97;0.95% - - OUT: {Pluto}>. %0.63;0.85% - - OUT: {Saturn}>. %0.07;0.92% - - OUT: {Mars,Venus}>. %0.27;0.88% - - -********** composition on both sides of a statement - IN: animal>. %0.9% - - IN: <(&,bird,swimmer) --> (&,animal,swimmer)>? - -1 - - OUT: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.73% - - -********** composition on both sides of a statement - IN: animal>. %0.9% - - IN: <(-,swimmer,animal) --> (-,swimmer,bird)>? - -1 - - OUT: <(-,swimmer,animal) --> (-,swimmer,bird)>. %0.90;0.73% - - -********** compound composition, one premise - IN: bird>. %0.8% - IN: (|,bird,swimmer)>? -9 - - OUT: (|,bird,swimmer)>. %0.80;0.65% - -********** compound composition, one premise - IN: bird>. %0.8% - IN: <(&,swan,swimmer) --> bird>? -8 - - OUT: <(&,swan,swimmer) --> bird>. %0.80;0.65% - -********** compound composition, one premise - IN: bird>. %0.8% - - IN: (-,swimmer,bird)>? - -9 - - OUT: (-,swimmer,bird)>. %0.20;0.65% - - -********** compound composition, one premise - IN: bird>. %0.8% - IN: (~,bird,swimmer)>? -9 - - OUT: (~,bird,swimmer)>. %0.80;0.65% - - -********** compound decomposition, one premise - IN: (&,bird,swimmer)>. %0.9% - -6 - - OUT: bird>. %0.90;0.73% - -********** compound decomposition, one premise - IN: (-,bird,swimmer)>. %0.9% -6 - - OUT: bird>. %0.90;0.73% diff --git a/nars-dist/Examples/Example-NAL3-in.txt b/nars-dist/Examples/Example-NAL3-in.txt new file mode 100644 index 00000000..298073c5 --- /dev/null +++ b/nars-dist/Examples/Example-NAL3-in.txt @@ -0,0 +1,72 @@ +********** compound composition, two premises + IN: swimmer>. %0.90;0.90% {0 : 1} + IN: bird>. %0.80;0.90% {0 : 2} +1 + OUT: (|,bird,swimmer)>. %0.98;0.96% {1 : 2;1} + OUT: (&,bird,swimmer)>. %0.72;0.84% {1 : 2;1} + OUT: (-,swimmer,bird)>. %0.18;0.89% {1 : 2;1} + OUT: (-,bird,swimmer)>. %0.08;0.91% {1 : 2;1} +********** compound composition, two premises + IN: competition>. %0.90;0.90% {0 : 1} + IN: competition>. %0.80;0.90% {0 : 2} +1 + OUT: <(&,chess,sport) --> competition>. %0.98;0.96% {1 : 2;1} + OUT: <(|,chess,sport) --> competition>. %0.72;0.84% {1 : 2;1} + OUT: <(~,sport,chess) --> competition>. %0.18;0.89% {1 : 2;1} + OUT: <(~,chess,sport) --> competition>. %0.08;0.91% {1 : 2;1} +********** compound decomposition, two premises + IN: (|,bird,swimmer)>. %1.00;0.90% {0 : 1} + IN: swimmer>. %0.00;0.90% {0 : 2} +1 + OUT: bird>. %1.00;0.81% {1 : 1;2} +********** compound decomposition, two premises + IN: swimmer>. %0.00;0.90% {0 : 1} + IN: (-,mammal,swimmer)>. %0.00;0.90% {0 : 2} +4 + OUT: mammal>. %0.00;0.81% {4 : 2;1} +********** set operations + IN: {Mars,Pluto,Venus}>. %0.90;0.90% {0 : 1} + IN: {Pluto,Saturn}>. %0.70;0.90% {0 : 2} +1 + OUT: {Mars,Pluto,Saturn,Venus}>. %0.97;0.95% {1 : 1;2} + OUT: {Pluto}>. %0.63;0.85% {1 : 1;2} + OUT: {Saturn}>. %0.07;0.92% {1 : 1;2} + OUT: {Mars,Venus}>. %0.27;0.88% {1 : 1;2} +********** composition on both sides of a statement + IN: animal>. %0.90;0.90% {0 : 1} + IN: <(&,bird,swimmer) --> (&,animal,swimmer)>? {0 : 2} +1 + OUT: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.73% {0 : 1} +********** composition on both sides of a statement + IN: animal>. %0.90;0.90% {0 : 1} + IN: <(-,swimmer,animal) --> (-,swimmer,bird)>? {0 : 2} +1 + OUT: <(-,swimmer,animal) --> (-,swimmer,bird)>. %0.90;0.73% {0 : 1} +********** compound composition, one premise + IN: bird>. %0.80;0.90% {0 : 1} + IN: (|,bird,swimmer)>? {0 : 2} +8 + OUT: (|,bird,swimmer)>. %0.80;0.65% {0 : 1} +********** compound composition, one premise + IN: bird>. %0.80;0.90% {0 : 1} + IN: <(&,swan,swimmer) --> bird>? {0 : 2} +8 + OUT: <(&,swan,swimmer) --> bird>. %0.80;0.65% {0 : 1} +********** compound composition, one premise + IN: bird>. %0.80;0.90% {0 : 1} + IN: (-,swimmer,bird)>? {0 : 2} +8 + OUT: (-,swimmer,bird)>. %0.20;0.65% {0 : 1} +********** compound composition, one premise + IN: bird>. %0.80;0.90% {0 : 1} + IN: (~,bird,swimmer)>? {0 : 2} +8 + OUT: (~,bird,swimmer)>. %0.80;0.65% {0 : 1} +********** compound decomposition, one premise + IN: (&,bird,swimmer)>. %0.90;0.90% {0 : 1} +6 + OUT: bird>. %0.90;0.73% {0 : 1} +********** compound decomposition, one premise + IN: (-,bird,swimmer)>. %0.90;0.90% {0 : 1} +6 + OUT: bird>. %0.90;0.73% {0 : 1} diff --git a/nars-dist/Examples/Example-NAL3-complete.txt b/nars-dist/Examples/Example-NAL3-out.txt similarity index 62% rename from nars-dist/Examples/Example-NAL3-complete.txt rename to nars-dist/Examples/Example-NAL3-out.txt index bd297d1b..da6fa84f 100644 --- a/nars-dist/Examples/Example-NAL3-complete.txt +++ b/nars-dist/Examples/Example-NAL3-out.txt @@ -1,185 +1,99 @@ ********** compound composition, two premises - IN: swimmer>. %0.90;0.90% {0 : 1} - - IN: bird>. %0.80;0.90% {0 : 2} - -1 - - OUT: swimmer>. %0.90;0.39% {1 : 2;1} - - OUT: bird>. %0.80;0.42% {1 : 2;1} - - OUT: swimmer>. %0.73;0.44% {1 : 2;1} - - OUT: <<#1 --> bird> =|> <#1 --> swimmer>>. %0.90;0.39% {1 : 2;1} - - OUT: <<#1 --> swimmer> =|> <#1 --> bird>>. %0.80;0.42% {1 : 2;1} - - OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.73;0.44% {1 : 2;1} - - OUT: (|,bird,swimmer)>. %0.98;0.96% {1 : 2;1} - - OUT: (&,bird,swimmer)>. %0.72;0.84% {1 : 2;1} - - OUT: (-,swimmer,bird)>. %0.18;0.89% {1 : 2;1} - - OUT: (-,bird,swimmer)>. %0.08;0.91% {1 : 2;1} - - OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.72;0.84% {1 : 2;1} - + IN: swimmer>. %0.90;0.90% {0 : 1} + IN: bird>. %0.80;0.90% {0 : 2} +1 + OUT: swimmer>. %0.90;0.39% {1 : 2;1} + OUT: bird>. %0.80;0.42% {1 : 2;1} + OUT: swimmer>. %0.73;0.44% {1 : 2;1} + OUT: <<#V1 --> bird> ==> <#V1 --> swimmer>>. %0.90;0.39% {1 : 2;1} + OUT: <<#V2 --> swimmer> ==> <#V2 --> bird>>. %0.80;0.42% {1 : 2;1} + OUT: <<#V3 --> bird> <=> <#V3 --> swimmer>>. %0.73;0.44% {1 : 2;1} + OUT: (|,bird,swimmer)>. %0.98;0.96% {1 : 2;1} + OUT: (&,bird,swimmer)>. %0.72;0.84% {1 : 2;1} + OUT: (-,swimmer,bird)>. %0.18;0.89% {1 : 2;1} + OUT: (-,bird,swimmer)>. %0.08;0.91% {1 : 2;1} + OUT: (&&, bird>, swimmer>). %0.72;0.84% {1 : 2;1} ********** compound composition, two premises - IN: competition>. %0.90;0.90% {0 : 1} - - IN: competition>. %0.80;0.90% {0 : 2} - -1 - - OUT: chess>. %0.90;0.39% {1 : 2;1} - - OUT: sport>. %0.80;0.42% {1 : 2;1} - - OUT: sport>. %0.73;0.44% {1 : 2;1} - - OUT: < #1> =|> #1>>. %0.90;0.39% {1 : 2;1} - - OUT: < #1> =|> #1>>. %0.80;0.42% {1 : 2;1} - - OUT: < #1> <=> #1>>. %0.73;0.44% {1 : 2;1} - - OUT: <(&,chess,sport) --> competition>. %0.98;0.96% {1 : 2;1} - - OUT: <(|,chess,sport) --> competition>. %0.72;0.84% {1 : 2;1} - - OUT: <(~,sport,chess) --> competition>. %0.18;0.89% {1 : 2;1} - - OUT: <(~,chess,sport) --> competition>. %0.08;0.91% {1 : 2;1} - - OUT: (&&, #1()>, #1()>). %0.72;0.84% {1 : 2;1} - + IN: competition>. %0.90;0.90% {0 : 1} + IN: competition>. %0.80;0.90% {0 : 2} +1 + OUT: chess>. %0.90;0.39% {1 : 2;1} + OUT: sport>. %0.80;0.42% {1 : 2;1} + OUT: sport>. %0.73;0.44% {1 : 2;1} + OUT: < #V1> ==> #V1>>. %0.90;0.39% {1 : 2;1} + OUT: < #V2> ==> #V2>>. %0.80;0.42% {1 : 2;1} + OUT: < #V3> <=> #V3>>. %0.73;0.44% {1 : 2;1} + OUT: <(&,chess,sport) --> competition>. %0.98;0.96% {1 : 2;1} + OUT: <(|,chess,sport) --> competition>. %0.72;0.84% {1 : 2;1} + OUT: <(~,sport,chess) --> competition>. %0.18;0.89% {1 : 2;1} + OUT: <(~,chess,sport) --> competition>. %0.08;0.91% {1 : 2;1} + OUT: (&&, competition>, competition>). %0.72;0.84% {1 : 2;1} ********** compound decomposition, two premises - IN: (|,bird,swimmer)>. %1.00;0.90% {0 : 1} - - IN: swimmer>. %0.00;0.90% {0 : 2} - -1 - - OUT: bird>. %1.00;0.81% {1 : 1;2} - + IN: (|,bird,swimmer)>. %1.00;0.90% {0 : 1} + IN: swimmer>. %0.00;0.90% {0 : 2} +1 + OUT: bird>. %1.00;0.81% {1 : 1;2} ********** compound decomposition, two premises - IN: swimmer>. %0.00;0.90% {0 : 1} - - IN: (-,mammal,swimmer)>. %0.00;0.90% {0 : 2} - -4 - - OUT: mammal>. %0.00;0.81% {4 : 2;1} - + IN: swimmer>. %0.00;0.90% {0 : 1} + IN: (-,mammal,swimmer)>. %0.00;0.90% {0 : 2} +4 + OUT: mammal>. %0.00;0.81% {4 : 2;1} ********** set operations - IN: {Mars,Pluto,Venus}>. %0.90;0.90% {0 : 1} - - IN: {Pluto,Saturn}>. %0.70;0.90% {0 : 2} - -1 - - OUT: <{Mars,Pluto,Venus} --> {Pluto,Saturn}>. %0.70;0.42% {1 : 1;2} - - OUT: <{Pluto,Saturn} --> {Mars,Pluto,Venus}>. %0.90;0.36% {1 : 1;2} - - OUT: <{Mars,Pluto,Venus} <-> {Pluto,Saturn}>. %0.65;0.44% {1 : 1;2} - - OUT: <<#1 --> {Mars,Pluto,Venus}> =|> <#1 --> {Pluto,Saturn}>>. %0.70;0.42% {1 : 1;2} - - OUT: <<#1 --> {Pluto,Saturn}> =|> <#1 --> {Mars,Pluto,Venus}>>. %0.90;0.36% {1 : 1;2} - - OUT: <<#1 --> {Mars,Pluto,Venus}> <=> <#1 --> {Pluto,Saturn}>>. %0.65;0.44% {1 : 1;2} - - OUT: {Mars,Pluto,Saturn,Venus}>. %0.97;0.95% {1 : 1;2} - - OUT: {Pluto}>. %0.63;0.85% {1 : 1;2} - - OUT: {Saturn}>. %0.07;0.92% {1 : 1;2} - - OUT: {Mars,Venus}>. %0.27;0.88% {1 : 1;2} - - OUT: (&&,<#1() --> {Mars,Pluto,Venus}>,<#1() --> {Pluto,Saturn}>). %0.63;0.85% {1 : 1;2} - + IN: {Mars,Pluto,Venus}>. %0.90;0.90% {0 : 1} + IN: {Pluto,Saturn}>. %0.70;0.90% {0 : 2} +1 + OUT: <{Mars,Pluto,Venus} --> {Pluto,Saturn}>. %0.70;0.42% {1 : 1;2} + OUT: <{Pluto,Saturn} --> {Mars,Pluto,Venus}>. %0.90;0.36% {1 : 1;2} + OUT: <{Mars,Pluto,Venus} <-> {Pluto,Saturn}>. %0.65;0.44% {1 : 1;2} + OUT: <<#V1 --> {Mars,Pluto,Venus}> ==> <#V1 --> {Pluto,Saturn}>>. %0.70;0.42% {1 : 1;2} + OUT: <<#V2 --> {Pluto,Saturn}> ==> <#V2 --> {Mars,Pluto,Venus}>>. %0.90;0.36% {1 : 1;2} + OUT: <<#V3 --> {Mars,Pluto,Venus}> <=> <#V3 --> {Pluto,Saturn}>>. %0.65;0.44% {1 : 1;2} + OUT: {Mars,Pluto,Saturn,Venus}>. %0.97;0.95% {1 : 1;2} + OUT: {Pluto}>. %0.63;0.85% {1 : 1;2} + OUT: {Saturn}>. %0.07;0.92% {1 : 1;2} + OUT: {Mars,Venus}>. %0.27;0.88% {1 : 1;2} + OUT: (&&, {Mars,Pluto,Venus}>, {Pluto,Saturn}>). %0.63;0.85% {1 : 1;2} ********** composition on both sides of a statement - IN: animal>. %0.90;0.90% {0 : 1} - - IN: <(&,bird,swimmer) --> (&,animal,swimmer)>? {0 : 2} - -1 - - OUT: <(&,bird,swimmer) --> animal>. %0.90;0.73% {1 : 1} - - OUT: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.73% {1 : 1} - + IN: animal>. %0.90;0.90% {0 : 1} + IN: <(&,bird,swimmer) --> (&,animal,swimmer)>? {0 : 2} +1 + OUT: <(&,bird,swimmer) --> animal>. %0.90;0.73% {0 : 1} + OUT: <(&,bird,swimmer) --> (&,animal,swimmer)>. %0.90;0.73% {0 : 1} ********** composition on both sides of a statement - IN: animal>. %0.90;0.90% {0 : 1} - - IN: <(-,swimmer,animal) --> (-,swimmer,bird)>? {0 : 2} - -1 - - OUT: (-,swimmer,animal)>. %0.10;0.73% {1 : 1} - - OUT: <(-,swimmer,animal) --> (-,swimmer,bird)>. %0.90;0.73% {1 : 1} - + IN: animal>. %0.90;0.90% {0 : 1} + IN: <(-,swimmer,animal) --> (-,swimmer,bird)>? {0 : 2} +1 + OUT: (-,swimmer,animal)>. %0.10;0.73% {0 : 1} + OUT: <(-,swimmer,animal) --> (-,swimmer,bird)>. %0.90;0.73% {0 : 1} ********** compound composition, one premise - IN: bird>. %0.80;0.90% {0 : 1} - - IN: (|,bird,swimmer)>? {0 : 2} - -9 - - OUT: (|,bird,swimmer)>. %0.80;0.65% {9 : 1} - - OUT: <(|,swan,swimmer) --> (|,bird,swimmer)>. %0.80;0.65% {9 : 1} - + IN: bird>. %0.80;0.90% {0 : 1} + IN: (|,bird,swimmer)>? {0 : 2} +8 + OUT: (|,bird,swimmer)>. %0.80;0.65% {0 : 1} + OUT: <(|,swan,swimmer) --> (|,bird,swimmer)>. %0.80;0.65% {0 : 1} ********** compound composition, one premise - IN: bird>. %0.80;0.90% {0 : 1} - - IN: <(&,swan,swimmer) --> bird>? {0 : 2} - -8 - - OUT: <(&,swan,swimmer) --> bird>. %0.80;0.65% {8 : 1} - - OUT: <(&,swan,swimmer) --> (&,bird,swimmer)>. %0.80;0.65% {8 : 1} - + IN: bird>. %0.80;0.90% {0 : 1} + IN: <(&,swan,swimmer) --> bird>? {0 : 2} +7 + OUT: <(&,swan,swimmer) --> bird>. %0.80;0.65% {0 : 1} + OUT: <(&,swan,swimmer) --> (&,bird,swimmer)>. %0.80;0.65% {0 : 1} ********** compound composition, one premise - IN: bird>. %0.80;0.90% {0 : 1} - - IN: (-,swimmer,bird)>? {0 : 2} - -9 - - OUT: (-,swimmer,bird)>. %0.20;0.65% {9 : 1} - - OUT: <(-,swimmer,bird) --> (-,swimmer,swan)>. %0.80;0.65% {9 : 1} - + IN: bird>. %0.80;0.90% {0 : 1} + IN: (-,swimmer,bird)>? {0 : 2} +8 + OUT: (-,swimmer,bird)>. %0.20;0.65% {0 : 1} + OUT: <(-,swimmer,bird) --> (-,swimmer,swan)>. %0.80;0.65% {0 : 1} ********** compound composition, one premise - IN: bird>. %0.80;0.90% {0 : 1} - - IN: (~,bird,swimmer)>? {0 : 2} - -9 - - OUT: (~,bird,swimmer)>. %0.80;0.65% {9 : 1} - - OUT: <(~,swan,swimmer) --> (~,bird,swimmer)>. %0.80;0.65% {9 : 1} - + IN: bird>. %0.80;0.90% {0 : 1} + IN: (~,bird,swimmer)>? {0 : 2} +8 + OUT: (~,bird,swimmer)>. %0.80;0.65% {0 : 1} + OUT: <(~,swan,swimmer) --> (~,bird,swimmer)>. %0.80;0.65% {0 : 1} ********** compound decomposition, one premise - IN: (&,bird,swimmer)>. %0.90;0.90% {0 : 1} - -6 - - OUT: bird>. %0.90;0.73% {6 : 1} - + IN: (&,bird,swimmer)>. %0.90;0.90% {0 : 1} +6 + OUT: bird>. %0.90;0.73% {0 : 1} ********** compound decomposition, one premise - IN: (-,bird,swimmer)>. %0.90;0.90% {0 : 1} - -6 - - OUT: bird>. %0.90;0.73% {6 : 1} - + IN: (-,bird,swimmer)>. %0.90;0.90% {0 : 1} +6 + OUT: bird>. %0.90;0.73% {0 : 1} diff --git a/nars-dist/Examples/Example-NAL4-abridged.txt b/nars-dist/Examples/Example-NAL4-abridged.txt deleted file mode 100644 index 3cfae8bd..00000000 --- a/nars-dist/Examples/Example-NAL4-abridged.txt +++ /dev/null @@ -1,93 +0,0 @@ -********** structural transformation - IN: <(*,acid,base) --> reaction>. - -1 - - OUT: (/,reaction,_,base)>. %1.00;0.90% - -1 - - OUT: (/,reaction,acid,_)>. %1.00;0.90% - - -********** structural transformation - IN: (/,reaction,_,base)>. -2 - - OUT: <(*,acid,base) --> reaction>. %1.00;0.90% - -1 - - OUT: (/,reaction,acid,_)>. %1.00;0.90% - - -********** structural transformation - IN: (/,reaction,acid,_)>. -2 - - OUT: (/,reaction,_,base)>. %1.00;0.90% - -1 - - OUT: <(*,acid,base) --> reaction>. %1.00;0.90% - - -********** structural transformation - IN: (*,acid,base)>. %0.8% -2 - - OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% - -1 - - OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% - - -********** structural transformation - IN: <(\,neutralization,_,base) --> acid>. %0.8% - -1 - - OUT: (*,acid,base)>. %0.80;0.90% - -1 - - OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% - - -********** structural transformation - IN: <(\,neutralization,acid,_) --> base>. %0.8% - -1 - - OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% - -1 - - OUT: (*,acid,base)>. %0.80;0.90% - - -********** composition on both sides of a statement - IN: animal>. %0.9% - - IN: <(*,bird,plant) --> ?1>? - -7 - OUT: <(*,bird,plant) --> (*,animal,plant)>. %0.90;0.73% - - -********** composition on both sides of a statement - IN: reaction>. %0.9% - IN: <(/,neutralization,acid,_) --> ?1>? -4 - - OUT: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.90;0.73% - - -********** composition on both sides of a statement - IN: base>. %0.9% - - IN: <(/,neutralization,_,base) --> ?1>? -4 - - OUT: <(/,neutralization,_,base) --> (/,neutralization,_,soda)>. %0.90;0.73% diff --git a/nars-dist/Examples/Example-NAL4-complete.txt b/nars-dist/Examples/Example-NAL4-complete.txt deleted file mode 100644 index 75ed48ee..00000000 --- a/nars-dist/Examples/Example-NAL4-complete.txt +++ /dev/null @@ -1,101 +0,0 @@ -********** structural transformation - IN: <(*,acid,base) --> reaction>. %1.00;0.90% {0 : 1} - -1 - - OUT: (/,reaction,_,base)>. %1.00;0.90% {1 : 1} - -1 - - OUT: (/,reaction,acid,_)>. %1.00;0.90% {2 : 1} - -********** structural transformation - IN: (/,reaction,_,base)>. %1.00;0.90% {0 : 1} - -2 - - OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {2 : 1} - -1 - - OUT: (/,reaction,acid,_)>. %1.00;0.90% {3 : 1} - -********** structural transformation - IN: (/,reaction,acid,_)>. %1.00;0.90% {0 : 1} - -2 - - OUT: (/,reaction,_,base)>. %1.00;0.90% {2 : 1} - -1 - - OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {3 : 1} - -********** structural transformation - IN: (*,acid,base)>. %0.80;0.90% {0 : 1} - -2 - - OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {2 : 1} - -1 - - OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {3 : 1} - -********** structural transformation - IN: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {0 : 1} - -1 - - OUT: (*,acid,base)>. %0.80;0.90% {1 : 1} - -1 - - OUT: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {2 : 1} - -********** structural transformation - IN: <(\,neutralization,acid,_) --> base>. %0.80;0.90% {0 : 1} - -1 - - OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {1 : 1} - -1 - - OUT: (*,acid,base)>. %0.80;0.90% {2 : 1} - -********** composition on both sides of a statement - IN: animal>. %0.90;0.90% {0 : 1} - - IN: <(*,bird,plant) --> ?1>? {0 : 2} - -1 - - OUT: (/,?1,_,plant)>? {1 : 2} - -5 - - OUT: (/,?1,bird,_)>? {6 : 2} - -1 - - OUT: <(*,bird,plant) --> (*,animal,plant)>. %0.90;0.73% {7 : 1} - -********** composition on both sides of a statement - IN: reaction>. %0.90;0.90% {0 : 1} - - IN: <(/,neutralization,acid,_) --> ?1>? {0 : 2} - -4 - - OUT: <(/,neutralization,acid,_) --> (/,reaction,acid,_)>. %0.90;0.73% {4 : 1} - -********** composition on both sides of a statement - IN: base>. %0.90;0.90% {0 : 1} - - IN: <(/,neutralization,_,base) --> ?1>? {0 : 2} - -4 - - OUT: <(/,neutralization,_,base) --> (/,neutralization,_,soda)>. %0.90;0.73% {4 : 1} - diff --git a/nars-dist/Examples/Example-NAL4-in.txt b/nars-dist/Examples/Example-NAL4-in.txt new file mode 100644 index 00000000..0f4eaad3 --- /dev/null +++ b/nars-dist/Examples/Example-NAL4-in.txt @@ -0,0 +1,49 @@ +********** structural transformation + IN: <(*,acid,base) --> reaction>. %1.00;0.90% {0 : 1} +1 + OUT: (/,reaction,_,base)>. %1.00;0.90% {0 : 1} +1 + OUT: (/,acid,_,reaction)>. %1.00;0.90% {0 : 1} +********** structural transformation + IN: (/,reaction,_,base)>. %1.00;0.90% {0 : 1} +4 + OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {0 : 1} +1 + OUT: (/,acid,_,reaction)>. %1.00;0.90% {0 : 1} +********** structural transformation + IN: (/,acid,_,reaction)>. %1.00;0.90% {0 : 1} +2 + OUT: (/,reaction,_,base)>. %1.00;0.90% {0 : 1} +1 + OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {0 : 1} +********** structural transformation + IN: (*,acid,base)>. %0.80;0.90% {0 : 1} +2 + OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {0 : 1} +1 + OUT: <(\,acid,_,neutralization) --> base>. %0.80;0.90% {0 : 1} +********** structural transformation + IN: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {0 : 1} +1 + OUT: (*,acid,base)>. %0.80;0.90% {0 : 1} +1 + OUT: <(\,acid,_,neutralization) --> base>. %0.80;0.90% {0 : 1} +********** structural transformation + IN: <(\,acid,_,neutralization) --> base>. %0.80;0.90% {0 : 1} +5 + OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {0 : 1} +********** composition on both sides of a statement + IN: animal>. %0.90;0.90% {0 : 1} + IN: <(*,bird,plant) --> ?1>? {0 : 2} +4 + OUT: <(*,bird,plant) --> (*,animal,plant)>. %0.90;0.73% {0 : 1} +********** composition on both sides of a statement + IN: reaction>. %0.90;0.90% {0 : 1} + IN: <(/,acid,_,neutralization) --> ?1>? {0 : 2} +4 + OUT: <(/,acid,_,neutralization) --> (/,reaction,_)>. %0.90;0.73% {0 : 1} +********** composition on both sides of a statement + IN: base>. %0.90;0.90% {0 : 1} + IN: <(/,neutralization,_,base) --> ?1>? {0 : 2} +4 + OUT: <(/,neutralization,_,base) --> (/,soda,_)>. %0.90;0.73% {0 : 1} diff --git a/nars-dist/Examples/Example-NAL4-out.txt b/nars-dist/Examples/Example-NAL4-out.txt new file mode 100644 index 00000000..1c4a9678 --- /dev/null +++ b/nars-dist/Examples/Example-NAL4-out.txt @@ -0,0 +1,53 @@ +********** structural transformation + IN: <(*,acid,base) --> reaction>. %1.00;0.90% {0 : 1} +1 + OUT: (/,reaction,_,base)>. %1.00;0.90% {0 : 1} +1 + OUT: (/,acid,_,reaction)>. %1.00;0.90% {0 : 1} +********** structural transformation + IN: (/,reaction,_,base)>. %1.00;0.90% {0 : 1} +4 + OUT: <(*,acid,base) --> reaction>. %1.00;0.90% {0 : 1} +1 + OUT: (/,acid,_,reaction)>. %1.00;0.90% {0 : 1} +********** structural transformation + IN: (/,acid,_,reaction)>. %1.00;0.90% {0 : 1} +2 + OUT: <(*,base,reaction) --> acid>. %1.00;0.90% {0 : 1} +1 + OUT: (/,base,_,acid)>. %1.00;0.90% {0 : 1} +********** structural transformation + IN: (*,acid,base)>. %0.80;0.90% {0 : 1} +2 + OUT: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {0 : 1} +1 + OUT: <(\,acid,_,neutralization) --> base>. %0.80;0.90% {0 : 1} +********** structural transformation + IN: <(\,neutralization,_,base) --> acid>. %0.80;0.90% {0 : 1} +1 + OUT: (*,acid,base)>. %0.80;0.90% {0 : 1} +1 + OUT: <(\,acid,_,neutralization) --> base>. %0.80;0.90% {0 : 1} +********** structural transformation + IN: <(\,acid,_,neutralization) --> base>. %0.80;0.90% {0 : 1} +1 + OUT: (*,base,neutralization)>. %0.80;0.90% {0 : 1} +3 + OUT: <(\,base,_,acid) --> neutralization>. %0.80;0.90% {0 : 1} +********** composition on both sides of a statement + IN: animal>. %0.90;0.90% {0 : 1} + IN: <(*,bird,plant) --> ?1>? {0 : 2} +1 + OUT: (/,?1,_,plant)>? {0 : 2} +3 + OUT: <(*,bird,plant) --> (*,animal,plant)>. %0.90;0.73% {0 : 1} +********** composition on both sides of a statement + IN: reaction>. %0.90;0.90% {0 : 1} + IN: <(/,acid,_,neutralization) --> ?1>? {0 : 2} +4 + OUT: <(/,reaction,_) --> (/,acid,_,neutralization)>. %0.90;0.73% {0 : 1} +********** composition on both sides of a statement + IN: base>. %0.90;0.90% {0 : 1} + IN: <(/,neutralization,_,base) --> ?1>? {0 : 2} +4 + OUT: <(/,neutralization,_,base) --> (/,soda,_)>. %0.90;0.73% {0 : 1} diff --git a/nars-dist/Examples/Example-NAL5-abridged.txt b/nars-dist/Examples/Example-NAL5-abridged.txt deleted file mode 100644 index 2f455d4d..00000000 --- a/nars-dist/Examples/Example-NAL5-abridged.txt +++ /dev/null @@ -1,240 +0,0 @@ -********** revision - IN: < flyer> ==> bird>>. - IN: < flyer> ==> bird>>. %0;0.6% -1 - - OUT: < flyer> ==> bird>>. %0.86;0.91% - - - -********** deduction - IN: < bird> ==> animal>>. - - IN: < flyer> ==> bird>>. -1 - - OUT: < flyer> ==> animal>>. %1.00;0.81% - -********** exemplification - IN: < flyer> ==> bird>>. - IN: < bird> ==> animal>>. -7 - - OUT: < animal> ==> flyer>>. %1.00;0.45% - - -********** induction - IN: < bird> ==> animal>>. - IN: < bird> ==> flyer>>. %0.8% - -1 - - OUT: < flyer> ==> animal>>. %1.00;0.39% - - OUT: < animal> ==> flyer>>. %0.80;0.45% - - -********** abduction - IN: < bird> ==> animal>>. %0.7% - - IN: < flyer> ==> animal>>. - -7 - - OUT: < bird> ==> flyer>>. %0.70;0.45% - - OUT: < flyer> ==> bird>>. %1.00;0.36% - - -********** detachment - IN: < bird> ==> animal>>. - IN: bird>. - -1 - - OUT: animal>. %1.00;0.81% - -********** detachment - IN: < bird> ==> animal>>. %0.7% - IN: animal>. -1 - - OUT: bird>. %1.00;0.36% - -********** comparison - IN: < bird> ==> animal>>. - IN: < bird> ==> flyer>>. %0.8% - -1 - - OUT: < animal> <=> flyer>>. %0.80;0.45% - -********** comparison - IN: < bird> ==> animal>>. %0.7% - - IN: < flyer> ==> animal>>. - -7 - - OUT: < bird> <=> flyer>>. %0.70;0.45% - -********** analogy - IN: < bird> ==> animal>>. - - IN: < bird> <=> flyer>>. %0.8% - -1 - - OUT: < flyer> ==> animal>>. %0.80;0.65% - -********** analogy - IN: bird>. - IN: < bird> <=> flyer>>. %0.8% - -1 - - OUT: flyer>. %0.80;0.65% - -********** resemblance - IN: < animal> <=> bird>>. - - IN: < bird> <=> flyer>>. %0.8% - -7 - - OUT: < animal> <=> flyer>>. %0.80;0.81% - -********** conversions between Implication and Equivalence - IN: < flyer> ==> bird>>. %0.9% - - IN: < bird> ==> flyer>>. %0.9% - -5 - - OUT: < bird> <=> flyer>>. %0.81;0.83% - -********** compound composition, two premises - IN: < bird> ==> animal>>. - IN: < bird> ==> flyer>>. %0.8% -1 - - OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% - - OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% - OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% - - OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% - - -********** compound decomposition, two premises - IN: < bird> ==> (&&, animal>, flyer>)>. %0% - IN: < bird> ==> flyer>>. -6 - OUT: < bird> ==> animal>>. %0.00;0.81% - - -********** compound decomposition, two premises - IN: (&&, flyer>, swimmer>). %0% - IN: flyer>. - -1 - OUT: swimmer>. %0.00;0.81% - -********** compound decomposition, two premises - IN: (||, flyer>, swimmer>). - IN: swimmer>. %0% -1 - OUT: flyer>. %1.00;0.81% - -********** compound composition, one premises - IN: flyer>. %0.9% - - IN: (||, flyer>, swimmer>)? -6 - - OUT: (||, flyer>, swimmer>). %0.90;0.73% - -********** compound decomposition, one premises - IN: (&&, flyer>, swimmer>). %0.9% - -3 - - OUT: flyer>. %0.90;0.73% -4 - - OUT: swimmer>. %0.90;0.73% - -********** negation - IN: (--, flyer>). %0.1% - -2 - OUT: flyer>. %0.90;0.90% - -********** negation - IN: flyer>. %0.9% - IN: (--, flyer>)? -15 - OUT: (--, flyer>). %0.10;0.90% - -********** contraposition - IN: <(--, bird>) ==> flyer>>. %0.1% - - IN: <(--, flyer>) ==> bird>>? -15 - OUT: <(--, flyer>) ==> bird>>. %0.00;0.45% - -********** conditional deduction - IN: <(&&,a,b) ==> c>. - - IN: a. -1 - - OUT: c>. %1.00;0.81% - -********** conditional deduction - IN: <(&&,a,b,c) ==> d>. - IN: a. -1 - - OUT: <(&&,b,c) ==> d>. %1.00;0.81% - -********** conditional deduction - IN: <(&&,a,b) ==> c>. - - IN: a>. -1 - - OUT: <(&&,b,d) ==> c>. %1.00;0.81% - -********** conditional abduction - IN: c>. - IN: <(&&,a,b) ==> c>. %0.4% - -5 - OUT: a. %1.00;0.24% - -********** conditional abduction - IN: <(&&,b,c) ==> d>. - - IN: <(&&,a,b,c) ==> d>. -3 - - OUT: a. %1.00;0.45% - -********** conditional abduction - IN: <(&&,b,d) ==> c>. %0.4% - - IN: <(&&,a,b) ==> c>. - -6 - OUT: d>. %1.00;0.24% - OUT: a>. %0.40;0.45% - -********** conditional induction - IN: <(&&,a,b) ==> c>. - - IN: d>. %0.7% - -1 - - OUT: <(&&,b,d) ==> c>. %1.00;0.36% diff --git a/nars-dist/Examples/Example-NAL5-in.txt b/nars-dist/Examples/Example-NAL5-in.txt new file mode 100644 index 00000000..19cc2984 --- /dev/null +++ b/nars-dist/Examples/Example-NAL5-in.txt @@ -0,0 +1,151 @@ +********** revision + IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 1} + IN: < flyer> ==> bird>>. %0.00;0.60% {0 : 2} +1 + OUT: < flyer> ==> bird>>. %0.86;0.91% {1 : 1;2} +********** deduction + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 2} +1 + OUT: < flyer> ==> animal>>. %1.00;0.81% {1 : 2;1} +********** exemplification + IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 1} + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 2} +7 + OUT: < animal> ==> flyer>>. %1.00;0.45% {7 : 2;1} +********** induction + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} +1 + OUT: < flyer> ==> animal>>. %1.00;0.39% {1 : 2;1} + OUT: < animal> ==> flyer>>. %0.80;0.45% {1 : 2;1} +********** abduction + IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} + IN: < flyer> ==> animal>>. %1.00;0.90% {0 : 2} +7 + OUT: < bird> ==> flyer>>. %0.70;0.45% {7 : 2;1} + OUT: < flyer> ==> bird>>. %1.00;0.36% {7 : 2;1} +********** detachment + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +1 + OUT: animal>. %1.00;0.81% {1 : 1;2} +********** detachment + IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} + IN: animal>. %1.00;0.90% {0 : 2} +1 + OUT: bird>. %1.00;0.36% {1 : 1;2} +********** comparison + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} +1 + OUT: < animal> <=> flyer>>. %0.80;0.45% {1 : 2;1} +********** comparison + IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} + IN: < flyer> ==> animal>>. %1.00;0.90% {0 : 2} +7 + OUT: < bird> <=> flyer>>. %0.70;0.45% {7 : 2;1} +********** analogy + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} +1 + OUT: < flyer> ==> animal>>. %0.80;0.65% {1 : 2;1} +********** analogy + IN: bird>. %1.00;0.90% {0 : 1} + IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} +1 + OUT: flyer>. %0.80;0.65% {1 : 2;1} +********** resemblance + IN: < animal> <=> bird>>. %1.00;0.90% {0 : 1} + IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} +7 + OUT: < animal> <=> flyer>>. %0.80;0.81% {7 : 2;1} +********** conversions between Implication and Equivalence + IN: < flyer> ==> bird>>. %0.90;0.90% {0 : 1} + IN: < bird> ==> flyer>>. %0.90;0.90% {0 : 2} +5 + OUT: < bird> <=> flyer>>. %0.81;0.83% {5 : 2;1} +********** compound composition, two premises + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} +1 + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {1 : 2;1} + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% {1 : 2;1} + OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {1 : 2;1} + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% {1 : 2;1} +********** compound decomposition, two premises + IN: < bird> ==> (&&, animal>, flyer>)>. %0.00;0.90% {0 : 1} + IN: < bird> ==> flyer>>. %1.00;0.90% {0 : 2} +6 + OUT: < bird> ==> animal>>. %0.00;0.81% {6 : 2;1} +********** compound decomposition, two premises + IN: (&&, flyer>, swimmer>). %0.00;0.90% {0 : 1} + IN: flyer>. %1.00;0.90% {0 : 2} +1 + OUT: swimmer>. %0.00;0.81% {1 : 1;2} +********** compound decomposition, two premises + IN: (||, flyer>, swimmer>). %1.00;0.90% {0 : 1} + IN: swimmer>. %0.00;0.90% {0 : 2} +1 + OUT: flyer>. %1.00;0.81% {1 : 1;2} +********** compound composition, one premises + IN: flyer>. %0.90;0.90% {0 : 1} + IN: (||, flyer>, swimmer>)? {0 : 2} +6 + OUT: (||, flyer>, swimmer>). %0.90;0.73% {0 : 1} +********** compound decomposition, one premises + IN: (&&, flyer>, swimmer>). %0.90;0.90% {0 : 1} +3 + OUT: flyer>. %0.90;0.73% {0 : 1} +4 + OUT: swimmer>. %0.90;0.73% {0 : 1} +********** negation + IN: (--, flyer>). %0.10;0.90% {0 : 1} +2 + OUT: flyer>. %0.90;0.90% {0 : 1} +********** negation + IN: flyer>. %0.90;0.90% {0 : 1} + IN: (--, flyer>)? {0 : 2} +12 + OUT: (--, flyer>). %0.10;0.90% {0 : 1} +********** contraposition + IN: <(--, bird>) ==> flyer>>. %0.10;0.90% {0 : 1} + IN: <(--, flyer>) ==> bird>>? {0 : 2} +15 + OUT: <(--, flyer>) ==> bird>>. %0.00;0.45% {0 : 1} +********** conditional deduction + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} + IN: a. %1.00;0.90% {0 : 2} +1 + OUT: c>. %1.00;0.81% {1 : 1;2} +********** conditional deduction + IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {0 : 1} + IN: a. %1.00;0.90% {0 : 2} +1 + OUT: <(&&,b,c) ==> d>. %1.00;0.81% {1 : 1;2} +********** conditional deduction + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} + IN: a>. %1.00;0.90% {0 : 2} +1 + OUT: <(&&,b,d) ==> c>. %1.00;0.81% {1 : 1;2} +********** conditional abduction + IN: c>. %1.00;0.90% {0 : 1} + IN: <(&&,a,b) ==> c>. %0.40;0.90% {0 : 2} +5 + OUT: a. %1.00;0.24% {5 : 2;1} +********** conditional abduction + IN: <(&&,b,c) ==> d>. %1.00;0.90% {0 : 1} + IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {0 : 2} +3 + OUT: a. %1.00;0.45% {3 : 2;1} +********** conditional abduction + IN: <(&&,b,d) ==> c>. %0.40;0.90% {0 : 1} + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 2} +6 + OUT: d>. %1.00;0.24% {6 : 2;1} + OUT: a>. %0.40;0.45% {6 : 2;1} +********** conditional induction + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} + IN: d>. %0.70;0.90% {0 : 2} +1 + OUT: <(&&,b,d) ==> c>. %1.00;0.36% {1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL5-complete.txt b/nars-dist/Examples/Example-NAL5-out.txt similarity index 88% rename from nars-dist/Examples/Example-NAL5-complete.txt rename to nars-dist/Examples/Example-NAL5-out.txt index d3694dab..2c1f1171 100644 --- a/nars-dist/Examples/Example-NAL5-complete.txt +++ b/nars-dist/Examples/Example-NAL5-out.txt @@ -1,345 +1,185 @@ ********** revision - IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 1} - - IN: < flyer> ==> bird>>. %0.00;0.60% {0 : 2} - -1 - - OUT: < flyer> ==> bird>>. %0.86;0.91% {1 : 1;2} - + IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 1} + IN: < flyer> ==> bird>>. %0.00;0.60% {0 : 2} +1 + OUT: < flyer> ==> bird>>. %0.86;0.91% {1 : 1;2} ********** deduction - IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - - IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 2} - -1 - - OUT: < flyer> ==> animal>>. %1.00;0.81% {1 : 2;1} - - OUT: < animal> ==> flyer>>. %1.00;0.45% {1 : 2;1} - + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 2} +1 + OUT: < flyer> ==> animal>>. %1.00;0.81% {1 : 2;1} + OUT: < animal> ==> flyer>>. %1.00;0.45% {1 : 2;1} ********** exemplification - IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 1} - - IN: < bird> ==> animal>>. %1.00;0.90% {0 : 2} - -7 - - OUT: < flyer> ==> animal>>. %1.00;0.81% {7 : 2;1} - - OUT: < animal> ==> flyer>>. %1.00;0.45% {7 : 2;1} - + IN: < flyer> ==> bird>>. %1.00;0.90% {0 : 1} + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 2} +7 + OUT: < flyer> ==> animal>>. %1.00;0.81% {7 : 2;1} + OUT: < animal> ==> flyer>>. %1.00;0.45% {7 : 2;1} ********** induction - IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - - IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} - -1 - - OUT: < flyer> ==> animal>>. %1.00;0.39% {1 : 2;1} - - OUT: < animal> ==> flyer>>. %0.80;0.45% {1 : 2;1} - - OUT: < animal> <=> flyer>>. %0.80;0.45% {1 : 2;1} - - OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {1 : 2;1} - - OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% {1 : 2;1} - - OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {1 : 2;1} - - OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% {1 : 2;1} - - OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.83% {1 : 2;1} - + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} +1 + OUT: < flyer> ==> animal>>. %1.00;0.39% {1 : 2;1} + OUT: < animal> ==> flyer>>. %0.80;0.45% {1 : 2;1} + OUT: < animal> <=> flyer>>. %0.80;0.45% {1 : 2;1} + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {1 : 2;1} + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% {1 : 2;1} + OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {1 : 2;1} + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% {1 : 2;1} + OUT: (&&,< bird> ==> animal>>,< bird> ==> flyer>>). %0.80;0.83% {1 : 2;1} ********** abduction - IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} - - IN: < flyer> ==> animal>>. %1.00;0.90% {0 : 2} - -7 - - OUT: < bird> ==> flyer>>. %0.70;0.45% {7 : 2;1} - - OUT: < flyer> ==> bird>>. %1.00;0.36% {7 : 2;1} - - OUT: < bird> <=> flyer>>. %0.70;0.45% {7 : 2;1} - - OUT: <(&&, bird>, flyer>) ==> animal>>. %1.00;0.96% {7 : 2;1} - - OUT: <(||, bird>, flyer>) ==> animal>>. %0.70;0.84% {7 : 2;1} - - OUT: <(||,(--, flyer>), bird>) ==> animal>>. %0.00;0.93% {7 : 2;1} - - OUT: <(||,(--, bird>), flyer>) ==> animal>>. %0.30;0.87% {7 : 2;1} - - OUT: (&&,< bird> ==> #1()>,< flyer> ==> #1()>). %0.70;0.84% {7 : 2;1} - + IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} + IN: < flyer> ==> animal>>. %1.00;0.90% {0 : 2} +7 + OUT: < bird> ==> flyer>>. %0.70;0.45% {7 : 2;1} + OUT: < flyer> ==> bird>>. %1.00;0.36% {7 : 2;1} + OUT: < bird> <=> flyer>>. %0.70;0.45% {7 : 2;1} + OUT: <(&&, bird>, flyer>) ==> animal>>. %1.00;0.96% {7 : 2;1} + OUT: <(||, bird>, flyer>) ==> animal>>. %0.70;0.84% {7 : 2;1} + OUT: <(||,(--, flyer>), bird>) ==> animal>>. %0.00;0.93% {7 : 2;1} + OUT: <(||,(--, bird>), flyer>) ==> animal>>. %0.30;0.87% {7 : 2;1} + OUT: (&&,< bird> ==> animal>>,< flyer> ==> animal>>). %0.70;0.84% {7 : 2;1} ********** detachment - IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - - IN: bird>. %1.00;0.90% {0 : 2} - -1 - - OUT: animal>. %1.00;0.81% {1 : 1;2} - + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +1 + OUT: animal>. %1.00;0.81% {1 : 1;2} ********** detachment - IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} - - IN: animal>. %1.00;0.90% {0 : 2} - -1 - - OUT: bird>. %1.00;0.36% {1 : 1;2} - + IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} + IN: animal>. %1.00;0.90% {0 : 2} +1 + OUT: bird>. %1.00;0.36% {1 : 1;2} ********** comparison - IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - - IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} - -1 - - OUT: < flyer> ==> animal>>. %1.00;0.39% {1 : 2;1} - - OUT: < animal> ==> flyer>>. %0.80;0.45% {1 : 2;1} - - OUT: < animal> <=> flyer>>. %0.80;0.45% {1 : 2;1} - - OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {1 : 2;1} - - OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% {1 : 2;1} - - OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {1 : 2;1} - - OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% {1 : 2;1} - - OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.83% {1 : 2;1} - + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} +1 + OUT: < flyer> ==> animal>>. %1.00;0.39% {1 : 2;1} + OUT: < animal> ==> flyer>>. %0.80;0.45% {1 : 2;1} + OUT: < animal> <=> flyer>>. %0.80;0.45% {1 : 2;1} + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {1 : 2;1} + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% {1 : 2;1} + OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {1 : 2;1} + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% {1 : 2;1} + OUT: (&&,< bird> ==> animal>>,< bird> ==> flyer>>). %0.80;0.83% {1 : 2;1} ********** comparison - IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} - - IN: < flyer> ==> animal>>. %1.00;0.90% {0 : 2} - -7 - - OUT: < bird> ==> flyer>>. %0.70;0.45% {7 : 2;1} - - OUT: < flyer> ==> bird>>. %1.00;0.36% {7 : 2;1} - - OUT: < bird> <=> flyer>>. %0.70;0.45% {7 : 2;1} - - OUT: <(&&, bird>, flyer>) ==> animal>>. %1.00;0.96% {7 : 2;1} - - OUT: <(||, bird>, flyer>) ==> animal>>. %0.70;0.84% {7 : 2;1} - - OUT: <(||,(--, flyer>), bird>) ==> animal>>. %0.00;0.93% {7 : 2;1} - - OUT: <(||,(--, bird>), flyer>) ==> animal>>. %0.30;0.87% {7 : 2;1} - - OUT: (&&,< bird> ==> #1()>,< flyer> ==> #1()>). %0.70;0.84% {7 : 2;1} - + IN: < bird> ==> animal>>. %0.70;0.90% {0 : 1} + IN: < flyer> ==> animal>>. %1.00;0.90% {0 : 2} +7 + OUT: < bird> ==> flyer>>. %0.70;0.45% {7 : 2;1} + OUT: < flyer> ==> bird>>. %1.00;0.36% {7 : 2;1} + OUT: < bird> <=> flyer>>. %0.70;0.45% {7 : 2;1} + OUT: <(&&, bird>, flyer>) ==> animal>>. %1.00;0.96% {7 : 2;1} + OUT: <(||, bird>, flyer>) ==> animal>>. %0.70;0.84% {7 : 2;1} + OUT: <(||,(--, flyer>), bird>) ==> animal>>. %0.00;0.93% {7 : 2;1} + OUT: <(||,(--, bird>), flyer>) ==> animal>>. %0.30;0.87% {7 : 2;1} + OUT: (&&,< bird> ==> animal>>,< flyer> ==> animal>>). %0.70;0.84% {7 : 2;1} ********** analogy - IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - - IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} - -1 - - OUT: < flyer> ==> animal>>. %0.80;0.65% {1 : 2;1} - + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} +1 + OUT: < flyer> ==> animal>>. %0.80;0.65% {1 : 2;1} ********** analogy - IN: bird>. %1.00;0.90% {0 : 1} - - IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} - -1 - - OUT: flyer>. %0.80;0.65% {1 : 2;1} - + IN: bird>. %1.00;0.90% {0 : 1} + IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} +1 + OUT: flyer>. %0.80;0.65% {1 : 2;1} ********** resemblance - IN: < animal> <=> bird>>. %1.00;0.90% {0 : 1} - - IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} - -7 - - OUT: < animal> <=> flyer>>. %0.80;0.81% {7 : 2;1} - + IN: < animal> <=> bird>>. %1.00;0.90% {0 : 1} + IN: < bird> <=> flyer>>. %0.80;0.90% {0 : 2} +7 + OUT: < animal> <=> flyer>>. %0.80;0.81% {7 : 2;1} ********** conversions between Implication and Equivalence - IN: < flyer> ==> bird>>. %0.90;0.90% {0 : 1} - - IN: < bird> ==> flyer>>. %0.90;0.90% {0 : 2} - -5 - - OUT: < bird> <=> flyer>>. %0.81;0.83% {5 : 2;1} - + IN: < flyer> ==> bird>>. %0.90;0.90% {0 : 1} + IN: < bird> ==> flyer>>. %0.90;0.90% {0 : 2} +5 + OUT: < bird> <=> flyer>>. %0.81;0.83% {5 : 2;1} ********** compound composition, two premises - IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} - - IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} - -1 - - OUT: < flyer> ==> animal>>. %1.00;0.39% {1 : 2;1} - - OUT: < animal> ==> flyer>>. %0.80;0.45% {1 : 2;1} - - OUT: < animal> <=> flyer>>. %0.80;0.45% {1 : 2;1} - - OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {1 : 2;1} - - OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% {1 : 2;1} - - OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {1 : 2;1} - - OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% {1 : 2;1} - - OUT: (&&,<#1() ==> animal>>,<#1() ==> flyer>>). %0.80;0.83% {1 : 2;1} - + IN: < bird> ==> animal>>. %1.00;0.90% {0 : 1} + IN: < bird> ==> flyer>>. %0.80;0.90% {0 : 2} +1 + OUT: < flyer> ==> animal>>. %1.00;0.39% {1 : 2;1} + OUT: < animal> ==> flyer>>. %0.80;0.45% {1 : 2;1} + OUT: < animal> <=> flyer>>. %0.80;0.45% {1 : 2;1} + OUT: < bird> ==> (||, animal>, flyer>)>. %1.00;0.97% {1 : 2;1} + OUT: < bird> ==> (&&, animal>, flyer>)>. %0.80;0.83% {1 : 2;1} + OUT: < bird> ==> (&&,(--, flyer>), animal>)>. %0.20;0.88% {1 : 2;1} + OUT: < bird> ==> (&&,(--, animal>), flyer>)>. %0.00;0.92% {1 : 2;1} + OUT: (&&,< bird> ==> animal>>,< bird> ==> flyer>>). %0.80;0.83% {1 : 2;1} ********** compound decomposition, two premises - IN: < bird> ==> (&&, animal>, flyer>)>. %0.00;0.90% {0 : 1} - - IN: < bird> ==> flyer>>. %1.00;0.90% {0 : 2} - -6 - - OUT: < bird> ==> animal>>. %0.00;0.81% {6 : 2;1} - + IN: < bird> ==> (&&, animal>, flyer>)>. %0.00;0.90% {0 : 1} + IN: < bird> ==> flyer>>. %1.00;0.90% {0 : 2} +6 + OUT: < bird> ==> animal>>. %0.00;0.81% {6 : 2;1} ********** compound decomposition, two premises - IN: (&&, flyer>, swimmer>). %0.00;0.90% {0 : 1} - - IN: flyer>. %1.00;0.90% {0 : 2} - -1 - - OUT: swimmer>. %0.00;0.81% {1 : 1;2} - + IN: (&&, flyer>, swimmer>). %0.00;0.90% {0 : 1} + IN: flyer>. %1.00;0.90% {0 : 2} +1 + OUT: swimmer>. %0.00;0.81% {1 : 1;2} ********** compound decomposition, two premises - IN: (||, flyer>, swimmer>). %1.00;0.90% {0 : 1} - - IN: swimmer>. %0.00;0.90% {0 : 2} - -1 - - OUT: flyer>. %1.00;0.81% {1 : 1;2} - + IN: (||, flyer>, swimmer>). %1.00;0.90% {0 : 1} + IN: swimmer>. %0.00;0.90% {0 : 2} +1 + OUT: flyer>. %1.00;0.81% {1 : 1;2} ********** compound composition, one premises - IN: flyer>. %0.90;0.90% {0 : 1} - - IN: (||, flyer>, swimmer>)? {0 : 2} - -6 - - OUT: (||, flyer>, swimmer>). %0.90;0.73% {6 : 1} - + IN: flyer>. %0.90;0.90% {0 : 1} + IN: (||, flyer>, swimmer>)? {0 : 2} +6 + OUT: (||, flyer>, swimmer>). %0.90;0.73% {0 : 1} ********** compound decomposition, one premises - IN: (&&, flyer>, swimmer>). %0.90;0.90% {0 : 1} - -3 - - OUT: flyer>. %0.90;0.73% {3 : 1} - -4 - - OUT: swimmer>. %0.90;0.73% {7 : 1} - + IN: (&&, flyer>, swimmer>). %0.90;0.90% {0 : 1} +3 + OUT: flyer>. %0.90;0.73% {0 : 1} +4 + OUT: swimmer>. %0.90;0.73% {0 : 1} ********** negation - IN: (--, flyer>). %0.10;0.90% {0 : 1} - -2 - - OUT: flyer>. %0.90;0.90% {2 : 1} - + IN: (--, flyer>). %0.10;0.90% {0 : 1} +2 + OUT: flyer>. %0.90;0.90% {0 : 1} ********** negation - IN: flyer>. %0.90;0.90% {0 : 1} - - IN: (--, flyer>)? {0 : 2} - -3 - - OUT: flyer>? {3 : 2} - -5 - - OUT: flyer>? {8 : 2} - -7 - - OUT: (--, flyer>). %0.10;0.90% {15 : 1} - + IN: flyer>. %0.90;0.90% {0 : 1} + IN: (--, flyer>)? {0 : 2} +3 + OUT: flyer>? {0 : 2} +9 + OUT: (--, flyer>). %0.10;0.90% {0 : 1} ********** contraposition - IN: <(--, bird>) ==> flyer>>. %0.10;0.90% {0 : 1} - - IN: <(--, flyer>) ==> bird>>? {0 : 2} - -15 - - OUT: <(--, flyer>) ==> bird>>. %0.00;0.45% {15 : 1} - + IN: <(--, bird>) ==> flyer>>. %0.10;0.90% {0 : 1} + IN: <(--, flyer>) ==> bird>>? {0 : 2} +15 + OUT: <(--, flyer>) ==> bird>>. %0.00;0.45% {0 : 1} ********** conditional deduction - IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} - - IN: a. %1.00;0.90% {0 : 2} - -1 - - OUT: c>. %1.00;0.81% {1 : 1;2} - + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} + IN: a. %1.00;0.90% {0 : 2} +1 + OUT: c>. %1.00;0.81% {1 : 1;2} ********** conditional deduction - IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {0 : 1} - - IN: a. %1.00;0.90% {0 : 2} - -1 - - OUT: <(&&,b,c) ==> d>. %1.00;0.81% {1 : 1;2} - + IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {0 : 1} + IN: a. %1.00;0.90% {0 : 2} +1 + OUT: <(&&,b,c) ==> d>. %1.00;0.81% {1 : 1;2} ********** conditional deduction - IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} - - IN: a>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(&&,b,d) ==> c>. %1.00;0.81% {1 : 1;2} - + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} + IN: a>. %1.00;0.90% {0 : 2} +1 + OUT: <(&&,b,d) ==> c>. %1.00;0.81% {1 : 1;2} ********** conditional abduction - IN: c>. %1.00;0.90% {0 : 1} - - IN: <(&&,a,b) ==> c>. %0.40;0.90% {0 : 2} - -5 - - OUT: a. %1.00;0.24% {5 : 2;1} - + IN: c>. %1.00;0.90% {0 : 1} + IN: <(&&,a,b) ==> c>. %0.40;0.90% {0 : 2} +5 + OUT: a. %1.00;0.24% {5 : 2;1} ********** conditional abduction - IN: <(&&,b,c) ==> d>. %1.00;0.90% {0 : 1} - - IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {0 : 2} - -3 - - OUT: a. %1.00;0.45% {3 : 2;1} - + IN: <(&&,b,c) ==> d>. %1.00;0.90% {0 : 1} + IN: <(&&,a,b,c) ==> d>. %1.00;0.90% {0 : 2} +3 + OUT: a. %1.00;0.45% {3 : 2;1} ********** conditional abduction - IN: <(&&,b,d) ==> c>. %0.40;0.90% {0 : 1} - - IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 2} - -6 - - OUT: d>. %1.00;0.24% {6 : 2;1} - - OUT: a>. %0.40;0.45% {6 : 2;1} - + IN: <(&&,b,d) ==> c>. %0.40;0.90% {0 : 1} + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 2} +6 + OUT: d>. %1.00;0.24% {6 : 2;1} + OUT: a>. %0.40;0.45% {6 : 2;1} ********** conditional induction - IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} - - IN: d>. %0.70;0.90% {0 : 2} - -1 - - OUT: <(&&,b,d) ==> c>. %1.00;0.36% {1 : 1;2} - + IN: <(&&,a,b) ==> c>. %1.00;0.90% {0 : 1} + IN: d>. %0.70;0.90% {0 : 2} +1 + OUT: <(&&,b,d) ==> c>. %1.00;0.36% {1 : 1;2} diff --git a/nars-dist/Examples/Example-NAL6-abridged.txt b/nars-dist/Examples/Example-NAL6-abridged.txt deleted file mode 100644 index ad7b2555..00000000 --- a/nars-dist/Examples/Example-NAL6-abridged.txt +++ /dev/null @@ -1,225 +0,0 @@ -********** variable unification - IN: <<#x --> bird> ==> <#x --> flyer>>. - IN: <<#y --> bird> ==> <#y --> flyer>>. %0; 0.7% -1 - - OUT: <<#1 --> bird> ==> <#1 --> flyer>>. %0.79;0.92% - -********** variable unification - IN: (&&, <#w() --> bird>, <#w() --> flyer>). - IN: (&&, <#x() --> bird>, <#x() --> flyer>). %0.1; 0.7% -10 - OUT: [NO REVISION] - -********** variable unification - IN: <<#x --> bird> ==> <#x --> animal>>. - IN: <<#y --> robin> ==> <#y --> bird>>. -3 - - OUT: <<#1 --> robin> ==> <#1 --> animal>>. %1.00;0.81% - - OUT: <<#1 --> animal> ==> <#1 --> robin>>. %1.00;0.45% - - -********** variable unification - IN: < #y> ==> #y>>. - IN: < #w> ==> #w>>. %0.7% -3 - - OUT: < #1> ==> #1>>. %1.00;0.36% - - OUT: < #1> ==> #1>>. %0.70;0.45% - - OUT: < #1> <=> #1>>. %0.70;0.45% - - OUT: <(&&, #1>, #1>) ==> #1>>. %1.00;0.96% - - OUT: <(||, #1>, #1>) ==> #1>>. %0.70;0.84% - - OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.30;0.87% - - OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.00;0.93% - - -********** variable unification - IN: <(&&, A, <#x --> b>) ==> <#x --> c>>. - IN: <<#y --> d> ==> <#y --> b>>. -1 - - OUT: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %1.00;0.81% - - -********** variable unification - IN: <(&&, A, <#x --> b>, E) ==> <#x --> c>>. - IN: <(&&,<#y --> d>,A) ==> <#y --> c>>. %0.8% -2 - - OUT: <(&&,<#1 --> b>,E) ==> <#1 --> d>>. %1.00;0.39% - - OUT: <<#1 --> d> ==> (&&,<#1 --> b>,E)>. %0.80;0.45% - - -********** variable unification - IN: <(&&, B, <#x --> a>) ==> <#x --> c>>. %0.7% - IN: <<#y --> a> ==> <#y --> d>>. -1 - - OUT: <(&&,<#1 --> d>,B) ==> <#1 --> c>>. %0.70;0.45% - - -********** variable elimination - IN: <<#x --> bird> ==> <#x --> animal>>. - IN: bird>. -2 - - OUT: animal>. %1.00;0.81% - - -********** variable elimination - IN: <<#x --> bird> ==> <#x --> animal>>. - IN: animal>. -2 - - OUT: bird>. %1.00;0.45% - - -********** variable elimination - IN: <<#x --> bird> <=> <#x --> animal>>. - IN: bird>. -2 - - OUT: animal>. %1.00;0.81% - - -********** variable elimination - IN: (&&,<#x() --> bird>,<#x() --> swimmer>). - IN: bird>. %0.9% -2 - - OUT: swimmer>. %0.90;0.43% - - -********** variable elimination - IN: <(&&, <#x --> a>, B) ==> <#x --> c>>. - IN: a>. -1 - - OUT: c>>. %1.00;0.81% - - -********** variable elimination - IN: <(&&, A, <#x --> b>, C) ==> <#x --> d>>. - IN: b>. -1 - - OUT: <(&&,A,C) ==> d>>. %1.00;0.81% - - -********** multiple variable elimination - IN: <(&&,<#x --> key>,<#y --> lock>) ==> <#y --> (/,open,#x,_)>>. - IN: . -12 - OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.81% - - -********** multiple variable elimination - IN: <<#x --> lock> ==> (&&,<#x --> (/,open,#y(#x),_)>,<#y(#x) --> key>)>. - IN: . -3 - - OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %1.00;0.81% - - -********** multiple variable elimination - IN: (&&,<#x() --> lock>,<<#y --> key> ==> <#x() --> (/,open,#y,_)>>). - IN: . %0.9% -3 - - OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %0.90;0.43% - - -********** multiple variable elimination - IN: (&&,<#x() --> lock>,<#y() --> key>,<#x() --> (/,open,#y(),_)>). - IN: . %0.9% -5 - - OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %0.90;0.43% - - -********** variable introduction - IN: bird>. - IN: swimmer>. %0.8% -1 - - OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.39% - - OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.80;0.45% - - OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.80;0.45% - - OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.80;0.83% - - -********** variable introduction - IN: swimmer>. - IN: swimmer>. %0.8% -1 - - OUT: < #1> ==> #1>>. %1.00;0.39% - - OUT: < #1> ==> #1>>. %0.80;0.45% - - OUT: < #1> <=> #1>>. %0.80;0.45% - - OUT: (&&, #1()>, #1()>). %0.80;0.83% - - -********** multiple variables introduction - IN: key>. - IN: (/, open, _, lock1)>. -13 - OUT: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.45% - - OUT: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.81% - - -********** multiple variables introduction - IN: <<#x --> key> ==> <#x --> (/,open,_,lock1)>>. -3 - - OUT: <<#1 --> key> ==> <(*,#1,lock1) --> open>>. %1.00;0.90% - -1 - - OUT: <<#1 --> key> ==> (/,open,#1,_)>>. %1.00;0.90% - -********** multiple variables introduction - IN: (&&,<#x() --> (/,open,_,lock1)>,<#x() --> key>). - -2 - - OUT: (&&,<#1() --> key>,<(*,#1(),lock1) --> open>). %1.00;0.90% -1 - - OUT: (&&,<#1() --> key>, (/,open,#1(),_)>). %1.00;0.90% - -********** multiple variables introduction - IN: <<#x --> key> ==> (/,open,#x,_)>>. %0.8% - - IN: lock>. -1 - - OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.39% - - OUT: <<#1 --> key> ==> (&&,<#2(#1) --> (/,open,#1,_)>,<#2(#1) --> lock>)>. %0.80;0.83% - - -********** multiple variables introduction - IN: (&&, (/,open,#x(),_)>,<#x() --> key>). %0.8% - IN: lock>. -1 - - OUT: (&&,<#1() --> key>,<<#2 --> lock> ==> <#2 --> (/,open,#1(),_)>>). %1.00;0.39% - - OUT: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %0.80;0.83% - diff --git a/nars-dist/Examples/Example-NAL6-complete.txt b/nars-dist/Examples/Example-NAL6-complete.txt deleted file mode 100644 index e3c64d66..00000000 --- a/nars-dist/Examples/Example-NAL6-complete.txt +++ /dev/null @@ -1,313 +0,0 @@ -********** variable unification - IN: <<#1 --> bird> ==> <#1 --> flyer>>. %1.00;0.90% {0 : 1} - - IN: <<#1 --> bird> ==> <#1 --> flyer>>. %0.00;0.70% {0 : 2} - -1 - - OUT: <<#1 --> bird> ==> <#1 --> flyer>>. %0.79;0.92% {1 : 1;2} - -********** variable unification - IN: (&&,<#1() --> bird>,<#1() --> flyer>). %1.00;0.90% {0 : 1} - - IN: (&&,<#1() --> bird>,<#1() --> flyer>). %0.10;0.70% {0 : 2} - -10 -********** variable unification - IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {0 : 1} - - IN: <<#1 --> robin> ==> <#1 --> bird>>. %1.00;0.90% {0 : 2} - -3 - - OUT: <<#1 --> robin> ==> <#1 --> animal>>. %1.00;0.81% {3 : 2;1} - - OUT: <<#1 --> animal> ==> <#1 --> robin>>. %1.00;0.45% {3 : 2;1} - -********** variable unification - IN: < #1> ==> #1>>. %1.00;0.90% {0 : 1} - - IN: < #1> ==> #1>>. %0.70;0.90% {0 : 2} - -3 - - OUT: < #1> ==> #1>>. %1.00;0.36% {3 : 2;1} - - OUT: < #1> ==> #1>>. %0.70;0.45% {3 : 2;1} - - OUT: < #1> <=> #1>>. %0.70;0.45% {3 : 2;1} - - OUT: <(&&, #1>, #1>) ==> #1>>. %1.00;0.96% {3 : 2;1} - - OUT: <(||, #1>, #1>) ==> #1>>. %0.70;0.84% {3 : 2;1} - - OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.30;0.87% {3 : 2;1} - - OUT: <(||,(--, #1>), #1>) ==> #1>>. %0.00;0.93% {3 : 2;1} - -********** variable unification - IN: <(&&,<#1 --> b>,A) ==> <#1 --> c>>. %1.00;0.90% {0 : 1} - - IN: <<#1 --> d> ==> <#1 --> b>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %1.00;0.81% {1 : 2;1} - -********** variable unification - IN: <(&&,<#1 --> b>,A,E) ==> <#1 --> c>>. %1.00;0.90% {0 : 1} - - IN: <(&&,<#1 --> d>,A) ==> <#1 --> c>>. %0.80;0.90% {0 : 2} - -2 - - OUT: <(&&,<#1 --> b>,E) ==> <#1 --> d>>. %1.00;0.39% {2 : 1;2} - - OUT: <<#1 --> d> ==> (&&,<#1 --> b>,E)>. %0.80;0.45% {2 : 1;2} - -********** variable unification - IN: <(&&,<#1 --> a>,B) ==> <#1 --> c>>. %0.70;0.90% {0 : 1} - - IN: <<#1 --> a> ==> <#1 --> d>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(&&,<#1 --> d>,B) ==> <#1 --> c>>. %0.70;0.45% {1 : 2;1} - -********** variable elimination - IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {0 : 1} - - IN: bird>. %1.00;0.90% {0 : 2} - -2 - - OUT: animal>. %1.00;0.81% {2 : 2;1} - -********** variable elimination - IN: <<#1 --> bird> ==> <#1 --> animal>>. %1.00;0.90% {0 : 1} - - IN: animal>. %1.00;0.90% {0 : 2} - -2 - - OUT: bird>. %1.00;0.45% {2 : 2;1} - -********** variable elimination - IN: <<#1 --> animal> <=> <#1 --> bird>>. %1.00;0.90% {0 : 1} - - IN: bird>. %1.00;0.90% {0 : 2} - -2 - - OUT: animal>. %1.00;0.81% {2 : 2;1} - -********** variable elimination - IN: (&&,<#1() --> bird>,<#1() --> swimmer>). %1.00;0.90% {0 : 1} - - IN: bird>. %0.90;0.90% {0 : 2} - -2 - - OUT: swimmer>. %0.90;0.43% {2 : 2;1} - -********** variable elimination - IN: <(&&,<#1 --> a>,B) ==> <#1 --> c>>. %1.00;0.90% {0 : 1} - - IN: a>. %1.00;0.90% {0 : 2} - -1 - - OUT: c>>. %1.00;0.81% {1 : 2;1} - -********** variable elimination - IN: <(&&,<#1 --> b>,A,C) ==> <#1 --> d>>. %1.00;0.90% {0 : 1} - - IN: b>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(&&,A,C) ==> d>>. %1.00;0.81% {1 : 1;2} - -********** multiple variable elimination - IN: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.90% {0 : 1} - - IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} - -7 - - OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <(*,#1,#2) --> open>>. %1.00;0.90% {7 : 1} - -5 - - OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %1.00;0.81% {12 : 1;2} - -********** multiple variable elimination - IN: <<#1 --> lock> ==> (&&,<#1 --> (/,open,#2(#1),_)>,<#2(#1) --> key>)>. %1.00;0.90% {0 : 1} - - IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} - -3 - - OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %1.00;0.81% {3 : 2;1} - -********** multiple variable elimination - IN: (&&,<#1() --> lock>,<<#2 --> key> ==> <#1() --> (/,open,#2,_)>>). %1.00;0.90% {0 : 1} - - IN: <{lock1} --> lock>. %0.90;0.90% {0 : 2} - -3 - - OUT: <<#1 --> key> ==> <{lock1} --> (/,open,#1,_)>>. %0.90;0.43% {3 : 2;1} - -********** multiple variable elimination - IN: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %1.00;0.90% {0 : 1} - - IN: <{lock1} --> lock>. %0.90;0.90% {0 : 2} - -5 - - OUT: (&&,<#1() --> key>,<{lock1} --> (/,open,#1(),_)>). %0.90;0.43% {5 : 2;1} - -********** variable introduction - IN: bird>. %1.00;0.90% {0 : 1} - - IN: swimmer>. %0.80;0.90% {0 : 2} - -1 - - OUT: bird>. %1.00;0.39% {1 : 2;1} - - OUT: swimmer>. %0.80;0.45% {1 : 2;1} - - OUT: swimmer>. %0.80;0.45% {1 : 2;1} - - OUT: <<#1 --> swimmer> ==> <#1 --> bird>>. %1.00;0.39% {1 : 2;1} - - OUT: <<#1 --> bird> ==> <#1 --> swimmer>>. %0.80;0.45% {1 : 2;1} - - OUT: <<#1 --> bird> <=> <#1 --> swimmer>>. %0.80;0.45% {1 : 2;1} - - OUT: (|,bird,swimmer)>. %1.00;0.97% {1 : 2;1} - - OUT: (&,bird,swimmer)>. %0.80;0.83% {1 : 2;1} - - OUT: (-,bird,swimmer)>. %0.20;0.88% {1 : 2;1} - - OUT: (-,swimmer,bird)>. %0.00;0.92% {1 : 2;1} - - OUT: (&&,<#1() --> bird>,<#1() --> swimmer>). %0.80;0.83% {1 : 2;1} - -********** variable introduction - IN: swimmer>. %1.00;0.90% {0 : 1} - - IN: swimmer>. %0.80;0.90% {0 : 2} - -1 - - OUT: swan>. %1.00;0.39% {1 : 2;1} - - OUT: gull>. %0.80;0.45% {1 : 2;1} - - OUT: swan>. %0.80;0.45% {1 : 2;1} - - OUT: < #1> ==> #1>>. %1.00;0.39% {1 : 2;1} - - OUT: < #1> ==> #1>>. %0.80;0.45% {1 : 2;1} - - OUT: < #1> <=> #1>>. %0.80;0.45% {1 : 2;1} - - OUT: <(&,gull,swan) --> swimmer>. %1.00;0.97% {1 : 2;1} - - OUT: <(|,gull,swan) --> swimmer>. %0.80;0.83% {1 : 2;1} - - OUT: <(~,gull,swan) --> swimmer>. %0.20;0.88% {1 : 2;1} - - OUT: <(~,swan,gull) --> swimmer>. %0.00;0.92% {1 : 2;1} - - OUT: (&&, #1()>, #1()>). %0.80;0.83% {1 : 2;1} - -********** multiple variables introduction - IN: key>. %1.00;0.90% {0 : 1} - - IN: (/,open,_,lock1)>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(*,key1,lock1) --> open>. %1.00;0.90% {1 : 2} - -1 - - OUT: (/,open,key1,_)>. %1.00;0.90% {2 : 2} - -3 - - OUT: <(*,key1,lock1) --> (*,key,lock1)>. %1.00;0.81% {5 : 1} - -8 - - OUT: <(/,open,_,lock1) --> key>. %1.00;0.45% {13 : 2;1} - - OUT: (/,open,_,lock1)>. %1.00;0.45% {13 : 2;1} - - OUT: <(/,open,_,lock1) <-> key>. %1.00;0.45% {13 : 2;1} - - OUT: <<#1 --> (/,open,_,lock1)> ==> <#1 --> key>>. %1.00;0.45% {13 : 2;1} - - OUT: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.45% {13 : 2;1} - - OUT: <<#1 --> (/,open,_,lock1)> <=> <#1 --> key>>. %1.00;0.45% {13 : 2;1} - - OUT: (|,(/,open,_,lock1),key)>. %1.00;0.99% {13 : 2;1} - - OUT: (&,(/,open,_,lock1),key)>. %1.00;0.81% {13 : 2;1} - - OUT: (-,key,(/,open,_,lock1))>. %0.00;0.90% {13 : 2;1} - - OUT: (-,(/,open,_,lock1),key)>. %0.00;0.90% {13 : 2;1} - - OUT: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.81% {13 : 2;1} - -********** multiple variables introduction - IN: <<#1 --> key> ==> <#1 --> (/,open,_,lock1)>>. %1.00;0.90% {0 : 1} - -3 - - OUT: <<#1 --> key> ==> <(*,#1,lock1) --> open>>. %1.00;0.90% {3 : 1} - -1 - - OUT: <<#1 --> key> ==> (/,open,#1,_)>>. %1.00;0.90% {4 : 1} - -********** multiple variables introduction - IN: (&&,<#1() --> (/,open,_,lock1)>,<#1() --> key>). %1.00;0.90% {0 : 1} - -2 - - OUT: (&&,<#1() --> key>,<(*,#1(),lock1) --> open>). %1.00;0.90% {2 : 1} - -1 - - OUT: (&&,<#1() --> key>, (/,open,#1(),_)>). %1.00;0.90% {3 : 1} - -********** multiple variables introduction - IN: <<#1 --> key> ==> (/,open,#1,_)>>. %0.80;0.90% {0 : 1} - - IN: lock>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(&&,<#1 --> key>,<#2 --> lock>) ==> <#2 --> (/,open,#1,_)>>. %1.00;0.39% {1 : 2;1} - - OUT: <<#1 --> key> ==> (&&,<#2(#1) --> (/,open,#1,_)>,<#2(#1) --> lock>)>. %0.80;0.83% {1 : 2;1} - -********** multiple variables introduction - IN: (&&,<#1() --> key>, (/,open,#1(),_)>). %0.80;0.90% {0 : 1} - - IN: lock>. %1.00;0.90% {0 : 2} - -1 - - OUT: (&&,<#1() --> key>,<<#2 --> lock> ==> <#2 --> (/,open,#1(),_)>>). %1.00;0.39% {1 : 2;1} - - OUT: (&&,<#1() --> (/,open,#2(),_)>,<#2() --> key>,<#1() --> lock>). %0.80;0.83% {1 : 2;1} - diff --git a/nars-dist/Examples/Example-NAL6-in.txt b/nars-dist/Examples/Example-NAL6-in.txt new file mode 100644 index 00000000..6f8bb716 --- /dev/null +++ b/nars-dist/Examples/Example-NAL6-in.txt @@ -0,0 +1,143 @@ +********** variable unification + IN: <<$1 --> bird> ==> <$1 --> flyer>>. %1.00;0.90% {0 : 1} + IN: <<$1 --> bird> ==> <$1 --> flyer>>. %0.00;0.70% {0 : 2} +1 + OUT: <<$1 --> bird> ==> <$1 --> flyer>>. %0.79;0.92% {1 : 1;2} +********** variable unification + IN: <<$1 --> bird> ==> <$1 --> animal>>. %1.00;0.90% {0 : 1} + IN: <<$1 --> robin> ==> <$1 --> bird>>. %1.00;0.90% {0 : 2} +3 + OUT: <<$1 --> robin> ==> <$1 --> animal>>. %1.00;0.81% {3 : 2;1} + OUT: <<$1 --> animal> ==> <$1 --> robin>>. %1.00;0.45% {3 : 2;1} +********** variable unification + IN: <<$1 --> swan> ==> <$1 --> bird>>. %0.90;0.80% {0 : 1} + IN: <<$1 --> swan> ==> <$1 --> swimmer>>. %0.80;0.90% {0 : 2} +3 + OUT: <<$1 --> swimmer> ==> <$1 --> bird>>. %0.90;0.37% {3 : 2;1} + OUT: <<$1 --> bird> ==> <$1 --> swimmer>>. %0.80;0.39% {3 : 2;1} + OUT: <<$1 --> bird> <=> <$1 --> swimmer>>. %0.73;0.41% {3 : 2;1} + OUT: <<$1 --> swan> ==> (||,<$1 --> bird>,<$1 --> swimmer>)>. %0.98;0.72% {3 : 2;1} + OUT: <<$1 --> swan> ==> (&&,<$1 --> bird>,<$1 --> swimmer>)>. %0.72;0.72% {3 : 2;1} +********** variable unification + IN: < $1> ==> $1>>. %0.80;0.80% {0 : 1} + IN: < $1> ==> $1>>. %0.70;0.90% {0 : 2} +3 + OUT: < $1> ==> $1>>. %0.80;0.34% {3 : 2;1} + OUT: < $1> ==> $1>>. %0.70;0.37% {3 : 2;1} + OUT: < $1> <=> $1>>. %0.60;0.40% {3 : 2;1} + OUT: <(&&, $1>, $1>) ==> $1>>. %0.94;0.72% {3 : 2;1} + OUT: <(||, $1>, $1>) ==> $1>>. %0.56;0.72% {3 : 2;1} +********** variable unification + IN: <(&&,<$1 --> b>,A) ==> <$1 --> c>>. %1.00;0.90% {0 : 1} + IN: <<$1 --> d> ==> <$1 --> b>>. %1.00;0.90% {0 : 2} +1 + OUT: <(&&,<$1 --> d>,A) ==> <$1 --> c>>. %1.00;0.81% {1 : 2;1} +********** variable unification + IN: <(&&,<$1 --> b>,A,E) ==> <$1 --> c>>. %1.00;0.90% {0 : 1} + IN: <(&&,<$1 --> d>,A) ==> <$1 --> c>>. %0.80;0.90% {0 : 2} +2 + OUT: <(&&,<$1 --> b>,E) ==> <$1 --> d>>. %1.00;0.39% {2 : 1;2} + OUT: <<$1 --> d> ==> (&&,<$1 --> b>,E)>. %0.80;0.45% {2 : 1;2} +********** variable unification + IN: <(&&,<$1 --> a>,B) ==> <$1 --> c>>. %0.70;0.90% {0 : 1} + IN: <<$1 --> a> ==> <$1 --> d>>. %1.00;0.90% {0 : 2} +1 + OUT: <(&&,<$1 --> d>,B) ==> <$1 --> c>>. %0.70;0.45% {1 : 2;1} +****** variable elimination + IN: <<$1 --> bird> ==> <$1 --> animal>>. %1.00;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +2 + OUT: animal>. %1.00;0.81% {2 : 2;1} +********** variable elimination + IN: <<$1 --> bird> ==> <$1 --> animal>>. %1.00;0.90% {0 : 1} + IN: animal>. %1.00;0.90% {0 : 2} +2 + OUT: bird>. %1.00;0.45% {2 : 2;1} +********** variable elimination + IN: <<$1 --> animal> <=> <$1 --> bird>>. %1.00;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +2 + OUT: animal>. %1.00;0.81% {2 : 2;1} +********** variable elimination + IN: (&&,<#1 --> bird>,<#1 --> swimmer>). %1.00;0.90% {0 : 1} + IN: bird>. %0.90;0.90% {0 : 2} +2 + OUT: swimmer>. %0.90;0.43% {2 : 2;1} +********** variable elimination + IN: <(&&,<$1 --> a>,B) ==> <$1 --> c>>. %1.00;0.90% {0 : 1} + IN: a>. %1.00;0.90% {0 : 2} +1 + OUT: c>>. %1.00;0.81% {1 : 2;1} +********** variable elimination + IN: <(&&,<$1 --> b>,A,C) ==> <$1 --> d>>. %1.00;0.90% {0 : 1} + IN: b>. %1.00;0.90% {0 : 2} +1 + OUT: <(&&,A,C) ==> d>>. %1.00;0.81% {1 : 1;2} +********** multiple variable elimination + IN: <(&&,<$1 --> key>,<$2 --> lock>) ==> <$2 --> (/,open,$1,_)>>. %1.00;0.90% {0 : 1} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} +13 + OUT: <<$1 --> key> ==> <{lock1} --> (/,open,$1,_)>>. %1.00;0.81% {13 : 1;2} +********** multiple variable elimination + IN: <<$1 --> lock> ==> (&&,<#2 --> key>,<$1 --> (/,open,#2,_)>)>. %1.00;0.90% {0 : 1} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} +3 + OUT: (&&,<#1 --> key>,<{lock1} --> (/,open,#1,_)>). %1.00;0.81% {3 : 2;1} +********** multiple variable elimination + IN: <<$1 --> lock> ==> (&&,<#2 --> key>,<$1 --> (/,open,#2,_)>)>. %1.00;0.90% {0 : 1} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} +3 + OUT: (&&,<#1 --> key>,<{lock1} --> (/,open,#1,_)>). %1.00;0.81% {3 : 2;1} +********** multiple variable elimination + IN: (&&,<#1 --> lock>,<<$2 --> key> ==> <#1 --> (/,open,$2,_)>>). %1.00;0.90% {0 : 1} + IN: <{lock1} --> lock>. %0.90;0.90% {0 : 2} +3 + OUT: <<$1 --> key> ==> <{lock1} --> (/,open,$1,_)>>. %0.90;0.43% {3 : 2;1} +********** multiple variable elimination + IN: (&&,<#1 --> (/,open,#2,_)>,<#1 --> lock>,<#2 --> key>). %1.00;0.90% {0 : 1} + IN: <{lock1} --> lock>. %0.90;0.90% {0 : 2} +5 + OUT: (&&,<#1 --> key>,<{lock1} --> (/,open,#1,_)>). %0.90;0.43% {5 : 2;1} +********** variable introduction + IN: bird>. %1.00;0.90% {0 : 1} + IN: swimmer>. %0.80;0.90% {0 : 2} +1 + OUT: <<$1 --> bird> ==> <$1 --> swimmer>>. %0.80;0.45% {1 : 2;1} + OUT: <<$1 --> swimmer> ==> <$1 --> bird>>. %1.00;0.39% {1 : 2;1} + OUT: <<$1 --> bird> <=> <$1 --> swimmer>>. %0.80;0.45% {1 : 2;1} + OUT: (&&,<#1 --> bird>,<#1 --> swimmer>). %0.80;0.81% {1 : 2;1} +********** variable introduction + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: swimmer>. %0.80;0.90% {0 : 2} +1 + OUT: < $1> ==> $1>>. %0.80;0.45% {1 : 2;1} + OUT: < $1> ==> $1>>. %1.00;0.39% {1 : 2;1} + OUT: < $1> <=> $1>>. %0.80;0.45% {1 : 2;1} + OUT: (&&, #1>, #1>). %0.80;0.81% {1 : 2;1} + +********** multiple variables introduction + IN: <{key1} --> (/,open,_,{lock1})>. %1.00;0.90% {0 : 1} + IN: <{key1} --> key>. %1.00;0.90% {0 : 2} +2 + OUT: <<$1 --> key> ==> <$1 --> (/,open,_,{lock1})>>. %1.00;0.45% {2 : 1;2} + OUT: (&&,<#1 --> (/,open,_,{lock1})>,<#1 --> key>). %1.00;0.81% {2 : 1;2} +********** multiple variables introduction + IN: <<$1 --> key> ==> <$1 --> (/,open,_,{lock1})>>. %1.00;0.90% {0 : 1} +6 + OUT: <<$1 --> key> ==> <{lock1} --> (/,open,$1,_)>>. %1.00;0.90% {0 : 1} +********** multiple variables introduction + IN: (&&,<#1 --> (/,open,_,{lock1})>,<#1 --> key>). %1.00;0.90% {0 : 1} +5 + OUT: (&&,<#1 --> key>,<{lock1} --> (/,open,#1,_)>). %1.00;0.90% {0 : 1} +********** multiple variables introduction + IN: <<$1 --> key> ==> <{lock1} --> (/,open,$1,_)>>. %0.80;0.90% {0 : 1} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} +2 + OUT: <(&&,<$1 --> key>,<$2 --> lock>) ==> <$2 --> (/,open,$1,_)>>. %1.00;0.39% {2 : 2;1} + OUT: (&&,<#1 --> lock>,<<$2 --> key> ==> <#1 --> (/,open,$2,_)>>). %0.80;0.81% {2 : 2;1} +********** multiple variables introduction + IN: (&&,<#1 --> key>,<{lock1} --> (/,open,#1,_)>). %0.80;0.90% {0 : 1} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} +2 + OUT: (&&,<#1 --> key>,<<$2 --> lock> ==> <$2 --> (/,open,#1,_)>>). %1.00;0.39% {2 : 2;1} + OUT: (&&,<#1 --> key>,<#2 --> (/,open,#1,_)>,<#2 --> lock>). %0.80;0.81% {2 : 2;1} diff --git a/nars-dist/Examples/Example-NAL6-out.txt b/nars-dist/Examples/Example-NAL6-out.txt new file mode 100644 index 00000000..ca20cd27 --- /dev/null +++ b/nars-dist/Examples/Example-NAL6-out.txt @@ -0,0 +1,165 @@ +********** variable unification + IN: <<$1 --> bird> ==> <$1 --> flyer>>. %1.00;0.90% {0 : 1} + IN: <<$1 --> bird> ==> <$1 --> flyer>>. %0.00;0.70% {0 : 2} +1 + OUT: <<$1 --> bird> ==> <$1 --> flyer>>. %0.79;0.92% {1 : 1;2} +********** variable unification + IN: <<$1 --> bird> ==> <$1 --> animal>>. %1.00;0.90% {0 : 1} + IN: <<$1 --> robin> ==> <$1 --> bird>>. %1.00;0.90% {0 : 2} +3 + OUT: <<$1 --> robin> ==> <$1 --> animal>>. %1.00;0.81% {3 : 2;1} + OUT: <<$1 --> animal> ==> <$1 --> robin>>. %1.00;0.45% {3 : 2;1} +********** variable unification + IN: <<$1 --> swan> ==> <$1 --> bird>>. %0.90;0.80% {0 : 1} + IN: <<$1 --> swan> ==> <$1 --> swimmer>>. %0.80;0.90% {0 : 2} +3 + OUT: <<$1 --> swimmer> ==> <$1 --> bird>>. %0.90;0.37% {3 : 2;1} + OUT: <<$1 --> bird> ==> <$1 --> swimmer>>. %0.80;0.39% {3 : 2;1} + OUT: <<$1 --> bird> <=> <$1 --> swimmer>>. %0.73;0.41% {3 : 2;1} + OUT: <<$1 --> swan> ==> (||,<$1 --> bird>,<$1 --> swimmer>)>. %0.98;0.72% {3 : 2;1} + OUT: <<$1 --> swan> ==> (&&,<$1 --> bird>,<$1 --> swimmer>)>. %0.72;0.72% {3 : 2;1} +********** variable unification + IN: < $1> ==> $1>>. %0.80;0.80% {0 : 1} + IN: < $1> ==> $1>>. %0.70;0.90% {0 : 2} +3 + OUT: < $1> ==> $1>>. %0.80;0.34% {3 : 2;1} + OUT: < $1> ==> $1>>. %0.70;0.37% {3 : 2;1} + OUT: < $1> <=> $1>>. %0.60;0.40% {3 : 2;1} + OUT: <(&&, $1>, $1>) ==> $1>>. %0.94;0.72% {3 : 2;1} + OUT: <(||, $1>, $1>) ==> $1>>. %0.56;0.72% {3 : 2;1} +********** variable unification + IN: <(&&,<$1 --> b>,A) ==> <$1 --> c>>. %1.00;0.90% {0 : 1} + IN: <<$1 --> d> ==> <$1 --> b>>. %1.00;0.90% {0 : 2} +1 + OUT: <(&&,<$1 --> d>,A) ==> <$1 --> c>>. %1.00;0.81% {1 : 2;1} +********** variable unification + IN: <(&&,<$1 --> b>,A,E) ==> <$1 --> c>>. %1.00;0.90% {0 : 1} + IN: <(&&,<$1 --> d>,A) ==> <$1 --> c>>. %0.80;0.90% {0 : 2} +2 + OUT: <(&&,<$1 --> b>,E) ==> <$1 --> d>>. %1.00;0.39% {2 : 1;2} + OUT: <<$1 --> d> ==> (&&,<$1 --> b>,E)>. %0.80;0.45% {2 : 1;2} +********** variable unification + IN: <(&&,<$1 --> a>,B) ==> <$1 --> c>>. %0.70;0.90% {0 : 1} + IN: <<$1 --> a> ==> <$1 --> d>>. %1.00;0.90% {0 : 2} +1 + OUT: <(&&,<$1 --> d>,B) ==> <$1 --> c>>. %0.70;0.45% {1 : 2;1} +****** variable elimination + IN: <<$1 --> bird> ==> <$1 --> animal>>. %1.00;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +2 + OUT: animal>. %1.00;0.81% {2 : 2;1} +********** variable elimination + IN: <<$1 --> bird> ==> <$1 --> animal>>. %1.00;0.90% {0 : 1} + IN: animal>. %1.00;0.90% {0 : 2} +2 + OUT: bird>. %1.00;0.45% {2 : 2;1} +********** variable elimination + IN: <<$1 --> animal> <=> <$1 --> bird>>. %1.00;0.90% {0 : 1} + IN: bird>. %1.00;0.90% {0 : 2} +2 + OUT: animal>. %1.00;0.81% {2 : 2;1} +********** variable elimination + IN: (&&,<#1 --> bird>,<#1 --> swimmer>). %1.00;0.90% {0 : 1} + IN: bird>. %0.90;0.90% {0 : 2} +2 + OUT: swimmer>. %0.90;0.43% {2 : 2;1} +********** variable elimination + IN: <(&&,<$1 --> a>,B) ==> <$1 --> c>>. %1.00;0.90% {0 : 1} + IN: a>. %1.00;0.90% {0 : 2} +1 + OUT: c>>. %1.00;0.81% {1 : 2;1} +********** variable elimination + IN: <(&&,<$1 --> b>,A,C) ==> <$1 --> d>>. %1.00;0.90% {0 : 1} + IN: b>. %1.00;0.90% {0 : 2} +1 + OUT: <(&&,A,C) ==> d>>. %1.00;0.81% {1 : 1;2} +********** multiple variable elimination + IN: <(&&,<$1 --> key>,<$2 --> lock>) ==> <$2 --> (/,open,$1,_)>>. %1.00;0.90% {0 : 1} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} +7 + OUT: <(&&,<$1 --> key>,<$2 --> lock>) ==> <(*,$1,$2) --> open>>. %1.00;0.90% {0 : 1} +6 + OUT: <<$1 --> key> ==> <{lock1} --> (/,open,$1,_)>>. %1.00;0.81% {13 : 1;2} +********** multiple variable elimination + IN: <<$1 --> lock> ==> (&&,<#2 --> key>,<$1 --> (/,open,#2,_)>)>. %1.00;0.90% {0 : 1} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} +3 + OUT: (&&,<#1 --> key>,<{lock1} --> (/,open,#1,_)>). %1.00;0.81% {3 : 2;1} +********** multiple variable elimination + IN: <<$1 --> lock> ==> (&&,<#2 --> key>,<$1 --> (/,open,#2,_)>)>. %1.00;0.90% {0 : 1} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} +3 + OUT: (&&,<#1 --> key>,<{lock1} --> (/,open,#1,_)>). %1.00;0.81% {3 : 2;1} +********** multiple variable elimination + IN: (&&,<#1 --> lock>,<<$2 --> key> ==> <#1 --> (/,open,$2,_)>>). %1.00;0.90% {0 : 1} + IN: <{lock1} --> lock>. %0.90;0.90% {0 : 2} +3 + OUT: <<$1 --> key> ==> <{lock1} --> (/,open,$1,_)>>. %0.90;0.43% {3 : 2;1} +********** multiple variable elimination + IN: (&&,<#1 --> (/,open,#2,_)>,<#1 --> lock>,<#2 --> key>). %1.00;0.90% {0 : 1} + IN: <{lock1} --> lock>. %0.90;0.90% {0 : 2} +5 + OUT: (&&,<#1 --> key>,<{lock1} --> (/,open,#1,_)>). %0.90;0.43% {5 : 2;1} +********** variable introduction + IN: bird>. %1.00;0.90% {0 : 1} + IN: swimmer>. %0.80;0.90% {0 : 2} +1 + OUT: bird>. %1.00;0.39% {1 : 2;1} + OUT: swimmer>. %0.80;0.45% {1 : 2;1} + OUT: swimmer>. %0.80;0.45% {1 : 2;1} + OUT: (|,bird,swimmer)>. %1.00;0.81% {1 : 2;1} + OUT: (&,bird,swimmer)>. %0.80;0.81% {1 : 2;1} + OUT: <<$1 --> bird> ==> <$1 --> swimmer>>. %0.80;0.45% {1 : 2;1} + OUT: <<$1 --> swimmer> ==> <$1 --> bird>>. %1.00;0.39% {1 : 2;1} + OUT: <<$1 --> bird> <=> <$1 --> swimmer>>. %0.80;0.45% {1 : 2;1} + OUT: (&&,<#1 --> bird>,<#1 --> swimmer>). %0.80;0.81% {1 : 2;1} +********** variable introduction + IN: swimmer>. %1.00;0.90% {0 : 1} + IN: swimmer>. %0.80;0.90% {0 : 2} +1 + OUT: swan>. %1.00;0.39% {1 : 2;1} + OUT: gull>. %0.80;0.45% {1 : 2;1} + OUT: swan>. %0.80;0.45% {1 : 2;1} + OUT: <(&,gull,swan) --> swimmer>. %1.00;0.81% {1 : 2;1} + OUT: <(|,gull,swan) --> swimmer>. %0.80;0.81% {1 : 2;1} + OUT: < $1> ==> $1>>. %0.80;0.45% {1 : 2;1} + OUT: < $1> ==> $1>>. %1.00;0.39% {1 : 2;1} + OUT: < $1> <=> $1>>. %0.80;0.45% {1 : 2;1} + OUT: (&&, #1>, #1>). %0.80;0.81% {1 : 2;1} +********** multiple variables introduction + IN: <{key1} --> (/,open,_,{lock1})>. %1.00;0.90% {0 : 1} + IN: <{key1} --> key>. %1.00;0.90% {0 : 2} +2 + OUT: <(/,open,_,{lock1}) --> key>. %1.00;0.45% {2 : 1;2} + OUT: (/,open,_,{lock1})>. %1.00;0.45% {2 : 1;2} + OUT: <(/,open,_,{lock1}) <-> key>. %1.00;0.45% {2 : 1;2} + OUT: <{key1} --> (|,(/,open,_,{lock1}),key)>. %1.00;0.81% {2 : 1;2} + OUT: <{key1} --> (&,(/,open,_,{lock1}),key)>. %1.00;0.81% {2 : 1;2} + OUT: <<$1 --> key> ==> <$1 --> (/,open,_,{lock1})>>. %1.00;0.45% {2 : 1;2} + OUT: <<$1 --> (/,open,_,{lock1})> ==> <$1 --> key>>. %1.00;0.45% {2 : 1;2} + OUT: <<$1 --> (/,open,_,{lock1})> <=> <$1 --> key>>. %1.00;0.45% {2 : 1;2} + OUT: (&&,<#1 --> (/,open,_,{lock1})>,<#1 --> key>). %1.00;0.81% {2 : 1;2} +********** multiple variables introduction + IN: <<$1 --> key> ==> <$1 --> (/,open,_,{lock1})>>. %1.00;0.90% {0 : 1} +4 + OUT: <<$1 --> key> ==> <(*,$1,{lock1}) --> open>>. %1.00;0.90% {0 : 1} +2 + OUT: <<$1 --> key> ==> <{lock1} --> (/,open,$1,_)>>. %1.00;0.90% {0 : 1} +********** multiple variables introduction + IN: (&&,<#1 --> (/,open,_,{lock1})>,<#1 --> key>). %1.00;0.90% {0 : 1} +3 + OUT: (&&,<#1 --> key>,<(*,#1,{lock1}) --> open>). %1.00;0.90% {0 : 1} +2 + OUT: (&&,<#1 --> key>,<{lock1} --> (/,open,#1,_)>). %1.00;0.90% {0 : 1} +********** multiple variables introduction + IN: <<$1 --> key> ==> <{lock1} --> (/,open,$1,_)>>. %0.80;0.90% {0 : 1} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} +2 + OUT: <(&&,<$1 --> key>,<$2 --> lock>) ==> <$2 --> (/,open,$1,_)>>. %1.00;0.39% {2 : 2;1} + OUT: (&&,<#1 --> lock>,<<$2 --> key> ==> <#1 --> (/,open,$2,_)>>). %0.80;0.81% {2 : 2;1} +********** multiple variables introduction + IN: (&&,<#1 --> key>,<{lock1} --> (/,open,#1,_)>). %0.80;0.90% {0 : 1} + IN: <{lock1} --> lock>. %1.00;0.90% {0 : 2} +2 + OUT: (&&,<#1 --> key>,<<$2 --> lock> ==> <$2 --> (/,open,#1,_)>>). %1.00;0.39% {2 : 2;1} + OUT: (&&,<#1 --> key>,<#2 --> (/,open,#1,_)>,<#2 --> lock>). %0.80;0.81% {2 : 2;1} diff --git a/nars-dist/Examples/Example-NAL7-abridged.txt b/nars-dist/Examples/Example-NAL7-abridged.txt deleted file mode 100644 index e5c8c50b..00000000 --- a/nars-dist/Examples/Example-NAL7-abridged.txt +++ /dev/null @@ -1,102 +0,0 @@ - -********** temporal deduction/explification - IN: <<(*, #x, room_101) --> enter> =\> <(*, #x, door_101) --> open>>. %0.9% - IN: <<(*, #y, door_101) --> open> =\> <(*, #y, key_101) --> hold>>. %0.8% -14 - OUT: <<(*,#1,room_101) --> enter> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% - OUT: <<(*,#1,key_101) --> hold> =\> <(*,#1,room_101) --> enter>>. %1.00;0.37% - -********** temporal induction/comparison - IN: <<(*, #x, door_101) --> open> =/> <(*, #x, room_101) --> enter>>. %0.9% - IN: <<(*, #y, door_101) --> open> =\> <(*, #y, key_101) --> hold>>. %0.8% -14 - OUT: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %0.90;0.39% - OUT: <<(*,#1,room_101) --> enter> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% - OUT: <<(*,#1,room_101) --> enter> <=> <(*,#1,key_101) --> hold>>. %0.73;0.44% - -********** temporal analogy - IN: <<(*, #x, door_101) --> open> =/> <(*, #x, room_101) --> enter>>. %0.95% - IN: <<(*, #x, room_101) --> enter> <=> <(*, #x, corridor_100) --> leave>>. -13 - OUT: <<(*,#1,door_101) --> open> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.81% - -********** inference on tense - IN: <<(*, #x, key_101) --> hold> =/> <(*, #x, room_101) --> enter>>. - IN: <(*, John, key_101) --> hold>. :/: -20 - - OUT: <(*,John,room_101) --> enter>. :\: %1.00;0.81% - -********** inference on tense - IN: <<(*,#x,key_101) --> hold> =/> <(*,#x,room_101) --> enter>>. - - IN: <(*,John,room_101) --> enter>. :|: -19 - OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.45% {19 : -1 : 1;2} - - -********** inference on tense - IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. - - IN: <(*,John,key_101) --> hold>. :|: -2 - OUT: <(*,John,room_101) --> enter>. :\: %1.00;0.81% - -********** inference on tense - IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. %1.00;0.90% {0: 1} - - IN: <(*,John,room_101) --> enter>. :\: %1.00;0.90% {0: 2} - -2 - OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.45% - -********** induction on events - IN: <(*,John,door_101) --> open>. :|: -1 - - IN: <(*,John,room_101) --> enter>. :|: -1 - - OUT: <<(*,John,room_101) --> enter> =\> <(*,John,door_101) --> open>>. :\: %1.00;0.45% - OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% - OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% - -********** induction on events - IN: <(*,John,door_101) --> open>. :|: -1 - - IN: <(*,John,room_101) --> enter>. :|: %0% - -1 - - OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :\: %0.00;0.45% - OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :\: %0.00;0.45% - -********** induction on events - IN: (/,open,_,door_101)>. :|: -1 - - IN: (/,enter,_,room_101)>. :|: -1 - - OUT: <<#1 --> (/,enter,_,room_101)> =\> <#1 --> (/,open,_,door_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: <<#1 --> (/,open,_,door_101)> =/> <#1 --> (/,enter,_,room_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} - OUT: <<#1 --> (/,open,_,door_101)> <#1 --> (/,enter,_,room_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} - -********** induction on events - IN: <(*,John,key_101) --> hold>. :|: -1 - IN: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: -1 - - OUT: <(&/,<(*,John,key_101) --> hold>,<(*,John,door_101) --> open>) =/> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% - -********** updating and revision - IN: <(*,John,key_101) --> hold>. :|: -1 - IN: <(*,John,key_101) --> hold>. :|: %0% -1 - IN: <(*,John,key_101) --> hold>? :|: -1 - OUT: <(*,John,key_101) --> hold>. :\: %0.09;0.91% - diff --git a/nars-dist/Examples/Example-NAL7-complete.txt b/nars-dist/Examples/Example-NAL7-complete.txt deleted file mode 100644 index 0fd5e97c..00000000 --- a/nars-dist/Examples/Example-NAL7-complete.txt +++ /dev/null @@ -1,294 +0,0 @@ -********** temporal deduction/explification - IN: <<(*,#1,room_101) --> enter> =\> <(*,#1,door_101) --> open>>. %0.90;0.90% {0 : 1} - - IN: <<(*,#1,door_101) --> open> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {0 : 2} - -3 - - OUT: < (/,enter,#1,_)> =\> <(*,#1,door_101) --> open>>. %0.90;0.90% {3 : 1} - -2 - - OUT: <<(*,#1,door_101) --> open> =\> (/,hold,#1,_)>>. %0.80;0.90% {5 : 2} - -2 - - OUT: <<(*,#1,room_101) --> enter> =\> (/,open,#1,_)>>. %0.90;0.90% {7 : 1} - -3 - - OUT: < (/,open,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {10 : 2} - -3 - - OUT: < (/,enter,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% {13 : 2;1} - - OUT: <<(*,#1,key_101) --> hold> =\> (/,enter,#1,_)>>. %1.00;0.37% {13 : 2;1} - -1 - - OUT: <<(*,#1,room_101) --> enter> =\> <(*,#1,key_101) --> hold>>. %0.72;0.58% {14 : 2;1} - - OUT: <<(*,#1,key_101) --> hold> =\> <(*,#1,room_101) --> enter>>. %1.00;0.37% {14 : 2;1} - -********** temporal induction/comparison - IN: <<(*,#1,door_101) --> open> =/> <(*,#1,room_101) --> enter>>. %0.90;0.90% {0 : 1} - - IN: <<(*,#1,door_101) --> open> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {0 : 2} - -3 - - OUT: <<(*,#1,door_101) --> open> =/> (/,enter,#1,_)>>. %0.90;0.90% {3 : 1} - -2 - - OUT: <<(*,#1,door_101) --> open> =\> (/,hold,#1,_)>>. %0.80;0.90% {5 : 2} - -2 - - OUT: < (/,open,#1,_)> =/> <(*,#1,room_101) --> enter>>. %0.90;0.90% {7 : 1} - -3 - - OUT: < (/,open,#1,_)> =\> <(*,#1,key_101) --> hold>>. %0.80;0.90% {10 : 2} - -3 - - OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %0.90;0.39% {13 : 2;1} - - OUT: < (/,enter,#1,_)> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% {13 : 2;1} - - OUT: < (/,enter,#1,_)> <=> <(*,#1,key_101) --> hold>>. %0.73;0.44% {13 : 2;1} - - OUT: <<(*,#1,door_101) --> open> =/> (||,<(*,#1,key_101) --> hold>, (/,enter,#1,_)>)>. %0.98;0.96% {13 : 2;1} - - OUT: <<(*,#1,door_101) --> open> =/> (&&,<(*,#1,key_101) --> hold>, (/,enter,#1,_)>)>. %0.72;0.84% {13 : 2;1} - - OUT: <<(*,#1,door_101) --> open> =/> (&&,(--,<(*,#1,key_101) --> hold>), (/,enter,#1,_)>)>. %0.18;0.89% {13 : 2;1} - - OUT: <<(*,#1,door_101) --> open> =/> (&&,(--, (/,enter,#1,_)>),<(*,#1,key_101) --> hold>)>. %0.08;0.91% {13 : 2;1} - -1 - - OUT: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %0.90;0.39% {14 : 2;1} - - OUT: <<(*,#1,room_101) --> enter> =/> <(*,#1,key_101) --> hold>>. %0.80;0.42% {14 : 2;1} - - OUT: <<(*,#1,room_101) --> enter> <=> <(*,#1,key_101) --> hold>>. %0.73;0.44% {14 : 2;1} - - OUT: < (/,open,#1,_)> =/> (||,<(*,#1,key_101) --> hold>,<(*,#1,room_101) --> enter>)>. %0.98;0.96% {14 : 2;1} - - OUT: < (/,open,#1,_)> =/> (&&,<(*,#1,key_101) --> hold>,<(*,#1,room_101) --> enter>)>. %0.72;0.84% {14 : 2;1} - - OUT: < (/,open,#1,_)> =/> (&&,(--,<(*,#1,key_101) --> hold>),<(*,#1,room_101) --> enter>)>. %0.18;0.89% {14 : 2;1} - - OUT: < (/,open,#1,_)> =/> (&&,(--,<(*,#1,room_101) --> enter>),<(*,#1,key_101) --> hold>)>. %0.08;0.91% {14 : 2;1} - -********** temporal analogy - IN: <<(*,#1,door_101) --> open> =/> <(*,#1,room_101) --> enter>>. %0.95;0.90% {0 : 1} - - IN: <<(*,#1,corridor_100) --> leave> <=> <(*,#1,room_101) --> enter>>. %1.00;0.90% {0 : 2} - -3 - - OUT: < (/,open,#1,_)> =/> <(*,#1,room_101) --> enter>>. %0.95;0.90% {3 : 1} - -2 - - OUT: <<(*,#1,room_101) --> enter> <=> (/,leave,#1,_)>>. %1.00;0.90% {5 : 2} - -2 - - OUT: <<(*,#1,door_101) --> open> =/> (/,enter,#1,_)>>. %0.95;0.90% {7 : 1} - -3 - - OUT: <<(*,#1,corridor_100) --> leave> <=> (/,enter,#1,_)>>. %1.00;0.90% {10 : 2} - -2 - - OUT: < (/,open,#1,_)> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.81% {12 : 2;1} - -1 - - OUT: <<(*,#1,door_101) --> open> =/> <(*,#1,corridor_100) --> leave>>. %0.95;0.81% {13 : 2;1} - -********** inference on tense - IN: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {0 : 1} - IN: <(*,John,key_101) --> hold>. :/: %1.00;0.90% {0 : 1 : 2} -2 - OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %1.00;0.90% {2 : 1} -2 - OUT: (/,hold,_,key_101)>. :\: %1.00;0.90% {4 : 1 : 2} -2 - OUT: < (/,hold,#1,_)> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {6 : 1} -1 - OUT: (/,enter,John,_)>. %1.00;0.43% {7 : 2;1} -4 - OUT: (/,hold,John,_)>. :\: %1.00;0.90% {11 : 1 : 2} -1 - OUT: <(*,John,room_101) --> enter>. %1.00;0.43% {12 : 2;1} -3 - OUT: (/,enter,_,room_101)>. %1.00;0.43% {15 : 2;1} -1 - OUT: (/,enter,John,_)>. %1.00;0.43% {16 : 2;1} -1 - OUT: <(/,(*,John,room_101),John,_) --> (/,enter,John,_)>. %1.00;0.38% {17 : 2;1} -3 - OUT: <(*,John,room_101) --> enter>. :\: %1.00;0.81% {20 : 2 : 1;2} -********** inference on tense - IN: <<(*,#1,key_101) --> hold> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {0 : 1} - - IN: <(*,John,room_101) --> enter>. :|: %1.00;0.90% {0 : 0 : 2} - -2 - - OUT: < (/,hold,#1,_)> =/> <(*,#1,room_101) --> enter>>. %1.00;0.90% {2 : 1} - -2 - - OUT: (/,enter,_,room_101)>. :\: %1.00;0.90% {4 : 0 : 2} - -2 - - OUT: <<(*,#1,key_101) --> hold> =/> (/,enter,#1,_)>>. %1.00;0.90% {6 : 1} - -1 - - OUT: (/,hold,John,_)>. %1.00;0.30% {7 : 2;1} - -4 - - OUT: (/,enter,John,_)>. :\: %1.00;0.90% {11 : 0 : 2} - -1 - - OUT: <(*,John,key_101) --> hold>. %1.00;0.30% {12 : 2;1} - -4 - - OUT: (/,hold,_,key_101)>. %1.00;0.30% {16 : 2;1} - -1 - - OUT: (/,hold,John,_)>. %1.00;0.30% {17 : 2;1} - -2 - - OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.45% {19 : -1 : 1;2} - -********** inference on tense - IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. %1.00;0.90% {0 : 1} - - IN: <(*,John,key_101) --> hold>. :|: %1.00;0.90% {0 : 0 : 2} - -1 - - OUT: <(*,John,room_101) --> enter>. %1.00;0.43% {1 : 2;1} - -1 - - OUT: <(*,John,room_101) --> enter>. :\: %1.00;0.81% {2 : 1 : 1;2} - -********** inference on tense - IN: <<(*,John,key_101) --> hold> =/> <(*,John,room_101) --> enter>>. %1.00;0.90% {0 : 1} - - IN: <(*,John,room_101) --> enter>. :\: %1.00;0.90% {0 : -1 : 2} - -2 - - OUT: <(*,John,key_101) --> hold>. :\: %1.00;0.45% {2 : -2 : 1;2} - -********** induction on events - IN: <(*,John,door_101) --> open>. :|: %1.00;0.90% {0 : 0 : 1} - -1 - - OUT: (/,open,_,door_101)>. :\: %1.00;0.90% {1 : 0 : 1} - - IN: <(*,John,room_101) --> enter>. :|: %1.00;0.90% {1 : 1 : 2} - -1 - - OUT: <<(*,John,room_101) --> enter> =\> <(*,John,door_101) --> open>>. :\: %1.00;0.45% {2 : 1 : 1;2} - - OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% {2 : 1 : 1;2} - - OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% {2 : 1 : 1;2} - - OUT: (/,open,John,_)>. :\: %1.00;0.90% {2 : 0 : 1} - -********** induction on events - IN: <(*,John,door_101) --> open>. :|: %1.00;0.90% {0 : 0 : 1} - -1 - - OUT: (/,open,_,door_101)>. :\: %1.00;0.90% {1 : 0 : 1} - - IN: <(*,John,room_101) --> enter>. :|: %0.00;0.90% {1 : 1 : 2} - -1 - - OUT: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :\: %0.00;0.45% {2 : 1 : 1;2} - - OUT: <<(*,John,door_101) --> open> <(*,John,room_101) --> enter>>. :\: %0.00;0.45% {2 : 1 : 1;2} - - OUT: (/,open,John,_)>. :\: %1.00;0.90% {2 : 0 : 1} - -********** induction on events - IN: (/,open,_,door_101)>. :|: %1.00;0.90% {0 : 0 : 1} - -1 - - IN: (/,enter,_,room_101)>. :|: %1.00;0.90% {1 : 1 : 2} - -1 - - OUT: <<#1 --> (/,enter,_,room_101)> =\> <#1 --> (/,open,_,door_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} - - OUT: <<#1 --> (/,open,_,door_101)> =/> <#1 --> (/,enter,_,room_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} - - OUT: <<#1 --> (/,open,_,door_101)> <#1 --> (/,enter,_,room_101)>>. :\: %1.00;0.45% {2 : 1 : 1;2} - - OUT: <(*,John,door_101) --> open>. :\: %1.00;0.90% {2 : 0 : 1} - -********** induction on events - IN: <(*,John,key_101) --> hold>. :|: %1.00;0.90% {0 : 0 : 1} - -1 - - OUT: (/,hold,_,key_101)>. :\: %1.00;0.90% {1 : 0 : 1} - - IN: <<(*,John,door_101) --> open> =/> <(*,John,room_101) --> enter>>. :|: %1.00;0.90% {1 : 1 : 2} - -1 - - OUT: <(&/,<(*,John,key_101) --> hold>,<(*,John,door_101) --> open>) =/> <(*,John,room_101) --> enter>>. :\: %1.00;0.45% {2 : 1 : 1;2} - - OUT: (/,hold,John,_)>. :\: %1.00;0.90% {2 : 0 : 1} - -********** updating and revision - IN: <(*,John,key_101) --> hold>. :|: %1.00;0.90% {0 : 0 : 1} - -1 - - OUT: (/,hold,_,key_101)>. :\: %1.00;0.90% {1 : 0 : 1} - - IN: <(*,John,key_101) --> hold>. :|: %0.00;0.90% {1 : 1 : 2} - -1 - - OUT: <(*,John,key_101) --> hold>. :\: %0.09;0.91% {2 : 1 : 1;2} - - OUT: < (/,hold,_,key_101)> =/> <(*,John,key_101) --> hold>>. :\: %0.00;0.45% {2 : 0 : 2;1} - - OUT: < (/,hold,_,key_101)> <(*,John,key_101) --> hold>>. :\: %0.00;0.45% {2 : 0 : 2;1} - - IN: <(*,John,key_101) --> hold>? :|: {2 : 2 : 3} - -1 - - OUT: <(*,John,key_101) --> hold>. :\: %0.00;0.90% {1 : 1 : 2} - - OUT: <(*,John,key_101) --> hold>. :\: %0.09;0.91% {2 : 1 : 1;2} - diff --git a/nars-dist/Examples/Example-NAL8-1-abridged.txt b/nars-dist/Examples/Example-NAL8-1-abridged.txt deleted file mode 100644 index 664abfe7..00000000 --- a/nars-dist/Examples/Example-NAL8-1-abridged.txt +++ /dev/null @@ -1,184 +0,0 @@ -*** [01] <{t001} --> [opened]>! -*** [02] <{t001} --> door>. -*** [03] <(&|, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. -*** [04] <(*, {t002}, {t001}) --> key-of>. -*** [05] <(&|, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. -*** [06] <(&|, <(*, #x, #y(#x)) --> on>, <(*, Self, #y(#x)) --> at>) =|> <(*, Self, #x) --> reachable>>. -*** [07] <(*, {t002}, {t003}) --> on>. :|: -*** [08] <{t003} --> desk>. -*** [09] <(^go-to, #x) =/> <(*, Self, #x) --> at>>. - -********** [01 + 03 -> 10]: - IN: <{t001} --> [opened]>! - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. -19 - OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% - -********** [10 -> 11]: - IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! -5 - OUT: <(*,Self,{t002}) --> hold>! %1.00;0.81% {5 : 1} - -********** [11 + 05 -> 12]: - IN: <(*,Self,{t002}) --> hold>! - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. -5 - OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.81% - -********** [12 -> 13]: - IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! -13 - OUT: <(*,Self,{t002}) --> reachable>! %1.00;0.81% - -********** [13 + 06 -> 14]: - IN: <(*,Self,{t002}) --> reachable>! - IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. -16 - OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.81% - -********** [07 + 14 -> 15]: - IN: <(*,{t002},{t003}) --> on>. :|: - IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! -25 - OUT: <(*,Self,{t003}) --> at>! %1.00;0.81% - -********** [15 + 09 -> 16]: - IN: <(*,Self,{t003}) --> at>! - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. -19 - OUT: <(*,{t003}) --> ^go-to>! %1.00;0.81% - -********** [16 -> 17] - IN: <(*,{t003}) --> ^go-to>! -1 - - OUT: <(*,{t003}) --> ^go-to>. :|: %1.00;0.90% - -********** [17 + 09 -> 18] - IN: <(*,{t003}) --> ^go-to>. :|: - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. -22 - OUT: (/,at,_,{t003})>. :\: %1.00;0.81% - -********** [18 -> 19] - IN: (/,at,_,{t003})>. :\: -6 - OUT: <{t003} --> (/,at,Self,_)>. :\: %1.00;0.90% - -********** [07 -> 20] - IN: <(*,{t002},{t003}) --> on>. :|: -6 - - OUT: <{t003} --> (/,on,{t002},_)>. :\: %1.00;0.90% - -********** [19 + 20 -> 21] - IN: <{t003} --> (/,at,Self,_)>. :\: - IN: <{t003} --> (/,on,{t002},_)>. :\: -2 - OUT: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :\: %1.00;0.81% - -********** [21 -> 22] - IN: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :\: -8 - OUT: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :\: %1.00;0.90% - -********** [22 -> 23] - IN: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :\: -4 - OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). :\: %1.00;0.90% - -********** [23 + 06 -> 24] - IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). :|: - IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. -1 - OUT: <(*,Self,{t002}) --> reachable>. :\: %1.00;0.81% - -********** [24 + 12 -> 25] - IN: <(*,Self,{t002}) --> reachable>. :|: - IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! -6 - OUT: <(*,{t002}) --> ^pick>! %1.00;0.81% - -********** [25 -> 26] - IN: <(*,{t002}) --> ^pick>! -1 - - OUT: <(*,{t002}) --> ^pick>. :|: %1.00;0.90% - -********** [24 + 05 -> 27] - IN: <(*,Self,{t002}) --> reachable>. :|: - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. -1 - OUT: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :\: %1.00;0.81% - -********** [26 + 27 -> 28] - IN: <(*,{t002}) --> ^pick>. :\: - IN: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :\: -1 - - OUT: <(*,Self,{t002}) --> hold>. :\: %1.00;0.81% - -********** [28 + 10 -> 29] - IN: <(*,Self,{t002}) --> hold>. :|: - IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! -7 - - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% - -********** [03 + 28 -> 30] - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. - IN: <(*,Self,{t002}) --> hold>. :|: -2 - OUT: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% - -********** [29 -> 31] - IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! -1 -3 - OUT: <(*,Self,{t001}) --> at>! %1.00;0.45% - -********** [31 + 09 -> 32] - IN: <(*,Self,{t001}) --> at>! - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. -19 - OUT: <(*,{t001}) --> ^go-to>! %1.00;0.81% - -********** [32 -> 33] - IN: <(*,{t001}) --> ^go-to>! -1 - - OUT: <(*,{t001}) --> ^go-to>. :|: %1.00;0.90% - -********** [33 + 09 -> 34] - IN: <(*,{t001}) --> ^go-to>. :\: - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. - -12 - OUT: <(*,Self,{t001}) --> at>. %1.00;0.43% - -********** [34 + 30 -> 35] - IN: <(*,Self,{t001}) --> at>. :|: - - IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: - -3 - OUT: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :\: %1.00;0.81% - -********** [34 + 29 -> 36] - IN: <(*,Self,{t001}) --> at>. :|: - IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! -6 - OUT: (&/,<(*,{t001}) --> ^open>)! - -********** [36 -> 37] - IN: <(*,{t001}) --> ^open>! - -1 - - OUT: <(*,{t001}) --> ^open>. :|: %1.00;0.90% - -********** [35 + 37 -> 38] - IN: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :|: - IN: <(*,{t001}) --> ^open>. :|: -1 - OUT: <{t001} --> [opened]>. :|: %1.00;0.81% diff --git a/nars-dist/Examples/Example-NAL8-1-complete.txt b/nars-dist/Examples/Example-NAL8-1-complete.txt deleted file mode 100644 index 84575d8a..00000000 --- a/nars-dist/Examples/Example-NAL8-1-complete.txt +++ /dev/null @@ -1,589 +0,0 @@ -*** [01] <{t001} --> [opened]>! -*** [02] <{t001} --> door>. -*** [03] <(&|, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. -*** [04] <(*, {t002}, {t001}) --> key-of>. -*** [05] <(&|, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. -*** [06] <(&|, <(*, #x, #y(#x)) --> on>, <(*, Self, #y(#x)) --> at>) =|> <(*, Self, #x) --> reachable>>. -*** [07] <(*, {t002}, {t003}) --> on>. :|: -*** [08] <{t003} --> desk>. -*** [09] <(^go-to, #x) =/> <(*, Self, #x) --> at>>. -********** [01 + 03 -> 10]: - IN: <{t001} --> [opened]>! %1.00;0.90% {0 : 1} - - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <{t001} --> [opened]>? :|: {1 : 1 : 3} - -2 - - OUT: <(&/, (/,hold,_,{t002})>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {3 : 2} - -2 - - OUT: <(&/,<(*,Self,{t002}) --> hold>, (/,at,_,{t001})>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {5 : 2} - -6 - - OUT: <(&/,<{t002} --> (/,hold,Self,_)>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {11 : 2} - -8 - - OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {19 : 2;1} - -********** [10 -> 11]: - IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {0 : 1} - -1 - - OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {1 : 1 : 2} - -4 - - OUT: <(*,Self,{t002}) --> hold>! %1.00;0.45% {5 : 1} - -********** [11 + 05 -> 12]: - IN: <(*,Self,{t002}) --> hold>! %1.00;0.90% {0 : 1} - - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(*,Self,{t002}) --> hold>? :|: {1 : 1 : 3} - - OUT: (/,hold,_,{t002})>! %1.00;0.90% {1 : 1} - -1 - - OUT: (/,hold,_,{t002})>? :|: {2 : 2 : 4} - -1 - - OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)? :\: {3 : 0 : 2;3} - -2 - - OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.81% {5 : 2;1} - -********** [12 -> 13]: - IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {0 : 1} - -1 - - OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)? :|: {1 : 1 : 2} - -1 - - OUT: <(*,Self,{t002}) --> reachable>? :\: {2 : 1 : 2} - -2 - - OUT: (&/,<{t002} --> (/,reachable,Self,_)>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {4 : 1} - -1 - - OUT: (&/,<{t002} --> (/,reachable,Self,_)>,<(*,{t002}) --> ^pick>)? :|: {5 : 5 : 3} - -1 - - OUT: (&/, (/,reachable,_,{t002})>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {6 : 1} - -1 - - OUT: (&/, (/,reachable,_,{t002})>,<(*,{t002}) --> ^pick>)? :|: {7 : 7 : 4} - -5 - - OUT: (&/, (/,reachable,_,{t002})>,<(*,{t002}) --> ^pick>)? :\: {12 : 1 : 2} - -1 - - OUT: <(*,Self,{t002}) --> reachable>! %1.00;0.45% {13 : 1} - -********** [13 + 06 -> 14]: - IN: <(*,Self,{t002}) --> reachable>! %1.00;0.90% {0 : 1} - - IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(*,Self,{t002}) --> reachable>? :|: {1 : 1 : 3} - -1 - - OUT: <{t002} --> (/,reachable,Self,_)>! %1.00;0.90% {2 : 1} - -1 - - OUT: <{t002} --> (/,reachable,Self,_)>? :|: {3 : 3 : 4} - - OUT: (/,reachable,_,{t002})>! %1.00;0.90% {3 : 1} - -1 - - OUT: (/,reachable,_,{t002})>? :|: {4 : 4 : 5} - -5 - - OUT: <(*,Self,{t002}) --> reachable>? :\: {9 : 3 : 4} - -1 - - OUT: (/,reachable,_,{t002})>? :\: {10 : 1 : 3} - -6 - - OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.81% {16 : 2;1} - -********** [07 + 14 -> 15]: - IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)! %1.00;0.90% {0 : 2} - -1 - - OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>)? :|: {1 : 1 : 3} - - OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>)! %1.00;0.90% {1 : 2} - -1 - - OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>)? :|: {2 : 2 : 4} - -4 - - OUT: (&|,<(*,Self,#1()) --> at>,<{t002} --> (/,on,_,#1())>)! %1.00;0.90% {6 : 2} - -1 - - OUT: (&|,<(*,Self,#1()) --> at>,<{t002} --> (/,on,_,#1())>)? :|: {7 : 7 : 5} - -4 - - OUT: <{t003} --> (/,on,{t002},_)>. :\: %1.00;0.90% {11 : 0 : 1} - -4 - - OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>)? :\: {15 : 1 : 3} - -2 - - OUT: <(*,Self,{t003}) --> at>? :\: {17 : 1 : 1;3} - -2 - - OUT: (/,at,_,{t003})>? :\: {19 : 1 : 1;3} - -2 - - OUT: <{t003} --> (/,at,Self,_)>? :\: {21 : 1 : 1;3} - -2 - - OUT: (&|,<(*,Self,#1()) --> at>,<{t002} --> (/,on,_,#1())>)? :\: {23 : 1 : 3} - -2 - - OUT: <(*,Self,{t003}) --> at>! %1.00;0.81% {25 : 1;2} - -********** [15 + 09 -> 16]: - IN: <(*,Self,{t003}) --> at>! %1.00;0.90% {0 : 1} - - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(*,Self,{t003}) --> at>? :|: {1 : 1 : 3} - - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1 : 2} - -5 - - OUT: <{t003} --> (/,at,Self,_)>! %1.00;0.90% {6 : 1} - -1 - - OUT: <{t003} --> (/,at,Self,_)>? :|: {7 : 7 : 4} - -5 - - OUT: <(*,Self,{t003}) --> at>? :\: {12 : 7 : 4} - -1 - - OUT: (/,at,_,{t003})>! %1.00;0.90% {13 : 1} - -1 - - OUT: (/,at,_,{t003})>? :|: {14 : 14 : 5} - -4 - - OUT: (/,at,_,{t003})>? :\: {18 : 1 : 3} - -1 - - OUT: <(*,{t003}) --> ^go-to>! %1.00;0.81% {19 : 2;1} - -********** [16 -> 17] - IN: <(*,{t003}) --> ^go-to>! %1.00;0.90% {0 : 1} - -1 - - OUT: <(*,{t003}) --> ^go-to>. :|: %1.00;0.90% {1 : 1 : 2} - -********** [17 + 09 -> 18] - IN: <(*,{t003}) --> ^go-to>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 2} - -2 - - OUT: <{t003} --> (/,^go-to,_)>. :\: %1.00;0.90% {2 : 0 : 1} - -5 - - OUT: <(/,(*,{t003}),_) --> (/,^go-to,_)>. :\: %1.00;0.90% {7 : 0 : 1} - -1 - - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {8 : 2} - -4 - - OUT: <(*,Self,{t003}) --> at>. %1.00;0.43% {12 : 1;2} - -5 - - OUT: (/,at,_,{t003})>. %1.00;0.43% {17 : 1;2} - -1 - - OUT: (/,at,_,{t003})>. %1.00;0.43% {18 : 1;2} - -3 - - OUT: <{t003} --> (/,at,Self,_)>. %1.00;0.43% {21 : 1;2} - -1 - - OUT: (/,at,_,{t003})>. :\: %1.00;0.81% {22 : 1 : 2;1} - -********** [18 -> 19] - IN: (/,at,_,{t003})>. :\: %1.00;0.90% {0 : -1 : 1} - -3 - - OUT: <(*,Self,{t003}) --> at>. :\: %1.00;0.90% {3 : -1 : 1} - -3 - - OUT: <{t003} --> (/,at,Self,_)>. :\: %1.00;0.90% {6 : -1 : 1} - -********** [07 -> 20] - IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {0 : 0 : 1} - -5 - - OUT: <{t002} --> (/,on,_,{t003})>. :\: %1.00;0.90% {5 : 0 : 1} - -1 - - OUT: <{t003} --> (/,on,{t002},_)>. :\: %1.00;0.90% {6 : 0 : 1} - -********** [19 + 20 -> 21] - IN: <{t003} --> (/,at,Self,_)>. :\: %1.00;0.90% {0 : -1 : 1} - - IN: <{t003} --> (/,on,{t002},_)>. :\: %1.00;0.90% {0 : -1 : 2} - -1 - - OUT: <<#1 --> (/,on,{t002},_)> =|> <#1 --> (/,at,Self,_)>>. :\: %1.00;0.45% {1 : -1 : 1;2} - - OUT: <<#1 --> (/,at,Self,_)> =|> <#1 --> (/,on,{t002},_)>>. :\: %1.00;0.45% {1 : -1 : 1;2} - - OUT: <<#1 --> (/,on,{t002},_)> <|> <#1 --> (/,at,Self,_)>>. :\: %1.00;0.45% {1 : -1 : 1;2} - -1 - - OUT: <(/,on,{t002},_) --> (/,at,Self,_)>. :\: %1.00;0.45% {2 : -1 : 2;1} - - OUT: <(/,at,Self,_) --> (/,on,{t002},_)>. :\: %1.00;0.45% {2 : -1 : 2;1} - - OUT: <(/,on,{t002},_) <-> (/,at,Self,_)>. :\: %1.00;0.45% {2 : -1 : 2;1} - - OUT: <<#1 --> (/,on,{t002},_)> =|> <#1 --> (/,at,Self,_)>>. :\: %1.00;0.45% {2 : -1 : 2;1} - - OUT: <<#1 --> (/,at,Self,_)> =|> <#1 --> (/,on,{t002},_)>>. :\: %1.00;0.45% {2 : -1 : 2;1} - - OUT: <<#1 --> (/,on,{t002},_)> <|> <#1 --> (/,at,Self,_)>>. :\: %1.00;0.45% {2 : -1 : 2;1} - - OUT: <{t003} --> (|,(/,on,{t002},_),(/,at,Self,_))>. :\: %1.00;0.99% {2 : -1 : 2;1} - - OUT: <{t003} --> (&,(/,on,{t002},_),(/,at,Self,_))>. :\: %1.00;0.81% {2 : -1 : 2;1} - - OUT: <{t003} --> (-,(/,at,Self,_),(/,on,{t002},_))>. :\: %0.00;0.90% {2 : -1 : 2;1} - - OUT: <{t003} --> (-,(/,on,{t002},_),(/,at,Self,_))>. :\: %0.00;0.90% {2 : -1 : 2;1} - - OUT: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :\: %1.00;0.81% {2 : -1 : 2;1} - -********** [21 -> 22] - IN: (&|,<#1() --> (/,on,{t002},_)>,<#1() --> (/,at,Self,_)>). :\: %1.00;0.90% {0 : -1 : 1} - -6 - - OUT: (&|,<#1() --> (/,at,Self,_)>,<{t002} --> (/,on,_,#1())>). :\: %1.00;0.90% {6 : -1 : 1} - -2 - - OUT: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :\: %1.00;0.90% {8 : -1 : 1} - -********** [22 -> 23] - IN: (&|,<#1() --> (/,at,Self,_)>,<(*,{t002},#1()) --> on>). :\: %1.00;0.90% {0 : -1 : 1} - -3 - - OUT: (&|,<(*,{t002},#1()) --> on>, (/,at,_,#1())>). :\: %1.00;0.90% {3 : -1 : 1} - -1 - - OUT: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). :\: %1.00;0.90% {4 : -1 : 1} - -********** [23 + 06 -> 24] - IN: (&|,<(*,{t002},#1()) --> on>,<(*,Self,#1()) --> at>). :|: %1.00;0.90% {0 : 0 : 1} - - IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(*,Self,{t002}) --> reachable>. :\: %1.00;0.81% {1 : 0 : 2;1} - -********** [24 + 12 -> 25] - IN: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {0 : 2} - -1 - - OUT: (&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>)? :|: {1 : 1 : 3} - -2 - - OUT: (&/,<{t002} --> (/,reachable,Self,_)>,<(*,{t002}) --> ^pick>)! %1.00;0.90% {3 : 2} - -1 - - OUT: (&/,<{t002} --> (/,reachable,Self,_)>,<(*,{t002}) --> ^pick>)? :|: {4 : 4 : 4} - -2 - - OUT: <(*,{t002}) --> ^pick>! %1.00;0.81% {6 : 1;2} - -********** [25 -> 26] - IN: <(*,{t002}) --> ^pick>! %1.00;0.90% {0 : 1} - -1 - - OUT: <(*,{t002}) --> ^pick>. :|: %1.00;0.90% {1 : 1 : 2} - -********** [24 + 05 -> 27] - IN: <(*,Self,{t002}) --> reachable>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :\: %1.00;0.81% {1 : 0 : 2;1} - -********** [26 + 27 -> 28] - IN: <(*,{t002}) --> ^pick>. :\: %1.00;0.90% {0 : -1 : 1} - - IN: <<(*,{t002}) --> ^pick> =/> <(*,Self,{t002}) --> hold>>. :\: %1.00;0.90% {0 : -1 : 2} - -1 - - OUT: <(*,Self,{t002}) --> hold>. :\: %1.00;0.81% {1 : 0 : 2;1} - -********** [28 + 10 -> 29] - IN: <(*,Self,{t002}) --> hold>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {0 : 2} - -1 - - OUT: (&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {1 : 1 : 3} - -1 - - OUT: (&/, (/,hold,_,{t002})>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {2 : 2} - -1 - - OUT: (&/, (/,hold,_,{t002})>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {3 : 3 : 4} - -1 - - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {4 : 1;2} - -1 - - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {5 : 5 : 5} - -1 - - OUT: <(/,(*,Self,{t002}),_,{t002}) --> (/,hold,_,{t002})>. :\: %1.00;0.81% {6 : 0 : 1} - -1 - - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.81% {7 : 1;2} - -********** [03 + 28 -> 30] - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 1} - - IN: <(*,Self,{t002}) --> hold>. :|: %1.00;0.90% {0 : 0 : 2} - -2 - - OUT: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% {2 : 0 : 1;2} - -********** [29 -> 31] - IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {0 : 1} -1 - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {1 : 1 : 2} -1 - OUT: <(*,Self,{t001}) --> at>? :\: {2 : 1 : 2} -2 - OUT: (&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>)! %1.00;0.90% {4 : 1} -1 - OUT: (&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>)? :|: {5 : 5 : 3} -1 - OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^open>)! %1.00;0.90% {6 : 1} -1 - OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^open>)? :|: {7 : 7 : 4} -5 - OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^open>)? :\: {12 : 1 : 2} -1 - OUT: <(*,Self,{t001}) --> at>! %1.00;0.45% {13 : 1} -********** [31 + 09 -> 32] - IN: <(*,Self,{t001}) --> at>! %1.00;0.90% {0 : 1} - - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(*,Self,{t001}) --> at>? :|: {1 : 1 : 3} - - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1 : 2} - -5 - - OUT: <{t001} --> (/,at,Self,_)>! %1.00;0.90% {6 : 1} - -1 - - OUT: <{t001} --> (/,at,Self,_)>? :|: {7 : 7 : 4} - -5 - - OUT: <(*,Self,{t001}) --> at>? :\: {12 : 7 : 4} - -1 - - OUT: (/,at,_,{t001})>! %1.00;0.90% {13 : 1} - -1 - - OUT: (/,at,_,{t001})>? :|: {14 : 14 : 5} - -4 - - OUT: (/,at,_,{t001})>? :\: {18 : 1 : 3} - -1 - - OUT: <(*,{t001}) --> ^go-to>! %1.00;0.81% {19 : 2;1} - -********** [32 -> 33] - IN: <(*,{t001}) --> ^go-to>! %1.00;0.90% {0 : 1} - -1 - - OUT: <(*,{t001}) --> ^go-to>. :|: %1.00;0.90% {1 : 1 : 2} - -********** [33 + 09 -> 34] - IN: <(*,{t001}) --> ^go-to>. :\: %1.00;0.90% {0 : -1 : 1} - - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 2} - -2 - - OUT: <{t001} --> (/,^go-to,_)>. :\: %1.00;0.90% {2 : -1 : 1} - -5 - - OUT: <(/,(*,{t001}),_) --> (/,^go-to,_)>. :\: %1.00;0.90% {7 : -1 : 1} - -1 - - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {8 : 2} - -4 - - OUT: <(*,Self,{t001}) --> at>. %1.00;0.43% {12 : 1;2} - -********** [34 + 30 -> 35] - IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {0 : 0 : 2} - -1 - - OUT: <(&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. :\: %1.00;0.90% {1 : 0 : 2} - -1 - - OUT: <(&|,(&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>),<(*,Self,{t001}) --> at>) =|> <{t001} --> [opened]>>. :\: %1.00;0.45% {2 : 0 : 1;2} - -1 - - OUT: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :\: %1.00;0.81% {3 : 0 : 2;1} - -********** [34 + 29 -> 36] - IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)! %1.00;0.90% {0 : 2} - -1 - - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>)? :|: {1 : 1 : 3} - -2 - - OUT: (&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>)! %1.00;0.90% {3 : 2} - -1 - - OUT: (&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^open>)? :|: {4 : 4 : 4} - -2 - - OUT: <(*,{t001}) --> ^open>! %1.00;0.81% {6 : 1;2} - -********** [36 -> 37] - IN: <(*,{t001}) --> ^open>! %1.00;0.90% {0 : 1} - -1 - - OUT: <(*,{t001}) --> ^open>. :|: %1.00;0.90% {1 : 1 : 2} - -********** [35 + 37 -> 38] - IN: <<(*,{t001}) --> ^open> =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: <(*,{t001}) --> ^open>. :|: %1.00;0.90% {0 : 0 : 2} - -1 - - OUT: <{t001} --> [opened]>. :|: %1.00;0.81% {1 : 1 : 1;2} - diff --git a/nars-dist/Examples/Example-NAL8-2-abridged.txt b/nars-dist/Examples/Example-NAL8-2-abridged.txt deleted file mode 100644 index 6583d642..00000000 --- a/nars-dist/Examples/Example-NAL8-2-abridged.txt +++ /dev/null @@ -1,48 +0,0 @@ -*** [01] <{t001} --> [opened]>! -*** [02] <{t001} --> door>. -*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. -*** [04] <(*, {t002}, {t001}) --> key-of>. -*** [05] <(&/, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. -*** [06] <(&|, <(*, #x, #y(#x)) --> on>, <(*, Self, #y(#x)) --> at>) =|> <(*, Self, #x) --> reachable>>. -*** [07] <(*, {t002}, {t003}) --> on>. :|: -*** [08] <{t003} --> desk>. -*** [09] <(^go-to, #x) =/> <(*, Self, #x) --> at>>. - -********** [03 + 09 -> 10]: - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. - -2 - OUT: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% - -********** [10 + 05 -> 11] - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. - - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. -14 - OUT: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% - -********** [06 + 07 -> 12] - IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. - IN: <(*,{t002},{t003}) --> on>. :|: -7 - OUT: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :\: %1.00;0.81% {7 : 0 : 1;2} - -********** [11 + 12 -> 13] - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. - - IN: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :|: -17 - OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% - -********** [13 + 09 -> 14] - IN: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. -16 - OUT: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% - -********** [01 + 14 -> 15] - IN: <{t001} --> [opened]>! %1.00;0.90% - IN: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: -16 - OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>)! %1.00;0.81% \ No newline at end of file diff --git a/nars-dist/Examples/Example-NAL8-2-complete.txt b/nars-dist/Examples/Example-NAL8-2-complete.txt deleted file mode 100644 index ab48c626..00000000 --- a/nars-dist/Examples/Example-NAL8-2-complete.txt +++ /dev/null @@ -1,131 +0,0 @@ -*** [01] <{t001} --> [opened]>! -*** [02] <{t001} --> door>. -*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. -*** [04] <(*, {t002}, {t001}) --> key-of>. -*** [05] <(&/, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>. -*** [06] <(&|, <(*, #x, #y(#x)) --> on>, <(*, Self, #y(#x)) --> at>) =|> <(*, Self, #x) --> reachable>>. -*** [07] <(*, {t002}, {t003}) --> on>. :|: -*** [08] <{t003} --> desk>. -*** [09] <(^go-to, #x) =/> <(*, Self, #x) --> at>>. -********** [03 + 09 -> 10]: - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 1} - - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {1 : 1} - -1 - - OUT: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {2 : 2;1} - -********** [10 + 05 -> 11] - IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 1} - - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>) =/> <(*,Self,{t002}) --> hold>>. %1.00;0.90% {0 : 2} - -10 - - OUT: <(&/, (/,hold,_,{t002})>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {10 : 1} - -1 - - OUT: <(&/,<{t002} --> (/,hold,Self,_)>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {11 : 1} - -3 - - OUT: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.81% {14 : 2;1} - -********** [06 + 07 -> 12] - IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. %1.00;0.90% {0 : 1} - - IN: <(*,{t002},{t003}) --> on>. :|: %1.00;0.90% {0 : 0 : 2} - -4 - - OUT: <(&|,<(*,#1,#2(#1)) --> on>, (/,at,_,#2(#1))>) ==> <(*,Self,#1) --> reachable>>. %1.00;0.90% {4 : 1} - -3 - - OUT: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :\: %1.00;0.81% {7 : 0 : 1;2} - -********** [11 + 12 -> 13] - IN: <(&/,<(*,Self,{t002}) --> reachable>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 1} - - IN: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :|: %1.00;0.90% {0 : 0 : 2} - -5 - - OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.43% {5 : 2;1} - -3 - - OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.43% {8 : 2;1} - -1 - - OUT: <(&/,<{t002} --> (/,reachable,Self,_)>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {9 : 1} - -7 - - OUT: <(&/, (/,reachable,_,{t002})>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. %1.00;0.90% {16 : 1} - -1 - - OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% {17 : 0 : 1;2} - -********** [13 + 09 -> 14] - IN: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: <<(*,#1) --> ^go-to> =/> <(*,Self,#1) --> at>>. %1.00;0.90% {0 : 2} - -6 - - OUT: <(&/,<(*,Self,{t003}) --> at>,<(*,{t002}) --> ^pick>,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.30% {6 : 1;2} - -1 - - OUT: <(&/,<{t003} --> (/,at,Self,_)>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. :\: %1.00;0.90% {7 : 0 : 1} - -3 - - OUT: <<(*,#1) --> ^go-to> =/> (/,at,_,#1)>>. %1.00;0.90% {10 : 2} - -1 - - OUT: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. %1.00;0.43% {11 : 1;2} - -4 - - OUT: <(&/, (/,at,_,{t003})>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. :\: %1.00;0.90% {15 : 0 : 1} - -1 - - OUT: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% {16 : 0 : 2;1} - -********** [01 + 14 -> 15] - IN: <{t001} --> [opened]>! %1.00;0.90% {0 : 1} - - IN: <(&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) =/> <{t001} --> [opened]>>. :|: %1.00;0.90% {0 : 0 : 2} - -1 - - OUT: <{t001} --> [opened]>? :|: {1 : 1 : 3} - -10 - - OUT: <(&/,<{t003} --> (/,^go-to,_)>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>) ==> <{t001} --> [opened]>>. :\: %1.00;0.90% {11 : 0 : 2} - -2 - - OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>)? :\: {13 : 0 : 2;3} - -1 - - OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<{t001} --> (/,^go-to,_)>,<(*,{t001}) --> ^open>)? :\: {14 : 0 : 2;3} - -2 - - OUT: (&/,<(*,{t003}) --> ^go-to>,<(*,{t002}) --> ^pick>,<(*,{t001}) --> ^go-to>,<(*,{t001}) --> ^open>)! %1.00;0.81% {16 : 2;1} - diff --git a/nars-dist/Examples/Example-NAL8-3-abridged.txt b/nars-dist/Examples/Example-NAL8-3-abridged.txt deleted file mode 100644 index 192bbf98..00000000 --- a/nars-dist/Examples/Example-NAL8-3-abridged.txt +++ /dev/null @@ -1,52 +0,0 @@ -*** [01] <{t001} --> [opened]>! -*** [02] <{t001} --> door>. -*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. -*** [04] <(*, {t002}, {t001}) --> key-of>. -*** [05] <(*, Self, {t002}) --> hold>. :|: -*** [06] <(&/, <(*, Self, {t001}) --> at>, (^break, {t001})) =/> <{t001} --> [opened]>>. -*** [07] <(*, Self, {t001}) --> at>. :|: -*** [08] <{t001} --> [damaged]>! %0; 0.95% -*** [09] <(^break, #x) =/> <#x --> [damaged]>>. - -********** [01 + 06 -> 10]: - IN: <{t001} --> [opened]>! - IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>) =/> <{t001} --> [opened]>>. -26 - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% - -********** [10 + 07 -> 11]: - IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% - IN: <(*,Self,{t001}) --> at>. :|: -4 - OUT: <(*,{t001}) --> ^break>! %1.00;0.73% {4 : 2;1} - -********** [09 + 08 -> 12]: - IN: <<(*,#1) --> ^break> =/> <#1 --> [damaged]>>. - IN: <{t001} --> [damaged]>! %0; 0.95% -17 - OUT: <(*,{t001}) --> ^break>! %0.00;0.86% - -********** [12 + 11 -> 13]: - IN: <(*,{t001}) --> ^break>! %0.00;0.85% -1 - IN: <(*,{t001}) --> ^break>! %1.00;0.72% -1 - OUT: <(*,{t001}) --> ^break>! %0.31;0.89% {2 : 1;3} - -********** [13 -> NO EXECUTION]: - IN: <(*,{t001}) --> ^break>! %0.31;0.89% {2: 2;1} -10 - -*** [14] <(*,{t001}) --> ^break>! %1.00;0.95% - -********** [13 + 14 -> 15]: - IN: <(*,{t001}) --> ^break>! %0.31;0.89% -1 - IN: <(*,{t001}) --> ^break>! %1.00;0.95% -1 - OUT: <(*,{t001}) --> ^break>! %0.79;0.96% - -********** [15 -> 16]: - IN: <(*,{t001}) --> ^break>! %0.79;0.96% -1 - OUT: <(*,{t001}) --> ^break>. :|: %1.00;0.90% diff --git a/nars-dist/Examples/Example-NAL8-3-complete.txt b/nars-dist/Examples/Example-NAL8-3-complete.txt deleted file mode 100644 index b09b2346..00000000 --- a/nars-dist/Examples/Example-NAL8-3-complete.txt +++ /dev/null @@ -1,121 +0,0 @@ -*** [01] <{t001} --> [opened]>! -*** [02] <{t001} --> door>. -*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. -*** [04] <(*, {t002}, {t001}) --> key-of>. -*** [05] <(*, Self, {t002}) --> hold>. :|: -*** [06] <(&/, <(*, Self, {t001}) --> at>, (^break, {t001})) =/> <{t001} --> [opened]>>. -*** [07] <(*, Self, {t001}) --> at>. :|: -*** [08] <{t001} --> [damaged]>! %0; 0.95% -*** [09] <(^break, #x) =/> <#x --> [damaged]>>. -********** [01 + 06 -> 10]: - IN: <{t001} --> [opened]>! %1.00;0.90% {0 : 1} - - IN: <(&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>) =/> <{t001} --> [opened]>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <{t001} --> [opened]>? :|: {1 : 1 : 3} - -1 - - OUT: <(&/,<{t001} --> (/,at,Self,_)>,<(*,{t001}) --> ^break>) ==> <{t001} --> [opened]>>. %1.00;0.90% {2 : 2} - -2 - - OUT: <(&/, (/,at,_,{t001})>,<(*,{t001}) --> ^break>) ==> <{t001} --> [opened]>>. %1.00;0.90% {4 : 2} - -6 - - OUT: <(&/,<(*,Self,{t001}) --> at>,<{t001} --> (/,^break,_)>) ==> <{t001} --> [opened]>>. %1.00;0.90% {10 : 2} - -16 - - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% {26 : 2;1} - -********** [10 + 07 -> 11]: - IN: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)! %1.00;0.81% {0 : 1} - - IN: <(*,Self,{t001}) --> at>. :|: %1.00;0.90% {0 : 0 : 2} - -1 - - OUT: (&/,<(*,Self,{t001}) --> at>,<(*,{t001}) --> ^break>)? :|: {1 : 1 : 3} - -1 - - OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^break>)! %1.00;0.81% {2 : 1} - -1 - - OUT: (&/, (/,at,_,{t001})>,<(*,{t001}) --> ^break>)? :|: {3 : 3 : 4} - -1 - - OUT: <(*,{t001}) --> ^break>! %1.00;0.73% {4 : 2;1} - -********** [09 + 08 -> 12]: - IN: <<(*,#1) --> ^break> =/> <#1 --> [damaged]>>. {0 : 1} - IN: <{t001} --> [damaged]>! %0.00;0.95% {0 : 2} - -1 - - OUT: <{t001} --> [damaged]>? :|: {1 : 1 : 3} - -16 - - OUT: <(*,{t001}) --> ^break>! %0.00;0.86% {17 : 1;2} - -********** [12 + 11 -> 13]: - IN: <(*,{t001}) --> ^break>! %0.00;0.85% {0 : 1} - -1 - - OUT: <(*,{t001}) --> ^break>? :|: {1 : 1 : 2} - - IN: <(*,{t001}) --> ^break>! %1.00;0.72% {1 : 3} - -1 - - OUT: <(*,{t001}) --> ^break>! %0.31;0.89% {2 : 1;3} - - OUT: <{t001} --> (/,^break,_)>! %0.00;0.85% {2 : 1} - -********** [13 -> NO EXECUTION]: - IN: <(*,{t001}) --> ^break>! %0.31;0.89% {0 : 1} - -1 - - OUT: <(*,{t001}) --> ^break>? :|: {1 : 1 : 2} - -6 - - OUT: <{t001} --> (/,^break,_)>! %0.31;0.89% {7 : 1} - -1 - - OUT: <{t001} --> (/,^break,_)>? :|: {8 : 8 : 3} - -2 -*** [14] <(*,{t001}) --> ^break>! %1.00;0.95% -********** [13 + 14 -> 15]: - IN: <(*,{t001}) --> ^break>! %0.31;0.89% {0 : 1} - -1 - - OUT: <(*,{t001}) --> ^break>? :|: {1 : 1 : 2} - - IN: <(*,{t001}) --> ^break>! %1.00;0.95% {1 : 3} - -1 - - OUT: <(*,{t001}) --> ^break>! %0.79;0.96% {2 : 1;3} - - OUT: <{t001} --> (/,^break,_)>! %0.31;0.89% {2 : 1} - -********** [15 -> 16]: - IN: <(*,{t001}) --> ^break>! %0.79;0.96% {0 : 1} - -1 - - OUT: <(*,{t001}) --> ^break>. :|: %1.00;0.90% {1 : 1 : 2} - diff --git a/nars-dist/Examples/Example-NAL8-4-abridged.txt b/nars-dist/Examples/Example-NAL8-4-abridged.txt deleted file mode 100644 index ed6b8849..00000000 --- a/nars-dist/Examples/Example-NAL8-4-abridged.txt +++ /dev/null @@ -1,64 +0,0 @@ -*** [01] <(*, Self, key001) --> hold>! -*** [02] <(*, Self, key001) --> hold>. :|: %0% -*** [03] <(&/, <(*, Self, key001) --> reachable>, (^pick, key001)) =/> <(*, Self, key001) --> hold>>. -*** [04] <(*, Self, key001) --> reachable>. :|: - -********** [04 + 03 -> 05]: - IN: <(*,Self,key001) --> reachable>. :|: - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. -1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% - -********** [05 + 01 -> 06]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: - IN: <(*,Self,key001) --> hold>! -3 - OUT: <(*,key001) --> ^pick>! %1.00;0.81% - -********** [06 -> 07]: - IN: <(*,key001) --> ^pick>! -1 - OUT: <(*,key001) --> ^pick>. :|: %1.00;0.90% - -********** [07 + 05 -> 08]: - IN: <(*,key001) --> ^pick>. :\: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. -1 - OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.81% - -*** [9] <(*, Self, key001) --> hold>. - -********** [08 + 9 -> 10]: - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.81% -1 - IN: <(*,Self,key001) --> hold>. :|: -1 - OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.91% - -********** [02 + 10 -> 11]: - IN: <(*,Self,key001) --> hold>. :|: %0% -5 - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.91% -5 - IN: <(*,Self,key001) --> hold>? :|: -2 - OUT: <(*,Self,key001) --> hold>. :\: %0.92;0.92% - -********** [07 + 11 -> 12]: - IN: <(*,key001) --> ^pick>. :\: - IN: <(*,Self,key001) --> hold>. :|: -1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% - -********** [05 + 12 -> 13]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.90% - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% -1 - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.91% - -********** [04 + 13 -> 14]: - IN: <(*,Self,key001) --> reachable>. :|: -1 - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.91% -1 - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% diff --git a/nars-dist/Examples/Example-NAL8-4-complete.txt b/nars-dist/Examples/Example-NAL8-4-complete.txt deleted file mode 100644 index 7bf70001..00000000 --- a/nars-dist/Examples/Example-NAL8-4-complete.txt +++ /dev/null @@ -1,152 +0,0 @@ -*** [01] <(*, Self, key001) --> hold>! -*** [02] <(*, Self, key001) --> hold>. :|: %0% -*** [03] <(&/, <(*, Self, key001) --> reachable>, (^pick, key001)) =/> <(*, Self, key001) --> hold>>. -*** [04] <(*, Self, key001) --> reachable>. :|: -********** [04 + 03 -> 05]: - IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% {1 : 0 : 2;1} - -********** [05 + 01 -> 06]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: <(*,Self,key001) --> hold>! %1.00;0.90% {0 : 2} - -1 - - OUT: <(*,Self,key001) --> hold>? :|: {1 : 1 : 3} - - OUT: (/,hold,_,key001)>! %1.00;0.90% {1 : 2} - -1 - - OUT: (/,hold,_,key001)>? :|: {2 : 2 : 4} - -1 - - OUT: <(*,key001) --> ^pick>! %1.00;0.81% {3 : 1;2} - -********** [06 -> 07]: - IN: <(*,key001) --> ^pick>! %1.00;0.90% {0 : 1} - -1 - - OUT: <(*,key001) --> ^pick>. :|: %1.00;0.90% {1 : 1 : 2} - -********** [07 + 05 -> 08]: - IN: <(*,key001) --> ^pick>. :\: %1.00;0.90% {0 : -1 : 1} - - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0 : 2} - -1 - - OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.81% {1 : 0 : 2;1} - -*** [9] <(*, Self, key001) --> hold>. -********** [08 + 9 -> 10]: - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.81% {0 : 0 : 1} - -1 - - OUT: (/,hold,_,key001)>. :\: %1.00;0.81% {1 : 0 : 1} - - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1 : 1 : 2} - -1 - - OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.91% {2 : 1 : 1;2} - -********** [02 + 10 -> 11]: - IN: <(*,Self,key001) --> hold>. :|: %0.00;0.90% {0 : 0 : 1} - -1 - - OUT: (/,hold,_,key001)>. :\: %0.00;0.90% {1 : 0 : 1} - -1 - - OUT: (/,hold,Self,_)>. :\: %0.00;0.90% {2 : 0 : 1} - -3 - - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.91% {5 : 5 : 2} - -1 - - OUT: <(*,Self,key001) --> hold>. :\: %0.92;0.92% {6 : 5 : 1;2} - -1 - - OUT: (/,hold,_,key001)>. :\: %1.00;0.91% {7 : 5 : 2} - -1 - - OUT: (/,hold,_,key001)>. :\: %0.92;0.92% {8 : 5 : 1;2} - - OUT: < (/,hold,_,key001)> =\> <(*,Self,key001) --> hold>>. :\: %0.00;0.45% {8 : 5 : 1;2} - - OUT: <<(*,Self,key001) --> hold> (/,hold,_,key001)>>. :\: %0.00;0.45% {8 : 5 : 1;2} - - OUT: (/,hold,Self,_)>. :\: %1.00;0.91% {8 : 5 : 2} - -1 - - OUT: (/,hold,Self,_)>. :\: %0.91;0.92% {9 : 5 : 1;2} - -1 - - IN: <(*,Self,key001) --> hold>? :|: {10 : 10 : 3} - -1 - - OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.91% {5 : 5 : 2} - - OUT: <(*,Self,key001) --> hold>. :\: %0.92;0.92% {6 : 5 : 1;2} - -1 - - OUT: <(*,Self,key001) --> hold>. :\: %0.92;0.92% {12 : 5 : 1;2} - - OUT: <<(*,Self,key001) --> hold> =\> (/,hold,Self,_)>>. :\: %0.00;0.45% {12 : 5 : 1;2} - - OUT: < (/,hold,Self,_)> <(*,Self,key001) --> hold>>. :\: %0.00;0.45% {12 : 5 : 1;2} - -********** [07 + 11 -> 12]: - IN: <(*,key001) --> ^pick>. :\: %1.00;0.90% {0 : -1 : 1} - - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {0 : 0 : 2} - -1 - - OUT: <<(*,Self,key001) --> hold> =\> <(*,key001) --> ^pick>>. :\: %1.00;0.45% {1 : 0 : 1;2} - - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {1 : 0 : 1;2} - - OUT: <<(*,key001) --> ^pick> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {1 : 0 : 1;2} - -********** [05 + 12 -> 13]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.90% {0 : -1 : 1} - - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {0 : -1 : 2} - -1 - - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.91% {1 : -1 : 1;2} - -********** [04 + 13 -> 14]: - IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0 : 0 : 1} - -1 - - OUT: (/,reachable,_,key001)>. :\: %1.00;0.90% {1 : 0 : 1} - - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.91% {1 : 1 : 2} - -1 - - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {2 : 1 : 1;2} - diff --git a/nars-dist/Examples/Example-NAL8-5-abridged.txt b/nars-dist/Examples/Example-NAL8-5-abridged.txt deleted file mode 100644 index 5e406143..00000000 --- a/nars-dist/Examples/Example-NAL8-5-abridged.txt +++ /dev/null @@ -1,79 +0,0 @@ -*** [01] <(*, Self, key001) --> hold>! -*** [02] (--, <(*, Self, key001) --> hold>). :|: -*** [03] <(&/, <(*, Self, key001) --> reachable>, (^pick, key001)) =/> <(*, Self, key001) --> hold>>. -*** [04] <(*, Self, key001) --> reachable>. :|: - -********** [03 + 04 -> 05]: - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. - IN: <(*,Self,key001) --> reachable>. :|: -1 - - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% - -********** [05 + 01 -> 06]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% - IN: <(*,Self,key001) --> hold>! -3 - OUT: <(*,key001) --> ^pick>! %1.00;0.73% - -********** [06 -> 07]: - IN: <(*,key001) --> ^pick>! %1.00;0.73% -1 - - OUT: <(*,key001) --> ^pick>. :|: %1.00;0.90% - -********** [07 + 05 -> 08]: - IN: <(*,key001) --> ^pick>. :|: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% -1 - - OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.73% - -*** [09] <(*, Self, key001) --> hold>. - -********** [08 + 09 -> 10]: - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.73% -1 - - IN: <(*,Self,key001) --> hold>. :|: -1 - - OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.91% - -********** [07 + 09 -> 11]: - IN: <(*,key001) --> ^pick>. :|: -1 - - IN: <(*,Self,key001) --> hold>. :|: -1 - - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% - -********** [05 + 11 -> 12]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% - -1 - - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% -1 - - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.62% - -********** [04 + 12 -> 13]: - IN: <(*,Self,key001) --> reachable>. :|: -1 - - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.84% -1 - - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.43% - -********** [03 + 13 -> 14]: - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. -1 - - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.43% - -1 - - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.91% \ No newline at end of file diff --git a/nars-dist/Examples/Example-NAL8-5-complete.txt b/nars-dist/Examples/Example-NAL8-5-complete.txt deleted file mode 100644 index c893f53a..00000000 --- a/nars-dist/Examples/Example-NAL8-5-complete.txt +++ /dev/null @@ -1,116 +0,0 @@ -*** [01] <(*, Self, key001) --> hold>! -*** [02] (--, <(*, Self, key001) --> hold>). :|: -*** [03] <(&/, <(*, Self, key001) --> reachable>, (^pick, key001)) =/> <(*, Self, key001) --> hold>>. -*** [04] <(*, Self, key001) --> reachable>. :|: -********** [03 + 04 -> 05]: - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0 : 1} - - IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0 : 0 : 2} - -1 - - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% {1 : 0 : 1;2} - -********** [05 + 01 -> 06]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0 : 0 : 1} - - IN: <(*,Self,key001) --> hold>! %1.00;0.90% {0 : 2} - -1 - - OUT: <(*,Self,key001) --> hold>? :|: {1 : 1 : 3} - - OUT: (/,hold,_,key001)>! %1.00;0.90% {1 : 2} - -1 - - OUT: (/,hold,_,key001)>? :|: {2 : 2 : 4} - -1 - - OUT: <(*,key001) --> ^pick>! %1.00;0.73% {3 : 1;2} - -********** [06 -> 07]: - IN: <(*,key001) --> ^pick>! %1.00;0.73% {0 : 1} - -1 - - OUT: <(*,key001) --> ^pick>. :|: %1.00;0.90% {1 : 1 : 2} - -********** [07 + 05 -> 08]: - IN: <(*,key001) --> ^pick>. :|: %1.00;0.90% {0 : 0 : 1} - - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0 : 0 : 2} - -1 - - OUT: <(*,Self,key001) --> hold>. :|: %1.00;0.73% {1 : 1 : 2;1} - -*** [09] <(*, Self, key001) --> hold>. -********** [08 + 09 -> 10]: - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.73% {0 : 0 : 1} - -1 - - OUT: (/,hold,_,key001)>. :\: %1.00;0.73% {1 : 0 : 1} - - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1 : 1 : 2} - -1 - - OUT: <(*,Self,key001) --> hold>. :\: %1.00;0.91% {2 : 1 : 1;2} - -********** [07 + 09 -> 11]: - IN: <(*,key001) --> ^pick>. :|: %1.00;0.90% {0 : 0 : 1} - -1 - - IN: <(*,Self,key001) --> hold>. :|: %1.00;0.90% {1 : 1 : 2} - -1 - - OUT: <<(*,Self,key001) --> hold> =\> <(*,key001) --> ^pick>>. :\: %1.00;0.45% {2 : 1 : 1;2} - - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {2 : 1 : 1;2} - - OUT: <<(*,key001) --> ^pick> <(*,Self,key001) --> hold>>. :\: %1.00;0.45% {2 : 1 : 1;2} - - OUT: (/,^pick,_)>. :\: %1.00;0.90% {2 : 0 : 1} - -********** [05 + 11 -> 12]: - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.81% {0 : 0 : 1} - -1 - - OUT: < (/,^pick,_)> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.81% {1 : 0 : 1} - - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.45% {1 : 1 : 2} - -1 - - OUT: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.62% {2 : 1 : 1;2} - -********** [04 + 12 -> 13]: - IN: <(*,Self,key001) --> reachable>. :|: %1.00;0.90% {0 : 0 : 1} - -1 - - OUT: (/,reachable,_,key001)>. :\: %1.00;0.90% {1 : 0 : 1} - - IN: <<(*,key001) --> ^pick> =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.84% {1 : 1 : 2} - -1 - - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.43% {2 : 1 : 1;2} - -********** [03 + 13 -> 14]: - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. %1.00;0.90% {0 : 1} - -1 - - IN: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :|: %1.00;0.43% {1 : 1 : 2} - -1 - - OUT: <(&/,<(*,Self,key001) --> reachable>,<(*,key001) --> ^pick>) =/> <(*,Self,key001) --> hold>>. :\: %1.00;0.91% {2 : 1 : 1;2} - diff --git a/nars-dist/javadoc/allclasses-frame.html b/nars-dist/javadoc/allclasses-frame.html index 4b8748d0..9f04a060 100644 --- a/nars-dist/javadoc/allclasses-frame.html +++ b/nars-dist/javadoc/allclasses-frame.html @@ -2,13 +2,13 @@ - + -All Classes (NARS Document) +All Classes - + @@ -22,77 +22,69 @@ - diff --git a/nars-dist/javadoc/allclasses-noframe.html b/nars-dist/javadoc/allclasses-noframe.html index 7455ce1b..5dffc594 100644 --- a/nars-dist/javadoc/allclasses-noframe.html +++ b/nars-dist/javadoc/allclasses-noframe.html @@ -2,13 +2,13 @@ - + -All Classes (NARS Document) +All Classes - + @@ -22,77 +22,69 @@
    Bag +Bag
    BagWindow
    -Break -
    BudgetFunctions
    BudgetValue
    -Center -
    CompositionalRules
    -CompoundTerm +CompoundTerm
    Concept
    -ConceptBag +ConceptBag
    ConceptWindow
    -Conjunction -
    -DifferenceExt -
    -DifferenceInt +Conjunction
    -Disjunction +DifferenceExt
    -Distributor +DifferenceInt
    -Drop +Disjunction
    -Equivalence +Equivalence
    -ExperienceIO +ExperienceReader
    -Goal +ExperienceWriter
    -GoTo +ImageExt
    -ImageExt +ImageInt
    -ImageInt +Implication
    -Implication +InferenceRecorder
    InferenceWindow
    -Inheritance +Inheritance +
    +InputChannel
    InputWindow
    -Instance +Instance
    -InstanceProperty +InstanceProperty
    -IntersectionExt +IntersectionExt
    -IntersectionInt +IntersectionInt
    Item
    -Judgment +LocalRules
    MainWindow
    -MatchingRules -
    -Memory +Memory
    MessageDialog
    @@ -100,48 +92,40 @@
    NarsFrame
    -Negation +Negation
    -Open +NovelTaskBag
    -Operator +OutputChannel
    Parameters
    ParameterWindow
    -Pick -
    -Product +Product
    -Property +Property
    -Question -
    -Record +Reasoner
    RuleTables
    Sentence
    -SetExt +SetExt
    -SetInt +SetInt
    ShortFloat
    -Similarity +Similarity
    Stamp
    -Statement -
    -Strike +Statement
    StringParser
    -StringParser.InvalidInputException -
    StructuralRules
    SyllogisticRules @@ -150,31 +134,25 @@
    Task
    -TaskBuffer -
    TaskLink
    -TaskLinkBag +TaskLinkBag
    -Term +Term
    TermLink
    -TermLinkBag +TermLinkBag
    TermWindow
    -Throw -
    TruthFunctions
    TruthValue
    UtilityFunctions
    -Variable -
    -Variable.VarType +Variable
    - diff --git a/nars-dist/javadoc/constant-values.html b/nars-dist/javadoc/constant-values.html index dc90c629..3eb2a12c 100644 --- a/nars-dist/javadoc/constant-values.html +++ b/nars-dist/javadoc/constant-values.html @@ -2,13 +2,13 @@ - + -Constant Field Values (NARS Document) +Constant Field Values - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Constant Field Values (NARS Document)"; + parent.document.title="Constant Field Values"; } } @@ -87,11 +87,8 @@


    Contents @@ -104,48 +101,6 @@

    -

    Bag +Bag
    BagWindow
    -Break -
    BudgetFunctions
    BudgetValue
    -Center -
    CompositionalRules
    -CompoundTerm +CompoundTerm
    Concept
    -ConceptBag +ConceptBag
    ConceptWindow
    -Conjunction -
    -DifferenceExt -
    -DifferenceInt +Conjunction
    -Disjunction +DifferenceExt
    -Distributor +DifferenceInt
    -Drop +Disjunction
    -Equivalence +Equivalence
    -ExperienceIO +ExperienceReader
    -Goal +ExperienceWriter
    -GoTo +ImageExt
    -ImageExt +ImageInt
    -ImageInt +Implication
    -Implication +InferenceRecorder
    InferenceWindow
    -Inheritance +Inheritance +
    +InputChannel
    InputWindow
    -Instance +Instance
    -InstanceProperty +InstanceProperty
    -IntersectionExt +IntersectionExt
    -IntersectionInt +IntersectionInt
    Item
    -Judgment +LocalRules
    MainWindow
    -MatchingRules -
    -Memory +Memory
    MessageDialog
    @@ -100,48 +92,40 @@
    NarsFrame
    -Negation +Negation
    -Open +NovelTaskBag
    -Operator +OutputChannel
    Parameters
    ParameterWindow
    -Pick -
    -Product +Product
    -Property +Property
    -Question -
    -Record +Reasoner
    RuleTables
    Sentence
    -SetExt +SetExt
    -SetInt +SetInt
    ShortFloat
    -Similarity +Similarity
    Stamp
    -Statement -
    -Strike +Statement
    StringParser
    -StringParser.InvalidInputException -
    StructuralRules
    SyllogisticRules @@ -150,31 +134,25 @@
    Task
    -TaskBuffer -
    TaskLink
    -TaskLinkBag +TaskLinkBag
    -Term +Term
    TermLink
    -TermLinkBag +TermLinkBag
    TermWindow
    -Throw -
    TruthFunctions
    TruthValue
    UtilityFunctions
    -Variable -
    -Variable.VarType +Variable
    - - - - - - - - - - - - - - - -
    nars.entity.BudgetValue
    -private static final charMARK36
    -private static final charSEPARATOR59
    - -

    - -

    - - - - - - - - - - - - -
    nars.entity.Stamp
    -public static final longALWAYS-9223372036854775808L
    - -

    - -

    - @@ -204,84 +159,6 @@

    -

    - -

    nars.entity.TermLink
    - - - - - - - - - - - - - - - -
    nars.entity.TruthValue
    -private static final charDELIMITER37
    -private static final charSEPARATOR59
    - -

    - -

    - - - - - -
    -nars.gui.*
    - -

    - - - - - - - - - - - - -
    nars.gui.NarsFrame
    -static final java.lang.StringUNAVAILABLE"\n Not implemented in this demo applet."
    - -

    - -

    - - - - - -
    -nars.inference.*
    - -

    - - - - - - - - - - - - -
    nars.inference.StructuralRules
    -private static final floatRELIANCE0.8999999761581421f
    - -

    -

    @@ -352,30 +229,12 @@

    - - - - - - - - - - - - - - - @@ -394,30 +253,12 @@

    - - - - - - - - - - - - - - - @@ -466,24 +307,12 @@

    - - - - - - - - - - @@ -502,12 +331,6 @@

    - - - - - @@ -520,12 +343,6 @@

    - - - - - @@ -592,30 +409,6 @@

    - - - - - - - - - - - - - - - - - - - - @@ -652,11 +445,23 @@

    - - + + + + + + + + + + +
    "||"
    -public static final java.lang.StringEQUIVALENCE_AFTER_RELATION"</>"
    public static final java.lang.String EQUIVALENCE_RELATION "<=>"
    -public static final java.lang.StringEQUIVALENCE_WHEN_RELATION"<|>"
    -public static final charGOAL_MARK33
    public static final java.lang.String IMAGE_EXT_OPERATOR95
    -public static final java.lang.StringIMPLICATION_AFTER_RELATION"=/>"
    -public static final java.lang.StringIMPLICATION_BEFORE_RELATION"=\\>"
    public static final java.lang.String IMPLICATION_RELATION "==>"
    -public static final java.lang.StringIMPLICATION_WHEN_RELATION"=|>"
    public static final java.lang.String INHERITANCE_RELATION"--"
    -public static final charOPERATOR_TAG94
    public static final java.lang.String OUTPUT_LINE "OUT"
    -public static final java.lang.StringPARALLEL_OPERATOR"&|"
    public static final char PREFIX_MARK"--]"
    -public static final charQUERY_VARIABLE_TAG63
    public static final char QUESTION_MARK42
    -public static final java.lang.StringSEQUENCE_OPERATOR"&/"
    public static final char SET_EXT_CLOSER60
    -public static final java.lang.StringTENSE_FUTURE":/:"
    -public static final java.lang.StringTENSE_MARK":"
    -public static final java.lang.StringTENSE_PAST":\\:"
    -public static final java.lang.StringTENSE_PRESENT":|:"
    public static final java.lang.String TO_COMPONENT_159
    + public static final charVARIABLE_TAGVAR_DEPENDENT 35
    +public static final charVAR_INDEPENDENT36
    +public static final charVAR_QUERY63
    @@ -682,7 +487,7 @@

    public static final java.lang.String INFO -" Open-NARS Version 1.3.2 May 2010 \n" +" Open-NARS Version 1.5.0 January 2013 \n" @@ -718,7 +523,7 @@

    public static final float BUDGET_THRESHOLD -0.0010000000474974513f +0.10000000149011612f @@ -730,25 +535,19 @@

    public static final int CONCEPT_FORGETTING_CYCLE -3 - - - -public static final float -DECISION_THRESHOLD -0.6600000262260437f +15 - + public static final float -DEFAULT_GOAL_DURABILITY -0.699999988079071f +DEFAULT_CONFIRMATION_EXPECTATION +0.800000011920929f - + public static final float -DEFAULT_GOAL_PRIORITY -0.8999999761581421f +DEFAULT_CREATION_EXPECTATION +0.6600000262260437f @@ -808,18 +607,12 @@

    public static final int MAXMUM_BELIEF_LENGTH -5 - - - -public static final int -MAXMUM_EVENTS_LENGTH -10 +7 - + public static final int -MAXMUM_GOALS_LENGTH +MAXMUM_QUESTIONS_LENGTH 5 @@ -835,12 +628,6 @@

    1 - -public static final float -PRIORITY_THRESHOLD -0.05999999865889549f - - public static final float RELIANCE @@ -868,7 +655,7 @@

    public static final int TASK_LINK_FORGETTING_CYCLE -10 +20 @@ -894,51 +681,6 @@

    -

    - - - - - -
    -nars.storage.*
    - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    nars.storage.Bag<Type extends Item>
    -protected static final floatLOAD_FACTOR0.5f
    -protected static final floatRELATIVE_THRESHOLD0.10000000149011612f
    -protected static final intTHRESHOLD10
    -protected static final intTOTAL_LEVEL100
    - -

    -


    diff --git a/nars-dist/javadoc/deprecated-list.html b/nars-dist/javadoc/deprecated-list.html index 1ca41213..c247fc4a 100644 --- a/nars-dist/javadoc/deprecated-list.html +++ b/nars-dist/javadoc/deprecated-list.html @@ -2,13 +2,13 @@ - + -Deprecated List (NARS Document) +Deprecated List - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Deprecated List (NARS Document)"; + parent.document.title="Deprecated List"; } } diff --git a/nars-dist/javadoc/help-doc.html b/nars-dist/javadoc/help-doc.html index 77223051..b8d31aa0 100644 --- a/nars-dist/javadoc/help-doc.html +++ b/nars-dist/javadoc/help-doc.html @@ -2,13 +2,13 @@ - + -API Help (NARS Document) +API Help - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="API Help (NARS Document)"; + parent.document.title="API Help"; } } diff --git a/nars-dist/javadoc/index-files/index-1.html b/nars-dist/javadoc/index-files/index-1.html index 2adc83bb..f4f5fb56 100644 --- a/nars-dist/javadoc/index-files/index-1.html +++ b/nars-dist/javadoc/index-files/index-1.html @@ -2,13 +2,13 @@ - + -A-Index (NARS Document) +A-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="A-Index (NARS Document)"; + parent.document.title="A-Index"; } } @@ -79,19 +79,10 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    A

    -
    abdIndCom(Term, Term, Sentence, Judgment, int) - -Static method in class nars.inference.SyllogisticRules -
    { S>, P>} |- { P>,

    S>, P>} -

    abduction(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { M>,

    M>} |- P> -

    abduction(TruthValue, float) - -Static method in class nars.inference.TruthFunctions -
    {M,

    M>} |- P

    aboveThreshold() - Method in class nars.entity.BudgetValue
    Whether the budget should get any processing at all @@ -122,73 +113,53 @@
    activate(Concept, BudgetValue) - Static method in class nars.inference.BudgetFunctions
    Activate a concept by an incoming TaskLink -
    activateConcept(Concept, BudgetValue) - -Static method in class nars.main.Memory +
    activateConcept(Concept, BudgetValue) - +Method in class nars.container.Memory
    Adjust the activation level of a Concept -
    activatedTask(BudgetValue, Sentence, boolean) - -Static method in class nars.main.Memory -
    Activated task coming from MatchingRules.trySolution -
    addComponents(CompoundTerm, Term) - -Static method in class nars.language.CompoundTerm +
    activatedTask(BudgetValue, Sentence, Sentence) - +Method in class nars.container.Memory +
    Activated task called in MatchingRules.trySolution and Concept.processGoal +
    addComponents(CompoundTerm, Term, Memory) - +Static method in class nars.term.CompoundTerm
    Try to add a component into a compound -
    addToTable(Judgment, ArrayList, int) - -Method in class nars.entity.Concept -
    Add a new belief or goal into the table - Sort the beliefs/goals by rank, and remove redundant or low rank one -
    adjustEventTime(int) - -Method in class nars.entity.Stamp -
    Adjust the eventTime of the truth-value +
    addInputChannel(InputChannel) - +Method in class nars.main.Reasoner +
      +
    addOutputChannel(OutputChannel) - +Method in class nars.main.Reasoner +
     
    adjustmentValueChanged(AdjustmentEvent) - Method in class nars.gui.BagWindow
    Handling scrollbar movement
    adjustmentValueChanged(AdjustmentEvent) - Method in class nars.gui.ParameterWindow
    Handling scrollbar movement -
    ALWAYS - -Static variable in class nars.entity.Stamp -
    special value, for time-independent truth-values -
    analogy(Term, Term, Sentence, Sentence, int) - -Static method in class nars.inference.SyllogisticRules -
    { P>, P>} |- P> -
    analogy(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { M>, P>} |- P> -
    anaVarDepOuter(CompoundTerm, Term, boolean) - -Static method in class nars.inference.CompositionalRules -
    {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S>
    and(float...) - Static method in class nars.inference.UtilityFunctions
    A function where the output is conjunctively determined by the inputs -
    anonymousAnalogy(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P>
    append(String) - Method in class nars.gui.InferenceWindow
    Append a new line to display -
    append(String) - -Static method in class nars.io.Record +
    append(String) - +Method in class nars.io.InferenceRecorder
    Add new text to display +
    applySubstitute(HashMap<Term, Term>) - +Method in class nars.term.CompoundTerm +
    Recersively apply a substitute to the current CompoundTerm
    ARGUMENT_SEPARATOR - Static variable in class nars.io.Symbols
      -
    argumentsToList(Term, Term) - -Static method in class nars.language.CompoundTerm +
    argumentsToList(Term, Term) - +Static method in class nars.term.CompoundTerm
    build a component list from two terms -
    asymmetricAsymmetric(Sentence, Judgment, int) - -Static method in class nars.inference.RuleTables -
    Syllogistic rules whose both premises are on the same asymmetric relation -
    asymmetricSymmetric(Sentence, Sentence, int) - -Static method in class nars.inference.RuleTables -
    Syllogistic rules whose first premise is on an asymmetric relation, and the - second on a symmetric relation
    aveAri(float...) - Static method in class nars.inference.UtilityFunctions
    A function where the output is the arithmetic average the inputs
    aveGeo(float...) - Static method in class nars.inference.UtilityFunctions
    A function where the output is the geometric average the inputs -
    averagePriority() - -Method in class nars.storage.Bag +
    averagePriority() - +Method in class nars.container.Bag
    Get the average priority of Items

    @@ -244,7 +215,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-10.html b/nars-dist/javadoc/index-files/index-10.html index 05c4c3e4..b83609a3 100644 --- a/nars-dist/javadoc/index-files/index-10.html +++ b/nars-dist/javadoc/index-files/index-10.html @@ -2,13 +2,13 @@ - + -J-Index (NARS Document) +J-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="J-Index (NARS Document)"; + parent.document.title="J-Index"; } } @@ -79,16 +79,10 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    J

    -
    Judgment - Class in nars.entity
    A Judgment is an piece of new knowledge to be absorbed.
    Judgment(Term, char, TruthValue, Stamp, Sentence, Sentence) - -Constructor for class nars.entity.Judgment -
    Constructor -
    Judgment(Goal) - -Constructor for class nars.entity.Judgment -
    Construct a Judgment to indicate an operation just executed
    JUDGMENT_MARK - Static variable in class nars.io.Symbols
      @@ -146,7 +140,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-11.html b/nars-dist/javadoc/index-files/index-11.html index 4c19fc6a..15af3a3d 100644 --- a/nars-dist/javadoc/index-files/index-11.html +++ b/nars-dist/javadoc/index-files/index-11.html @@ -2,13 +2,13 @@ - + -K-Index (NARS Document) +K-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="K-Index (NARS Document)"; + parent.document.title="K-Index"; } } @@ -79,7 +79,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    K

    @@ -140,7 +140,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-12.html b/nars-dist/javadoc/index-files/index-12.html index d8a7e142..4d560792 100644 --- a/nars-dist/javadoc/index-files/index-12.html +++ b/nars-dist/javadoc/index-files/index-12.html @@ -2,13 +2,13 @@ - + -L-Index (NARS Document) +L-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="L-Index (NARS Document)"; + parent.document.title="L-Index"; } } @@ -79,31 +79,19 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    L

    -
    length - -Variable in class nars.entity.Stamp -
    trail length
    length() - Method in class nars.entity.Stamp -
    Return the length of the trail -
    levelIndex - -Variable in class nars.storage.Bag -
    index to get next level, kept in individual objects +
    Return the baseLength of the evidentialBase
    LOAD_FACTOR - Static variable in class nars.main.Parameters
    Hashtable load factor in Bag -
    LOAD_FACTOR - -Static variable in class nars.storage.Bag -
    hashtable load factor -
    loadLine() - -Method in class nars.io.ExperienceIO -
    Read a line from input, and send running instruction to Memory -
    logFile - -Static variable in class nars.io.Record -
    the log file +
    LocalRules - Class in nars.inference
    Directly process a task by a oldBelief, with only two Terms in both.
    LocalRules() - +Constructor for class nars.inference.LocalRules +
     

    @@ -158,7 +146,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-13.html b/nars-dist/javadoc/index-files/index-13.html index 6ee3f191..b9c002d9 100644 --- a/nars-dist/javadoc/index-files/index-13.html +++ b/nars-dist/javadoc/index-files/index-13.html @@ -2,13 +2,13 @@ - + -M-Index (NARS Document) +M-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="M-Index (NARS Document)"; + parent.document.title="M-Index"; } } @@ -79,228 +79,192 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    M

    main(String[]) - Static method in class nars.main.NARS
    The entry point of the standalone application. -
    MAIN_WINDOW_COLOR - -Static variable in class nars.gui.NarsFrame -
    Color for the background of the main window -
    MainWindow - Class in nars.gui
    Main window of NARS GUI
    MainWindow() - +
    MainWindow - Class in nars.gui
    Main window of NARS GUI
    MainWindow(Reasoner, String) - Constructor for class nars.gui.MainWindow
    Constructor -
    mainWindow - -Static variable in class nars.main.Center -
    The unique main window -
    make(Term, char, TruthValue, Stamp, Sentence, Sentence) - -Static method in class nars.entity.Sentence -
    Make a Sentence from an input String. -
    make(Sentence, Term, TruthValue, Stamp, Sentence, Sentence) - -Static method in class nars.entity.Sentence -
    Make a derived Sentence from a template and some initial values. -
    make(Stamp, Stamp) - +
    make(Stamp, Stamp, long) - Static method in class nars.entity.Stamp
    Try to merge two Stamps, return null if have overlap -
    make(CompoundTerm, ArrayList<Term>) - -Static method in class nars.language.CompoundTerm +
    make(CompoundTerm, ArrayList<Term>, Memory) - +Static method in class nars.term.CompoundTerm
    Try to make a compound term from a template and a list of components -
    make(String, ArrayList<Term>) - -Static method in class nars.language.CompoundTerm +
    make(String, ArrayList<Term>, Memory) - +Static method in class nars.term.CompoundTerm
    Try to make a compound term from an operator and a list of components -
    make(ArrayList<Term>, int) - -Static method in class nars.language.Conjunction +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.Conjunction
    Try to make a new compound from a list of components. -
    make(TreeSet<Term>, int) - -Static method in class nars.language.Conjunction -
    Try to make a new compound from a set of components. -
    make(Term, Term, int) - -Static method in class nars.language.Conjunction +
    make(Term, Term, Memory) - +Static method in class nars.term.Conjunction
    Try to make a new compound from two components. -
    make(ArrayList<Term>) - -Static method in class nars.language.DifferenceExt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.DifferenceExt
    Try to make a new DifferenceExt. -
    make(Term, Term) - -Static method in class nars.language.DifferenceExt +
    make(Term, Term, Memory) - +Static method in class nars.term.DifferenceExt
    Try to make a new compound from two components. -
    make(ArrayList<Term>) - -Static method in class nars.language.DifferenceInt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.DifferenceInt
    Try to make a new DifferenceExt. -
    make(Term, Term) - -Static method in class nars.language.DifferenceInt +
    make(Term, Term, Memory) - +Static method in class nars.term.DifferenceInt
    Try to make a new compound from two components. -
    make(Term, Term) - -Static method in class nars.language.Disjunction +
    make(Term, Term, Memory) - +Static method in class nars.term.Disjunction
    Try to make a new Disjunction from two components. -
    make(ArrayList<Term>) - -Static method in class nars.language.Disjunction +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.Disjunction
    Try to make a new IntersectionExt. -
    make(TreeSet<Term>) - -Static method in class nars.language.Disjunction +
    make(TreeSet<Term>, Memory) - +Static method in class nars.term.Disjunction
    Try to make a new Disjunction from a set of components. -
    make(Term, Term, boolean, int) - -Static method in class nars.language.Equivalence +
    make(Term, Term, Memory) - +Static method in class nars.term.Equivalence
    Try to make a new compound from two components. -
    make(ArrayList<Term>) - -Static method in class nars.language.ImageExt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.ImageExt
    Try to make a new ImageExt. -
    make(Product, Term, short) - -Static method in class nars.language.ImageExt +
    make(Product, Term, short, Memory) - +Static method in class nars.term.ImageExt
    Try to make an Image from a Product and a relation. -
    make(ImageExt, Term, short) - -Static method in class nars.language.ImageExt +
    make(ImageExt, Term, short, Memory) - +Static method in class nars.term.ImageExt
    Try to make an Image from an existing Image and a component. -
    make(ArrayList<Term>, short) - -Static method in class nars.language.ImageExt +
    make(ArrayList<Term>, short, Memory) - +Static method in class nars.term.ImageExt
    Try to make a new compound from a set of components. -
    make(ArrayList<Term>) - -Static method in class nars.language.ImageInt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.ImageInt
    Try to make a new ImageExt. -
    make(Product, Term, short) - -Static method in class nars.language.ImageInt +
    make(Product, Term, short, Memory) - +Static method in class nars.term.ImageInt
    Try to make an Image from a Product and a relation. -
    make(ImageInt, Term, short) - -Static method in class nars.language.ImageInt +
    make(ImageInt, Term, short, Memory) - +Static method in class nars.term.ImageInt
    Try to make an Image from an existing Image and a component. -
    make(ArrayList<Term>, short) - -Static method in class nars.language.ImageInt +
    make(ArrayList<Term>, short, Memory) - +Static method in class nars.term.ImageInt
    Try to make a new compound from a set of components. -
    make(Term, Term, boolean, int) - -Static method in class nars.language.Implication +
    make(Term, Term, Memory) - +Static method in class nars.term.Implication
    Try to make a new compound from two components. -
    make(Term, Term) - -Static method in class nars.language.Inheritance +
    make(Term, Term, Memory) - +Static method in class nars.term.Inheritance
    Try to make a new compound from two components. -
    make(Term, Term) - -Static method in class nars.language.Instance +
    make(Term, Term, Memory) - +Static method in class nars.term.Instance
    Try to make a new compound from two components. -
    make(Term, Term) - -Static method in class nars.language.InstanceProperty +
    make(Term, Term, Memory) - +Static method in class nars.term.InstanceProperty
    Try to make a new compound from two components. -
    make(Term, Term) - -Static method in class nars.language.IntersectionExt +
    make(Term, Term, Memory) - +Static method in class nars.term.IntersectionExt
    Try to make a new compound from two components. -
    make(ArrayList<Term>) - -Static method in class nars.language.IntersectionExt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.IntersectionExt
    Try to make a new IntersectionExt. -
    make(TreeSet<Term>) - -Static method in class nars.language.IntersectionExt +
    make(TreeSet<Term>, Memory) - +Static method in class nars.term.IntersectionExt
    Try to make a new compound from a set of components. -
    make(Term, Term) - -Static method in class nars.language.IntersectionInt +
    make(Term, Term, Memory) - +Static method in class nars.term.IntersectionInt
    Try to make a new compound from two components. -
    make(ArrayList<Term>) - -Static method in class nars.language.IntersectionInt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.IntersectionInt
    Try to make a new IntersectionExt. -
    make(TreeSet<Term>) - -Static method in class nars.language.IntersectionInt +
    make(TreeSet<Term>, Memory) - +Static method in class nars.term.IntersectionInt
    Try to make a new compound from a set of components. -
    make(Term) - -Static method in class nars.language.Negation +
    make(Term, Memory) - +Static method in class nars.term.Negation
    Try to make a Negation of one component. -
    make(ArrayList<Term>) - -Static method in class nars.language.Negation +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.Negation
    Try to make a new SetExt. -
    make(ArrayList<Term>) - -Static method in class nars.language.Product +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.Product
    Try to make a new compound. -
    make(CompoundTerm, Term, int) - -Static method in class nars.language.Product +
    make(CompoundTerm, Term, int, Memory) - +Static method in class nars.term.Product
    Try to make a Product from an ImageExt/ImageInt and a component. -
    make(Term, Term) - -Static method in class nars.language.Property +
    make(Term, Term, Memory) - +Static method in class nars.term.Property
    Try to make a new compound from two components. -
    make(Term) - -Static method in class nars.language.SetExt +
    make(Term, Memory) - +Static method in class nars.term.SetExt
    Try to make a new set from one component. -
    make(ArrayList<Term>) - -Static method in class nars.language.SetExt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.SetExt
    Try to make a new SetExt. -
    make(TreeSet<Term>) - -Static method in class nars.language.SetExt +
    make(TreeSet<Term>, Memory) - +Static method in class nars.term.SetExt
    Try to make a new compound from a set of components. -
    make(Term) - -Static method in class nars.language.SetInt +
    make(Term, Memory) - +Static method in class nars.term.SetInt
    Try to make a new set from one component. -
    make(ArrayList<Term>) - -Static method in class nars.language.SetInt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.term.SetInt
    Try to make a new SetExt. -
    make(TreeSet<Term>) - -Static method in class nars.language.SetInt +
    make(TreeSet<Term>, Memory) - +Static method in class nars.term.SetInt
    Try to make a new compound from a set of components. -
    make(Term, Term) - -Static method in class nars.language.Similarity +
    make(Term, Term, Memory) - +Static method in class nars.term.Similarity
    Try to make a new compound from two components. -
    make(String, Term, Term) - -Static method in class nars.language.Statement +
    make(String, Term, Term, Memory) - +Static method in class nars.term.Statement
    Make a Statement from String, called by StringParser -
    make(Statement, Term, Term) - -Static method in class nars.language.Statement +
    make(Statement, Term, Term, Memory) - +Static method in class nars.term.Statement
    Make a Statement from given components, called by the rules -
    make(Statement, Term, Term, boolean, int) - -Static method in class nars.language.Statement -
    Make a Statement from given components and temporal information, called by the rules -
    makeCompoundName(String, ArrayList<Term>) - -Static method in class nars.language.CompoundTerm -
    default method to make the name of a compound term from given fields -
    makeImageName(String, ArrayList<Term>, int) - -Static method in class nars.language.CompoundTerm -
    default method to make the name of an image term from given fields -
    makeName() - -Method in class nars.language.CompoundTerm -
    default method to make the name of the current term from existing fields -
    makeName() - -Method in class nars.language.ImageExt +
    makeCompoundName(String, ArrayList<Term>) - +Static method in class nars.term.CompoundTerm +
    default method to make the oldName of a compound term from given fields +
    makeImageName(String, ArrayList<Term>, int) - +Static method in class nars.term.CompoundTerm +
    default method to make the oldName of an image term from given fields +
    makeName() - +Method in class nars.term.CompoundTerm +
    default method to make the oldName of the current term from existing fields +
    makeName() - +Method in class nars.term.ImageExt
    override the default in making the name of the current term from existing fields -
    makeName() - -Method in class nars.language.ImageInt +
    makeName() - +Method in class nars.term.ImageInt
    Override the default in making the name of the current term from existing fields -
    makeName() - -Method in class nars.language.SetExt +
    makeName() - +Method in class nars.term.SetExt
    Make a String representation of the set, override the default. -
    makeName() - -Method in class nars.language.SetInt +
    makeName() - +Method in class nars.term.SetInt
    Make a String representation of the set, override the default. -
    makeName() - -Method in class nars.language.Statement -
    Override the default in making the name of the current term from existing fields -
    makeSetName(char, ArrayList<Term>, char) - -Static method in class nars.language.CompoundTerm -
    make the name of an ExtensionSet or IntensionSet -
    makeStatementName(Term, String, Term) - -Static method in class nars.language.Statement -
    Default method to make the name of an image term from given fields -
    makeSym(Statement, Term, Term, boolean, int) - -Static method in class nars.language.Statement +
    makeName() - +Method in class nars.term.Statement +
    Override the default in making the nameStr of the current term from existing fields +
    makeSetName(char, ArrayList<Term>, char) - +Static method in class nars.term.CompoundTerm +
    make the oldName of an ExtensionSet or IntensionSet +
    makeStatementName(Term, String, Term) - +Static method in class nars.term.Statement +
    Default method to make the nameStr of an image term from given fields +
    makeSym(Statement, Term, Term, Memory) - +Static method in class nars.term.Statement
    Make a symmetric Statement from given components and temporal information, called by the rules -
    makeVarName(int, Variable) - -Method in class nars.language.CompoundTerm -
    Sequentially generate new variable names -
    MARK - -Static variable in class nars.entity.BudgetValue -
    The charactor that marks the two ends of a budget value -
    markVariables() - -Method in class nars.language.CompoundTerm -
    Register open and closed variables in a CompoundTerm -
    mass - -Variable in class nars.storage.Bag -
    current sum of occupied level -
    match(Task, Judgment) - -Static method in class nars.inference.MatchingRules +
    match(Task, Sentence, Memory) - +Static method in class nars.inference.LocalRules
    The task and belief have the same content -
    match(Variable.VarType, Variable.VarType) - -Static method in class nars.language.Variable -
    Whether two variable types can match each other in unification -
    matchAsymSym(Sentence, Sentence, int) - -Static method in class nars.inference.MatchingRules +
    matchAsymSym(Sentence, Sentence, int, Memory) - +Static method in class nars.inference.LocalRules
    Inheritance/Implication matches Similarity/Equivalence -
    MatchingRules - Class in nars.inference
    Directly process a task by a oldBelief, with only two Terms in both.
    MatchingRules() - -Constructor for class nars.inference.MatchingRules -
      -
    matchReverse() - -Static method in class nars.inference.MatchingRules +
    matchReverse(Memory) - +Static method in class nars.inference.LocalRules
    The task and belief match reversely
    MAX_MATCHED_TERM_LINK - Static variable in class nars.main.Parameters @@ -311,36 +275,33 @@
    MAXMUM_BELIEF_LENGTH - Static variable in class nars.main.Parameters
    Maximum number of beliefs kept in a Concept -
    MAXMUM_EVENTS_LENGTH - -Static variable in class nars.main.Parameters -
    Range of temporal induction in input events. -
    MAXMUM_GOALS_LENGTH - +
    MAXMUM_QUESTIONS_LENGTH - Static variable in class nars.main.Parameters
    Maximum number of goals kept in a Concept
    MAXMUM_STAMP_LENGTH - Static variable in class nars.main.Parameters
    Maximum length of Stamp, a power of 2 -
    Memory - Class in nars.main
    The memory of the system.
    Memory() - -Constructor for class nars.main.Memory -
      +
    memory - +Variable in class nars.container.Bag +
    reference to memory +
    Memory - Class in nars.container
    The memory of the system.
    Memory(Reasoner) - +Constructor for class nars.container.Memory +
    Create a new memory
    merge(BudgetValue) - Method in class nars.entity.BudgetValue
    Merge one BudgetValue into another -
    merge(Item) - +
    merge(Item) - +Method in class nars.entity.Item +
    Merge with another Item with identical key +
    merge(Task) - Method in class nars.entity.Task
    Merge one Task into another -
    merge(Item) - -Method in class nars.entity.TaskLink -
    Merge one TaskLink into another
    merge(BudgetValue, BudgetValue) - Static method in class nars.inference.BudgetFunctions
    Merge an item into another one in a bag, when the two are identical except in budget values
    MessageDialog - Class in nars.gui
    Pop-up message for the user to accept
    MessageDialog(Frame, String) - Constructor for class nars.gui.MessageDialog
    Constructor -
    MULTIPLE_WINDOW_COLOR - -Static variable in class nars.gui.NarsFrame -
    Color for the background of the windows with multiple instantiations

    @@ -395,7 +356,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-14.html b/nars-dist/javadoc/index-files/index-14.html index d2e4b21b..ea39d167 100644 --- a/nars-dist/javadoc/index-files/index-14.html +++ b/nars-dist/javadoc/index-files/index-14.html @@ -2,13 +2,13 @@ - + -N-Index (NARS Document) +N-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="N-Index (NARS Document)"; + parent.document.title="N-Index"; } } @@ -79,87 +79,60 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    N

    -
    name - -Variable in class nars.language.Term -
    A Term is identified uniquely by its name, a sequence of characters in a +
    name - +Variable in class nars.term.Term +
    A Term is identified uniquely by its name, a sequence of characters in a given alphabet (ASCII or Unicode) -
    nameTable - -Variable in class nars.storage.Bag -
    mapping from key to item -
    nameToConcept(String) - -Static method in class nars.main.Memory +
    nameToConcept(String) - +Method in class nars.container.Memory
    Get an existing Concept for a given name -
    nameToListedTerm(String) - -Static method in class nars.main.Memory +
    nameToListedTerm(String) - +Method in class nars.container.Memory
    Get a Term for a given name of a Concept or Operator -
    nameToOperator(String) - -Static method in class nars.main.Memory -
    Check if a string is an operator name
    NARS - Class in nars.main
    The main class of the project.
    NARS() - Constructor for class nars.main.NARS
      -
    nars.entity - package nars.entity
    Data entities that are independently stored
    nars.gui - package nars.gui
    Graphical user interface of the system
    nars.inference - package nars.inference
    The inference rules and control functions
    nars.io - package nars.io
    Input/output management
    nars.language - package nars.language
    Term hierarchy in Narsese
    nars.main - package nars.main
    Top-level classes of the system
    nars.operation - package nars.operation
    Built-in operators
    nars.storage - package nars.storage
    Storage management
    NarsFont - -Static variable in class nars.gui.NarsFrame -
    Font for NARS GUI -
    NarsFrame - Class in nars.gui
    Specify shared properties of NARS windows
    NarsFrame() - -Constructor for class nars.gui.NarsFrame -
    Default constructor -
    NarsFrame(String) - -Constructor for class nars.gui.NarsFrame -
    Constructor with title and font setting -
    narsThread - -Variable in class nars.main.NARS -
    The internal working thread of the system. -
    negation(TruthValue) - -Static method in class nars.inference.TruthFunctions -
    {A} |- (--A) -
    Negation - Class in nars.language
    A negation of a Statement.
    Negation(String, ArrayList<Term>) - -Constructor for class nars.language.Negation -
    Constructor with partial values, called by make -
    Negation(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.Negation -
    Constructor with full values, called by clone -
    NEGATION_OPERATOR - +
    nars.container - package nars.container
    Storage management
    nars.entity - package nars.entity
    Data entities that are independently stored
    nars.gui - package nars.gui
    Graphical user interface of the system
    nars.inference - package nars.inference
    The inference rules and control functions
    nars.io - package nars.io
    Input/output management
    nars.main - package nars.main
    Top-level classes of the system
    nars.term - package nars.term
    Term hierarchy in Narsese
    NarsFrame - Class in nars.gui
    Specify shared properties of NARS windows
    Negation - Class in nars.term
    A negation of a Statement.
    NEGATION_OPERATOR - Static variable in class nars.io.Symbols
     
    NEW_TASK_FORGETTING_CYCLE - Static variable in class nars.main.Parameters
    Task decay rate in TaskBuffer, in [1, 99]. -
    newStamp - -Static variable in class nars.main.Memory -
    Shortcut to the derived Stamp -
    newTasks - -Static variable in class nars.main.Memory -
    List of inference newTasks, to be processed in the next working cycle -
    newTasksStartPlay(String) - -Static method in class nars.main.Memory -
    Display newd tasks, called from MainWindow. -
    newTasksToString() - -Static method in class nars.main.Memory -
    Prepare buffered tasks for display, called from TaskBuffer. -
    next(int) - -Method in class nars.storage.Distributor -
    Advance the index -
    nextSeparator(String, int) - -Static method in class nars.io.StringParser -
    Locate the first top-level separator in a CompoundTerm -
    noOverlapping(Sentence) - -Method in class nars.entity.Sentence -
    Check whether one sentence has stamp overlapping with another one, and change the system cash -
    noResult() - -Static method in class nars.main.Memory -
    Check if there is already any derived Task in the current cycle -
    novel(TermLink) - +
    newStamp - +Variable in class nars.container.Memory +
    The new Stamp +
    nextInput() - +Method in class nars.gui.InputWindow +
    Accept text input in a tick, which can be multiple lines +
    nextInput() - +Method in class nars.io.ExperienceReader +
    Process the next chunk of input data +
    nextInput() - +Method in interface nars.io.InputChannel +
      +
    nextOutput(ArrayList) - +Method in class nars.gui.MainWindow +
    To process the next chunk of output data +
    nextOutput(ArrayList) - +Method in class nars.io.ExperienceWriter +
    Process the next chunk of output data +
    nextOutput(ArrayList) - +Method in interface nars.io.OutputChannel +
      +
    noResult() - +Method in class nars.container.Memory +
      +
    novel(TermLink, long) - Method in class nars.entity.TaskLink
    To check whether a TaskLink should use a TermLink, return false if they interacted recently -
    novelTasks - -Static variable in class nars.main.Memory -
    New tasks with novel composed terms, for delayed and selective processing +
    NovelTaskBag - Class in nars.container
    New tasks that contain new Term.
    NovelTaskBag(Memory) - +Constructor for class nars.container.NovelTaskBag +
    Constructor

    @@ -214,7 +187,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-15.html b/nars-dist/javadoc/index-files/index-15.html index 3c3fb93d..703664ef 100644 --- a/nars-dist/javadoc/index-files/index-15.html +++ b/nars-dist/javadoc/index-files/index-15.html @@ -2,13 +2,13 @@ - + -O-Index (NARS Document) +O-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="O-Index (NARS Document)"; + parent.document.title="O-Index"; } } @@ -79,105 +79,80 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    O

    -
    okButton - -Variable in class nars.gui.InputWindow -
    Control buttons -
    Open - Class in nars.operation
    A class used in testing only.
    Open(String) - -Constructor for class nars.operation.Open -
      -
    openLoadFile() - -Method in class nars.io.ExperienceIO +
    openLoadFile() - +Method in class nars.io.ExperienceReader
    Open an input experience file -
    openLogFile() - -Static method in class nars.io.Record +
    openLogFile() - +Method in class nars.io.InferenceRecorder
    Open the log file -
    openSaveFile() - -Method in class nars.io.ExperienceIO +
    openSaveFile() - +Method in class nars.io.ExperienceWriter
    Open an output experience file -
    openVariables - -Variable in class nars.language.CompoundTerm -
    list of open variables in the compound -
    operator() - -Method in class nars.language.CompoundTerm +
    operator() - +Method in class nars.term.CompoundTerm
    Abstract method to get the operator of the compound -
    operator() - -Method in class nars.language.Conjunction +
    operator() - +Method in class nars.term.Conjunction
    Get the operator of the term. -
    operator() - -Method in class nars.language.DifferenceExt +
    operator() - +Method in class nars.term.DifferenceExt
    Get the operator of the term. -
    operator() - -Method in class nars.language.DifferenceInt +
    operator() - +Method in class nars.term.DifferenceInt
    Get the operator of the term. -
    operator() - -Method in class nars.language.Disjunction +
    operator() - +Method in class nars.term.Disjunction
    Get the operator of the term. -
    operator() - -Method in class nars.language.Equivalence +
    operator() - +Method in class nars.term.Equivalence
    Get the operator of the term. -
    operator() - -Method in class nars.language.ImageExt +
    operator() - +Method in class nars.term.ImageExt
    get the operator of the term. -
    operator() - -Method in class nars.language.ImageInt +
    operator() - +Method in class nars.term.ImageInt
    Get the operator of the term. -
    operator() - -Method in class nars.language.Implication +
    operator() - +Method in class nars.term.Implication
    Get the operator of the term. -
    operator() - -Method in class nars.language.Inheritance +
    operator() - +Method in class nars.term.Inheritance
    Get the operator of the term. -
    operator() - -Method in class nars.language.IntersectionExt +
    operator() - +Method in class nars.term.IntersectionExt
    Get the operator of the term. -
    operator() - -Method in class nars.language.IntersectionInt +
    operator() - +Method in class nars.term.IntersectionInt
    Get the operator of the term. -
    operator() - -Method in class nars.language.Negation +
    operator() - +Method in class nars.term.Negation
    Get the operator of the term. -
    operator() - -Method in class nars.language.Product +
    operator() - +Method in class nars.term.Product
    Get the operator of the term. -
    operator() - -Method in class nars.language.SetExt +
    operator() - +Method in class nars.term.SetExt
    Get the operator of the term. -
    operator() - -Method in class nars.language.SetInt +
    operator() - +Method in class nars.term.SetInt
    Get the operator of the term. -
    operator() - -Method in class nars.language.Similarity +
    operator() - +Method in class nars.term.Similarity
    Get the operator of the term. -
    Operator - Class in nars.operation
    An individual operator that can be execute by the system, though implemented - outside NARS.
    Operator(String) - -Constructor for class nars.operation.Operator -
      -
    OPERATOR_TAG - -Static variable in class nars.io.Symbols -
      -
    operators - -Static variable in class nars.main.Memory -
    Operators (built-in terms) table.
    or(float...) - Static method in class nars.inference.UtilityFunctions
    A function where the output is disjunctively determined by the inputs -
    order - -Variable in class nars.storage.Distributor -
    Shuffled sequence of index numbers -
    outExp - -Variable in class nars.io.ExperienceIO -
    Output experience into a file -
    outOfBase(Type) - -Method in class nars.storage.Bag +
    outOfBase(Type) - +Method in class nars.container.Bag
    Remove an item from itemTable, then adjust mass
    OUTPUT_LINE - Static variable in class nars.io.Symbols
      -
    +
    OutputChannel - Interface in nars.io
    An interface to be implemented in all output channel

    @@ -231,7 +206,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-16.html b/nars-dist/javadoc/index-files/index-16.html index 69de6fc3..ee8d3807 100644 --- a/nars-dist/javadoc/index-files/index-16.html +++ b/nars-dist/javadoc/index-files/index-16.html @@ -2,13 +2,13 @@ - + -P-Index (NARS Document) +P-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="P-Index (NARS Document)"; + parent.document.title="P-Index"; } } @@ -79,152 +79,67 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    P

    -
    PARALLEL_OPERATOR - -Static variable in class nars.io.Symbols -
     
    Parameters - Class in nars.main
    Collected system parameters.
    Parameters() - Constructor for class nars.main.Parameters
      -
    ParameterWindow - Class in nars.gui
    Window displaying a system parameter that can be adjusted in run time
    ParameterWindow(String, int) - -Constructor for class nars.gui.ParameterWindow -
    Constructor -
    parseArguments(String) - -Static method in class nars.io.StringParser -
    Parse a String into the argument get of a CompoundTerm. -
    parseBudget(String, char, TruthValue) - -Static method in class nars.io.StringParser -
    parse the input String into a BudgetValue -
    parseCompoundTerm(String) - -Static method in class nars.io.StringParser -
    Parse a String to create a CompoundTerm. -
    parseExperience(StringBuffer) - +
    ParameterWindow - Class in nars.gui
    Window displaying a system parameter that can be adjusted in run time
    parseExperience(StringBuffer, Memory, long) - Static method in class nars.io.StringParser
    Parse a line of input experience -
    parseSimpleTerm(String) - -Static method in class nars.io.StringParser -
    Parse a Term that has no internal structure. -
    parseStatement(String) - -Static method in class nars.io.StringParser -
    Parse a String to create a Statement. -
    parseTask(String) - +
    parseTask(String, Memory, long) - Static method in class nars.io.StringParser
    Enter a new Task in String into the memory, called from InputWindow or locally. -
    parseTense(StringBuffer) - -Static method in class nars.io.StringParser -
    Recognize the tense of an input sentence -
    parseTerm(String) - +
    parseTerm(String, Memory) - Static method in class nars.io.StringParser
    Top-level method that parse a Term in general, which may recursively call itself. -
    parseTruth(String, char) - -Static method in class nars.io.StringParser -
    parse the input String into a TruthValue (or DesireValue) -
    Pick - Class in nars.operation
    A class used in testing only.
    Pick(String) - -Constructor for class nars.operation.Pick -
      -
    pick(int) - -Method in class nars.storage.Distributor -
    Get the next number according to the given index -
    pickOut(String) - -Method in class nars.storage.Bag +
    pickOut(String) - +Method in class nars.container.Bag
    Pick an item by key, then remove it from the bag +
    play() - +Method in class nars.container.Bag +
    Resume display
    play() - Method in class nars.entity.Concept
    Resume display, called from ConceptWindow only -
    play() - -Static method in class nars.io.Record +
    play() - +Method in class nars.io.InferenceRecorder
    Begin the display -
    play() - -Method in class nars.storage.Bag -
    Resume display -
    playButton - -Variable in class nars.gui.BagWindow -
    Control buttons -
    playButton - -Variable in class nars.gui.ConceptWindow -
    Control buttons -
    playButton - -Variable in class nars.gui.InferenceWindow -
    Control buttons -
    playButton - -Variable in class nars.gui.TermWindow -
    Control buttons -
    playInNewWindowButton - -Variable in class nars.gui.ConceptWindow -
    Control buttons
    post(String) - Method in class nars.gui.BagWindow
    Post the bag content
    post(String) - Method in class nars.gui.ConceptWindow
    Display the content of the concept -
    post(String) - -Method in class nars.gui.MainWindow -
    Add new line to the display, plus the time interval
    PREFIX_MARK - Static variable in class nars.io.Symbols
      -
    prepareComponentLinks() - -Method in class nars.language.CompoundTerm +
    prepareComponentLinks() - +Method in class nars.term.CompoundTerm
    Build TermLink templates to constant components and subcomponents -
    prepareComponentLinks(ArrayList<TermLink>, short, CompoundTerm) - -Method in class nars.language.CompoundTerm -
    Collect TermLink templates into a list, go down one level except in special cases -
    previousValue - -Variable in class nars.gui.ParameterWindow -
    parameter values
    priority - Variable in class nars.entity.BudgetValue
    The relative share of time resource to be allocated -
    PRIORITY_THRESHOLD - -Static variable in class nars.main.Parameters -
    The priority threthold for operation to be executed. -
    processComposed(Statement, Term, Term, TruthValue) - -Static method in class nars.inference.CompositionalRules -
    Finish composing compound term -
    processConcept() - -Static method in class nars.main.Memory -
    Select a concept to fire. -
    processGoal(Goal, Task) - -Method in class nars.entity.Concept -
    Direct processing a new goal -
    processJudgment(Judgment, Task) - -Method in class nars.entity.Concept -
    To accept a new judgment as belief, and check for revisions and solutions -
    processQuestion(Question, Task) - +
    processQuestion(Task) - Method in class nars.entity.Concept
    To answer a question by existing beliefs -
    processTask() - -Static method in class nars.main.Memory -
    Process the newTasks accumulated in the previous cycle, accept input ones - and those that corresponding to existing concepts, plus one from the buffer. -
    Product - Class in nars.language
    A Product is a sequence of terms.
    Product(String, ArrayList<Term>) - -Constructor for class nars.language.Product -
    Constructor with partial values, called by make -
    Product(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.Product -
    Constructor with full values, called by clone -
    PRODUCT_OPERATOR - +
    Product - Class in nars.term
    A Product is a sequence of terms.
    PRODUCT_OPERATOR - Static variable in class nars.io.Symbols
      -
    Property - Class in nars.language
    A Statement about a Property relation, which is used only in Narsese for I/O, - and translated into Inheritance for internal use.
    Property() - -Constructor for class nars.language.Property +
    Property - Class in nars.term
    A Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    Property() - +Constructor for class nars.term.Property
     
    PROPERTY_RELATION - Static variable in class nars.io.Symbols
      -
    punctuation - -Variable in class nars.entity.Sentence -
    The punctuation also indicates the type of the Sentence: Judgment, Question, or Goal -
    putBack(Type) - -Method in class nars.storage.Bag +
    putBack(Type) - +Method in class nars.container.Bag
    Put an item back into the itemTable -
    putIn(Type) - -Method in class nars.storage.Bag +
    putIn(Type) - +Method in class nars.container.Bag
    Add a new Item into the Bag

    @@ -280,7 +195,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-17.html b/nars-dist/javadoc/index-files/index-17.html index 041b1e6f..515f21d5 100644 --- a/nars-dist/javadoc/index-files/index-17.html +++ b/nars-dist/javadoc/index-files/index-17.html @@ -2,13 +2,13 @@ - + -Q-Index (NARS Document) +Q-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Q-Index (NARS Document)"; + parent.document.title="Q-Index"; } } @@ -79,28 +79,16 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    Q

    quality - Variable in class nars.entity.BudgetValue
    The overall (context-independent) evaluation -
    QUERY_VARIABLE_TAG - -Static variable in class nars.io.Symbols -
      -
    Question - Class in nars.entity
    A Question is a sentence without a truth value, and may conain query variables
    Question(Term, char, Stamp) - -Constructor for class nars.entity.Question -
    Constructor -
    Question(Goal) - -Constructor for class nars.entity.Question -
    Construct a question to check whether a goal has been achieved
    QUESTION_MARK - Static variable in class nars.io.Symbols
      -
    questions - -Variable in class nars.entity.Concept -
    Question directly asked about the term

    @@ -155,7 +143,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-18.html b/nars-dist/javadoc/index-files/index-18.html index c1f26107..3c14e640 100644 --- a/nars-dist/javadoc/index-files/index-18.html +++ b/nars-dist/javadoc/index-files/index-18.html @@ -2,13 +2,13 @@ - + -R-Index (NARS Document) +R-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="R-Index (NARS Document)"; + parent.document.title="R-Index"; } } @@ -79,84 +79,48 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    R

    -
    rankBelief(Judgment) - +
    rankBelief(Sentence) - Static method in class nars.inference.BudgetFunctions
    Determine the rank of a judgment by its confidence and originality (stamp length) -
    ready - -Variable in class nars.gui.InputWindow -
    Whether the window is ready to accept new input -
    reason(TaskLink, TermLink) - +
    reason(TaskLink, TermLink, Memory) - Static method in class nars.inference.RuleTables
    Entry point of the inference engine -
    recentEvents - -Static variable in class nars.main.Memory -
    List of recent events, for temporal learning -
    record - -Variable in class nars.entity.TaskLink -
    Remember the TermLinks that has been used recently with this TaskLink -
    Record - Class in nars.io
    Inference log, which record input/output of each inference step
    Record() - -Constructor for class nars.io.Record -
      -
    reduceComponents(CompoundTerm, Term) - -Static method in class nars.language.CompoundTerm +
    Reasoner - Class in nars.main
    A NARS Reasoner has its memory, I/O channels, and internal clock.
    Reasoner(String) - +Constructor for class nars.main.Reasoner +
    Start the initial windows and memory. +
    reduceComponents(CompoundTerm, Term, Memory) - +Static method in class nars.term.CompoundTerm
    Try to remove a component from a compound -
    reduceConjunction(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    {(--, (&&, A, B)), B} |- (--, A) -
    reduceConjunctionNeg(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    {(--, (&&, A, (--, B))), (--, B)} |- (--, A) -
    reduceDisjunction(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    {(||, A, B), (--, B)} |- A -
    refresh() - -Method in class nars.storage.Bag +
    refresh() - +Method in class nars.container.Bag
    Refresh display -
    relationIndex - -Variable in class nars.language.ImageExt -
    The index of relation in the component list -
    relationIndex - -Variable in class nars.language.ImageInt -
    The index of relation in the component list -
    RELATIVE_THRESHOLD - -Static variable in class nars.storage.Bag -
    relative threshold, only calculate once -
    RELIANCE - -Static variable in class nars.inference.StructuralRules -
     
    RELIANCE - Static variable in class nars.main.Parameters
    Reliance factor, the empirical confidence of analytical truth. -
    renameVariables() - -Method in class nars.language.CompoundTerm -
    Rename variables in input sentence -
    renameVariables(HashMap<String, String>) - -Method in class nars.language.CompoundTerm -
    Recursively rename variables by their appearing order in the CompoundTerm -
    replaceComponent(CompoundTerm, int, Term) - -Static method in class nars.language.CompoundTerm -
    Try to replace a component in a compound at a given index by another one -
    replaceComponent(CompoundTerm, Term, Term) - -Static method in class nars.language.CompoundTerm -
    Try to replace a given component in a compound by another one -
    report(Sentence, boolean) - -Static method in class nars.main.Memory -
    Display input/output sentence in the MainWindow. -
    reportExecution(Statement) - -Method in class nars.operation.Operator -
    Display a message in the output stream to indicate the reportExecution of an operation -
    resemblance(Term, Term, Judgment, Sentence, int) - -Static method in class nars.inference.SyllogisticRules -
    { M>, P>} |- P> -
    resemblance(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { M>, P>} |- P> -
    reset() - -Static method in class nars.main.Center +
    removeInputChannel(InputChannel) - +Method in class nars.main.Reasoner +
      +
    removeOutputChannel(OutputChannel) - +Method in class nars.main.Reasoner +
      +
    renameVariables() - +Method in class nars.term.CompoundTerm +
    Rename the variables in the compound +
    renameVariables(HashMap<Variable, Variable>) - +Method in class nars.term.CompoundTerm +
    Rename the variables in the compound +
    renameVariables() - +Method in class nars.term.Term +
    Blank method to be override in CompoundTerm +
    report(Sentence, boolean) - +Method in class nars.container.Memory +
    Display input/output sentence in the output channels. +
    reset() - +Method in class nars.main.Reasoner
    Reset the system with an empty memory and reset clock.
    RESET_MARK - Static variable in class nars.io.Symbols @@ -164,36 +128,18 @@
    resetBackground() - Method in class nars.gui.InferenceWindow
    Reset background color after file saving -
    revise(TruthValue, TruthValue, TruthValue, boolean) - -Static method in class nars.inference.BudgetFunctions -
    Evaluate the quality of a revision, then de-prioritize the premises -
    reviseTable(Judgment, ArrayList) - -Method in class nars.entity.Concept -
    Revise existing beliefs or goals -
    revisible - -Variable in class nars.entity.Concept -
    Whether truth value of judgments can be revised -
    revision(Judgment, Judgment, boolean) - -Static method in class nars.inference.MatchingRules +
    revision(Sentence, Sentence, boolean, Memory) - +Static method in class nars.inference.LocalRules
    Belief revision -
    revision(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { P>, P>} |- P> -
    revisionTask(BudgetValue, Term, TruthValue, Sentence, Sentence) - -Static method in class nars.main.Memory -
    The final operations of the revision rules, called from MatchingRules
    RuleTables - Class in nars.inference
    Table of inference rules, indexed by the TermLinks for the task and the belief.
    RuleTables() - Constructor for class nars.inference.RuleTables
     
    run() - Method in class nars.main.NARS
    Repeatedly execute NARS working cycle. -
    runButton - -Variable in class nars.gui.MainWindow -
    Control buttons -
    running - -Static variable in class nars.main.Center -
    Flag for running continously +
    run() - +Method in class nars.main.Reasoner +
    Start the inference process

    @@ -248,7 +194,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-19.html b/nars-dist/javadoc/index-files/index-19.html index ca7bffca..0dca87df 100644 --- a/nars-dist/javadoc/index-files/index-19.html +++ b/nars-dist/javadoc/index-files/index-19.html @@ -2,13 +2,13 @@ - + -S-Index (NARS Document) +S-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="S-Index (NARS Document)"; + parent.document.title="S-Index"; } } @@ -79,40 +79,16 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    S

    -
    saveLine(String) - -Method in class nars.io.ExperienceIO -
    Write a line into the output experience file -
    SAVING_BACKGROUND_COLOR - -Static variable in class nars.gui.NarsFrame -
    Color for the background of the text components that are being saved into a file -
    savingExp - -Variable in class nars.gui.MainWindow -
    Whether the experience is saving into a file -
    scope - -Variable in class nars.language.Variable -
    The minimum CompoundTerm what contains all occurences of this variable
    SELF - Static variable in class nars.entity.TermLink
    At C, point to C; TaskLink only -
    Sentence - Class in nars.entity
    A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
    Sentence() - +
    Sentence - Class in nars.entity
    A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
    Sentence(Term, char, TruthValue, Stamp) - Constructor for class nars.entity.Sentence -
      -
    sentence - -Variable in class nars.entity.Task -
    The sentence of the Task -
    SEPARATOR - -Static variable in class nars.entity.BudgetValue -
    The charactor that separates the factors in a budget value -
    SEPARATOR - -Static variable in class nars.entity.TruthValue -
    The charactor that separates the factors in a truth value -
    SEQUENCE_OPERATOR - -Static variable in class nars.io.Symbols -
      +
    Create a Sentence with the given fields
    SET_EXT_CLOSER - Static variable in class nars.io.Symbols
      @@ -125,81 +101,57 @@
    SET_INT_OPENER - Static variable in class nars.io.Symbols
      -
    setBestSolution(Judgment) - -Method in class nars.entity.Sentence +
    setBestSolution(Sentence) - +Method in class nars.entity.Task
    Set the best-so-far solution for a Question or Goal, and report answer for input question -
    setContent(Term) - +
    setBudget(BudgetValue) - +Method in class nars.entity.Item +
    Constructor with initial budget +
    setComponent(CompoundTerm, int, Term, Memory) - +Static method in class nars.term.CompoundTerm +
    Try to replace a component in a compound at a given index by another one +
    setConstant(boolean) - +Method in class nars.term.CompoundTerm +
    Set the constant status +
    setContent(Term) - Method in class nars.entity.Sentence
    Set the content Term of the Sentence
    setDurability(float) - Method in class nars.entity.BudgetValue
    Change durability value -
    SetExt - Class in nars.language
    An extensionally defined set, which contains one or more instances.
    SetExt(String, ArrayList<Term>) - -Constructor for class nars.language.SetExt -
    Constructor with partial values, called by make -
    SetExt(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.SetExt -
    Constructor with full values, called by clone -
    setInput() - -Method in class nars.entity.Sentence -
    The only place to change the default, called in StringParser -
    SetInt - Class in nars.language
    An intensionally defined set, which contains one or more instances defining the Term.
    SetInt(String, ArrayList<Term>) - -Constructor for class nars.language.SetInt -
    Constructor with partial values, called by make -
    SetInt(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.SetInt -
    constructor with full values, called by clone -
    setKey() - +
    setDurability(float) - +Method in class nars.entity.Item +
    Set durability value +
    SetExt - Class in nars.term
    An extensionally defined set, which contains one or more instances.
    SetInt - Class in nars.term
    An intensionally defined set, which contains one or more instances defining the Term.
    setKey() - Method in class nars.entity.TermLink
    Set the key of the link -
    setName(String) - -Method in class nars.language.CompoundTerm -
    Change the name of a CompoundTerm, called after variable substitution -
    setName(String) - -Method in class nars.language.Variable -
    Rename the variable -
    setOperators() - -Static method in class nars.operation.Operator -
    Register all built-in operators in the Memory +
    setName(String) - +Method in class nars.term.CompoundTerm +
    Change the oldName of a CompoundTerm, called after variable substitution
    setPriority(float) - Method in class nars.entity.BudgetValue
    Change priority value +
    setPriority(float) - +Method in class nars.entity.Item +
    Set priority value
    setQuality(float) - Method in class nars.entity.BudgetValue
    Change quality value -
    setScope(CompoundTerm) - -Method in class nars.language.Variable -
    Set the scope of the variable -
    setStoper(long) - -Static method in class nars.main.Center -
    Walk a fixed number of steps or continously. -
    setStructural() - -Method in class nars.entity.Task -
    Record if a Task is derived by a StructuralRule -
    setTruth(TruthValue) - -Method in class nars.entity.Judgment -
      +
    setQuality(float) - +Method in class nars.entity.Item +
    Set quality value
    setValue(float) - Method in class nars.entity.ShortFloat
    Set new value, rounded, with validity checking -
    ShortFloat - Class in nars.entity
    A float value in [0, 1], with 4 digits accuracy.
    ShortFloat(float) - +
    ShortFloat - Class in nars.entity
    A float value in [0, 1], with 4 digits accuracy.
    ShortFloat(short) - Constructor for class nars.entity.ShortFloat
    Constructor -
    show() - -Static method in class nars.io.Record +
    ShortFloat(float) - +Constructor for class nars.entity.ShortFloat +
    Constructor +
    show() - +Method in class nars.io.InferenceRecorder
    Show the window -
    showDerivationCheckbox - -Variable in class nars.gui.ConceptWindow -
      -
    showing - -Variable in class nars.entity.Concept -
    Whether the content of the concept is being displayed -
    showing - -Variable in class nars.storage.Bag -
    whether this bag has an active window -
    showLevel - -Variable in class nars.gui.BagWindow -
    The lowest level displayed
    showLevel() - Method in class nars.gui.BagWindow
    The lowest display level @@ -207,55 +159,28 @@ Static variable in class nars.main.Parameters
    Silent threshold for task reporting, in [0, 100].
    silentW - -Static variable in class nars.gui.MainWindow +Variable in class nars.gui.MainWindow
    Windows for run-time parameter adjustment -
    Similarity - Class in nars.language
    A Statement about a Similarity relation.
    Similarity(String, ArrayList<Term>) - -Constructor for class nars.language.Similarity -
    Constructor with partial values, called by make -
    Similarity(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.Similarity -
    Constructor with full values, called by clone -
    SIMILARITY_RELATION - +
    Similarity - Class in nars.term
    A Statement about a Similarity relation.
    SIMILARITY_RELATION - Static variable in class nars.io.Symbols
      -
    SINGLE_WINDOW_COLOR - -Static variable in class nars.gui.NarsFrame -
    Color for the background of the windows with unique instantiation -
    singlePremiseTask(BudgetValue, Term, TruthValue, Sentence) - -Static method in class nars.main.Memory +
    singlePremiseTask(Term, TruthValue, BudgetValue) - +Method in class nars.container.Memory +
    Shared final operations by all single-premise rules, called in StructuralRules +
    singlePremiseTask(Term, char, TruthValue, BudgetValue) - +Method in class nars.container.Memory
    Shared final operations by all single-premise rules, called in StructuralRules -
    size() - -Method in class nars.language.CompoundTerm +
    size() - +Method in class nars.term.CompoundTerm
    get the number of components -
    solutionEval(Sentence, Judgment, Task) - -Static method in class nars.inference.BudgetFunctions -
    Evaluate the quality of a belief as a solution to a problem, then reward - the belief and de-prioritize the problem -
    solutionQuality(Sentence, Judgment) - -Static method in class nars.inference.MatchingRules +
    solutionQuality(Sentence, Sentence) - +Static method in class nars.inference.LocalRules
    Evaluate the quality of the judgment as a solution to a problem -
    stamp - -Variable in class nars.entity.Sentence -
    Partial record of the derivation path
    Stamp - Class in nars.entity
    Each Sentence has a time stamp, consisting the following components: (1) The creation time of the sentence, - (2) The time when the truth-value is supported, - (3) A trail of serial numbers of sentence, from which the sentence is derived.
    Stamp() - -Constructor for class nars.entity.Stamp -
    Generate a new stamp, with a new serial number, for new sentence without tense -
    Stamp(long, boolean) - -Constructor for class nars.entity.Stamp -
    Generate a new stamp, with a new serial number, for new sentence with numeric tense -
    Stamp(String) - -Constructor for class nars.entity.Stamp -
    Generate a new stamp, with a new serial number, for input sentence with symbolic tense -
    Stamp(Stamp) - + (2) A evidentialBase of serial numbers of sentence, from which the sentence is derived.
    Stamp(long) - Constructor for class nars.entity.Stamp -
    Generate a new stamp from an existing one, with the same trail but different creation time -
    Stamp(Stamp, Stamp, long) - -Constructor for class nars.entity.Stamp -
    Generate a new stamp for derived sentence by merging the two from parents - the first one is no shorter than the second +
    Generate a new stamp, with a new serial number, for a new Task
    STAMP_CLOSER - Static variable in class nars.io.Symbols
      @@ -268,27 +193,24 @@
    STAMP_STARTER - Static variable in class nars.io.Symbols
      -
    start() - -Static method in class nars.main.Center -
    Start the initial windows and memory.
    start() - Method in class nars.main.NARS
    Start the thread if necessary, called when the page containing the applet first appears on the screen. +
    startPlay(String) - +Method in class nars.container.Bag +
    To start displaying the Bag in a BagWindow
    startPlay(boolean) - Method in class nars.entity.Concept
    Start displaying contents and links, called from ConceptWindow or Memory.processTask only -
    startPlay(String) - -Method in class nars.storage.Bag -
    To start displaying the Bag in a BagWindow -
    Statement - Class in nars.language
    A statement is a compound term, consisting of a subject, a predicate, - and a relation symbol in between.
    Statement() - -Constructor for class nars.language.Statement +
    Statement - Class in nars.term
    A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
    Statement() - +Constructor for class nars.term.Statement
    Default constructor -
    Statement(String, ArrayList<Term>) - -Constructor for class nars.language.Statement +
    Statement(ArrayList<Term>) - +Constructor for class nars.term.Statement
    Constructor with partial values, called by make -
    Statement(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.Statement +
    Statement(String, ArrayList<Term>, boolean, short) - +Constructor for class nars.term.Statement
    Constructor with full values, called by clone
    STATEMENT_CLOSER - Static variable in class nars.io.Symbols @@ -296,93 +218,42 @@
    STATEMENT_OPENER - Static variable in class nars.io.Symbols
      +
    stop() - +Method in class nars.container.Bag +
    Stop display
    stop() - Method in class nars.entity.Concept
    Stop display, called from ConceptWindow only -
    stop() - -Static method in class nars.io.Record +
    stop() - +Method in class nars.io.InferenceRecorder
    Stop the display
    stop() - Method in class nars.main.NARS
    Called when the page containing the applet is no longer on the screen. -
    stop() - -Method in class nars.storage.Bag -
    Stop display -
    stopButton - -Variable in class nars.gui.BagWindow -
    Control buttons -
    stopButton - -Variable in class nars.gui.ConceptWindow -
    Control buttons -
    stopButton - -Variable in class nars.gui.InferenceWindow -
    Control buttons -
    stopButton - -Variable in class nars.gui.MainWindow -
    Control buttons -
    stoper - -Static variable in class nars.main.Center -
    Timer for fixed distance walking -
    Strike - Class in nars.operation
    A class used in testing only.
    Strike(String) - -Constructor for class nars.operation.Strike -
      -
    StringParser - Class in nars.io
    Parse input String into Task.
    StringParser() - +
    stop() - +Method in class nars.main.Reasoner +
    Stop the inference process +
    StringParser - Class in nars.io
    Parse input String into Task or Term.
    StringParser() - Constructor for class nars.io.StringParser
      -
    StringParser.InvalidInputException - Exception in nars.io
    All kinds of invalid input lines
    StringParser.InvalidInputException(String) - -Constructor for exception nars.io.StringParser.InvalidInputException -
    An invalid input line. -
    structural - -Variable in class nars.entity.Task -
    Whether it is derived by a structural rule -
    structuralCompose1(CompoundTerm, short, Statement) - -Static method in class nars.inference.StructuralRules -
    { P>, P@(P&Q)} |- (P&Q)> -
    structuralCompose2(CompoundTerm, short, Statement, short) - -Static method in class nars.inference.StructuralRules -
    { P>, S@(S&T)} |- <(S&T) --> (P&T)> - { P>, S@(M-S)} |- <(M-P) --> (M-S)> -
    structuralCompound(CompoundTerm, Term, boolean) - -Static method in class nars.inference.StructuralRules -
    {(&&, A, B), A@(&&, A, B)} |- A - {(||, A, B), A@(||, A, B)} |- A -
    structuralDecompose1(CompoundTerm, short, Statement) - -Static method in class nars.inference.StructuralRules -
    {<(S&T) --> P>, S@(S&T)} |- P> -
    structuralDecompose2(Statement) - -Static method in class nars.inference.StructuralRules -
    {<(S&T) --> (P&T)>, S@(S&T)} |- P>
    StructuralRules - Class in nars.inference
    Single-premise inference rules involving compound terms.
    StructuralRules() - Constructor for class nars.inference.StructuralRules
      -
    structuralStatement(Term, Term, TruthValue) - -Static method in class nars.inference.StructuralRules -
    Common final operations of the above two methods -
    substituteComponent(HashMap<String, Term>, boolean) - -Method in class nars.language.CompoundTerm -
    Substitute a variable component according to a given substitution +
    substitute - +Variable in class nars.container.Memory +
    The substitution that unify the common term in the Task and the Belief
    summary() - Method in class nars.entity.BudgetValue
    To summarize a BudgetValue into a single number in [0, 1]
    switchBackground() - Method in class nars.gui.InferenceWindow
    Change background color to remind the on-going file saving -
    switchOrder(CompoundTerm, short) - -Static method in class nars.inference.StructuralRules -
    List the cases where the direction of inheritance is revised in conclusion -
    syllogisms(TaskLink, TermLink, Term, Term) - -Static method in class nars.inference.RuleTables -
    Meta-table of syllogistic rules, indexed by the content classes of the - taskSentence and the belief
    SyllogisticRules - Class in nars.inference
    Syllogisms: Inference rules based on the transitivity of the relation.
    SyllogisticRules() - Constructor for class nars.inference.SyllogisticRules
     
    Symbols - Class in nars.io
    The ASCII symbols used in I/O.
    Symbols() - Constructor for class nars.io.Symbols
      -
    symmetricSymmetric(Judgment, Sentence, int) - -Static method in class nars.inference.RuleTables -
    Syllogistic rules whose both premises are on the same symmetric relation

    @@ -437,7 +308,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-2.html b/nars-dist/javadoc/index-files/index-2.html index f0a99044..8b12b594 100644 --- a/nars-dist/javadoc/index-files/index-2.html +++ b/nars-dist/javadoc/index-files/index-2.html @@ -2,13 +2,13 @@ - + -B-Index (NARS Document) +B-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="B-Index (NARS Document)"; + parent.document.title="B-Index"; } } @@ -79,22 +79,19 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    B

    -
    backward(TruthValue) - +
    backward(TruthValue, Memory) - Static method in class nars.inference.BudgetFunctions
    Backward inference result and adjustment, stronger case -
    backwardWeak(TruthValue) - +
    backwardWeak(TruthValue, Memory) - Static method in class nars.inference.BudgetFunctions
    Backward inference result and adjustment, weaker case -
    bag - -Variable in class nars.gui.BagWindow -
    The bag to be displayed -
    Bag<Type extends Item> - Class in nars.storage
    A Bag is a storage with a constant capacity and maintains an internal priority - distribution for retrieval.
    Bag() - -Constructor for class nars.storage.Bag +
    Bag<Type extends Item> - Class in nars.container
    A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
    Bag(Memory) - +Constructor for class nars.container.Bag
    constructor, called from subclasses
    BAG_LEVEL - Static variable in class nars.main.Parameters @@ -102,30 +99,21 @@
    BAG_THRESHOLD - Static variable in class nars.main.Parameters
    Level separation in Bag, one digit, for display (run-time adjustable) and management (fixed) -
    BagWindow - Class in nars.gui
    Window display the priority distribution of items within a given bag
    BagWindow(Bag, String) - +
    BagWindow - Class in nars.gui
    Window display the priority distribution of items within a given bag
    BagWindow(Bag, String) - Constructor for class nars.gui.BagWindow
    Constructor -
    beliefs - -Variable in class nars.entity.Concept -
    Judgments directly made about the term, with non-future tense -
    bestSolution - -Variable in class nars.entity.Sentence -
    For Question and Goal: best solution found so far -
    Break - Class in nars.operation
    A class used in testing only.
    Break(String) - -Constructor for class nars.operation.Break -
      +
    budget - +Variable in class nars.entity.Item +
    The budget of the Item, consisting of 3 numbers
    BUDGET_THRESHOLD - Static variable in class nars.main.Parameters -
    The budget threthold for task to be accepted. +
    The budget threthold rate for task to be accepted.
    BUDGET_VALUE_MARK - Static variable in class nars.io.Symbols
     
    BudgetFunctions - Class in nars.inference
    Budget functions for resources allocation
    BudgetFunctions() - Constructor for class nars.inference.BudgetFunctions
      -
    budgetInference(float, int) - -Static method in class nars.inference.BudgetFunctions -
    Common processing for all inference step
    BudgetValue - Class in nars.entity
    A triple of priority (current), durability (decay), and quality (long-term average).
    BudgetValue() - Constructor for class nars.entity.BudgetValue
    Default constructor @@ -195,7 +183,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-20.html b/nars-dist/javadoc/index-files/index-20.html index 2496cca4..7271298f 100644 --- a/nars-dist/javadoc/index-files/index-20.html +++ b/nars-dist/javadoc/index-files/index-20.html @@ -2,13 +2,13 @@ - + -T-Index (NARS Document) +T-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="T-Index (NARS Document)"; + parent.document.title="T-Index"; } } @@ -79,28 +79,25 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    T

    -
    takeOut() - -Method in class nars.storage.Bag +
    takeOut() - +Method in class nars.container.Bag
    Choose an Item according to priority distribution and take it out of the Bag -
    takeOut(TaskLink) - -Method in class nars.storage.TermLinkBag +
    takeOut(TaskLink, long) - +Method in class nars.container.TermLinkBag
    Replace defualt to prevent repeated inference, by checking TaskLink -
    takeOutFirst(int) - -Method in class nars.storage.Bag -
    Take out the first or last Type in a level from the itemTable -
    target - -Variable in class nars.entity.TermLink -
    The linked Term -
    targetTask - -Variable in class nars.entity.TaskLink -
    The Task linked.
    Task - Class in nars.entity
    A task to be processed, consists of a Sentence and a BudgetValue
    Task(Sentence, BudgetValue) - Constructor for class nars.entity.Task -
    Constructor +
    Constructor for input task +
    Task(Sentence, BudgetValue, Task, Sentence) - +Constructor for class nars.entity.Task +
    Constructor for a derived task +
    Task(Sentence, BudgetValue, Task, Sentence, Sentence) - +Constructor for class nars.entity.Task +
    Constructor for an activated task
    TASK_BUFFER_SIZE - Static variable in class nars.main.Parameters
    Size of TaskBuffer @@ -110,62 +107,20 @@
    TASK_LINK_FORGETTING_CYCLE - Static variable in class nars.main.Parameters
    TaskLink decay rate in TaskLinkBag, in [1, 99]. -
    TaskBuffer - Class in nars.storage
    New tasks that contain new Term.
    TaskBuffer() - -Constructor for class nars.storage.TaskBuffer -
      +
    taskBuffersStartPlay(String) - +Method in class nars.container.Memory +
    Display newd tasks, called from MainWindow.
    TaskLink - Class in nars.entity
    Reference to a Task.
    TaskLink(Task, TermLink, BudgetValue) - Constructor for class nars.entity.TaskLink
    Constructor -
    TaskLinkBag - Class in nars.storage
    TaskLinkBag contains links to tasks.
    TaskLinkBag() - -Constructor for class nars.storage.TaskLinkBag -
      -
    taskLinks - -Variable in class nars.entity.Concept -
    Task links for indirect processing -
    temporalCasting(TruthValue, long, long, long) - -Static method in class nars.inference.TruthFunctions -
    Casting truth-value v1 from moment t1 to moment t2, with respect to time t -
    temporalDistance - -Variable in class nars.language.Equivalence -
    Temporal distance between the components -
    temporalDistance - -Variable in class nars.language.Implication -
    Temporal distance between the components -
    temporalIndCom(BudgetValue, BudgetValue, TruthValue) - -Static method in class nars.inference.BudgetFunctions -
    Special treatment for temporal induction and comparison among recent event, no feedback -
    temporalIndCom(Task, Task) - -Static method in class nars.inference.SyllogisticRules -
    { S>, P>} |- { P>,

    S>, P>} -

    temporalOrder - -Variable in class nars.language.Conjunction -
    Temporal order between the components: 1 for sequential, 0 for parallel, -1 for N/A -
    temporalSyllogism(int, int, int) - -Static method in class nars.inference.SyllogisticRules -
    Temporal inference in syllogism, with figure -
    TENSE_FUTURE - -Static variable in class nars.io.Symbols -
      -
    TENSE_MARK - -Static variable in class nars.io.Symbols -
      -
    TENSE_PAST - -Static variable in class nars.io.Symbols -
      -
    TENSE_PRESENT - -Static variable in class nars.io.Symbols -
      -
    tenseToString() - -Method in class nars.entity.Sentence -
    Get a String representation of the tense of the sentence -
    term - -Variable in class nars.entity.Concept -
    The term is the unique ID of the concept -
    Term - Class in nars.language
    Term is the basic component of Narsese, and the object of processing in NARS.
    Term() - -Constructor for class nars.language.Term -
    Default constructor -
    Term(String) - -Constructor for class nars.language.Term +
    TaskLinkBag - Class in nars.container
    TaskLinkBag contains links to tasks.
    TaskLinkBag(Memory) - +Constructor for class nars.container.TaskLinkBag +
    Constructor +
    Term - Class in nars.term
    Term is the basic component of Narsese, and the object of processing in NARS.
    Term() - +Constructor for class nars.term.Term +
    Default constructor that build an internal Term +
    Term(String) - +Constructor for class nars.term.Term
    Constructor with a given name
    TERM_LINK_BAG_SIZE - Static variable in class nars.main.Parameters @@ -176,72 +131,33 @@
    TERM_LINK_RECORD_LENGTH - Static variable in class nars.main.Parameters
    Remember recently used TermLink on a Task -
    termField - -Variable in class nars.gui.TermWindow -
    Input field for term name -
    termLabel - -Variable in class nars.gui.TermWindow -
    Display label -
    TermLink - Class in nars.entity
    A link between a compound term and a component term
    TermLink() - -Constructor for class nars.entity.TermLink -
    Default constructor -
    TermLink(Term, short, int...) - +
    TermLink - Class in nars.entity
    A link between a compound term and a component term
    TermLink(Term, short, int...) - Constructor for class nars.entity.TermLink
    Constructor for TermLink template -
    TermLink(BudgetValue) - +
    TermLink(String, BudgetValue) - Constructor for class nars.entity.TermLink -
    Default Constructor need in TaskLink -
    TermLink(Term, TermLink, BudgetValue) - +
    called from TaskLink +
    TermLink(Term, TermLink, BudgetValue) - Constructor for class nars.entity.TermLink
    Constructor to make actual TermLink from a template -
    TermLinkBag - Class in nars.storage
    Contains TermLinks to relevant (compound or component) Terms.
    TermLinkBag() - -Constructor for class nars.storage.TermLinkBag -
      -
    termLinks - -Variable in class nars.entity.Concept -
    Term links between the term and its components and compounds -
    termLinkTemplates - -Variable in class nars.entity.Concept -
    Link templates of TermLink, only in concepts with CompoundTerm -
    termToConcept(Term) - -Static method in class nars.main.Memory -
    Get an existing Concept for a given Term. -
    TermWindow - Class in nars.gui
    Window accept a Term, then display the content of the corresponding Concept
    TermWindow() - -Constructor for class nars.gui.TermWindow +
    TermLinkBag - Class in nars.container
    Contains TermLinks to relevant (compound or component) Terms.
    TermLinkBag(Memory) - +Constructor for class nars.container.TermLinkBag
    Constructor -
    text - -Variable in class nars.gui.BagWindow -
    Display area -
    text - -Variable in class nars.gui.ConceptWindow -
    Display area -
    text - -Variable in class nars.gui.InferenceWindow -
    Display area -
    text - +
    termToConcept(Term) - +Method in class nars.container.Memory +
    Get an existing Concept for a given Term. +
    TermWindow - Class in nars.gui
    Window accept a Term, then display the content of the corresponding Concept
    text - Variable in class nars.gui.MessageDialog
      -
    THRESHOLD - -Static variable in class nars.storage.Bag -
    firing threshold -
    Throw - Class in nars.operation
    A class used in testing only.
    Throw(String) - -Constructor for class nars.operation.Throw -
      -
    tick() - -Static method in class nars.main.Center +
    textInputLine(String) - +Method in class nars.main.Reasoner +
    To process a line of input text +
    tick() - +Method in class nars.main.Reasoner
    A clock tick.
    tickTimer() - Method in class nars.gui.MainWindow
    Update timer and its display -
    timer - -Variable in class nars.gui.MainWindow -
    System clock -
    timerLabel - -Variable in class nars.gui.MainWindow -
    Label of the clock -
    timerText - -Variable in class nars.gui.MainWindow -
    Clock display field
    TO_COMPONENT_1 - Static variable in class nars.io.Symbols
      @@ -254,22 +170,18 @@
    TO_COMPOUND_2 - Static variable in class nars.io.Symbols
      -
    toKey() - -Method in class nars.entity.Sentence -
    Get a stable String representation for a Sentece - Different from toString: tense symbol is replaced by the actual value -
    topRelation(String) - -Static method in class nars.io.StringParser -
    locate the top-level relation in a statement -
    toSet() - -Method in class nars.entity.Stamp -
    Convert the trail into a set +
    toString() - +Method in class nars.container.Bag +
    Collect Bag content into a String for display
    toString() - Method in class nars.entity.BudgetValue
    Fully display the BudgetValue
    toString() - Method in class nars.entity.Concept
    Return a string representation of the concept, called in ConceptBag only +
    toString() - +Method in class nars.entity.Item +
    Return a String representation of the Item
    toString() - Method in class nars.entity.Sentence
    Get a String representation of the sentence @@ -279,70 +191,40 @@
    toString() - Method in class nars.entity.Stamp
    Get a String form of the Stamp for display - Format: {creationTime [: eventTime] : trail} + Format: {creationTime [: eventTime] : evidentialBase}
    toString() - Method in class nars.entity.Task
    Get a String representation of the Task -
    toString() - -Method in class nars.entity.TermLink -
    Get a String representation of the link, with full accuracy
    toString() - Method in class nars.entity.TruthValue
    The String representation of a TruthValue -
    toString() - -Method in class nars.language.Term -
    The same as getName, used in display. -
    toString() - -Method in class nars.storage.Bag -
    Collect Bag content into a String for display -
    toString() - -Method in class nars.storage.TaskBuffer -
    Sepecial treatment: the display also include Tasks in the NewTask list -
    toString2() - +
    toString() - +Method in class nars.term.Term +
    The same as getName by default, used in display only. +
    toStringBrief() - Method in class nars.entity.BudgetValue
    Briefly display the BudgetValue -
    toString2() - +
    toStringBrief() - +Method in class nars.entity.Item +
    Return a String representation of the Item after simplification +
    toStringBrief() - Method in class nars.entity.Sentence
    Get a String representation of the sentence, with 2-digit accuracy -
    toString2() - +
    toStringBrief() - Method in class nars.entity.ShortFloat
    Round the value into a short String -
    toString2() - -Method in class nars.entity.Task -
    Get a String representation of the Task, with reduced accuracy -
    toString2() - -Method in class nars.entity.TermLink -
    Get a String representation of the link, with 2-digit accuracy -
    toString2() - +
    toStringBrief() - Method in class nars.entity.TruthValue
    A simplified String representation of a TruthValue, where each factor is accruate to 1% -
    TOTAL_LEVEL - -Static variable in class nars.storage.Bag -
    priority levels -
    trail - -Variable in class nars.entity.Stamp -
    serial numbers
    TRANSFORM - Static variable in class nars.entity.TermLink
    At C, point to <(*, C, B) --> A>; TaskLink only -
    transformNegation(Term) - +
    transformNegation(Term, Memory) - Static method in class nars.inference.StructuralRules
    {A, A@(--, A)} |- (--, A) -
    transformProductImage(Inheritance, CompoundTerm, short[], Task) - -Static method in class nars.inference.StructuralRules -
    Equivalent transformation between products and images - {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> - { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> - { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)> -
    transformSetRelation(CompoundTerm, Statement, short) - -Static method in class nars.inference.StructuralRules -
    { {P}>} |- {P}> -
    transformTask(Task, TaskLink) - +
    transformTask(TaskLink, Memory) - Static method in class nars.inference.RuleTables
    The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation -
    truth - -Variable in class nars.entity.Sentence -
    The truth value of Judgment or desire value of Goal
    TRUTH_VALUE_MARK - Static variable in class nars.io.Symbols
      @@ -358,15 +240,12 @@
    TruthValue(TruthValue) - Constructor for class nars.entity.TruthValue
    Constructor with a TruthValue to clone -
    trySolution(Sentence, Judgment, Task) - -Static method in class nars.inference.MatchingRules -
    Check if a Judgment provide a better answer to a Question +
    trySolution(Sentence, Sentence, Task, Memory) - +Static method in class nars.inference.LocalRules +
    Check if a Sentence provide a better answer to a Question or Goal
    type - Variable in class nars.entity.TermLink
    The type of link, one of the above -
    type - -Variable in class nars.language.Variable -
    Type of the variable

    @@ -421,7 +300,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-21.html b/nars-dist/javadoc/index-files/index-21.html index f5b74348..4a8a4b0b 100644 --- a/nars-dist/javadoc/index-files/index-21.html +++ b/nars-dist/javadoc/index-files/index-21.html @@ -2,13 +2,13 @@ - + -U-Index (NARS Document) +U-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="U-Index (NARS Document)"; + parent.document.title="U-Index"; } } @@ -79,25 +79,19 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    U

    -
    UNAVAILABLE - -Static variable in class nars.gui.NarsFrame -
    Message for unimplemented functions -
    undoButton - -Variable in class nars.gui.ParameterWindow -
    Control buttons -
    unify(Variable.VarType, Term, Term, Term, Term) - -Static method in class nars.language.Variable -
    To unify two Terms, then apply the substitution to the two compounds -
    union(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { S>, P>} |- (S|P)> -
    update(Task, TruthValue) - -Static method in class nars.inference.BudgetFunctions -
    Update a belief +
    unify(char, Term, Term) - +Static method in class nars.term.Variable +
    To unify two terms +
    unify(char, Term, Term, Term, Term) - +Static method in class nars.term.Variable +
    To unify two terms +
    updateTimer() - +Method in class nars.gui.MainWindow +
    To get the timer value and then to reset it
    UtilityFunctions - Class in nars.inference
    Common functions on real numbers, mostly in [0,1].
    UtilityFunctions() - Constructor for class nars.inference.UtilityFunctions
      @@ -155,7 +149,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-22.html b/nars-dist/javadoc/index-files/index-22.html index 809081e8..f5103887 100644 --- a/nars-dist/javadoc/index-files/index-22.html +++ b/nars-dist/javadoc/index-files/index-22.html @@ -2,13 +2,13 @@ - + -V-Index (NARS Document) +V-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="V-Index (NARS Document)"; + parent.document.title="V-Index"; } } @@ -79,51 +79,28 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    V

    -
    value - -Variable in class nars.entity.ShortFloat -
    To save space, the values are stored as short integers (-32768 to 32767, only 0 to 10000 used), - but used as float
    value() - Method in class nars.gui.ParameterWindow
    Get the value of the parameter
    VALUE_SEPARATOR - Static variable in class nars.io.Symbols
      -
    valueBar - -Variable in class nars.gui.BagWindow -
    Adjustable display level -
    valueBar - -Variable in class nars.gui.ParameterWindow -
    Adjusting bar -
    valueLabel - -Variable in class nars.gui.BagWindow -
    Display label -
    valueLabel - -Variable in class nars.gui.ParameterWindow -
    Display label -
    valueOf(String) - -Static method in enum nars.language.Variable.VarType -
    Returns the enum constant of this type with the specified name. -
    values() - -Static method in enum nars.language.Variable.VarType -
    Returns an array containing the constants of this enum type, in -the order they are declared. -
    Variable - Class in nars.language
    A variable term, which does not correspond to a concept
    Variable(String) - -Constructor for class nars.language.Variable -
    Constructor, from a given variable name -
    Variable(String, Variable.VarType, CompoundTerm) - -Constructor for class nars.language.Variable -
    Constructor, with all fields -
    Variable.VarType - Enum in nars.language
    Four variable types plus a wild card
    Variable.VarType() - -Constructor for enum nars.language.Variable.VarType +
    VAR_DEPENDENT - +Static variable in class nars.io.Symbols
      -
    VARIABLE_TAG - +
    VAR_INDEPENDENT - Static variable in class nars.io.Symbols
      +
    VAR_QUERY - +Static variable in class nars.io.Symbols +
      +
    Variable - Class in nars.term
    A variable term, which does not correspond to a concept
    Variable(String) - +Constructor for class nars.term.Variable +
    Constructor, from a given variable name

    @@ -178,7 +155,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-23.html b/nars-dist/javadoc/index-files/index-23.html index 3eba7a9b..a10ed19c 100644 --- a/nars-dist/javadoc/index-files/index-23.html +++ b/nars-dist/javadoc/index-files/index-23.html @@ -2,13 +2,13 @@ - + -W-Index (NARS Document) +W-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="W-Index (NARS Document)"; + parent.document.title="W-Index"; } } @@ -57,7 +57,7 @@  PREV LETTER  - NEXT LETTER + NEXT LETTER
    FRAMES    NO FRAMES   @@ -79,37 +79,19 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    W

    w2c(float) - Static method in class nars.inference.UtilityFunctions
    A function to convert weight to confidence -
    walkButton - -Variable in class nars.gui.MainWindow -
    Control buttons -
    watched - -Variable in class nars.gui.InferenceWindow -
    Type of catched text -
    watchText - -Variable in class nars.gui.InferenceWindow -
    String to be catched -
    watchType - -Variable in class nars.gui.InferenceWindow -
    Type of catched text +
    walk(int) - +Method in class nars.main.Reasoner +
    Carry the inference process for a certain number of steps
    WEBSITE - Static variable in class nars.main.NARS
    The project websites. -
    window - -Variable in class nars.entity.Concept -
    The display window -
    window - -Static variable in class nars.io.Record -
    the display window -
    window - -Variable in class nars.storage.Bag -
    display window
    windowActivated(WindowEvent) - Method in class nars.gui.MessageDialog
      @@ -173,6 +155,9 @@
    windowOpened(WindowEvent) - Method in class nars.gui.NarsFrame
      +
    workCycle(long) - +Method in class nars.container.Memory +
    An atomic working workCycle of the system: process new Tasks, then fire a concept

    @@ -205,7 +190,7 @@  PREV LETTER  - NEXT LETTER + NEXT LETTER
    FRAMES    NO FRAMES   @@ -227,7 +212,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-3.html b/nars-dist/javadoc/index-files/index-3.html index 1df9d435..9c73864e 100644 --- a/nars-dist/javadoc/index-files/index-3.html +++ b/nars-dist/javadoc/index-files/index-3.html @@ -2,13 +2,13 @@ - + -C-Index (NARS Document) +C-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="C-Index (NARS Document)"; + parent.document.title="C-Index"; } } @@ -79,180 +79,129 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    C

    c2w(float) - Static method in class nars.inference.UtilityFunctions
    A function to convert confidence to weight -
    calcComplexity() - -Method in class nars.language.CompoundTerm -
    The complexity of the term is the sum of those of the components plus 1 -
    call(Task) - -Method in class nars.operation.Operator -
    Execute an operation, then handle feedback -
    capacity - -Variable in class nars.storage.Bag -
    defined in different bags -
    capacity() - -Method in class nars.storage.Bag +
    capacity() - +Method in class nars.container.Bag
    To get the capacity of the concrete subclass -
    capacity() - -Method in class nars.storage.ConceptBag +
    capacity() - +Method in class nars.container.ConceptBag
    Get the (constant) capacity of ConceptBag -
    capacity - -Variable in class nars.storage.Distributor -
    Capacity of the array -
    capacity() - -Method in class nars.storage.TaskBuffer -
    Get the (constant) capacity of TaskBuffer -
    capacity() - -Method in class nars.storage.TaskLinkBag +
    capacity() - +Method in class nars.container.NovelTaskBag +
    Get the (constant) capacity of NovelTaskBag +
    capacity() - +Method in class nars.container.TaskLinkBag
    Get the (constant) capacity of TaskLinkBag -
    capacity() - -Method in class nars.storage.TermLinkBag +
    capacity() - +Method in class nars.container.TermLinkBag
    Get the (constant) capacity of TermLinkBag -
    Center - Class in nars.main
    The control center of the system.
    Center() - -Constructor for class nars.main.Center -
      -
    checkRevisibility() - -Method in class nars.entity.Concept -
    Judgments with dependent variable cannot be revised
    clear() - Method in class nars.gui.InferenceWindow
    Clear display -
    clearButton - -Variable in class nars.gui.InputWindow -
    Control buttons -
    clock - -Static variable in class nars.main.Center -
    System clock, relatively defined to guaranttee the repeatability of behaviors
    clone() - Method in class nars.entity.BudgetValue
    Cloning method
    clone() - Method in class nars.entity.Sentence
    Clone the Sentence -
    clone() - -Method in class nars.language.CompoundTerm +
    clone() - +Method in class nars.entity.ShortFloat +
    To create an identifical copy of the ShortFloat +
    clone() - +Method in class nars.entity.Stamp +
    Clone a stamp +
    clone() - +Method in class nars.entity.TruthValue +
      +
    clone() - +Method in class nars.term.CompoundTerm
    Abstract clone method -
    clone() - -Method in class nars.language.Conjunction +
    clone() - +Method in class nars.term.Conjunction
    Clone an object -
    clone() - -Method in class nars.language.DifferenceExt +
    clone() - +Method in class nars.term.DifferenceExt
    Clone an object -
    clone() - -Method in class nars.language.DifferenceInt +
    clone() - +Method in class nars.term.DifferenceInt
    Clone an object -
    clone() - -Method in class nars.language.Disjunction +
    clone() - +Method in class nars.term.Disjunction
    Clone an object -
    clone() - -Method in class nars.language.Equivalence +
    clone() - +Method in class nars.term.Equivalence
    Clone an object -
    clone() - -Method in class nars.language.ImageExt +
    clone() - +Method in class nars.term.ImageExt
    Clone an object -
    clone() - -Method in class nars.language.ImageInt +
    clone() - +Method in class nars.term.ImageInt
    Clone an object -
    clone() - -Method in class nars.language.Implication +
    clone() - +Method in class nars.term.Implication
    Clone an object -
    clone() - -Method in class nars.language.Inheritance +
    clone() - +Method in class nars.term.Inheritance
    Clone an object -
    clone() - -Method in class nars.language.IntersectionExt +
    clone() - +Method in class nars.term.IntersectionExt
    Clone an object -
    clone() - -Method in class nars.language.IntersectionInt +
    clone() - +Method in class nars.term.IntersectionInt
    Clone an object -
    clone() - -Method in class nars.language.Negation +
    clone() - +Method in class nars.term.Negation
    Clone an object -
    clone() - -Method in class nars.language.Product +
    clone() - +Method in class nars.term.Product
    Clone a Product -
    clone() - -Method in class nars.language.SetExt +
    clone() - +Method in class nars.term.SetExt
    Clone a SetExt -
    clone() - -Method in class nars.language.SetInt +
    clone() - +Method in class nars.term.SetInt
    Clone a SetInt -
    clone() - -Method in class nars.language.Similarity +
    clone() - +Method in class nars.term.Similarity
    Clone an object -
    clone() - -Method in class nars.language.Term +
    clone() - +Method in class nars.term.Term
    Make a new Term with the same name. -
    clone() - -Method in class nars.language.Variable +
    clone() - +Method in class nars.term.Variable
    Clone a Variable -
    cloneComponents() - -Method in class nars.language.CompoundTerm +
    cloneComponents() - +Method in class nars.term.CompoundTerm
    Clone the component list
    cloneContent() - Method in class nars.entity.Sentence
    Clone the content of the sentence -
    cloneList(ArrayList) - -Static method in class nars.language.CompoundTerm +
    cloneList(ArrayList<Term>) - +Static method in class nars.term.CompoundTerm
    Deep clone an array list of terms -
    close() - -Method in class nars.gui.BagWindow -
      -
    close() - -Method in class nars.gui.ConceptWindow -
      -
    close() - -Method in class nars.gui.InferenceWindow -
      -
    close() - -Method in class nars.gui.InputWindow -
      -
    close() - -Method in class nars.gui.MainWindow -
      -
    close() - -Method in class nars.gui.MessageDialog -
      -
    close() - -Method in class nars.gui.ParameterWindow -
      -
    close() - -Method in class nars.gui.TermWindow -
      -
    closeButton - -Variable in class nars.gui.BagWindow -
    Control buttons -
    closeButton - -Variable in class nars.gui.ConceptWindow -
    Control buttons -
    closeButton - -Variable in class nars.gui.InputWindow -
    Control buttons -
    closeLoadFile() - -Method in class nars.io.ExperienceIO +
    closeLoadFile() - +Method in class nars.io.ExperienceReader
    Close an input experience file -
    closeLogFile() - -Static method in class nars.io.Record +
    closeLogFile() - +Method in class nars.io.InferenceRecorder
    Close the log file -
    closeSaveFile() - -Method in class nars.io.ExperienceIO +
    closeSaveFile() - +Method in class nars.io.ExperienceWriter
    Close an output experience file
    COMMENT_MARK - Static variable in class nars.io.Symbols
      -
    compareTo(Term) - -Method in class nars.language.Term +
    compareTo(Term) - +Method in class nars.term.Term
    Check the relative order of two Terms. -
    comparison(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { S>, P>} |- P> -
    complexity - -Variable in class nars.language.CompoundTerm +
    complexity - +Variable in class nars.term.CompoundTerm
    syntactic complexity of the compound, the sum of those of its components plus 1
    COMPONENT - Static variable in class nars.entity.TermLink @@ -263,18 +212,12 @@
    COMPONENT_STATEMENT - Static variable in class nars.entity.TermLink
    At A>, point to C -
    componentAndStatement(CompoundTerm, short, Statement, short) - -Static method in class nars.inference.RuleTables -
    Inference between a component term (of the current term) and a statement -
    componentAt(int) - -Method in class nars.language.CompoundTerm +
    componentAt(int) - +Method in class nars.term.CompoundTerm
    get a component by index -
    components - -Variable in class nars.language.CompoundTerm +
    components - +Variable in class nars.term.CompoundTerm
    list of (direct) components -
    composeCompound(Sentence, Judgment, int) - -Static method in class nars.inference.CompositionalRules -
    { M>,

    M>} |- {<(S|P) ==> M>, <(S&P) ==> M>, <(S-P) ==> M>, <(P-S) ==> M>}

    CompositionalRules - Class in nars.inference
    Compound term composition and decomposition rules, with two premises.
    CompositionalRules() - Constructor for class nars.inference.CompositionalRules
      @@ -293,160 +236,106 @@
    COMPOUND_TERM_OPENER - Static variable in class nars.io.Symbols
      -
    compoundAndCompound(CompoundTerm, CompoundTerm) - -Static method in class nars.inference.RuleTables -
    Inference between two compound terms -
    compoundAndSelf(CompoundTerm, Term, boolean) - -Static method in class nars.inference.RuleTables -
    Inference between a compound term and a component of it -
    compoundAndStatement(CompoundTerm, short, Statement, short, Term) - -Static method in class nars.inference.RuleTables -
    Inference between a compound term and a statement -
    compoundBackward(Term) - +
    compoundBackward(Term, Memory) - Static method in class nars.inference.BudgetFunctions
    Backward inference with CompoundTerm conclusion, stronger case -
    compoundBackwardWeak(Term) - +
    compoundBackwardWeak(Term, Memory) - Static method in class nars.inference.BudgetFunctions
    Backward inference with CompoundTerm conclusion, weaker case -
    compoundForward(TruthValue, Term) - +
    compoundForward(TruthValue, Term, Memory) - Static method in class nars.inference.BudgetFunctions
    Forward inference with CompoundTerm conclusion -
    CompoundTerm - Class in nars.language
    A CompoundTerm is a Term with internal (syntactic) structure
    CompoundTerm() - -Constructor for class nars.language.CompoundTerm +
    CompoundTerm - Class in nars.term
    A CompoundTerm is a Term with internal (syntactic) structure
    CompoundTerm() - +Constructor for class nars.term.CompoundTerm
    Default constructor -
    CompoundTerm(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.CompoundTerm +
    CompoundTerm(String, ArrayList<Term>, boolean, short) - +Constructor for class nars.term.CompoundTerm
    Constructor called from subclasses constructors to clone the fields -
    CompoundTerm(String, ArrayList<Term>) - -Constructor for class nars.language.CompoundTerm +
    CompoundTerm(ArrayList<Term>) - +Constructor for class nars.term.CompoundTerm +
    Constructor called from subclasses constructors to initialize the fields +
    CompoundTerm(String, ArrayList<Term>) - +Constructor for class nars.term.CompoundTerm
    Constructor called from subclasses constructors to initialize the fields
    Concept - Class in nars.entity
    A concept contains information associated with a term, including directly - and indirectly related tasks and beliefs.
    Concept(Term) - + and indirectly related tasks and beliefs.
    Concept(Term, Memory) - Constructor for class nars.entity.Concept
    Constructor, called in Memory.getConcept only -
    concept - -Variable in class nars.gui.ConceptWindow -
    The concept to be displayed
    CONCEPT_BAG_SIZE - Static variable in class nars.main.Parameters
    Size of ConceptBag
    CONCEPT_FORGETTING_CYCLE - Static variable in class nars.main.Parameters
    Concept decay rate in ConceptBag, in [1, 99]. -
    ConceptBag - Class in nars.storage
    Contains Concepts.
    ConceptBag() - -Constructor for class nars.storage.ConceptBag -
      -
    concepts - -Static variable in class nars.main.Memory -
    Concept bag. -
    conceptsStartPlay(String) - -Static method in class nars.main.Memory +
    ConceptBag - Class in nars.container
    Contains Concepts.
    ConceptBag(Memory) - +Constructor for class nars.container.ConceptBag +
    Constructor +
    conceptsStartPlay(String) - +Method in class nars.container.Memory
    Display active concepts, called from MainWindow.
    conceptWin - -Static variable in class nars.gui.MainWindow +Variable in class nars.gui.MainWindow
    Window to accept a Term to be looked into
    ConceptWindow - Class in nars.gui
    Window displaying the content of a Concept, such as beliefs, goals, and questions
    ConceptWindow(Concept) - Constructor for class nars.gui.ConceptWindow
    Constructor -
    conditionalAbd(Term, Term, Statement, Statement) - -Static method in class nars.inference.SyllogisticRules -
    {<(&&, S2, S3) ==> P>, <(&&, S1, S3) ==> P>} |- S2> -
    conditionalDedInd(Implication, short, Term, int) - -Static method in class nars.inference.SyllogisticRules -
    {<(&&, S1, S2, S3) ==> P>, S1} |- <(&&, S2, S3) ==> P> - {<(&&, S2, S3) ==> P>, S2>} |- <(&&, S1, S3) ==> P> - {<(&&, S1, S3) ==> P>, S2>} |- <(&&, S2, S3) ==> P> -
    conditionalDedIndWithVar(Implication, short, Statement, short) - -Static method in class nars.inference.RuleTables -
    Conditional deduction or induction, with variable unification -
    confidence - -Variable in class nars.entity.TruthValue -
    The confidence factor of the truth value -
    Conjunction - Class in nars.language
    Conjunction of statements
    Conjunction(String, ArrayList<Term>, int) - -Constructor for class nars.language.Conjunction +
    Conjunction - Class in nars.term
    Conjunction of statements
    Conjunction(ArrayList<Term>) - +Constructor for class nars.term.Conjunction
    Constructor with partial values, called by make -
    Conjunction(String, ArrayList<Term>, ArrayList<Variable>, short, int) - -Constructor for class nars.language.Conjunction +
    Conjunction(String, ArrayList<Term>, boolean, short) - +Constructor for class nars.term.Conjunction
    Constructor with full values, called by clone
    CONJUNCTION_OPERATOR - Static variable in class nars.io.Symbols
      -
    containAllComponents(Term) - -Method in class nars.language.CompoundTerm +
    containAllComponents(Term) - +Method in class nars.term.CompoundTerm
    Check whether the compound contains all components of another term, or that term as a whole -
    containComponent(Term) - -Method in class nars.language.CompoundTerm +
    containComponent(Term) - +Method in class nars.term.CompoundTerm
    Check whether the compound contains a certain component -
    containNoVariable() - -Method in class nars.language.CompoundTerm -
    check if the term contains any variable -
    contains(Type) - -Method in class nars.storage.Bag +
    contains(Type) - +Method in class nars.container.Bag
    Check if an item is in the bag -
    content - -Variable in class nars.entity.Sentence -
    The content of a Sentence is a Term -
    continuedProcess(Task, Term) - -Static method in class nars.main.Memory -
    Link to a new task from all relevant concepts for continued processing in - the near future for unspecified time. -
    contraposition(Statement) - -Static method in class nars.inference.StructuralRules -
    { B>, A@(--, A)} |- <(--, B) ==> (--, A)> -
    contraposition(TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { B>} |- <(--, B) ==> (--, A)> -
    conversion() - -Static method in class nars.inference.MatchingRules -
    {

    S>} |- P> - Produce an Inheritance/Implication from a reversed Inheritance/Implication -

    conversion(TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { B>} |- A> -
    convertedJudgment(TruthValue, BudgetValue) - -Static method in class nars.main.Memory -
    Convert jusgment into different relation -
    convertRelation() - -Static method in class nars.inference.MatchingRules -
    { P>} |- P> - { P>} |- P> - Switch between Inheritance/Implication and Similarity/Equivalence -
    counter - -Static variable in class nars.gui.BagWindow -
    The location of the display area, shifted according to the number of windows openned -
    creationTime - -Variable in class nars.entity.Stamp -
    creation time of the stamp -
    current - -Static variable in class nars.entity.Stamp -
    serial number, for the whole system -
    currentBelief - -Static variable in class nars.main.Memory -
    Shortcut to the selected belief -
    currentBeliefLink - -Static variable in class nars.main.Memory -
    Shortcut to the selected TermLink -
    currentCounter - -Variable in class nars.storage.Bag -
    maximum number of items to be taken out at current level -
    currentLevel - -Variable in class nars.storage.Bag -
    current take out level -
    currentTask - -Static variable in class nars.main.Memory -
    Shortcut to the selected Task -
    currentTaskLink - -Static variable in class nars.main.Memory -
    Shortcut to the selected TaskLink -
    currentTerm - -Static variable in class nars.main.Memory -
    Shortcut to the selected Term -
    currentValue - -Variable in class nars.gui.ParameterWindow -
    parameter values -
    cycle() - -Static method in class nars.main.Memory -
    An atomic working cycle of the system: process new Tasks, then fire a concept +
    containTerm(Term) - +Method in class nars.term.CompoundTerm +
    Recursively check if a compound contains a term +
    containTerm(Term) - +Method in class nars.term.Term +
    Recursively check if a compound contains a term +
    containVar() - +Method in class nars.term.CompoundTerm +
    Whether this compound term contains any variable term +
    containVar(String) - +Static method in class nars.term.Variable +
    Check whether a string represent a name of a term that contains a variable +
    containVarDep(String) - +Static method in class nars.term.Variable +
    Check whether a string represent a name of a term that contains a dependent variable +
    containVarIndep(String) - +Static method in class nars.term.Variable +
    Check whether a string represent a name of a term that contains an independent variable +
    containVarQuery(String) - +Static method in class nars.term.Variable +
    Check whether a string represent a name of a term that contains a query variable +
    currentBelief - +Variable in class nars.container.Memory +
    The selected belief +
    currentBeliefLink - +Variable in class nars.container.Memory +
    The selected TermLink +
    currentConcept - +Variable in class nars.container.Memory +
    The selected Concept +
    currentTask - +Variable in class nars.container.Memory +
    The selected Task +
    currentTaskLink - +Variable in class nars.container.Memory +
    The selected TaskLink +
    currentTerm - +Variable in class nars.container.Memory +
    The selected Term

    @@ -501,7 +390,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-4.html b/nars-dist/javadoc/index-files/index-4.html index cc8d8acd..33bb3670 100644 --- a/nars-dist/javadoc/index-files/index-4.html +++ b/nars-dist/javadoc/index-files/index-4.html @@ -2,13 +2,13 @@ - + -D-Index (NARS Document) +D-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="D-Index (NARS Document)"; + parent.document.title="D-Index"; } } @@ -79,44 +79,31 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    D

    decDurability(float) - Method in class nars.entity.BudgetValue
    Decrease durability value by a percentage of the remaining range -
    DECISION_THRESHOLD - -Static variable in class nars.main.Parameters -
    The desireability threthold for an operation to be executed. -
    decomposeCompound(CompoundTerm, Term, Term, int, boolean) - -Static method in class nars.inference.CompositionalRules -
    {<(S|P) ==> M>,

    M>} |- M> -

    decomposeStatement(CompoundTerm, Term, boolean) - -Static method in class nars.inference.CompositionalRules -
    {(||, S, P), P} |- S - {(&&, S, P), P} |- S +
    decDurability(float) - +Method in class nars.entity.Item +
    Decrease durability value
    decPriority(float) - Method in class nars.entity.BudgetValue
    Decrease priority value by a percentage of the remaining range +
    decPriority(float) - +Method in class nars.entity.Item +
    Decrease priority value
    decQuality(float) - Method in class nars.entity.BudgetValue
    Decrease quality value by a percentage of the remaining range -
    dedExe(Term, Term, Sentence, Judgment) - -Static method in class nars.inference.SyllogisticRules -
    { M>, P>} |- { P>,

    S>} -

    deduction(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { M>, P>} |- P> -
    deduction(TruthValue, float) - -Static method in class nars.inference.TruthFunctions -
    {M, P>} |- P -
    DEFAULT_GOAL_DURABILITY - +
    DEFAULT_CONFIRMATION_EXPECTATION - Static variable in class nars.main.Parameters -
    Default durability of input goal -
    DEFAULT_GOAL_PRIORITY - +
    Default expectation for conformation. +
    DEFAULT_CREATION_EXPECTATION - Static variable in class nars.main.Parameters -
    Default priority of input goal +
    Default expectation for conformation.
    DEFAULT_JUDGMENT_CONFIDENCE - Static variable in class nars.main.Parameters
    Default confidence of input judgment. @@ -132,94 +119,30 @@
    DEFAULT_QUESTION_PRIORITY - Static variable in class nars.main.Parameters
    Default priority of input question -
    defaultButton - -Variable in class nars.gui.ParameterWindow -
    Control buttons -
    defaultValue - -Variable in class nars.gui.ParameterWindow -
    parameter values -
    DELIMITER - -Static variable in class nars.entity.TruthValue -
    The charactor that marks the two ends of a truth value -
    derivedTask(Task) - -Static method in class nars.main.Memory -
    Derived task comes from the inference rules. -
    desireDed(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    A function specially designed for desire value [To be refined] -
    desireInd(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    A function specially designed for desire value [To be refined] -
    desireStrong(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    A function specially designed for desire value [To be refined] -
    desireWeak(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    A function specially designed for desire value [To be refined]
    detachFromConcept() - Method in class nars.gui.ConceptWindow
    This is called when Concept removes this as its window. -
    detachment(Sentence, Sentence, int) - -Static method in class nars.inference.SyllogisticRules -
    {< S> ==> P>>, S>} |- P> - {< S> ==> P>>, P>} |- S> -
    detachmentWithVar(Sentence, Sentence, int) - -Static method in class nars.inference.RuleTables -
    The detachment rule, with variable unification -
    difference(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { S>, P>} |- (S-P)>
    DIFFERENCE_EXT_OPERATOR - Static variable in class nars.io.Symbols
     
    DIFFERENCE_INT_OPERATOR - Static variable in class nars.io.Symbols
      -
    DifferenceExt - Class in nars.language
    A compound term whose extension is the difference of the extensions of its components
    DifferenceExt(String, ArrayList<Term>) - -Constructor for class nars.language.DifferenceExt -
    Constructor with partial values, called by make -
    DifferenceExt(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.DifferenceExt -
    Constructor with full values, called by clone -
    DifferenceInt - Class in nars.language
    A compound term whose extension is the difference of the intensions of its components
    DifferenceInt(String, ArrayList<Term>) - -Constructor for class nars.language.DifferenceInt -
    Constructor with partial values, called by make -
    DifferenceInt(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.DifferenceInt -
    Constructor with full values, called by clone -
    directProcess(Task) - +
    DifferenceExt - Class in nars.term
    A compound term whose extension is the difference of the extensions of its components
    DifferenceInt - Class in nars.term
    A compound term whose extension is the difference of the intensions of its components
    directProcess(Task) - Method in class nars.entity.Concept
    Directly process a new task. -
    Disjunction - Class in nars.language
    A disjunction of Statements.
    Disjunction(String, ArrayList<Term>) - -Constructor for class nars.language.Disjunction -
    Constructor with partial values, called by make -
    Disjunction(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.Disjunction -
    Constructor with full values, called by clone -
    DISJUNCTION_OPERATOR - +
    Disjunction - Class in nars.term
    A disjunction of Statements.
    DISJUNCTION_OPERATOR - Static variable in class nars.io.Symbols
      -
    DISPLAY_BACKGROUND_COLOR - -Static variable in class nars.gui.NarsFrame -
    Color for the background of the text components that are read-only
    displayContent() - Method in class nars.entity.Concept -
    Collect direct belief, questions, and goals for display +
    Collect direct isBelief, questions, and goals for display
    distributeAmongLinks(BudgetValue, int) - Static method in class nars.inference.BudgetFunctions
    Distribute the budget of a task among the links to it -
    DISTRIBUTOR - -Static variable in class nars.storage.Bag -
    shared distributor that produce the probability distribution -
    Distributor - Class in nars.storage
    A pseudo-random number generator, used in Bag.
    Distributor(int) - -Constructor for class nars.storage.Distributor -
    For any number N < range, there is N+1 copies of it in the array, distributed as evenly as possible -
    doublePremiseTask(BudgetValue, Term, TruthValue, Sentence, Sentence) - -Static method in class nars.main.Memory +
    doublePremiseTask(Term, TruthValue, BudgetValue) - +Method in class nars.container.Memory
    Shared final operations by all double-premise rules, called from the rules except StructuralRules -
    Drop - Class in nars.operation
    A class used in testing only.
    Drop(String) - -Constructor for class nars.operation.Drop -
     
    durability - Variable in class nars.entity.BudgetValue
    The percent of priority to be kept in a constant period @@ -277,7 +200,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-5.html b/nars-dist/javadoc/index-files/index-5.html index 7c23a032..68bf0b9a 100644 --- a/nars-dist/javadoc/index-files/index-5.html +++ b/nars-dist/javadoc/index-files/index-5.html @@ -2,13 +2,13 @@ - + -E-Index (NARS Document) +E-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="E-Index (NARS Document)"; + parent.document.title="E-Index"; } } @@ -79,13 +79,16 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    E

    -
    emptyLevel(int) - -Method in class nars.storage.Bag +
    emptyLevel(int) - +Method in class nars.container.Bag
    Check whether a level is empty +
    equals(Object) - +Method in class nars.entity.Sentence +
    To check whether two sentences are equal
    equals(Object) - Method in class nars.entity.ShortFloat
    Compare two ShortFloat values @@ -95,81 +98,27 @@
    equals(Object) - Method in class nars.entity.TruthValue
    Compare two truth values -
    equals(Object) - -Method in class nars.language.Term +
    equals(Object) - +Method in class nars.term.Term
    Equal terms have identical name, though not necessarily the same reference. -
    equals(Object) - -Method in class nars.language.Variable -
    Whether this variable equals another one -
    Equivalence - Class in nars.language
    A Statement about an Equivalence relation.
    Equivalence(String, ArrayList<Term>) - -Constructor for class nars.language.Equivalence +
    Equivalence - Class in nars.term
    A Statement about an Equivalence relation.
    Equivalence(ArrayList<Term>) - +Constructor for class nars.term.Equivalence
    Constructor with partial values, called by make -
    Equivalence(String, ArrayList<Term>, int) - -Constructor for class nars.language.Equivalence -
    Constructor with partial values, called by make -
    Equivalence(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.Equivalence -
    Constructor with full values, called by clone -
    Equivalence(String, ArrayList<Term>, ArrayList<Variable>, short, int) - -Constructor for class nars.language.Equivalence +
    Equivalence(String, ArrayList<Term>, boolean, short) - +Constructor for class nars.term.Equivalence
    Constructor with full values, called by clone -
    EQUIVALENCE_AFTER_RELATION - -Static variable in class nars.io.Symbols -
     
    EQUIVALENCE_RELATION - Static variable in class nars.io.Symbols
      -
    EQUIVALENCE_WHEN_RELATION - -Static variable in class nars.io.Symbols -
      -
    equivalentTo(Judgment) - -Method in class nars.entity.Judgment +
    equivalentTo(Sentence) - +Method in class nars.entity.Sentence
    Check whether the judgment is equivalent to another one -
    eventProcessing(Task) - -Static method in class nars.main.Memory -
    Simple temporal regularity discovery [To be refined] -
    eventTime - -Variable in class nars.entity.Stamp -
    creation time of the stamp -
    execute(Task) - -Method in class nars.operation.Break -
      -
    execute(Task) - -Method in class nars.operation.Drop -
      -
    execute(Task) - -Method in class nars.operation.GoTo -
      -
    execute(Task) - -Method in class nars.operation.Open -
      -
    execute(Task) - -Method in class nars.operation.Operator -
    Required method for every operation, specifying the operation -
    execute(Task) - -Method in class nars.operation.Pick -
      -
    execute(Task) - -Method in class nars.operation.Strike -
      -
    execute(Task) - -Method in class nars.operation.Throw -
      -
    executedTask(Task) - -Static method in class nars.main.Memory -
    Reporting executed task, and remember the event -
    exemplification(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { S>,

    M>} |- P> -

    exitButton - -Variable in class nars.gui.MainWindow -
    Control buttons -
    ExperienceIO - Class in nars.io
    To read and write experience as Task streams
    ExperienceIO() - -Constructor for class nars.io.ExperienceIO +
    ExperienceReader - Class in nars.io
    To read and write experience as Task streams
    ExperienceReader(Reasoner) - +Constructor for class nars.io.ExperienceReader +
    Default constructor +
    ExperienceWriter - Class in nars.io
    To read and write experience as Task streams
    ExperienceWriter(Reasoner) - +Constructor for class nars.io.ExperienceWriter
    Default constructor -
    experienceIO - -Static variable in class nars.main.Center -
    The unique input channel

    @@ -224,7 +173,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-6.html b/nars-dist/javadoc/index-files/index-6.html index 409a2f4b..c958cc74 100644 --- a/nars-dist/javadoc/index-files/index-6.html +++ b/nars-dist/javadoc/index-files/index-6.html @@ -2,13 +2,13 @@ - + -F-Index (NARS Document) +F-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="F-Index (NARS Document)"; + parent.document.title="F-Index"; } } @@ -79,22 +79,10 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    F

    -
    findSubstitute(Variable.VarType, Term, Term) - -Static method in class nars.language.Variable -
    To find a substitution that can unify two Terms without changing them -
    findSubstitute(Variable.VarType, Term, Term, HashMap<String, Term>) - -Static method in class nars.language.Variable -
    To recursively find a substitution that can unify two Terms without changing them -
    findSubstitute(Variable.VarType, ArrayList<Term>, ArrayList<Term>, HashMap<String, Term>) - -Static method in class nars.language.Variable -
    To recursively find a substitution that can unify two sets of Term in any order -
    findSubstituteVar(Variable.VarType, Variable, Term, HashMap<String, Term>, boolean) - -Static method in class nars.language.Variable -
    To find a substitution that can unify a Vriable and a Term
    fire() - Method in class nars.entity.Concept
    An atomic step in a concept, only called in Memory.processConcept @@ -102,36 +90,30 @@ Static method in class nars.inference.BudgetFunctions
    Decrease Priority after an item is used, called in Bag
    forgetBW - -Static variable in class nars.gui.MainWindow +Variable in class nars.gui.MainWindow
    Windows for run-time parameter adjustment
    forgetCW - -Static variable in class nars.gui.MainWindow +Variable in class nars.gui.MainWindow
    Windows for run-time parameter adjustment -
    forgetRate() - -Method in class nars.storage.Bag +
    forgetRate() - +Method in class nars.container.Bag
    Get the item decay rate, which differs in difference subclass, and can be changed in run time by the user, so not a constant. -
    forgetRate() - -Method in class nars.storage.ConceptBag +
    forgetRate() - +Method in class nars.container.ConceptBag
    Get the (adjustable) forget rate of ConceptBag -
    forgetRate() - -Method in class nars.storage.TaskBuffer -
    Get the (constant) forget rate in TaskBuffer -
    forgetRate() - -Method in class nars.storage.TaskLinkBag +
    forgetRate() - +Method in class nars.container.NovelTaskBag +
    Get the (constant) forget rate in NovelTaskBag +
    forgetRate() - +Method in class nars.container.TaskLinkBag
    Get the (adjustable) forget rate of TaskLinkBag -
    forgetRate() - -Method in class nars.storage.TermLinkBag +
    forgetRate() - +Method in class nars.container.TermLinkBag
    Get the (adjustable) forget rate of TermLinkBag
    forgetTW - -Static variable in class nars.gui.MainWindow +Variable in class nars.gui.MainWindow
    Windows for run-time parameter adjustment -
    forward(TruthValue) - -Static method in class nars.inference.BudgetFunctions -
    Forward inference result and adjustment -
    frequency - -Variable in class nars.entity.TruthValue -
    The frequency factor of the truth value

    @@ -186,7 +168,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-7.html b/nars-dist/javadoc/index-files/index-7.html index d807512b..382446c5 100644 --- a/nars-dist/javadoc/index-files/index-7.html +++ b/nars-dist/javadoc/index-files/index-7.html @@ -2,13 +2,13 @@ - + -G-Index (NARS Document) +G-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="G-Index (NARS Document)"; + parent.document.title="G-Index"; } } @@ -79,88 +79,64 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    G

    -
    get(int) - -Method in class nars.entity.Stamp -
    Get a number from the trail by index, called in this class only -
    get(String) - -Method in class nars.storage.Bag +
    get(String) - +Method in class nars.container.Bag
    Get an Item by key
    getAppletInfo() - Method in class nars.main.NARS
    Provide system information for the applet.
    getBelief(Task) - Method in class nars.entity.Concept -
    Select a belief to interact with the given task in inference -
    getBestSolution() - -Method in class nars.entity.Sentence +
    Select a isBelief to interact with the given task in inference +
    getBestSolution() - +Method in class nars.entity.Task
    Get the best-so-far solution for a Question or Goal
    getBudget() - Method in class nars.entity.Item -
    Get current BudgetValue -
    getBudgetString(StringBuffer) - -Static method in class nars.io.StringParser -
    Return the prefex of a task string that contains a BudgetValue -
    getComplexity() - -Method in class nars.language.CompoundTerm +
    Get BudgetValue +
    getComplexity() - +Method in class nars.term.CompoundTerm
    report the term's syntactic complexity -
    getComplexity() - -Method in class nars.language.Term +
    getComplexity() - +Method in class nars.term.Term
    The syntactic complexity, for constant automic Term, is 1. -
    getComponents() - -Method in class nars.language.CompoundTerm +
    getComponents() - +Method in class nars.term.CompoundTerm
    Get the component list -
    getConcept(Term) - -Static method in class nars.main.Memory +
    getConcept(Term) - +Method in class nars.container.Memory
    Get the Concept associated to a Term, or create it.
    getConfidence() - Method in class nars.entity.TruthValue
    Get the confidence value -
    getConjunctionSymbol(int) - -Static method in class nars.language.Conjunction -
    COnvert a temporal into its String representation -
    getConstantName() - -Method in class nars.language.CompoundTerm -
    skip all variable names to produce stable sorting order among components, not for display -
    getConstantName() - -Method in class nars.language.Term -
    Default, to be overrided in variable Terms. -
    getConstantName() - -Method in class nars.language.Variable -
    Variable name is omitted in sorting
    getContent() - Method in class nars.entity.Sentence
    Get the content of the sentence
    getContent() - Method in class nars.entity.Task
    Directly get the content of the sentence -
    getCreationTime() - -Method in class nars.entity.Sentence -
    Get the creation time of the truth-value from the Stamp
    getCreationTime() - Method in class nars.entity.Stamp
    Get the creationTime of the truth-value
    getDurability() - Method in class nars.entity.BudgetValue
    Get durability value -
    getEquivalenceSymbol(boolean, int) - -Static method in class nars.language.Equivalence -
    Get the symbole of the relation by tense -
    getEventTime() - -Method in class nars.entity.Sentence -
    Get the occurrence time of the event -
    getEventTime() - -Method in class nars.entity.Stamp -
    Get the eventTime of the truth-value +
    getDurability() - +Method in class nars.entity.Item +
    Get durability value
    getExpDifAbs(TruthValue) - Method in class nars.entity.TruthValue
    Calculate the absolute difference of the expectation value and that of a given truth value
    getExpectation() - Method in class nars.entity.TruthValue
    Calculate the expectation value of the truth value +
    getExportStrings() - +Method in class nars.container.Memory +
     
    getFrequency() - Method in class nars.entity.TruthValue
    Get the frequency value @@ -170,84 +146,72 @@
    getIndices() - Method in class nars.entity.TermLink
    Get all the indices -
    getInput() - -Method in class nars.gui.InputWindow -
    Get input lines, and send them to Memory +
    getInputWindow() - +Method in class nars.main.Reasoner +
     
    getKey() - Method in class nars.entity.Item
    Get the current key -
    getLevel(Type) - -Method in class nars.storage.Bag -
    Decide the put-in level according to priority -
    getLine() - -Method in class nars.gui.InputWindow -
    Get one input lines -
    getList() - -Method in class nars.entity.Stamp -
    Get the trail, called in this class only -
    getName() - -Method in class nars.language.Term +
    getMainWindow() - +Method in class nars.container.Memory +
      +
    getMainWindow() - +Method in class nars.main.Reasoner +
      +
    getMemory() - +Method in class nars.main.Reasoner +
      +
    getName() - +Method in class nars.term.Term
    Reporting the name of the current Term. -
    getName() - -Method in class nars.language.Variable -
    Get variable name with dependency list (if any) -
    getOpenVariables() - -Method in class nars.language.CompoundTerm -
    get the OpenVariables list -
    getOrder() - -Method in class nars.language.Conjunction -
    Return the temporal order. -
    getOrder() - -Method in class nars.language.Equivalence -
    Get the temporal order. -
    getOrder() - -Method in class nars.language.Implication -
    Get the order of the components. -
    getOrder() - -Method in class nars.language.Term -
    Obtain the temporal order in the term -
    getPredicate() - -Method in class nars.language.Statement +
    getParentBelief() - +Method in class nars.entity.Task +
    Get the parent belief of a task +
    getPredicate() - +Method in class nars.term.Statement
    Return the second component of the statement
    getPriority() - Method in class nars.entity.BudgetValue
    Get priority value +
    getPriority() - +Method in class nars.entity.Item +
    Get priority value +
    getPunctuation() - +Method in class nars.entity.Sentence +
    Get the punctuation of the sentence
    getQuality() - Method in class nars.entity.BudgetValue
    Get quality value
    getQuality() - Method in class nars.entity.Concept
    Recalculate the quality of the concept [to be refined to show extension/intension balance] -
    getRecord() - -Method in class nars.entity.TaskLink -
    Get the TermLink record -
    getRelationIndex() - -Method in class nars.language.ImageExt +
    getQuality() - +Method in class nars.entity.Item +
    Get quality value +
    getRecorder() - +Method in class nars.container.Memory +
      +
    getRelation() - +Method in class nars.term.ImageExt +
    Get the relation term in the Image +
    getRelation() - +Method in class nars.term.ImageInt +
    Get the relation term in the Image +
    getRelationIndex() - +Method in class nars.term.ImageExt
    get the index of the relation in the component list -
    getRelationIndex() - -Method in class nars.language.ImageInt +
    getRelationIndex() - +Method in class nars.term.ImageInt
    get the index of the relation in the component list
    getSentence() - Method in class nars.entity.Task
    Get the sentence -
    getShortValue() - -Method in class nars.entity.ShortFloat -
    To access the value as short -
    getShowDerivation() - -Method in class nars.gui.ConceptWindow -
     
    getStamp() - Method in class nars.entity.Sentence
    Get the stamp of the sentence -
    getStoredName() - -Method in class nars.language.Variable -
    Get variable name without dependency list (if any) -
    getSubject() - -Method in class nars.language.Statement +
    getSubject() - +Method in class nars.term.Statement
    Return the first component of the statement -
    getSymbol(int) - -Static method in class nars.language.Implication -
    Convert a TemporalValue into its String representation
    getTarget() - Method in class nars.entity.TermLink
    Get the target of the link @@ -260,40 +224,31 @@
    getTermLinkTemplates() - Method in class nars.entity.Concept
    Return the templates for TermLinks, only called in Memory.continuedProcess -
    getTime() - -Static method in class nars.main.Center +
    getTheOtherComponent() - +Method in class nars.term.ImageExt +
    Get the other term in the Image +
    getTheOtherComponent() - +Method in class nars.term.ImageInt +
    Get the other term in the Image +
    getTime() - +Method in class nars.container.Memory +
      +
    getTime() - +Method in class nars.main.Reasoner
    Get the current time from the clock Called in nars.entity.Stamp
    getTruth() - Method in class nars.entity.Sentence
    Get the truth value of the sentence -
    getTruthString(StringBuffer) - -Static method in class nars.io.StringParser -
    Return the postfix of a task string that contains a TruthValue
    getType() - Method in class nars.entity.TermLink
    Get the link type -
    getType() - -Method in class nars.language.Variable +
    getType() - +Method in class nars.term.Variable
    Get the type of the variable
    getValue() - Method in class nars.entity.ShortFloat
    To access the value as float -
    getVarName(boolean) - -Method in class nars.language.Variable -
    Rename a variable temporally to distinguish it from variables in other Terms -
    Goal - Class in nars.entity
    A Goal is an event to be realized, and may conain query variables
    Goal(Term, char, TruthValue, Stamp) - -Constructor for class nars.entity.Goal -
    Constructor -
    GOAL_MARK - -Static variable in class nars.io.Symbols -
      -
    goals - -Variable in class nars.entity.Concept -
    Goals directly requested on the term -
    GoTo - Class in nars.operation
    A class used in testing only.
    GoTo(String) - -Constructor for class nars.operation.GoTo -
     

    @@ -348,7 +303,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-8.html b/nars-dist/javadoc/index-files/index-8.html index 803109be..e2822b1a 100644 --- a/nars-dist/javadoc/index-files/index-8.html +++ b/nars-dist/javadoc/index-files/index-8.html @@ -2,13 +2,13 @@ - + -H-Index (NARS Document) +H-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="H-Index (NARS Document)"; + parent.document.title="H-Index"; } } @@ -79,10 +79,13 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    H

    +
    hashCode() - +Method in class nars.entity.Sentence +
    To produce the hashcode of a sentence
    hashCode() - Method in class nars.entity.ShortFloat
    The hash code of the ShortFloat @@ -92,24 +95,12 @@
    hashCode() - Method in class nars.entity.TruthValue
    The hash code of a TruthValue -
    hashCode() - -Method in class nars.language.Term +
    hashCode() - +Method in class nars.term.Term
    Produce a hash code for the term -
    hashCode() - -Method in class nars.language.Variable -
    Get a hash code for the variable -
    hideButton - -Variable in class nars.gui.InferenceWindow -
    Control buttons -
    hideButton - -Variable in class nars.gui.ParameterWindow -
    Control buttons -
    hideButton - -Variable in class nars.gui.TermWindow -
    Control buttons -
    holdButton - -Variable in class nars.gui.InputWindow -
    Control buttons +
    hasSubstitute(char, Term, Term) - +Static method in class nars.term.Variable +
    Check if two terms can be unified
    HORIZON - Static variable in class nars.main.Parameters
    Evidential Horizon, the amount of future evidence to be considered. @@ -167,7 +158,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index-files/index-9.html b/nars-dist/javadoc/index-files/index-9.html index e37b388a..142e8a1f 100644 --- a/nars-dist/javadoc/index-files/index-9.html +++ b/nars-dist/javadoc/index-files/index-9.html @@ -2,13 +2,13 @@ - + -I-Index (NARS Document) +I-Index - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="I-Index (NARS Document)"; + parent.document.title="I-Index"; } } @@ -79,7 +79,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W

    I

    @@ -92,142 +92,92 @@
    IMAGE_PLACE_HOLDER - Static variable in class nars.io.Symbols
      -
    ImageExt - Class in nars.language
    An extension image.
    ImageExt(String, ArrayList<Term>, short) - -Constructor for class nars.language.ImageExt +
    ImageExt - Class in nars.term
    An extension image.
    ImageInt - Class in nars.term
    An intension image.
    Implication - Class in nars.term
    A Statement about an Inheritance relation.
    Implication(ArrayList<Term>) - +Constructor for class nars.term.Implication
    Constructor with partial values, called by make -
    ImageExt(String, ArrayList<Term>, ArrayList<Variable>, short, short) - -Constructor for class nars.language.ImageExt +
    Implication(String, ArrayList<Term>, boolean, short) - +Constructor for class nars.term.Implication
    Constructor with full values, called by clone -
    ImageInt - Class in nars.language
    An intension image.
    ImageInt(String, ArrayList<Term>, short) - -Constructor for class nars.language.ImageInt -
    constructor with partial values, called by make -
    ImageInt(String, ArrayList<Term>, ArrayList<Variable>, short, short) - -Constructor for class nars.language.ImageInt -
    Constructor with full values, called by clone -
    immediateProcess(Task) - -Static method in class nars.main.Memory -
    Imediate processing of a new task, in constant time - Local processing, in one concept only -
    Implication - Class in nars.language
    A Statement about an Inheritance relation.
    Implication(String, ArrayList<Term>) - -Constructor for class nars.language.Implication -
    Constructor with partial values, called by make -
    Implication(String, ArrayList<Term>, int) - -Constructor for class nars.language.Implication -
    Constructor with partial values, called by make -
    Implication(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.Implication -
    Constructor with full values, called by clone -
    Implication(String, ArrayList<Term>, ArrayList<Variable>, short, int) - -Constructor for class nars.language.Implication -
    Constructor with full values, called by clone -
    IMPLICATION_AFTER_RELATION - -Static variable in class nars.io.Symbols -
      -
    IMPLICATION_BEFORE_RELATION - -Static variable in class nars.io.Symbols -
     
    IMPLICATION_RELATION - Static variable in class nars.io.Symbols
      -
    IMPLICATION_WHEN_RELATION - -Static variable in class nars.io.Symbols -
     
    incDurability(float) - Method in class nars.entity.BudgetValue
    Increase durability value by a percentage of the remaining range +
    incDurability(float) - +Method in class nars.entity.Item +
    Increase durability value
    incPriority(float) - Method in class nars.entity.BudgetValue
    Increase priority value by a percentage of the remaining range +
    incPriority(float) - +Method in class nars.entity.Item +
    Increase priority value
    incQuality(float) - Method in class nars.entity.BudgetValue
    Increase quality value by a percentage of the remaining range
    index - Variable in class nars.entity.TermLink
    The index of the component in the component list of the compound, may have up to 4 levels -
    indexToFigure(TermLink, TermLink) - -Static method in class nars.inference.RuleTables -
    Decide the figure of syllogism according to the locations of the common - term in the premises -
    induction(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { S>, P>} |- P> -
    inExp - -Variable in class nars.io.ExperienceIO -
    Input experience from a file -
    InferenceWindow - Class in nars.gui
    Window displying inference log
    InferenceWindow() - +
    InferenceRecorder - Class in nars.io
    Inference log, which record input/output of each inference step
    InferenceRecorder() - +Constructor for class nars.io.InferenceRecorder +
      +
    InferenceWindow - Class in nars.gui
    Window displying inference log
    InferenceWindow(InferenceRecorder) - Constructor for class nars.gui.InferenceWindow
    Constructor -
    inferToAsym(Judgment, Judgment, int) - -Static method in class nars.inference.MatchingRules -
    { P>,

    S>} |- P> - Produce an Inheritance/Implication from a Similarity/Equivalence and a reversed Inheritance/Implication -

    inferToSym(Judgment, Judgment) - -Static method in class nars.inference.MatchingRules -
    { P>,

    S} |- p> - Produce Similarity/Equivalence from a pair of reversed Inheritance/Implication

    INFO - Static variable in class nars.main.NARS
    The information about the version and date of the project. -
    Inheritance - Class in nars.language
    A Statement about an Inheritance relation.
    Inheritance(String, ArrayList<Term>) - -Constructor for class nars.language.Inheritance -
    Constructor with partial values, called by make -
    Inheritance(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.Inheritance -
    Constructor with full values, called by clone -
    INHERITANCE_RELATION - +
    Inheritance - Class in nars.term
    A Statement about an Inheritance relation.
    INHERITANCE_RELATION - Static variable in class nars.io.Symbols
      +
    init() - +Method in class nars.container.Bag +
      +
    init() - +Method in class nars.container.Memory +
     
    init() - Static method in class nars.entity.Stamp -
    Initialize the stamp machenism of the system, called in Center +
    Initialize the stamp machenism of the system, called in Reasoner
    init() - Method in class nars.gui.InputWindow
    Initialize the window
    init() - Method in class nars.gui.MainWindow
    Initialize the system for a new run -
    init() - -Static method in class nars.io.Record +
    init() - +Method in class nars.io.InferenceRecorder
    Initialize the window and the file -
    init() - -Static method in class nars.main.Memory -
    Initialize a new memory by creating all members.
    init() - Method in class nars.main.NARS
    Initialize the system at the control center.
    initTimer() - Method in class nars.gui.MainWindow
    Reset timer and its display -
    input - -Variable in class nars.entity.Sentence -
    Whether it is an input sentence
    INPUT_LINE - Static variable in class nars.io.Symbols
      -
    inputTask(Task) - -Static method in class nars.main.Memory +
    InputChannel - Interface in nars.io
    An interface to be implemented in all input channels + To get the input for the next moment from an input channel + The return value indicating whether the reasoner should run
    inputTask(Task) - +Method in class nars.container.Memory
    Input task processing. -
    inputText - -Variable in class nars.gui.InputWindow -
    Input area -
    InputWindow - Class in nars.gui
    Input window, accepting user tasks
    InputWindow() - +
    InputWindow - Class in nars.gui
    Input window, accepting user tasks
    InputWindow(Reasoner, String) - Constructor for class nars.gui.InputWindow
    Constructor
    inputWindow - -Static variable in class nars.gui.MainWindow +Variable in class nars.gui.MainWindow
    Input experience window -
    inputWindow - -Variable in class nars.io.ExperienceIO -
    Input experience from a window
    insertTaskLink(TaskLink) - Method in class nars.entity.Concept
    Insert a TaskLink into the TaskLink bag
    insertTermLink(TermLink) - Method in class nars.entity.Concept
    Insert a TermLink into the TermLink bag -
    Instance - Class in nars.language
    A Statement about an Instance relation, which is used only in Narsese for I/O, - and translated into Inheritance for internal use.
    Instance() - -Constructor for class nars.language.Instance +
    Instance - Class in nars.term
    A Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    Instance() - +Constructor for class nars.term.Instance
     
    INSTANCE_PROPERTY_RELATION - Static variable in class nars.io.Symbols @@ -235,175 +185,98 @@
    INSTANCE_RELATION - Static variable in class nars.io.Symbols
      -
    instanceCount - -Static variable in class nars.gui.ConceptWindow -
    Used to adjust the screen position -
    InstanceProperty - Class in nars.language
    A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, - and translated into Inheritance for internal use.
    InstanceProperty() - -Constructor for class nars.language.InstanceProperty +
    InstanceProperty - Class in nars.term
    A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    InstanceProperty() - +Constructor for class nars.term.InstanceProperty
      -
    intersection(TruthValue, TruthValue) - -Static method in class nars.inference.TruthFunctions -
    { S>, P>} |- (S&P)>
    INTERSECTION_EXT_OPERATOR - Static variable in class nars.io.Symbols
     
    INTERSECTION_INT_OPERATOR - Static variable in class nars.io.Symbols
      -
    IntersectionExt - Class in nars.language
    A compound term whose extension is the intersection of the extensions of its components
    IntersectionExt(String, ArrayList<Term>) - -Constructor for class nars.language.IntersectionExt -
    Constructor with partial values, called by make -
    IntersectionExt(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.IntersectionExt -
    Constructor with full values, called by clone -
    IntersectionInt - Class in nars.language
    A compound term whose intension is the intersection of the extensions of its components
    IntersectionInt(String, ArrayList<Term>) - -Constructor for class nars.language.IntersectionInt -
    Constructor with partial values, called by make -
    IntersectionInt(String, ArrayList<Term>, ArrayList<Variable>, short) - -Constructor for class nars.language.IntersectionInt -
    Constructor with full values, called by clone -
    intoBase(Type) - -Method in class nars.storage.Bag -
    Insert an item into the itemTable, and return the overflow -
    introVarDep(Statement, Statement, int) - -Static method in class nars.inference.CompositionalRules -
    { S>, P>} |- (&&, <#x() --> S>, <#x() --> P>> -
    introVarDepInner(CompoundTerm, Term, Term) - -Static method in class nars.inference.CompositionalRules -
    Introduce a dependent variable in an inner-layer conjunction -
    introVarDepOuter(Statement, Statement, int) - -Static method in class nars.inference.CompositionalRules -
    Introduce a dependent variable in an outer-layer conjunction -
    introVarInd(Sentence, Sentence, int, boolean) - -Static method in class nars.inference.SyllogisticRules -
    { S>, P>} |- <<#x --> S> ==> <#x --> P>> - { S>, P>} |- <<#x --> S> <=> <#x --> P>> -
    introVarIndInner(Statement, Statement, CompoundTerm) - -Static method in class nars.inference.SyllogisticRules -
    { S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> - { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>) -
    invalid() - -Method in class nars.language.Statement +
    IntersectionExt - Class in nars.term
    A compound term whose extension is the intersection of the extensions of its components
    IntersectionInt - Class in nars.term
    A compound term whose intension is the intersection of the extensions of its components
    invalid() - +Method in class nars.term.Statement
    Check the validity of a potential Statement. -
    invalidStatement(Term, Term) - -Static method in class nars.language.Statement +
    invalidStatement(Term, Term) - +Static method in class nars.term.Statement
    Check the validity of a potential Statement. -
    ioText - -Variable in class nars.gui.MainWindow -
    Experience display area -
    isBuiltInOperator(String) - -Static method in class nars.language.CompoundTerm -
    Check built-in operator name -
    isCloser(String, int) - -Static method in class nars.io.StringParser -
    Check CompoundTerm closer symbol -
    isCommutative() - -Method in class nars.language.CompoundTerm +
    isCommutative() - +Method in class nars.term.CompoundTerm
    Check if the order of the components matters -
    isCommutative() - -Method in class nars.language.Conjunction +
    isCommutative() - +Method in class nars.term.Conjunction
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.language.Disjunction +
    isCommutative() - +Method in class nars.term.Disjunction
    Disjunction is communitative. -
    isCommutative() - -Method in class nars.language.Equivalence +
    isCommutative() - +Method in class nars.term.Equivalence
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.language.IntersectionExt +
    isCommutative() - +Method in class nars.term.IntersectionExt
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.language.IntersectionInt +
    isCommutative() - +Method in class nars.term.IntersectionInt
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.language.SetExt +
    isCommutative() - +Method in class nars.term.SetExt
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.language.SetInt +
    isCommutative() - +Method in class nars.term.SetInt
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.language.Similarity +
    isCommutative() - +Method in class nars.term.Similarity
    Check if the compound is communitative. -
    isConstant() - -Method in class nars.language.CompoundTerm +
    isConstant() - +Method in class nars.term.CompoundTerm
    check if the term contains free variable -
    isConstant() - -Method in class nars.language.Term +
    isConstant() - +Method in class nars.term.Term
    Check whether the current Term can name a Concept. -
    isConstant() - -Method in class nars.language.Variable -
    A variable is constant -
    isInput() - -Method in class nars.entity.Sentence -
    Check input sentence +
    isConstant() - +Method in class nars.term.Variable +
    A variable is not constant +
    isInput() - +Method in class nars.entity.Task +
    Check if a Task is a direct input
    isJudgment() - Method in class nars.entity.Sentence
    Distinguish Judgment from Goal ("instanceof Judgment" doesn't work) -
    isLogging() - -Static method in class nars.io.Record +
    isLogging() - +Method in class nars.io.InferenceRecorder
    Check file logging -
    isOpener(String, int) - -Static method in class nars.io.StringParser -
    Check CompoundTerm opener symbol -
    isOperator(String) - -Static method in class nars.language.CompoundTerm +
    isNegative() - +Method in class nars.entity.TruthValue +
    Check if the truth value is negative +
    isOperator(String) - +Static method in class nars.term.CompoundTerm
    Check CompoundTerm operator symbol -
    isParallel(Term) - -Static method in class nars.language.Conjunction -
    Whether the Term is a parallel conjunction -
    isRelation(String) - -Static method in class nars.language.Statement +
    isQuestion() - +Method in class nars.entity.Sentence +
    Distinguish Question from Quest ("instanceof Question" doesn't work) +
    isRelation(String) - +Static method in class nars.term.Statement
    Check Statement relation symbol, called in StringPaser -
    isReporting - -Static variable in class nars.io.Record -
    whether to display -
    isSequence(Term) - -Static method in class nars.language.Conjunction -
    Whether the Term is a sequential conjunction
    isStandAlone() - Static method in class nars.main.NARS
    Whether the project running as an application.
    isStructural() - Method in class nars.entity.Task
    Check if a Task is derived by a StructuralRule -
    isTemporal() - -Method in class nars.entity.Sentence -
      -
    isTemporal() - -Method in class nars.language.Conjunction -
      -
    isTemporal - -Variable in class nars.language.Equivalence -
    Whether there is a temporal order between the components -
    isTemporal() - -Method in class nars.language.Equivalence -
      -
    isTemporal - -Variable in class nars.language.Implication -
    Whether there is a temporal order between the components -
    isTemporal() - -Method in class nars.language.Implication -
      -
    isTemporal() - -Method in class nars.language.Term -
    Whether there is a temporal order in the term, which is false by default
    Item - Class in nars.entity
    An item is an object that can be put into a Bag, to participate in the resource competation of the system.
    Item() - Constructor for class nars.entity.Item -
    Default constructor -
    Item(BudgetValue) - +
    The default constructor +
    Item(String) - +Constructor for class nars.entity.Item +
    Constructor with default budget +
    Item(String, BudgetValue) - Constructor for class nars.entity.Item
    Constructor with initial budget -
    itemStateChanged(ItemEvent) - -Method in class nars.gui.ConceptWindow -
     
    itemStateChanged(ItemEvent) - Method in class nars.gui.InferenceWindow
      -
    itemTable - -Variable in class nars.storage.Bag -
    array of lists of items, for items on different level

    @@ -458,7 +331,7 @@ -A B C D E F G H I J K L M N O P Q R S T U V W _
    +A B C D E F G H I J K L M N O P Q R S T U V W
    diff --git a/nars-dist/javadoc/index.html b/nars-dist/javadoc/index.html index 887ac3f4..4129944f 100644 --- a/nars-dist/javadoc/index.html +++ b/nars-dist/javadoc/index.html @@ -2,10 +2,10 @@ - + -NARS Document +Generated Documentation (Untitled) + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.container +
    +Class Bag<Type extends Item>

    +
    +java.lang.Object
    +  extended by nars.container.Bag<Type>
    +
    +
    +
    Type Parameters:
    Type - The type of the Item in the Bag
    +
    +
    Direct Known Subclasses:
    ConceptBag, NovelTaskBag, TaskLinkBag, TermLinkBag
    +
    +
    +
    +
    public abstract class Bag<Type extends Item>
    extends java.lang.Object
    + + +

    +A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval. +

    + Each entity in a bag must extend Item, which has a BudgetValue and a key. +

    + A name table is used to merge duplicate items that have the same key. +

    + The bag space is divided by a threshold, above which is mainly time management, + and below, space mamagement. + Differences: (1) level selection vs. item selection, (2) decay rate +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  Memorymemory + +
    +          reference to memory
    +  + + + + + + + + + + + +
    +Constructor Summary
    +protected Bag(Memory memory) + +
    +          constructor, called from subclasses
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + floataveragePriority() + +
    +          Get the average priority of Items
    +protected abstract  intcapacity() + +
    +          To get the capacity of the concrete subclass
    + booleancontains(Type it) + +
    +          Check if an item is in the bag
    +protected  booleanemptyLevel(int n) + +
    +          Check whether a level is empty
    +protected abstract  intforgetRate() + +
    +          Get the item decay rate, which differs in difference subclass, and can be + changed in run time by the user, so not a constant.
    + Typeget(java.lang.String key) + +
    +          Get an Item by key
    + voidinit() + +
    +           
    +protected  voidoutOfBase(Type oldItem) + +
    +          Remove an item from itemTable, then adjust mass
    + TypepickOut(java.lang.String key) + +
    +          Pick an item by key, then remove it from the bag
    + voidplay() + +
    +          Resume display
    + booleanputBack(Type oldItem) + +
    +          Put an item back into the itemTable
    + booleanputIn(Type newItem) + +
    +          Add a new Item into the Bag
    + voidrefresh() + +
    +          Refresh display
    + voidstartPlay(java.lang.String title) + +
    +          To start displaying the Bag in a BagWindow
    + voidstop() + +
    +          Stop display
    + TypetakeOut() + +
    +          Choose an Item according to priority distribution and take it out of the Bag
    + java.lang.StringtoString() + +
    +          Collect Bag content into a String for display
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +memory

    +
    +protected Memory memory
    +
    +
    reference to memory +

    +

    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Bag

    +
    +protected Bag(Memory memory)
    +
    +
    constructor, called from subclasses +

    +

    +
    Parameters:
    memory - The reference to memory
    +
    + + + + + + + + +
    +Method Detail
    + +

    +init

    +
    +public void init()
    +
    +
    +
    +
    +
    +
    + +

    +capacity

    +
    +protected abstract int capacity()
    +
    +
    To get the capacity of the concrete subclass +

    +

    + +
    Returns:
    Bag capacity, in number of Items allowed
    +
    +
    +
    + +

    +forgetRate

    +
    +protected abstract int forgetRate()
    +
    +
    Get the item decay rate, which differs in difference subclass, and can be + changed in run time by the user, so not a constant. +

    +

    + +
    Returns:
    The number of times for a decay factor to be fully applied
    +
    +
    +
    + +

    +averagePriority

    +
    +public float averagePriority()
    +
    +
    Get the average priority of Items +

    +

    + +
    Returns:
    The average priority of Items in the bag
    +
    +
    +
    + +

    +contains

    +
    +public boolean contains(Type it)
    +
    +
    Check if an item is in the bag +

    +

    +
    Parameters:
    it - An item +
    Returns:
    Whether the Item is in the Bag
    +
    +
    +
    + +

    +get

    +
    +public Type get(java.lang.String key)
    +
    +
    Get an Item by key +

    +

    +
    Parameters:
    key - The key of the Item +
    Returns:
    The Item with the given key
    +
    +
    +
    + +

    +putIn

    +
    +public boolean putIn(Type newItem)
    +
    +
    Add a new Item into the Bag +

    +

    +
    Parameters:
    newItem - The new Item +
    Returns:
    Whether the new Item is added into the Bag
    +
    +
    +
    + +

    +putBack

    +
    +public boolean putBack(Type oldItem)
    +
    +
    Put an item back into the itemTable +

    + The only place where the forgetting rate is applied +

    +

    +
    Parameters:
    oldItem - The Item to put back +
    Returns:
    Whether the new Item is added into the Bag
    +
    +
    +
    + +

    +takeOut

    +
    +public Type takeOut()
    +
    +
    Choose an Item according to priority distribution and take it out of the Bag +

    +

    + +
    Returns:
    The selected Item
    +
    +
    +
    + +

    +pickOut

    +
    +public Type pickOut(java.lang.String key)
    +
    +
    Pick an item by key, then remove it from the bag +

    +

    +
    Parameters:
    key - The given key +
    Returns:
    The Item with the key
    +
    +
    +
    + +

    +emptyLevel

    +
    +protected boolean emptyLevel(int n)
    +
    +
    Check whether a level is empty +

    +

    +
    Parameters:
    n - The level index +
    Returns:
    Whether that level is empty
    +
    +
    +
    + +

    +outOfBase

    +
    +protected void outOfBase(Type oldItem)
    +
    +
    Remove an item from itemTable, then adjust mass +

    +

    +
    Parameters:
    oldItem - The Item to be removed
    +
    +
    +
    + +

    +startPlay

    +
    +public void startPlay(java.lang.String title)
    +
    +
    To start displaying the Bag in a BagWindow +

    +

    +
    Parameters:
    title - The title of the window
    +
    +
    +
    + +

    +play

    +
    +public void play()
    +
    +
    Resume display +

    +

    +
    +
    +
    +
    + +

    +refresh

    +
    +public void refresh()
    +
    +
    Refresh display +

    +

    +
    +
    +
    +
    + +

    +stop

    +
    +public void stop()
    +
    +
    Stop display +

    +

    +
    +
    +
    +
    + +

    +toString

    +
    +public java.lang.String toString()
    +
    +
    Collect Bag content into a String for display +

    +

    +
    Overrides:
    toString in class java.lang.Object
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/ConceptBag.html b/nars-dist/javadoc/nars/container/ConceptBag.html new file mode 100644 index 00000000..6ebe0a8f --- /dev/null +++ b/nars-dist/javadoc/nars/container/ConceptBag.html @@ -0,0 +1,320 @@ + + + + + + + +ConceptBag + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.container +
    +Class ConceptBag

    +
    +java.lang.Object
    +  extended by nars.container.Bag<Concept>
    +      extended by nars.container.ConceptBag
    +
    +
    +
    +
    public class ConceptBag
    extends Bag<Concept>
    + + +

    +Contains Concepts. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.container.Bag
    memory
    +  + + + + + + + + + + +
    +Constructor Summary
    ConceptBag(Memory memory) + +
    +          Constructor
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    +protected  intcapacity() + +
    +          Get the (constant) capacity of ConceptBag
    +protected  intforgetRate() + +
    +          Get the (adjustable) forget rate of ConceptBag
    + + + + + + + +
    Methods inherited from class nars.container.Bag
    averagePriority, contains, emptyLevel, get, init, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +ConceptBag

    +
    +public ConceptBag(Memory memory)
    +
    +
    Constructor +

    +

    +
    Parameters:
    memory - The reference of memory
    +
    + + + + + + + + +
    +Method Detail
    + +

    +capacity

    +
    +protected int capacity()
    +
    +
    Get the (constant) capacity of ConceptBag +

    +

    +
    Specified by:
    capacity in class Bag<Concept>
    +
    +
    + +
    Returns:
    The capacity of ConceptBag
    +
    +
    +
    + +

    +forgetRate

    +
    +protected int forgetRate()
    +
    +
    Get the (adjustable) forget rate of ConceptBag +

    +

    +
    Specified by:
    forgetRate in class Bag<Concept>
    +
    +
    + +
    Returns:
    The forget rate of ConceptBag
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/Memory.html b/nars-dist/javadoc/nars/container/Memory.html new file mode 100644 index 00000000..e220675c --- /dev/null +++ b/nars-dist/javadoc/nars/container/Memory.html @@ -0,0 +1,868 @@ + + + + + + + +Memory + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.container +
    +Class Memory

    +
    +java.lang.Object
    +  extended by nars.container.Memory
    +
    +
    +
    +
    public class Memory
    extends java.lang.Object
    + + +

    +The memory of the system. +

    + +

    +


    + +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Field Summary
    + SentencecurrentBelief + +
    +          The selected belief
    + TermLinkcurrentBeliefLink + +
    +          The selected TermLink
    + ConceptcurrentConcept + +
    +          The selected Concept
    + TaskcurrentTask + +
    +          The selected Task
    + TaskLinkcurrentTaskLink + +
    +          The selected TaskLink
    + TermcurrentTerm + +
    +          The selected Term
    + StampnewStamp + +
    +          The new Stamp
    +protected  java.util.HashMap<Term,Term>substitute + +
    +          The substitution that unify the common term in the Task and the Belief
    +  + + + + + + + + + + +
    +Constructor Summary
    Memory(Reasoner reasoner) + +
    +          Create a new memory
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + voidactivateConcept(Concept c, + BudgetValue b) + +
    +          Adjust the activation level of a Concept
    + voidactivatedTask(BudgetValue budget, + Sentence sentence, + Sentence candidateBelief) + +
    +          Activated task called in MatchingRules.trySolution and Concept.processGoal
    + voidconceptsStartPlay(java.lang.String s) + +
    +          Display active concepts, called from MainWindow.
    + voiddoublePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    + ConceptgetConcept(Term term) + +
    +          Get the Concept associated to a Term, or create it.
    + java.util.ArrayList<java.lang.String>getExportStrings() + +
    +           
    + MainWindowgetMainWindow() + +
    +           
    + InferenceRecordergetRecorder() + +
    +           
    + longgetTime() + +
    +           
    + voidinit() + +
    +           
    + voidinputTask(Task task) + +
    +          Input task processing.
    + ConceptnameToConcept(java.lang.String name) + +
    +          Get an existing Concept for a given name
    + TermnameToListedTerm(java.lang.String name) + +
    +          Get a Term for a given name of a Concept or Operator
    + booleannoResult() + +
    +           
    + voidreport(Sentence sentence, + boolean input) + +
    +          Display input/output sentence in the output channels.
    + voidsinglePremiseTask(Term newContent, + char punctuation, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all single-premise rules, called in StructuralRules
    + voidsinglePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all single-premise rules, called in StructuralRules
    + voidtaskBuffersStartPlay(java.lang.String s) + +
    +          Display newd tasks, called from MainWindow.
    + ConcepttermToConcept(Term term) + +
    +          Get an existing Concept for a given Term.
    + voidworkCycle(long clock) + +
    +          An atomic working workCycle of the system: process new Tasks, then fire a concept
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +currentTerm

    +
    +public Term currentTerm
    +
    +
    The selected Term +

    +

    +
    +
    +
    + +

    +currentConcept

    +
    +public Concept currentConcept
    +
    +
    The selected Concept +

    +

    +
    +
    +
    + +

    +currentTaskLink

    +
    +public TaskLink currentTaskLink
    +
    +
    The selected TaskLink +

    +

    +
    +
    +
    + +

    +currentTask

    +
    +public Task currentTask
    +
    +
    The selected Task +

    +

    +
    +
    +
    + +

    +currentBeliefLink

    +
    +public TermLink currentBeliefLink
    +
    +
    The selected TermLink +

    +

    +
    +
    +
    + +

    +currentBelief

    +
    +public Sentence currentBelief
    +
    +
    The selected belief +

    +

    +
    +
    +
    + +

    +newStamp

    +
    +public Stamp newStamp
    +
    +
    The new Stamp +

    +

    +
    +
    +
    + +

    +substitute

    +
    +protected java.util.HashMap<Term,Term> substitute
    +
    +
    The substitution that unify the common term in the Task and the Belief +

    +

    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Memory

    +
    +public Memory(Reasoner reasoner)
    +
    +
    Create a new memory +

    + Called in Reasoner.reset only +

    +

    +
    Parameters:
    reasoner -
    +
    + + + + + + + + +
    +Method Detail
    + +

    +init

    +
    +public void init()
    +
    +
    +
    +
    +
    +
    + +

    +getExportStrings

    +
    +public java.util.ArrayList<java.lang.String> getExportStrings()
    +
    +
    +
    +
    +
    +
    + +

    +getRecorder

    +
    +public InferenceRecorder getRecorder()
    +
    +
    +
    +
    +
    +
    + +

    +getTime

    +
    +public long getTime()
    +
    +
    +
    +
    +
    +
    + +

    +getMainWindow

    +
    +public MainWindow getMainWindow()
    +
    +
    +
    +
    +
    +
    + +

    +noResult

    +
    +public boolean noResult()
    +
    +
    +
    +
    +
    +
    + +

    +nameToConcept

    +
    +public Concept nameToConcept(java.lang.String name)
    +
    +
    Get an existing Concept for a given name +

    + called from Term and ConceptWindow. +

    +

    +
    Parameters:
    name - the name of a concept +
    Returns:
    a Concept or null
    +
    +
    +
    + +

    +nameToListedTerm

    +
    +public Term nameToListedTerm(java.lang.String name)
    +
    +
    Get a Term for a given name of a Concept or Operator +

    + called in StringParser and the make methods of compound terms. +

    +

    +
    Parameters:
    name - the name of a concept or operator +
    Returns:
    a Term or null (if no Concept/Operator has this name)
    +
    +
    +
    + +

    +termToConcept

    +
    +public Concept termToConcept(Term term)
    +
    +
    Get an existing Concept for a given Term. +

    +

    +
    Parameters:
    term - The Term naming a concept +
    Returns:
    a Concept or null
    +
    +
    +
    + +

    +getConcept

    +
    +public Concept getConcept(Term term)
    +
    +
    Get the Concept associated to a Term, or create it. +

    +

    +
    Parameters:
    term - indicating the concept +
    Returns:
    an existing Concept, or a new one
    +
    +
    +
    + +

    +activateConcept

    +
    +public void activateConcept(Concept c,
    +                            BudgetValue b)
    +
    +
    Adjust the activation level of a Concept +

    + called in Concept.insertTaskLink only +

    +

    +
    Parameters:
    c - the concept to be adusted
    b - the new BudgetValue
    +
    +
    +
    + +

    +inputTask

    +
    +public void inputTask(Task task)
    +
    +
    Input task processing. Invoked by the outside or inside enviornment. + Outside: StringParser (input); Inside: Operator (feedback). + Input tasks with low priority are ignored, and the others are put into task buffer. +

    +

    +
    Parameters:
    task - The input task
    +
    +
    +
    + +

    +activatedTask

    +
    +public void activatedTask(BudgetValue budget,
    +                          Sentence sentence,
    +                          Sentence candidateBelief)
    +
    +
    Activated task called in MatchingRules.trySolution and Concept.processGoal +

    +

    +
    Parameters:
    budget - The budget value of the new Task
    sentence - The content of the new Task
    candidateBelief - The belief to be used in future inference, for forward/backward correspondence
    +
    +
    +
    + +

    +doublePremiseTask

    +
    +public void doublePremiseTask(Term newContent,
    +                              TruthValue newTruth,
    +                              BudgetValue newBudget)
    +
    +
    Shared final operations by all double-premise rules, called from the rules except StructuralRules +

    +

    +
    Parameters:
    newContent - The content of the sentence in task
    newTruth - The truth value of the sentence in task
    newBudget - The budget value in task
    +
    +
    +
    + +

    +singlePremiseTask

    +
    +public void singlePremiseTask(Term newContent,
    +                              TruthValue newTruth,
    +                              BudgetValue newBudget)
    +
    +
    Shared final operations by all single-premise rules, called in StructuralRules +

    +

    +
    Parameters:
    newContent - The content of the sentence in task
    newTruth - The truth value of the sentence in task
    newBudget - The budget value in task
    +
    +
    +
    + +

    +singlePremiseTask

    +
    +public void singlePremiseTask(Term newContent,
    +                              char punctuation,
    +                              TruthValue newTruth,
    +                              BudgetValue newBudget)
    +
    +
    Shared final operations by all single-premise rules, called in StructuralRules +

    +

    +
    Parameters:
    newContent - The content of the sentence in task
    punctuation - The punctuation of the sentence in task
    newTruth - The truth value of the sentence in task
    newBudget - The budget value in task
    +
    +
    +
    + +

    +workCycle

    +
    +public void workCycle(long clock)
    +
    +
    An atomic working workCycle of the system: process new Tasks, then fire a concept +

    + Called from Reasoner.tick only +

    +

    +
    Parameters:
    clock - The current time to be displayed
    +
    +
    +
    + +

    +conceptsStartPlay

    +
    +public void conceptsStartPlay(java.lang.String s)
    +
    +
    Display active concepts, called from MainWindow. +

    +

    +
    Parameters:
    s - the window title
    +
    +
    +
    + +

    +taskBuffersStartPlay

    +
    +public void taskBuffersStartPlay(java.lang.String s)
    +
    +
    Display newd tasks, called from MainWindow. +

    +

    +
    Parameters:
    s - the window title
    +
    +
    +
    + +

    +report

    +
    +public void report(Sentence sentence,
    +                   boolean input)
    +
    +
    Display input/output sentence in the output channels. + The only place to add Objects into exportStrings. Currently only Strings + are added, though in the future there can be outgoing Tasks +

    +

    +
    Parameters:
    sentence - the sentence to be displayed
    input - whether the task is input
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/NovelTaskBag.html b/nars-dist/javadoc/nars/container/NovelTaskBag.html new file mode 100644 index 00000000..cd268cea --- /dev/null +++ b/nars-dist/javadoc/nars/container/NovelTaskBag.html @@ -0,0 +1,320 @@ + + + + + + + +NovelTaskBag + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.container +
    +Class NovelTaskBag

    +
    +java.lang.Object
    +  extended by nars.container.Bag<Task>
    +      extended by nars.container.NovelTaskBag
    +
    +
    +
    +
    public class NovelTaskBag
    extends Bag<Task>
    + + +

    +New tasks that contain new Term. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.container.Bag
    memory
    +  + + + + + + + + + + +
    +Constructor Summary
    NovelTaskBag(Memory memory) + +
    +          Constructor
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    +protected  intcapacity() + +
    +          Get the (constant) capacity of NovelTaskBag
    +protected  intforgetRate() + +
    +          Get the (constant) forget rate in NovelTaskBag
    + + + + + + + +
    Methods inherited from class nars.container.Bag
    averagePriority, contains, emptyLevel, get, init, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +NovelTaskBag

    +
    +public NovelTaskBag(Memory memory)
    +
    +
    Constructor +

    +

    +
    Parameters:
    memory - The reference of memory
    +
    + + + + + + + + +
    +Method Detail
    + +

    +capacity

    +
    +protected int capacity()
    +
    +
    Get the (constant) capacity of NovelTaskBag +

    +

    +
    Specified by:
    capacity in class Bag<Task>
    +
    +
    + +
    Returns:
    The capacity of NovelTaskBag
    +
    +
    +
    + +

    +forgetRate

    +
    +protected int forgetRate()
    +
    +
    Get the (constant) forget rate in NovelTaskBag +

    +

    +
    Specified by:
    forgetRate in class Bag<Task>
    +
    +
    + +
    Returns:
    The forget rate in NovelTaskBag
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/TaskLinkBag.html b/nars-dist/javadoc/nars/container/TaskLinkBag.html new file mode 100644 index 00000000..f0b1463d --- /dev/null +++ b/nars-dist/javadoc/nars/container/TaskLinkBag.html @@ -0,0 +1,320 @@ + + + + + + + +TaskLinkBag + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.container +
    +Class TaskLinkBag

    +
    +java.lang.Object
    +  extended by nars.container.Bag<TaskLink>
    +      extended by nars.container.TaskLinkBag
    +
    +
    +
    +
    public class TaskLinkBag
    extends Bag<TaskLink>
    + + +

    +TaskLinkBag contains links to tasks. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.container.Bag
    memory
    +  + + + + + + + + + + +
    +Constructor Summary
    TaskLinkBag(Memory memory) + +
    +          Constructor
    +  + + + + + + + + + + + + + + + +
    +Method Summary
    +protected  intcapacity() + +
    +          Get the (constant) capacity of TaskLinkBag
    +protected  intforgetRate() + +
    +          Get the (adjustable) forget rate of TaskLinkBag
    + + + + + + + +
    Methods inherited from class nars.container.Bag
    averagePriority, contains, emptyLevel, get, init, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +TaskLinkBag

    +
    +public TaskLinkBag(Memory memory)
    +
    +
    Constructor +

    +

    +
    Parameters:
    memory - The reference of memory
    +
    + + + + + + + + +
    +Method Detail
    + +

    +capacity

    +
    +protected int capacity()
    +
    +
    Get the (constant) capacity of TaskLinkBag +

    +

    +
    Specified by:
    capacity in class Bag<TaskLink>
    +
    +
    + +
    Returns:
    The capacity of TaskLinkBag
    +
    +
    +
    + +

    +forgetRate

    +
    +protected int forgetRate()
    +
    +
    Get the (adjustable) forget rate of TaskLinkBag +

    +

    +
    Specified by:
    forgetRate in class Bag<TaskLink>
    +
    +
    + +
    Returns:
    The forget rate of TaskLinkBag
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/TermLinkBag.html b/nars-dist/javadoc/nars/container/TermLinkBag.html new file mode 100644 index 00000000..30c993c5 --- /dev/null +++ b/nars-dist/javadoc/nars/container/TermLinkBag.html @@ -0,0 +1,344 @@ + + + + + + + +TermLinkBag + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.container +
    +Class TermLinkBag

    +
    +java.lang.Object
    +  extended by nars.container.Bag<TermLink>
    +      extended by nars.container.TermLinkBag
    +
    +
    +
    +
    public class TermLinkBag
    extends Bag<TermLink>
    + + +

    +Contains TermLinks to relevant (compound or component) Terms. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.container.Bag
    memory
    +  + + + + + + + + + + +
    +Constructor Summary
    TermLinkBag(Memory memory) + +
    +          Constructor
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +protected  intcapacity() + +
    +          Get the (constant) capacity of TermLinkBag
    +protected  intforgetRate() + +
    +          Get the (adjustable) forget rate of TermLinkBag
    + TermLinktakeOut(TaskLink taskLink, + long time) + +
    +          Replace defualt to prevent repeated inference, by checking TaskLink
    + + + + + + + +
    Methods inherited from class nars.container.Bag
    averagePriority, contains, emptyLevel, get, init, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +TermLinkBag

    +
    +public TermLinkBag(Memory memory)
    +
    +
    Constructor +

    +

    +
    Parameters:
    memory - The reference of memory
    +
    + + + + + + + + +
    +Method Detail
    + +

    +capacity

    +
    +protected int capacity()
    +
    +
    Get the (constant) capacity of TermLinkBag +

    +

    +
    Specified by:
    capacity in class Bag<TermLink>
    +
    +
    + +
    Returns:
    The capacity of TermLinkBag
    +
    +
    +
    + +

    +forgetRate

    +
    +protected int forgetRate()
    +
    +
    Get the (adjustable) forget rate of TermLinkBag +

    +

    +
    Specified by:
    forgetRate in class Bag<TermLink>
    +
    +
    + +
    Returns:
    The forget rate of TermLinkBag
    +
    +
    +
    + +

    +takeOut

    +
    +public TermLink takeOut(TaskLink taskLink,
    +                        long time)
    +
    +
    Replace defualt to prevent repeated inference, by checking TaskLink +

    +

    +
    Parameters:
    taskLink - The selected TaskLink
    time - The current time +
    Returns:
    The selected TermLink
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/class-use/Bag.html b/nars-dist/javadoc/nars/container/class-use/Bag.html new file mode 100644 index 00000000..720078be --- /dev/null +++ b/nars-dist/javadoc/nars/container/class-use/Bag.html @@ -0,0 +1,233 @@ + + + + + + + +Uses of Class nars.container.Bag + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.container.Bag

    +
    + + + + + + + + + + + + + +
    +Packages that use Bag
    nars.containerStorage management 
    nars.guiGraphical user interface of the system 
    +  +

    + + + + + +
    +Uses of Bag in nars.container
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Subclasses of Bag in nars.container
    + classConceptBag + +
    +          Contains Concepts.
    + classNovelTaskBag + +
    +          New tasks that contain new Term.
    + classTaskLinkBag + +
    +          TaskLinkBag contains links to tasks.
    + classTermLinkBag + +
    +          Contains TermLinks to relevant (compound or component) Terms.
    +  +

    + + + + + +
    +Uses of Bag in nars.gui
    +  +

    + + + + + + + + +
    Constructors in nars.gui with parameters of type Bag
    BagWindow(Bag b, + java.lang.String title) + +
    +          Constructor
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/class-use/ConceptBag.html b/nars-dist/javadoc/nars/container/class-use/ConceptBag.html new file mode 100644 index 00000000..64169072 --- /dev/null +++ b/nars-dist/javadoc/nars/container/class-use/ConceptBag.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.container.ConceptBag + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.container.ConceptBag

    +
    +No usage of nars.container.ConceptBag +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/class-use/Memory.html b/nars-dist/javadoc/nars/container/class-use/Memory.html new file mode 100644 index 00000000..0b3043c0 --- /dev/null +++ b/nars-dist/javadoc/nars/container/class-use/Memory.html @@ -0,0 +1,962 @@ + + + + + + + +Uses of Class nars.container.Memory + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.container.Memory

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Packages that use Memory
    nars.containerStorage management 
    nars.entityData entities that are independently stored 
    nars.inferenceThe inference rules and control functions 
    nars.ioInput/output management 
    nars.mainTop-level classes of the system 
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of Memory in nars.container
    +  +

    + + + + + + + + + +
    Fields in nars.container declared as Memory
    +protected  MemoryBag.memory + +
    +          reference to memory
    +  +

    + + + + + + + + + + + + + + + + + + + + +
    Constructors in nars.container with parameters of type Memory
    Bag(Memory memory) + +
    +          constructor, called from subclasses
    ConceptBag(Memory memory) + +
    +          Constructor
    NovelTaskBag(Memory memory) + +
    +          Constructor
    TaskLinkBag(Memory memory) + +
    +          Constructor
    TermLinkBag(Memory memory) + +
    +          Constructor
    +  +

    + + + + + +
    +Uses of Memory in nars.entity
    +  +

    + + + + + + + + +
    Constructors in nars.entity with parameters of type Memory
    Concept(Term tm, + Memory memory) + +
    +          Constructor, called in Memory.getConcept only
    +  +

    + + + + + +
    +Uses of Memory in nars.inference
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.inference with parameters of type Memory
    +static BudgetValueBudgetFunctions.backward(TruthValue truth, + Memory memory) + +
    +          Backward inference result and adjustment, stronger case
    +static BudgetValueBudgetFunctions.backwardWeak(TruthValue truth, + Memory memory) + +
    +          Backward inference result and adjustment, weaker case
    +static BudgetValueBudgetFunctions.compoundBackward(Term content, + Memory memory) + +
    +          Backward inference with CompoundTerm conclusion, stronger case
    +static BudgetValueBudgetFunctions.compoundBackwardWeak(Term content, + Memory memory) + +
    +          Backward inference with CompoundTerm conclusion, weaker case
    +static BudgetValueBudgetFunctions.compoundForward(TruthValue truth, + Term content, + Memory memory) + +
    +          Forward inference with CompoundTerm conclusion
    +static voidLocalRules.match(Task task, + Sentence belief, + Memory memory) + +
    +          The task and belief have the same content
    +static voidLocalRules.matchAsymSym(Sentence asym, + Sentence sym, + int figure, + Memory memory) + +
    +          Inheritance/Implication matches Similarity/Equivalence
    +static voidLocalRules.matchReverse(Memory memory) + +
    +          The task and belief match reversely
    +static voidRuleTables.reason(TaskLink tLink, + TermLink bLink, + Memory memory) + +
    +          Entry point of the inference engine
    +static voidLocalRules.revision(Sentence newBelief, + Sentence oldBelief, + boolean feedbackToLinks, + Memory memory) + +
    +          Belief revision
    +static voidStructuralRules.transformNegation(Term content, + Memory memory) + +
    +          {A, A@(--, A)} |- (--, A)
    +static voidRuleTables.transformTask(TaskLink tLink, + Memory memory) + +
    +          The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation
    +static voidLocalRules.trySolution(Sentence problem, + Sentence belief, + Task task, + Memory memory) + +
    +          Check if a Sentence provide a better answer to a Question or Goal
    +  +

    + + + + + +
    +Uses of Memory in nars.io
    +  +

    + + + + + + + + + + + + + + + + + +
    Methods in nars.io with parameters of type Memory
    +static TaskStringParser.parseExperience(java.lang.StringBuffer buffer, + Memory memory, + long time) + +
    +          Parse a line of input experience
    +static TaskStringParser.parseTask(java.lang.String s, + Memory memory, + long time) + +
    +          Enter a new Task in String into the memory, called from InputWindow or locally.
    +static TermStringParser.parseTerm(java.lang.String s0, + Memory memory) + +
    +          Top-level method that parse a Term in general, which may recursively call itself.
    +  +

    + + + + + +
    +Uses of Memory in nars.main
    +  +

    + + + + + + + + + +
    Methods in nars.main that return Memory
    + MemoryReasoner.getMemory() + +
    +           
    +  +

    + + + + + +
    +Uses of Memory in nars.term
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.term with parameters of type Memory
    +static TermCompoundTerm.addComponents(CompoundTerm t1, + Term t2, + Memory memory) + +
    +          Try to add a component into a compound
    +static TermConjunction.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new compound from a list of components.
    +static TermDifferenceExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new DifferenceExt.
    +static TermDifferenceInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new DifferenceExt.
    +static TermDisjunction.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static TermImageExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new ImageExt.
    +static TermImageInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new ImageExt.
    +static TermIntersectionExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static TermIntersectionInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static TermNegation.make(java.util.ArrayList<Term> argument, + Memory memory) + +
    +          Try to make a new SetExt.
    +static TermProduct.make(java.util.ArrayList<Term> argument, + Memory memory) + +
    +          Try to make a new compound.
    +static TermSetExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new SetExt.
    +static TermSetInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new SetExt.
    +static TermImageExt.make(java.util.ArrayList<Term> argument, + short index, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermImageInt.make(java.util.ArrayList<Term> argument, + short index, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermCompoundTerm.make(CompoundTerm compound, + java.util.ArrayList<Term> components, + Memory memory) + +
    +          Try to make a compound term from a template and a list of components
    +static TermProduct.make(CompoundTerm image, + Term component, + int index, + Memory memory) + +
    +          Try to make a Product from an ImageExt/ImageInt and a component.
    +static TermImageExt.make(ImageExt oldImage, + Term component, + short index, + Memory memory) + +
    +          Try to make an Image from an existing Image and a component.
    +static TermImageInt.make(ImageInt oldImage, + Term component, + short index, + Memory memory) + +
    +          Try to make an Image from an existing Image and a component.
    +static TermImageExt.make(Product product, + Term relation, + short index, + Memory memory) + +
    +          Try to make an Image from a Product and a relation.
    +static TermImageInt.make(Product product, + Term relation, + short index, + Memory memory) + +
    +          Try to make an Image from a Product and a relation.
    +static StatementStatement.make(Statement statement, + Term subj, + Term pred, + Memory memory) + +
    +          Make a Statement from given components, called by the rules
    +static TermCompoundTerm.make(java.lang.String op, + java.util.ArrayList<Term> arg, + Memory memory) + +
    +          Try to make a compound term from an operator and a list of components
    +static StatementStatement.make(java.lang.String relation, + Term subject, + Term predicate, + Memory memory) + +
    +          Make a Statement from String, called by StringParser
    +static TermNegation.make(Term t, + Memory memory) + +
    +          Try to make a Negation of one component.
    +static TermSetExt.make(Term t, + Memory memory) + +
    +          Try to make a new set from one component.
    +static TermSetInt.make(Term t, + Memory memory) + +
    +          Try to make a new set from one component.
    +static TermConjunction.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermDifferenceExt.make(Term t1, + Term t2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermDifferenceInt.make(Term t1, + Term t2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermDisjunction.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new Disjunction from two components.
    +static EquivalenceEquivalence.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static ImplicationImplication.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static InheritanceInheritance.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static StatementInstance.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static StatementInstanceProperty.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermIntersectionExt.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermIntersectionInt.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static StatementProperty.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static SimilaritySimilarity.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermDisjunction.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new Disjunction from a set of components.
    +static TermIntersectionExt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermIntersectionInt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermSetExt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermSetInt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static StatementStatement.makeSym(Statement statement, + Term subj, + Term pred, + Memory memory) + +
    +          Make a symmetric Statement from given components and temporal information, called by the rules
    +static TermCompoundTerm.reduceComponents(CompoundTerm t1, + Term t2, + Memory memory) + +
    +          Try to remove a component from a compound
    +static TermCompoundTerm.setComponent(CompoundTerm compound, + int index, + Term t, + Memory memory) + +
    +          Try to replace a component in a compound at a given index by another one
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/class-use/NovelTaskBag.html b/nars-dist/javadoc/nars/container/class-use/NovelTaskBag.html new file mode 100644 index 00000000..565560ad --- /dev/null +++ b/nars-dist/javadoc/nars/container/class-use/NovelTaskBag.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.container.NovelTaskBag + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.container.NovelTaskBag

    +
    +No usage of nars.container.NovelTaskBag +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/class-use/TaskLinkBag.html b/nars-dist/javadoc/nars/container/class-use/TaskLinkBag.html new file mode 100644 index 00000000..bf5a3eb9 --- /dev/null +++ b/nars-dist/javadoc/nars/container/class-use/TaskLinkBag.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.container.TaskLinkBag + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.container.TaskLinkBag

    +
    +No usage of nars.container.TaskLinkBag +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/class-use/TermLinkBag.html b/nars-dist/javadoc/nars/container/class-use/TermLinkBag.html new file mode 100644 index 00000000..0550e813 --- /dev/null +++ b/nars-dist/javadoc/nars/container/class-use/TermLinkBag.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.container.TermLinkBag + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.container.TermLinkBag

    +
    +No usage of nars.container.TermLinkBag +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/package-frame.html b/nars-dist/javadoc/nars/container/package-frame.html new file mode 100644 index 00000000..65fc1c28 --- /dev/null +++ b/nars-dist/javadoc/nars/container/package-frame.html @@ -0,0 +1,43 @@ + + + + + + + +nars.container + + + + + + + + + + + +nars.container + + + + +
    +Classes  + +
    +Bag +
    +ConceptBag +
    +Memory +
    +NovelTaskBag +
    +TaskLinkBag +
    +TermLinkBag
    + + + + diff --git a/nars-dist/javadoc/nars/container/package-summary.html b/nars-dist/javadoc/nars/container/package-summary.html new file mode 100644 index 00000000..93aba489 --- /dev/null +++ b/nars-dist/javadoc/nars/container/package-summary.html @@ -0,0 +1,221 @@ + + + + + + + +nars.container + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package nars.container +

    +Storage management +

    +See: +
    +          Description +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    Bag<Type extends Item>A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
    ConceptBagContains Concepts.
    MemoryThe memory of the system.
    NovelTaskBagNew tasks that contain new Term.
    TaskLinkBagTaskLinkBag contains links to tasks.
    TermLinkBagContains TermLinks to relevant (compound or component) Terms.
    +  + +

    +

    +Package nars.container Description +

    + +

    +Storage management + +

    Package Specification

    + +All Items (Concept within Memory, TaskLinks and TermLinks within Concept, and Tasks within buffer) are put into Bags, which supports priority-based resources allocation. Also, bag supports access by key (String). +

    +A bag supports three major operations: +

      +
    • To take out an item by key.
    • +
    • To take out an item probabilistically according to priority.
    • +
    • To put an item into the bag.
    • +
    +All the operations take constant time to finish. +

    +The "take out by priority" operation takes an item out probablistically, with the +probability proportional to the priority value. +

    +The probability distribution is generated from a deterministic table. +

    +All classes in package nars.storage extend Bag. +

    +In NARS, the memory consists of a bag of concepts. Each concept uniquely corresponds to a term, which uniquely corresponds to a String served as its name. It is necessary to separate a term and the corresponding concept, because a concept may be deleted due to space competition, and a term is removed only when no other term is linked to it. In the system, there may be multiple terms refer to the same concept, though the concept just refer to one of them. NARS does not follow a "one term, one concept" policy and use a hash table in memory to maps names into terms, because the system needs to remove a concept without removing the term that naming it. +

    +Variable terms correspond to no concept, and their meaning is local to the "smallest" term that contains all occurences of the variable. +

    +From name to term, call Term.nameToTerm(String). From name to concept, call Concept.nameToConcept(String). Both use the name as key to get the concept from the concept hashtable in memory. +

    +The main memory also contains buffers for new tasks. One buffer contains tasks to be processed immediately (to be finished in constant time), and the other, a bag, for the tasks to be processed later. +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/package-tree.html b/nars-dist/javadoc/nars/container/package-tree.html new file mode 100644 index 00000000..09a70e4d --- /dev/null +++ b/nars-dist/javadoc/nars/container/package-tree.html @@ -0,0 +1,156 @@ + + + + + + + +nars.container Class Hierarchy + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package nars.container +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/container/package-use.html b/nars-dist/javadoc/nars/container/package-use.html new file mode 100644 index 00000000..648ed863 --- /dev/null +++ b/nars-dist/javadoc/nars/container/package-use.html @@ -0,0 +1,293 @@ + + + + + + + +Uses of Package nars.container + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    nars.container

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Packages that use nars.container
    nars.containerStorage management 
    nars.entityData entities that are independently stored 
    nars.guiGraphical user interface of the system 
    nars.inferenceThe inference rules and control functions 
    nars.ioInput/output management 
    nars.mainTop-level classes of the system 
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + + + + + + + +
    +Classes in nars.container used by nars.container
    Bag + +
    +          A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
    Memory + +
    +          The memory of the system.
    +  +

    + + + + + + + + +
    +Classes in nars.container used by nars.entity
    Memory + +
    +          The memory of the system.
    +  +

    + + + + + + + + +
    +Classes in nars.container used by nars.gui
    Bag + +
    +          A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
    +  +

    + + + + + + + + +
    +Classes in nars.container used by nars.inference
    Memory + +
    +          The memory of the system.
    +  +

    + + + + + + + + +
    +Classes in nars.container used by nars.io
    Memory + +
    +          The memory of the system.
    +  +

    + + + + + + + + +
    +Classes in nars.container used by nars.main
    Memory + +
    +          The memory of the system.
    +  +

    + + + + + + + + +
    +Classes in nars.container used by nars.term
    Memory + +
    +          The memory of the system.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/entity/BudgetValue.html b/nars-dist/javadoc/nars/entity/BudgetValue.html index d8c44578..8579a23c 100644 --- a/nars-dist/javadoc/nars/entity/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/BudgetValue.html @@ -2,13 +2,13 @@ - + -BudgetValue (NARS Document) +BudgetValue - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="BudgetValue (NARS Document)"; + parent.document.title="BudgetValue"; } } @@ -99,9 +99,6 @@

    All Implemented Interfaces:
    java.lang.Cloneable
    -
    -
    Direct Known Subclasses:
    Item
    -

    public class BudgetValue
    extends java.lang.Object
    implements java.lang.Cloneable
    @@ -133,14 +130,6 @@

    -private static char -MARK - -
    -          The charactor that marks the two ends of a budget value - - - protected  ShortFloat priority @@ -155,14 +144,6 @@


              The overall (context-independent) evaluation - - -private static char -SEPARATOR - -
    -          The charactor that separates the factors in a budget value -   @@ -342,7 +323,7 @@

     java.lang.String -toString2() +toStringBrief()
              Briefly display the BudgetValue @@ -370,30 +351,6 @@

    -

    -MARK

    -
    -private static final char MARK
    -
    -
    The charactor that marks the two ends of a budget value -

    -

    -
    See Also:
    Constant Field Values
    -
    -
    - -

    -SEPARATOR

    -
    -private static final char SEPARATOR
    -
    -
    The charactor that separates the factors in a budget value -

    -

    -
    See Also:
    Constant Field Values
    -
    -
    -

    priority

    @@ -764,10 +721,10 @@ 


    -

    -toString2

    +

    +toStringBrief

    -public java.lang.String toString2()
    +public java.lang.String toStringBrief()
    Briefly display the BudgetValue

    diff --git a/nars-dist/javadoc/nars/entity/Concept.html b/nars-dist/javadoc/nars/entity/Concept.html index eef9a551..f731a9fc 100644 --- a/nars-dist/javadoc/nars/entity/Concept.html +++ b/nars-dist/javadoc/nars/entity/Concept.html @@ -2,13 +2,13 @@ - + -Concept (NARS Document) +Concept - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Concept (NARS Document)"; + parent.document.title="Concept"; } } @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -94,13 +94,9 @@

    Class Concept

     java.lang.Object
    -  extended by nars.entity.BudgetValue
    -      extended by nars.entity.Item
    -          extended by nars.entity.Concept
    +  extended by nars.entity.Item
    +      extended by nars.entity.Concept
     
    -
    -
    All Implemented Interfaces:
    java.lang.Cloneable
    -

    public final class Concept
    extends Item
    @@ -126,86 +122,6 @@

    Field Summary - - -private  java.util.ArrayList<Judgment> -beliefs - -
    -          Judgments directly made about the term, with non-future tense - - - -private  java.util.ArrayList<Goal> -goals - -
    -          Goals directly requested on the term - - - -private  java.util.ArrayList<Question> -questions - -
    -          Question directly asked about the term - - - -private  boolean -revisible - -
    -          Whether truth value of judgments can be revised - - - -private  boolean -showing - -
    -          Whether the content of the concept is being displayed - - - -private  TaskLinkBag -taskLinks - -
    -          Task links for indirect processing - - - -private  Term -term - -
    -          The term is the unique ID of the concept - - - -private  TermLinkBag -termLinks - -
    -          Term links between the term and its components and compounds - - - -private  java.util.ArrayList<TermLink> -termLinkTemplates - -
    -          Link templates of TermLink, only in concepts with CompoundTerm - - - -private  ConceptWindow -window - -
    -          The display window -   @@ -213,16 +129,7 @@

    - - -
    Fields inherited from class nars.entity.Item
    key
    - - - - - - +
    Fields inherited from class nars.entity.BudgetValue
    durability, priority, qualitybudget, key
      @@ -235,7 +142,8 @@

    Constructor Summary -Concept(Term tm) +Concept(Term tm, + Memory memory)
              Constructor, called in Memory.getConcept only @@ -252,33 +160,14 @@

    -private  void -addToTable(Judgment newJudgment, - java.util.ArrayList table, - int capacity) - -
    -          Add a new belief or goal into the table - Sort the beliefs/goals by rank, and remove redundant or low rank one - - -  void -buildTermLinks(BudgetValue budget) +buildTermLinks(BudgetValue taskBudget)
              Recursively build TermLinks between a compound and its components -private  void -checkRevisibility() - -
    -          Judgments with dependent variable cannot be revised - - -  void directProcess(Task task) @@ -291,7 +180,7 @@

    displayContent()
    -          Collect direct belief, questions, and goals for display +          Collect direct isBelief, questions, and goals for display @@ -303,11 +192,11 @@

    - Judgment + Sentence getBelief(Task task)
    -          Select a belief to interact with the given task in inference +          Select a isBelief to interact with the given task in inference @@ -319,7 +208,7 @@

    - Term + Term getTerm()
    @@ -359,42 +248,14 @@

    -private  void -processGoal(Goal goal, - Task task) - -
    -          Direct processing a new goal - - - -private  void -processJudgment(Judgment judg, - Task task) - -
    -          To accept a new judgment as belief, and check for revisions and solutions - - - -private  void -processQuestion(Question ques, - Task task) + float
    +processQuestion(Task task)
              To answer a question by existing beliefs -private  boolean -reviseTable(Judgment judg, - java.util.ArrayList table) - -
    -          Revise existing beliefs or goals - - -  void startPlay(boolean showLinks) @@ -424,16 +285,7 @@

    Methods inherited from class nars.entity.Item -getBudget, getKey - - -  - - - - - - +
    Methods inherited from class nars.entity.BudgetValue
    aboveThreshold, clone, decDurability, decPriority, decQuality, getDurability, getPriority, incDurability, incPriority, incQuality, merge, setDurability, setPriority, setQuality, summary, toString2decDurability, decPriority, getBudget, getDurability, getKey, getPriority, incDurability, incPriority, merge, setBudget, setDurability, setPriority, setQuality, toStringBrief
      @@ -442,141 +294,12 @@

    Methods inherited from class java.lang.Object -equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait +clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait  

    - - - - - - - -
    -Field Detail
    - -

    -term

    -
    -private Term term
    -
    -
    The term is the unique ID of the concept -

    -

    -
    -
    -
    - -

    -taskLinks

    -
    -private TaskLinkBag taskLinks
    -
    -
    Task links for indirect processing -

    -

    -
    -
    -
    - -

    -termLinks

    -
    -private TermLinkBag termLinks
    -
    -
    Term links between the term and its components and compounds -

    -

    -
    -
    -
    - -

    -termLinkTemplates

    -
    -private java.util.ArrayList<TermLink> termLinkTemplates
    -
    -
    Link templates of TermLink, only in concepts with CompoundTerm -

    -

    -
    -
    -
    - -

    -questions

    -
    -private java.util.ArrayList<Question> questions
    -
    -
    Question directly asked about the term -

    -

    -
    -
    -
    - -

    -goals

    -
    -private java.util.ArrayList<Goal> goals
    -
    -
    Goals directly requested on the term -

    -

    -
    -
    -
    - -

    -beliefs

    -
    -private java.util.ArrayList<Judgment> beliefs
    -
    -
    Judgments directly made about the term, with non-future tense -

    -

    -
    -
    -
    - -

    -revisible

    -
    -private boolean revisible
    -
    -
    Whether truth value of judgments can be revised -

    -

    -
    -
    -
    - -

    -showing

    -
    -private boolean showing
    -
    -
    Whether the content of the concept is being displayed -

    -

    -
    -
    -
    - -

    -window

    -
    -private ConceptWindow window
    -
    -
    The display window -

    -

    -
    -
    - @@ -587,15 +310,16 @@

    -

    +

    Concept

    -public Concept(Term tm)
    +public Concept(Term tm, + Memory memory)
    Constructor, called in Memory.getConcept only

    -
    Parameters:
    tm - A term corresponding to the concept
    +
    Parameters:
    tm - A term corresponding to the concept
    memory - A reference to the memory
    @@ -608,19 +332,6 @@

    -

    -checkRevisibility

    -
    -private void checkRevisibility()
    -
    -
    Judgments with dependent variable cannot be revised -

    -

    -
    -
    -
    -
    -

    directProcess

    @@ -628,7 +339,7 @@ 

    Directly process a new task. Called exactly once on each task. Using local information and finishing in a constant time. - Provide feedback in the budget value of the task. + Provide feedback in the taskBudget value of the task.

    called in Memory.immediateProcess only

    @@ -638,75 +349,16 @@


    -

    +

    processQuestion

    -private void processQuestion(Question ques,
    -                             Task task)
    +public float processQuestion(Task task)
    To answer a question by existing beliefs

    -
    Parameters:
    ques - The question to be answered
    task - The task to be processed
    -
    -
    -
    - -

    -processGoal

    -
    -private void processGoal(Goal goal,
    -                         Task task)
    -
    -
    Direct processing a new goal -

    -

    -
    Parameters:
    goal - The goal to be processed
    task - The task to be processed
    -
    -
    -
    - -

    -processJudgment

    -
    -private void processJudgment(Judgment judg,
    -                             Task task)
    -
    -
    To accept a new judgment as belief, and check for revisions and solutions -

    -

    -
    Parameters:
    judg - The judgment to be accepted
    task - The task to be processed
    -
    -
    -
    - -

    -reviseTable

    -
    -private boolean reviseTable(Judgment judg,
    -                            java.util.ArrayList table)
    -
    -
    Revise existing beliefs or goals -

    -

    -
    Parameters:
    judg - The judgment (belief or goal) to be processed
    table - The table to be revised -
    Returns:
    Whether the new belief triggered a revision
    -
    -
    -
    - -

    -addToTable

    -
    -private void addToTable(Judgment newJudgment,
    -                        java.util.ArrayList table,
    -                        int capacity)
    -
    -
    Add a new belief or goal into the table - Sort the beliefs/goals by rank, and remove redundant or low rank one -

    -

    -
    Parameters:
    newJudgment - The judgment to be processed
    table - The table to be revised
    capacity - The capacity of the table
    +
    Parameters:
    task - The task to be processed +
    Returns:
    Whether to continue the processing of the task

    @@ -729,14 +381,14 @@

    buildTermLinks

    -public void buildTermLinks(BudgetValue budget)
    +public void buildTermLinks(BudgetValue taskBudget)
    Recursively build TermLinks between a compound and its components

    called only from Memory.continuedProcess

    -
    Parameters:
    budget - The budget of the task
    +
    Parameters:
    taskBudget - The BudgetValue of the task

    @@ -759,7 +411,7 @@

    getTerm

    -public Term getTerm()
    +public Term getTerm()
    Return the assocated term, called from Memory only

    @@ -778,11 +430,11 @@

    Return a string representation of the concept, called in ConceptBag only

    -
    Overrides:
    toString in class BudgetValue
    +
    Overrides:
    toString in class Item

    -
    Returns:
    The concept name, with budget in the full version
    +
    Returns:
    The concept name, with taskBudget in the full version

    @@ -795,7 +447,7 @@

    Recalculate the quality of the concept [to be refined to show extension/intension balance]

    -
    Overrides:
    getQuality in class BudgetValue
    +
    Overrides:
    getQuality in class Item
    @@ -821,9 +473,9 @@

    getBelief

    -public Judgment getBelief(Task task)
    +public Sentence getBelief(Task task)
    -
    Select a belief to interact with the given task in inference +
    Select a isBelief to interact with the given task in inference

    get the first qualified one

    @@ -831,7 +483,7 @@

    Parameters:
    task - The selected task -
    Returns:
    The selected belief
    +
    Returns:
    The selected isBelief


    @@ -893,7 +545,7 @@

     public java.lang.String displayContent()
    -
    Collect direct belief, questions, and goals for display +
    Collect direct isBelief, questions, and goals for display

    @@ -932,7 +584,7 @@

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -952,9 +604,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/entity/Item.html b/nars-dist/javadoc/nars/entity/Item.html index 9434131d..0a74d0f2 100644 --- a/nars-dist/javadoc/nars/entity/Item.html +++ b/nars-dist/javadoc/nars/entity/Item.html @@ -2,13 +2,13 @@ - + -Item (NARS Document) +Item - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Item (NARS Document)"; + parent.document.title="Item"; } } @@ -56,8 +56,8 @@ PREV CLASS  - NEXT CLASSPREV CLASS  + NEXT CLASS FRAMES    NO FRAMES   @@ -94,25 +94,21 @@

    Class Item

     java.lang.Object
    -  extended by nars.entity.BudgetValue
    -      extended by nars.entity.Item
    +  extended by nars.entity.Item
     
    -
    All Implemented Interfaces:
    java.lang.Cloneable
    -
    -
    Direct Known Subclasses:
    Concept, Task, TermLink

    -
    public abstract class Item
    extends BudgetValue
    +
    public abstract class Item
    extends java.lang.Object

    An item is an object that can be put into a Bag, to participate in the resource competation of the system.

    - It has a key and a budget. + It has a key and a budget. Cannot be cloned

    @@ -129,6 +125,14 @@

    +protected  BudgetValue +budget + +
    +          The budget of the Item, consisting of 3 numbers + + + protected  java.lang.String key @@ -136,15 +140,6 @@

              The key of the Item, unique in a Bag -  - - - - - - - -
    Fields inherited from class nars.entity.BudgetValue
    durability, priority, quality
      @@ -160,12 +155,21 @@

    Item()
    -          Default constructor +          The default constructor protected -Item(BudgetValue v) +Item(java.lang.String key) + +
    +          Constructor with default budget + + + +protected +Item(java.lang.String key, + BudgetValue budget)
              Constructor with initial budget @@ -182,11 +186,35 @@

    + void +decDurability(float v) + +
    +          Decrease durability value + + + + void +decPriority(float v) + +
    +          Decrease priority value + + +  BudgetValue getBudget()
    -          Get current BudgetValue +          Get BudgetValue + + + + float +getDurability() + +
    +          Get durability value @@ -196,14 +224,93 @@


              Get the current key - -  - - - + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods inherited from class nars.entity.BudgetValue
    + floatgetPriority() + +
    +          Get priority value
    aboveThreshold, clone, decDurability, decPriority, decQuality, getDurability, getPriority, getQuality, incDurability, incPriority, incQuality, merge, setDurability, setPriority, setQuality, summary, toString, toString2 + floatgetQuality() + +
    +          Get quality value
    + voidincDurability(float v) + +
    +          Increase durability value
    + voidincPriority(float v) + +
    +          Increase priority value
    + voidmerge(Item that) + +
    +          Merge with another Item with identical key
    +protected  voidsetBudget(BudgetValue budget) + +
    +          Constructor with initial budget
    + voidsetDurability(float v) + +
    +          Set durability value
    + voidsetPriority(float v) + +
    +          Set priority value
    + voidsetQuality(float v) + +
    +          Set quality value
    + java.lang.StringtoString() + +
    +          Return a String representation of the Item
    + java.lang.StringtoStringBrief() + +
    +          Return a String representation of the Item after simplification
      @@ -212,7 +319,7 @@

    Methods inherited from class java.lang.Object -equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait +clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait   @@ -238,6 +345,18 @@

    +
    + +

    +budget

    +
    +protected BudgetValue budget
    +
    +
    The budget of the Item, consisting of 3 numbers +

    +

    +
    +
    @@ -254,20 +373,33 @@

     protected Item()
    -
    Default constructor +
    The default constructor +

    +

    +
    + +

    +Item

    +
    +protected Item(java.lang.String key)
    +
    +
    Constructor with default budget

    +

    +
    Parameters:
    key - The key value

    -

    +

    Item

    -protected Item(BudgetValue v)
    +protected Item(java.lang.String key, + BudgetValue budget)
    Constructor with initial budget

    -
    Parameters:
    v - The initial budget
    +
    Parameters:
    key - The key value
    budget - The initial budget
    @@ -280,6 +412,19 @@

    +

    +setBudget

    +
    +protected void setBudget(BudgetValue budget)
    +
    +
    Constructor with initial budget +

    +

    +
    Parameters:
    budget - The initial budget
    +
    +
    +
    +

    getKey

    @@ -299,15 +444,190 @@ 

     public BudgetValue getBudget()
    -
    Get current BudgetValue -

    - This method is redundant, just to make the code more readable +

    Get BudgetValue

    Returns:
    Current BudgetValue
    +
    + +

    +getPriority

    +
    +public float getPriority()
    +
    +
    Get priority value +

    +

    + +
    Returns:
    Current priority value
    +
    +
    +
    + +

    +setPriority

    +
    +public void setPriority(float v)
    +
    +
    Set priority value +

    +

    +
    Parameters:
    v - Set a new priority value
    +
    +
    +
    + +

    +incPriority

    +
    +public void incPriority(float v)
    +
    +
    Increase priority value +

    +

    +
    Parameters:
    v - The amount of increase
    +
    +
    +
    + +

    +decPriority

    +
    +public void decPriority(float v)
    +
    +
    Decrease priority value +

    +

    +
    Parameters:
    v - The amount of decrease
    +
    +
    +
    + +

    +getDurability

    +
    +public float getDurability()
    +
    +
    Get durability value +

    +

    + +
    Returns:
    Current durability value
    +
    +
    +
    + +

    +setDurability

    +
    +public void setDurability(float v)
    +
    +
    Set durability value +

    +

    +
    Parameters:
    v - The new durability value
    +
    +
    +
    + +

    +incDurability

    +
    +public void incDurability(float v)
    +
    +
    Increase durability value +

    +

    +
    Parameters:
    v - The amount of increase
    +
    +
    +
    + +

    +decDurability

    +
    +public void decDurability(float v)
    +
    +
    Decrease durability value +

    +

    +
    Parameters:
    v - The amount of decrease
    +
    +
    +
    + +

    +getQuality

    +
    +public float getQuality()
    +
    +
    Get quality value +

    +

    + +
    Returns:
    The quality value
    +
    +
    +
    + +

    +setQuality

    +
    +public void setQuality(float v)
    +
    +
    Set quality value +

    +

    +
    Parameters:
    v - The new quality value
    +
    +
    +
    + +

    +merge

    +
    +public void merge(Item that)
    +
    +
    Merge with another Item with identical key +

    +

    +
    Parameters:
    that - The Item to be merged
    +
    +
    +
    + +

    +toString

    +
    +public java.lang.String toString()
    +
    +
    Return a String representation of the Item +

    +

    +
    Overrides:
    toString in class java.lang.Object
    +
    +
    + +
    Returns:
    The String representation of the full content
    +
    +
    +
    + +

    +toStringBrief

    +
    +public java.lang.String toStringBrief()
    +
    +
    Return a String representation of the Item after simplification +

    +

    + +
    Returns:
    A simplified String representation of the content
    +
    +

    @@ -339,8 +659,8 @@

    PREV CLASS  - NEXT CLASSPREV CLASS  + NEXT CLASS FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/entity/Sentence.html b/nars-dist/javadoc/nars/entity/Sentence.html index 88c747ad..fbc1377d 100644 --- a/nars-dist/javadoc/nars/entity/Sentence.html +++ b/nars-dist/javadoc/nars/entity/Sentence.html @@ -2,13 +2,13 @@ - + -Sentence (NARS Document) +Sentence - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Sentence (NARS Document)"; + parent.document.title="Sentence"; } } @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -99,12 +99,9 @@

    All Implemented Interfaces:
    java.lang.Cloneable
    -
    -
    Direct Known Subclasses:
    Judgment, Question
    -

    -
    public abstract class Sentence
    extends java.lang.Object
    implements java.lang.Cloneable
    +
    public class Sentence
    extends java.lang.Object
    implements java.lang.Cloneable

    @@ -117,64 +114,7 @@


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -Field Summary
    -protected  JudgmentbestSolution - -
    -          For Question and Goal: best solution found so far
    -protected  Termcontent - -
    -          The content of a Sentence is a Term
    -protected  booleaninput - -
    -          Whether it is an input sentence
    -protected  charpunctuation - -
    -          The punctuation also indicates the type of the Sentence: Judgment, Question, or Goal
    -protected  Stampstamp - -
    -          Partial record of the derivation path
    -protected  TruthValuetruth -
    -          The truth value of Judgment or desire value of Goal
    @@ -184,10 +124,13 @@

    Constructor Summary -Sentence() +Sentence(Term content, + char punctuation, + TruthValue truth, + Stamp stamp)
    -            +          Create a Sentence with the given fields   @@ -209,7 +152,7 @@

    - Term + Term cloneContent()
    @@ -217,35 +160,35 @@

    - Judgment -getBestSolution() + boolean +equals(java.lang.Object that)
    -          Get the best-so-far solution for a Question or Goal +          To check whether two sentences are equal - Term -getContent() + boolean +equivalentTo(Sentence that)
    -          Get the content of the sentence +          Check whether the judgment is equivalent to another one - long -getCreationTime() + Term +getContent()
    -          Get the creation time of the truth-value from the Stamp +          Get the content of the sentence - long -getEventTime() + char +getPunctuation()
    -          Get the occurrence time of the event +          Get the punctuation of the sentence @@ -265,11 +208,11 @@

    - boolean -isInput() + int +hashCode()
    -          Check input sentence +          To produce the hashcode of a sentence @@ -282,88 +225,21 @@

     boolean -isTemporal() - -
    -            - - - -static Sentence -make(Sentence oldS, - Term term, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) - -
    -          Make a derived Sentence from a template and some initial values. - - - -static Sentence -make(Term term, - char punc, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) - -
    -          Make a Sentence from an input String. - - - - boolean -noOverlapping(Sentence that) - -
    -          Check whether one sentence has stamp overlapping with another one, and change the system cash - - - - void -setBestSolution(Judgment judg) +isQuestion()
    -          Set the best-so-far solution for a Question or Goal, and report answer for input question +          Distinguish Question from Quest ("instanceof Question" doesn't work)  void -setContent(Term t) +setContent(Term t)
              Set the content Term of the Sentence - void -setInput() - -
    -          The only place to change the default, called in StringParser - - - -private  java.lang.String -tenseToString() - -
    -          Get a String representation of the tense of the sentence - - - - java.lang.String -toKey() - -
    -          Get a stable String representation for a Sentece - Different from toString: tense symbol is replaced by the actual value - - -  java.lang.String toString() @@ -373,7 +249,7 @@

     java.lang.String -toString2() +toStringBrief()
              Get a String representation of the sentence, with 2-digit accuracy @@ -385,93 +261,12 @@

    Methods inherited from class java.lang.Object -equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait +finalize, getClass, notify, notifyAll, wait, wait, wait  

    - - - - - - - -
    -Field Detail
    - -

    -content

    -
    -protected Term content
    -
    -
    The content of a Sentence is a Term -

    -

    -
    -
    -
    - -

    -punctuation

    -
    -protected char punctuation
    -
    -
    The punctuation also indicates the type of the Sentence: Judgment, Question, or Goal -

    -

    -
    -
    -
    - -

    -truth

    -
    -protected TruthValue truth
    -
    -
    The truth value of Judgment or desire value of Goal -

    -

    -
    -
    -
    - -

    -stamp

    -
    -protected Stamp stamp
    -
    -
    Partial record of the derivation path -

    -

    -
    -
    -
    - -

    -input

    -
    -protected boolean input
    -
    -
    Whether it is an input sentence -

    -

    -
    -
    -
    - -

    -bestSolution

    -
    -protected Judgment bestSolution
    -
    -
    For Question and Goal: best solution found so far -

    -

    -
    -
    - @@ -482,11 +277,18 @@

    -

    +

    Sentence

    -public Sentence()
    +public Sentence(Term content, + char punctuation, + TruthValue truth, + Stamp stamp)

    +
    Create a Sentence with the given fields +

    +

    +
    Parameters:
    content - The Term that forms the content of the sentence
    punctuation - The punctuation indicating the type of the sentence
    truth - The truth value of the sentence, null for question
    stamp - The stamp of the sentence indicating its derivation time and base
    @@ -499,46 +301,55 @@

    -

    -make

    +

    +equals

    -public static Sentence make(Term term,
    -                            char punc,
    -                            TruthValue truth,
    -                            Stamp stamp,
    -                            Sentence premise1,
    -                            Sentence premise2)
    +public boolean equals(java.lang.Object that)
    -
    Make a Sentence from an input String. Called by StringParser. +
    To check whether two sentences are equal

    +
    Overrides:
    equals in class java.lang.Object
    +
    +
    +
    Parameters:
    that - The other sentence +
    Returns:
    Whether the two sentences have the same content
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    To produce the hashcode of a sentence +

    +

    +
    Overrides:
    hashCode in class java.lang.Object
    -
    Parameters:
    term - The content of the sentence
    punc - The puncuation (and therefore, type) of the sentence
    truth - The truth value of the sentence, if it is a Judgment (or Goal)
    stamp - The stamp of the truth value (for Judgment or Goal)
    premise1 - The first premise to record in the new Judgment. May be null.
    premise2 - The second premise to record in the new Judgment. May be null. -
    Returns:
    the Sentence generated from the arguments
    + +
    Returns:
    A hashcode

    -

    -make

    +

    +equivalentTo

    -public static Sentence make(Sentence oldS,
    -                            Term term,
    -                            TruthValue truth,
    -                            Stamp stamp,
    -                            Sentence premise1,
    -                            Sentence premise2)
    +public boolean equivalentTo(Sentence that)
    -
    Make a derived Sentence from a template and some initial values. Called by Memory. +
    Check whether the judgment is equivalent to another one +

    + The two may have different keys

    -
    Parameters:
    oldS - A sample sentence providing the type of the new sentence
    term - The content of the sentence
    truth - The truth value of the sentence, if it is a Judgment (or Goal)
    stamp - The stamp of the truth value (for Judgment or Goal)
    premise1 - The first premise to record in the new Judgment. May be null.
    premise2 - The second premise to record in the new Judgment. May be null. -
    Returns:
    the Sentence generated from the arguments
    +
    Parameters:
    that - The other judgment +
    Returns:
    Whether the two are equivalent

    @@ -563,7 +374,7 @@

    getContent

    -public Term getContent()
    +public Term getContent()
    Get the content of the sentence

    @@ -577,10 +388,27 @@


    +

    +getPunctuation

    +
    +public char getPunctuation()
    +
    +
    Get the punctuation of the sentence +

    +

    +
    +
    +
    + +
    Returns:
    The character '.' or '?'
    +
    +
    +
    +

    cloneContent

    -public Term cloneContent()
    +public Term cloneContent()
    Clone the content of the sentence

    @@ -594,10 +422,10 @@


    -

    +

    setContent

    -public void setContent(Term t)
    +public void setContent(Term t)
    Set the content Term of the Sentence

    @@ -661,103 +489,19 @@


    -

    -isInput

    -
    -public boolean isInput()
    -
    -
    Check input sentence -

    -

    -
    -
    -
    - -
    Returns:
    Whether the
    -
    -
    -
    - -

    -setInput

    -
    -public void setInput()
    -
    -
    The only place to change the default, called in StringParser -

    -

    -
    -
    -
    -
    -
    -
    -
    - -

    -getBestSolution

    -
    -public Judgment getBestSolution()
    -
    -
    Get the best-so-far solution for a Question or Goal -

    -

    -
    -
    -
    - -
    Returns:
    The stored Judgment or null
    -
    -
    -
    - -

    -setBestSolution

    -
    -public void setBestSolution(Judgment judg)
    -
    -
    Set the best-so-far solution for a Question or Goal, and report answer for input question -

    -

    -
    -
    -
    -
    Parameters:
    judg - The solution to be remembered
    -
    -
    -
    - -

    -noOverlapping

    -
    -public boolean noOverlapping(Sentence that)
    -
    -
    Check whether one sentence has stamp overlapping with another one, and change the system cash -

    -

    -
    -
    -
    -
    Parameters:
    that - The sentence to be checked against -
    Returns:
    Whether the two have overlapping stamps
    -
    -
    -
    - -

    -toKey

    +

    +isQuestion

    -public java.lang.String toKey()
    +public boolean isQuestion()
    -
    Get a stable String representation for a Sentece - Different from toString: tense symbol is replaced by the actual value +
    Distinguish Question from Quest ("instanceof Question" doesn't work)

    -
    Returns:
    String representation for a Sentece
    +
    Returns:
    Whether the object is a Question

    @@ -779,10 +523,10 @@


    -

    -toString2

    +

    +toStringBrief

    -public java.lang.String toString2()
    +public java.lang.String toStringBrief()
    Get a String representation of the sentence, with 2-digit accuracy

    @@ -794,71 +538,6 @@

    Returns:
    The String

    -
    - -

    -tenseToString

    -
    -private java.lang.String tenseToString()
    -
    -
    Get a String representation of the tense of the sentence -

    -

    -
    -
    -
    - -
    Returns:
    The String
    -
    -
    -
    - -

    -getCreationTime

    -
    -public long getCreationTime()
    -
    -
    Get the creation time of the truth-value from the Stamp -

    -

    -
    -
    -
    - -
    Returns:
    The creation time of the truth-value
    -
    -
    -
    - -

    -getEventTime

    -
    -public long getEventTime()
    -
    -
    Get the occurrence time of the event -

    -

    -
    -
    -
    - -
    Returns:
    The occurrence time of the event
    -
    -
    -
    - -

    -isTemporal

    -
    -public boolean isTemporal()
    -
    -
    -
    -
    -
    -
    -
    -

    @@ -890,7 +569,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -911,9 +590,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/entity/ShortFloat.html b/nars-dist/javadoc/nars/entity/ShortFloat.html index 526a20ef..f913756e 100644 --- a/nars-dist/javadoc/nars/entity/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/ShortFloat.html @@ -2,13 +2,13 @@ - + -ShortFloat (NARS Document) +ShortFloat - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ShortFloat (NARS Document)"; + parent.document.title="ShortFloat"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -112,25 +112,7 @@


    - - - - - - - - - - -
    -Field Summary
    -private  shortvalue - -
    -          To save space, the values are stored as short integers (-32768 to 32767, only 0 to 10000 used), - but used as float
    @@ -142,6 +124,12 @@

    ShortFloat(float v) +
    +          Constructor + + +ShortFloat(short v) +
              Constructor @@ -157,19 +145,19 @@

    - boolean -equals(java.lang.Object that) + java.lang.Object +clone()
    -          Compare two ShortFloat values +          To create an identifical copy of the ShortFloat -(package private)  short -getShortValue() + boolean +equals(java.lang.Object that)
    -          To access the value as short +          Compare two ShortFloat values @@ -206,7 +194,7 @@

     java.lang.String -toString2() +toStringBrief()
              Round the value into a short String @@ -218,43 +206,33 @@

    Methods inherited from class java.lang.Object -clone, finalize, getClass, notify, notifyAll, wait, wait, wait +finalize, getClass, notify, notifyAll, wait, wait, wait  

    - + - + +Constructor Detail
    -Field Detail
    -

    -value

    +

    +ShortFloat

    -private short value
    +public ShortFloat(short v)
    -
    To save space, the values are stored as short integers (-32768 to 32767, only 0 to 10000 used), - but used as float +
    Constructor

    +
    Parameters:
    v - The initial value
    - - - - - - - - - -
    -Constructor Detail
    +

    ShortFloat

    @@ -264,7 +242,7 @@

    Constructor

    -
    Parameters:
    v - The initial value
    +
    Parameters:
    v - The initial value in float @@ -294,23 +272,6 @@


    -

    -getShortValue

    -
    -short getShortValue()
    -
    -
    To access the value as short -

    -

    -
    -
    -
    - -
    Returns:
    The current value in short
    -
    -
    -
    -

    setValue

    @@ -361,6 +322,23 @@ 


    +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    To create an identifical copy of the ShortFloat +

    +

    +
    Overrides:
    clone in class java.lang.Object
    +
    +
    + +
    Returns:
    A cloned ShortFloat
    +
    +
    +
    +

    toString

    @@ -378,10 +356,10 @@ 


    -

    -toString2

    +

    +toStringBrief

    -public java.lang.String toString2()
    +public java.lang.String toStringBrief()
    Round the value into a short String

    @@ -445,9 +423,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/entity/Stamp.html b/nars-dist/javadoc/nars/entity/Stamp.html index 91e17feb..c35427e8 100644 --- a/nars-dist/javadoc/nars/entity/Stamp.html +++ b/nars-dist/javadoc/nars/entity/Stamp.html @@ -2,13 +2,13 @@ - + -Stamp (NARS Document) +Stamp - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Stamp (NARS Document)"; + parent.document.title="Stamp"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -107,74 +107,16 @@

    Each Sentence has a time stamp, consisting the following components: (1) The creation time of the sentence, - (2) The time when the truth-value is supported, - (3) A trail of serial numbers of sentence, from which the sentence is derived. - Each input sentence gets a unique serial number. - The derived sentences inherits serial numbers from its parents, cut at the length limit. + (2) A evidentialBase of serial numbers of sentence, from which the sentence is derived. + Each input sentence gets a unique serial number, though the creation time may be not unique. + The derived sentences inherits serial numbers from its parents, cut at the baseLength limit.


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -Field Summary
    -static longALWAYS - -
    -          special value, for time-independent truth-values
    -private  longcreationTime - -
    -          creation time of the stamp
    -private static longcurrent - -
    -          serial number, for the whole system
    -private  longeventTime - -
    -          creation time of the stamp
    -private  intlength - -
    -          trail length
    -private  long[]trail - -
    -          serial numbers
    @@ -184,48 +126,10 @@

    Constructor Summary - -  -Stamp() - -
    -          Generate a new stamp, with a new serial number, for new sentence without tense - - - -  -Stamp(long time, - boolean relative) - -
    -          Generate a new stamp, with a new serial number, for new sentence with numeric tense - - - -  -Stamp(Stamp old) - -
    -          Generate a new stamp from an existing one, with the same trail but different creation time - - - -private -Stamp(Stamp first, - Stamp second, - long time) - -
    -          Generate a new stamp for derived sentence by merging the two from parents - the first one is no shorter than the second - - - -  -Stamp(java.lang.String tense) +Stamp(long time)
    -          Generate a new stamp, with a new serial number, for input sentence with symbolic tense +          Generate a new stamp, with a new serial number, for a new Task   @@ -239,11 +143,11 @@

    - void -adjustEventTime(int d) + java.lang.Object +clone()
    -          Adjust the eventTime of the truth-value +          Clone a stamp @@ -255,14 +159,6 @@

    -(package private)  long -get(int i) - -
    -          Get a number from the trail by index, called in this class only - - -  long getCreationTime() @@ -271,22 +167,6 @@

    - long -getEventTime() - -
    -          Get the eventTime of the truth-value - - - -(package private)  long[] -getList() - -
    -          Get the trail, called in this class only - - -  int hashCode() @@ -299,7 +179,7 @@

    init()
    -          Initialize the stamp machenism of the system, called in Center +          Initialize the stamp machenism of the system, called in Reasoner @@ -307,33 +187,26 @@

    length()
    -          Return the length of the trail +          Return the baseLength of the evidentialBase static Stamp -make(Stamp first, - Stamp second) +make(Stamp first, + Stamp second, + long time)
              Try to merge two Stamps, return null if have overlap -(package private)  java.util.TreeSet<java.lang.Long> -toSet() - -
    -          Convert the trail into a set - - -  java.lang.String toString()
              Get a String form of the Stamp for display - Format: {creationTime [: eventTime] : trail} + Format: {creationTime [: eventTime] : evidentialBase}   @@ -342,93 +215,12 @@

    Methods inherited from class java.lang.Object -clone, finalize, getClass, notify, notifyAll, wait, wait, wait +finalize, getClass, notify, notifyAll, wait, wait, wait  

    - - - - - - - -
    -Field Detail
    - -

    -current

    -
    -private static long current
    -
    -
    serial number, for the whole system -

    -

    -
    -
    -
    - -

    -ALWAYS

    -
    -public static final long ALWAYS
    -
    -
    special value, for time-independent truth-values -

    -

    -
    See Also:
    Constant Field Values
    -
    -
    - -

    -trail

    -
    -private long[] trail
    -
    -
    serial numbers -

    -

    -
    -
    -
    - -

    -length

    -
    -private int length
    -
    -
    trail length -

    -

    -
    -
    -
    - -

    -creationTime

    -
    -private long creationTime
    -
    -
    creation time of the stamp -

    -

    -
    -
    -
    - -

    -eventTime

    -
    -private long eventTime
    -
    -
    creation time of the stamp -

    -

    -
    -
    - @@ -439,67 +231,15 @@

    -

    -Stamp

    -
    -public Stamp()
    -
    -
    Generate a new stamp, with a new serial number, for new sentence without tense -

    -

    -
    - -

    +

    Stamp

    -public Stamp(long time,
    -             boolean relative)
    +public Stamp(long time)

    -
    Generate a new stamp, with a new serial number, for new sentence with numeric tense +
    Generate a new stamp, with a new serial number, for a new Task

    -
    Parameters:
    time - The time of the event
    relative - Whether the time is absolute or relative
    -
    -
    - -

    -Stamp

    -
    -public Stamp(java.lang.String tense)
    -
    -
    Generate a new stamp, with a new serial number, for input sentence with symbolic tense -

    -

    -
    Parameters:
    tense - The String representing input tense
    -
    -
    - -

    -Stamp

    -
    -public Stamp(Stamp old)
    -
    -
    Generate a new stamp from an existing one, with the same trail but different creation time -

    - For single-premise rules -

    -

    -
    Parameters:
    old - The stamp of the single premise
    -
    -
    - -

    -Stamp

    -
    -private Stamp(Stamp first,
    -              Stamp second,
    -              long time)
    -
    -
    Generate a new stamp for derived sentence by merging the two from parents - the first one is no shorter than the second -

    -

    -
    Parameters:
    first - The first Stamp
    second - The second Stamp
    +
    Parameters:
    time - Creation time of the stamp
    @@ -512,11 +252,12 @@

    -

    +

    make

     public static Stamp make(Stamp first,
    -                         Stamp second)
    + Stamp second, + long time)
    Try to merge two Stamps, return null if have overlap

    @@ -532,85 +273,52 @@


    -

    -init

    +

    +clone

    -public static void init()
    +public java.lang.Object clone()
    -
    Initialize the stamp machenism of the system, called in Center +
    Clone a stamp

    -
    -
    -
    -
    -
    -
    -
    - -

    -length

    -
    -public int length()
    -
    -
    Return the length of the trail -

    -

    -
    +
    Overrides:
    clone in class java.lang.Object
    -
    Returns:
    Length of the Stamp
    +
    Returns:
    The cloned stamp

    -

    -get

    +

    +init

    -long get(int i)
    +public static void init()
    -
    Get a number from the trail by index, called in this class only +
    Initialize the stamp machenism of the system, called in Reasoner

    -
    Parameters:
    i - The index -
    Returns:
    The number at the index
    -
    -
    -
    - -

    -getList

    -
    -long[] getList()
    -
    -
    Get the trail, called in this class only -

    -

    -
    - -
    Returns:
    The trail of numbers
    -

    -

    -toSet

    +

    +length

    -java.util.TreeSet<java.lang.Long> toSet()
    +public int length()
    -
    Convert the trail into a set +
    Return the baseLength of the evidentialBase

    -
    + +
    Returns:
    Length of the Stamp

    @@ -666,46 +374,13 @@


    -

    -getEventTime

    -
    -public long getEventTime()
    -
    -
    Get the eventTime of the truth-value -

    -

    -
    -
    -
    - -
    Returns:
    The event time
    -
    -
    -
    - -

    -adjustEventTime

    -
    -public void adjustEventTime(int d)
    -
    -
    Adjust the eventTime of the truth-value -

    -

    -
    -
    -
    -
    Parameters:
    d - The direction and extent of the change
    -
    -
    -
    -

    toString

     public java.lang.String toString()
    Get a String form of the Stamp for display - Format: {creationTime [: eventTime] : trail} + Format: {creationTime [: eventTime] : evidentialBase}

    Overrides:
    toString in class java.lang.Object
    @@ -767,9 +442,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/entity/Task.html b/nars-dist/javadoc/nars/entity/Task.html index 4a9dc204..e43f2219 100644 --- a/nars-dist/javadoc/nars/entity/Task.html +++ b/nars-dist/javadoc/nars/entity/Task.html @@ -2,13 +2,13 @@ - + -Task (NARS Document) +Task - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Task (NARS Document)"; + parent.document.title="Task"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -94,13 +94,9 @@

    Class Task

     java.lang.Object
    -  extended by nars.entity.BudgetValue
    -      extended by nars.entity.Item
    -          extended by nars.entity.Task
    +  extended by nars.entity.Item
    +      extended by nars.entity.Task
     
    -
    -
    All Implemented Interfaces:
    java.lang.Cloneable
    -

    public class Task
    extends Item
    @@ -122,22 +118,6 @@

    Field Summary - - -private  Sentence -sentence - -
    -          The sentence of the Task - - - -protected  boolean -structural - -
    -          Whether it is derived by a structural rule -   @@ -145,16 +125,7 @@

    - - -
    Fields inherited from class nars.entity.Item
    key
    - - - - - - +
    Fields inherited from class nars.entity.BudgetValue
    durability, priority, qualitybudget, key
      @@ -171,7 +142,26 @@

    BudgetValue b)
    -          Constructor +          Constructor for input task + + +Task(Sentence s, + BudgetValue b, + Task parentTask, + Sentence parentBelief) + +
    +          Constructor for a derived task + + +Task(Sentence s, + BudgetValue b, + Task parentTask, + Sentence parentBelief, + Sentence solution) + +
    +          Constructor for an activated task   @@ -185,7 +175,15 @@

    - Term + Sentence +getBestSolution() + +
    +          Get the best-so-far solution for a Question or Goal + + + + Term getContent()
    @@ -194,6 +192,14 @@

     Sentence +getParentBelief() + +
    +          Get the parent belief of a task + + + + Sentence getSentence()
    @@ -202,6 +208,14 @@

     boolean +isInput() + +
    +          Check if a Task is a direct input + + + + boolean isStructural()
    @@ -210,7 +224,7 @@

     void -merge(Item that) +merge(Task that)
              Merge one Task into another @@ -218,10 +232,10 @@

     void -setStructural() +setBestSolution(Sentence judg)
    -          Record if a Task is derived by a StructuralRule +          Set the best-so-far solution for a Question or Goal, and report answer for input question @@ -231,14 +245,6 @@


              Get a String representation of the Task - - - java.lang.String -toString2() - -
    -          Get a String representation of the Task, with reduced accuracy -   @@ -246,16 +252,7 @@

    - - -
    Methods inherited from class nars.entity.Item
    getBudget, getKey
    - - - - - - +
    Methods inherited from class nars.entity.BudgetValue
    aboveThreshold, clone, decDurability, decPriority, decQuality, getDurability, getPriority, getQuality, incDurability, incPriority, incQuality, merge, setDurability, setPriority, setQuality, summarydecDurability, decPriority, getBudget, getDurability, getKey, getPriority, getQuality, incDurability, incPriority, merge, setBudget, setDurability, setPriority, setQuality, toStringBrief
      @@ -264,65 +261,63 @@

    Methods inherited from class java.lang.Object -equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait +clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait  

    - + - + +Constructor Detail
    -Field Detail
    -

    -sentence

    +

    +Task

    -private Sentence sentence
    +public Task(Sentence s, + BudgetValue b)
    -
    The sentence of the Task +
    Constructor for input task

    -
    +
    Parameters:
    s - The sentence
    b - The budget


    -

    -structural

    +

    +Task

    -protected boolean structural
    +public Task(Sentence s, + BudgetValue b, + Task parentTask, + Sentence parentBelief)
    -
    Whether it is derived by a structural rule +
    Constructor for a derived task

    +
    Parameters:
    s - The sentence
    b - The budget
    parentTask - The task from which this new task is derived
    parentBelief - The belief from which this new task is derived
    - - - - - - - - - -
    -Constructor Detail
    +
    -

    +

    Task

     public Task(Sentence s,
    -            BudgetValue b)
    + BudgetValue b, + Task parentTask, + Sentence parentBelief, + Sentence solution)
    -
    Constructor +
    Constructor for an activated task

    -
    Parameters:
    s - The sentence
    b - The budget
    +
    Parameters:
    s - The sentence
    b - The budget
    parentTask - The task from which this new task is derived
    parentBelief - The belief from which this new task is derived
    solution - The belief to be used in future inference
    @@ -352,7 +347,7 @@

    getContent

    -public Term getContent()
    +public Term getContent()
    Directly get the content of the sentence

    @@ -363,6 +358,20 @@


    +

    +isInput

    +
    +public boolean isInput()
    +
    +
    Check if a Task is a direct input +

    +

    + +
    Returns:
    Whether the Task is derived from another task
    +
    +
    +
    +

    isStructural

    @@ -377,62 +386,73 @@ 


    -

    -setStructural

    +

    +merge

    -public void setStructural()
    +public void merge(Task that)
    -
    Record if a Task is derived by a StructuralRule +
    Merge one Task into another

    -
    +
    Parameters:
    that - The other Task

    -

    -merge

    +

    +getBestSolution

    -public void merge(Item that)
    +public Sentence getBestSolution()
    -
    Merge one Task into another +
    Get the best-so-far solution for a Question or Goal

    -
    Parameters:
    that - The other Task
    + +
    Returns:
    The stored Sentence or null

    -

    -toString

    +

    +setBestSolution

    -public java.lang.String toString()
    +public void setBestSolution(Sentence judg)
    -
    Get a String representation of the Task +
    Set the best-so-far solution for a Question or Goal, and report answer for input question

    -
    Overrides:
    toString in class BudgetValue
    +
    Parameters:
    judg - The solution to be remembered
    + +
    + +

    +getParentBelief

    +
    +public Sentence getParentBelief()
    +
    +
    Get the parent belief of a task +

    -
    Returns:
    The Task as a String
    +
    Returns:
    The belief from which the task is derived

    -

    -toString2

    +

    +toString

    -public java.lang.String toString2()
    +public java.lang.String toString()
    -
    Get a String representation of the Task, with reduced accuracy +
    Get a String representation of the Task

    -
    Overrides:
    toString2 in class BudgetValue
    +
    Overrides:
    toString in class Item
    -
    Returns:
    The Task as a String, with 2-digit accuracy for the values
    +
    Returns:
    The Task as a String
    @@ -487,9 +507,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/entity/TaskLink.html b/nars-dist/javadoc/nars/entity/TaskLink.html index aa756e60..2ce28173 100644 --- a/nars-dist/javadoc/nars/entity/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/TaskLink.html @@ -2,13 +2,13 @@ - + -TaskLink (NARS Document) +TaskLink - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="TaskLink (NARS Document)"; + parent.document.title="TaskLink"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -94,14 +94,10 @@

    Class TaskLink

     java.lang.Object
    -  extended by nars.entity.BudgetValue
    -      extended by nars.entity.Item
    -          extended by nars.entity.TermLink
    -              extended by nars.entity.TaskLink
    +  extended by nars.entity.Item
    +      extended by nars.entity.TermLink
    +          extended by nars.entity.TaskLink
     
    -
    -
    All Implemented Interfaces:
    java.lang.Cloneable
    -

    public class TaskLink
    extends TermLink
    @@ -126,22 +122,6 @@

    Field Summary - - -private  java.util.ArrayList<java.lang.String> -record - -
    -          Remember the TermLinks that has been used recently with this TaskLink - - - -private  Task -targetTask - -
    -          The Task linked. -   @@ -158,16 +138,7 @@

    - - -
    Fields inherited from class nars.entity.Item
    key
    - - - - - - +
    Fields inherited from class nars.entity.BudgetValue
    durability, priority, qualitybudget, key
      @@ -199,14 +170,6 @@

    -(package private)  java.util.ArrayList<java.lang.String> -getRecord() - -
    -          Get the TermLink record - - -  Task getTargetTask() @@ -215,16 +178,9 @@

    - void -merge(Item that) - -
    -          Merge one TaskLink into another - - -  boolean -novel(TermLink termLink) +novel(TermLink termLink, + long currentTime)
              To check whether a TaskLink should use a TermLink, return false if they @@ -237,7 +193,7 @@

    Methods inherited from class nars.entity.TermLink -getIndex, getIndices, getTarget, getType, setKey, toString, toString2 +getIndex, getIndices, getTarget, getType, setKey   @@ -246,16 +202,7 @@

    Methods inherited from class nars.entity.Item -getBudget, getKey - - -  - - - - - - +
    Methods inherited from class nars.entity.BudgetValue
    aboveThreshold, clone, decDurability, decPriority, decQuality, getDurability, getPriority, getQuality, incDurability, incPriority, incQuality, merge, setDurability, setPriority, setQuality, summarydecDurability, decPriority, getBudget, getDurability, getKey, getPriority, getQuality, incDurability, incPriority, merge, setBudget, setDurability, setPriority, setQuality, toString, toStringBrief
      @@ -264,45 +211,12 @@

    Methods inherited from class java.lang.Object -equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait +clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait  

    - - - - - - - -
    -Field Detail
    - -

    -targetTask

    -
    -private Task targetTask
    -
    -
    The Task linked. The "target" field in TermLink is not used here. -

    -

    -
    -
    -
    - -

    -record

    -
    -private java.util.ArrayList<java.lang.String> record
    -
    -
    Remember the TermLinks that has been used recently with this TaskLink -

    -

    -
    -
    - @@ -352,37 +266,11 @@


    -

    -getRecord

    -
    -java.util.ArrayList<java.lang.String> getRecord()
    -
    -
    Get the TermLink record -

    -

    - -
    Returns:
    The list of TermLinks recently used
    -
    -
    -
    - -

    -merge

    -
    -public void merge(Item that)
    -
    -
    Merge one TaskLink into another -

    -

    -
    Parameters:
    that - The other TaskLink
    -
    -
    -
    - -

    +

    novel

    -public boolean novel(TermLink termLink)
    +public boolean novel(TermLink termLink, + long currentTime)
    To check whether a TaskLink should use a TermLink, return false if they interacted recently @@ -390,7 +278,7 @@

    called in TermLinkBag only

    -
    Parameters:
    termLink - The TermLink to be checked +
    Parameters:
    termLink - The TermLink to be checked
    currentTime - The current time
    Returns:
    Whether they are novel to each other

    @@ -446,9 +334,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/entity/TermLink.html b/nars-dist/javadoc/nars/entity/TermLink.html index ae597200..400a6c9d 100644 --- a/nars-dist/javadoc/nars/entity/TermLink.html +++ b/nars-dist/javadoc/nars/entity/TermLink.html @@ -2,13 +2,13 @@ - + -TermLink (NARS Document) +TermLink - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="TermLink (NARS Document)"; + parent.document.title="TermLink"; } } @@ -94,14 +94,10 @@

    Class TermLink

     java.lang.Object
    -  extended by nars.entity.BudgetValue
    -      extended by nars.entity.Item
    -          extended by nars.entity.TermLink
    +  extended by nars.entity.Item
    +      extended by nars.entity.TermLink
     
    -
    All Implemented Interfaces:
    java.lang.Cloneable
    -
    -
    Direct Known Subclasses:
    TaskLink

    @@ -200,14 +196,6 @@

    -private  Term -target - -
    -          The linked Term - - - static short TRANSFORM @@ -229,16 +217,7 @@

    Fields inherited from class nars.entity.Item -key - - -  - - - - - - +
    Fields inherited from class nars.entity.BudgetValue
    durability, priority, qualitybudget, key
      @@ -252,24 +231,17 @@

    -  -TermLink() - -
    -          Default constructor - - - protected -TermLink(BudgetValue v) +TermLink(java.lang.String s, + BudgetValue v)
    -          Default Constructor need in TaskLink +          called from TaskLink   -TermLink(Term t, +TermLink(Term t, short p, int... indices) @@ -279,7 +251,7 @@

      -TermLink(Term t, +TermLink(Term t, TermLink template, BudgetValue v) @@ -314,7 +286,7 @@

    - Term + Term getTarget()
    @@ -336,22 +308,6 @@


              Set the key of the link - - - java.lang.String -toString() - -
    -          Get a String representation of the link, with full accuracy - - - - java.lang.String -toString2() - -
    -          Get a String representation of the link, with 2-digit accuracy -   @@ -359,16 +315,7 @@

    - - -
    Methods inherited from class nars.entity.Item
    getBudget, getKey
    - - - - - - +
    Methods inherited from class nars.entity.BudgetValue
    aboveThreshold, clone, decDurability, decPriority, decQuality, getDurability, getPriority, getQuality, incDurability, incPriority, incQuality, merge, setDurability, setPriority, setQuality, summarydecDurability, decPriority, getBudget, getDurability, getKey, getPriority, getQuality, incDurability, incPriority, merge, setBudget, setDurability, setPriority, setQuality, toString, toStringBrief
      @@ -377,7 +324,7 @@

    Methods inherited from class java.lang.Object -equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait +clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait   @@ -489,18 +436,6 @@


    -

    -target

    -
    -private Term target
    -
    -
    The linked Term -

    -

    -
    -
    -
    -

    type

    @@ -534,20 +469,10 @@ 

    -

    -TermLink

    -
    -public TermLink()
    -
    -
    Default constructor -

    -

    -
    - -

    +

    TermLink

    -public TermLink(Term t,
    +public TermLink(Term t,
                     short p,
                     int... indices)
    @@ -560,22 +485,23 @@


    -

    +

    TermLink

    -protected TermLink(BudgetValue v)
    +protected TermLink(java.lang.String s, + BudgetValue v)
    -
    Default Constructor need in TaskLink +
    called from TaskLink

    -
    Parameters:
    v - Budget value of the link
    +
    Parameters:
    s - The key of the TaskLink
    v - The budget value of the TaskLink

    -

    +

    TermLink

    -public TermLink(Term t,
    +public TermLink(Term t,
                     TermLink template,
                     BudgetValue v)
    @@ -613,7 +539,7 @@

    getTarget

    -public Term getTarget()
    +public Term getTarget()
    Get the target of the link

    @@ -664,40 +590,6 @@

    Returns:
    The index value

    -
    - -

    -toString

    -
    -public java.lang.String toString()
    -
    -
    Get a String representation of the link, with full accuracy -

    -

    -
    Overrides:
    toString in class BudgetValue
    -
    -
    - -
    Returns:
    The String
    -
    -
    -
    - -

    -toString2

    -
    -public java.lang.String toString2()
    -
    -
    Get a String representation of the link, with 2-digit accuracy -

    -

    -
    Overrides:
    toString2 in class BudgetValue
    -
    -
    - -
    Returns:
    The String
    -
    -

    diff --git a/nars-dist/javadoc/nars/entity/TruthValue.html b/nars-dist/javadoc/nars/entity/TruthValue.html index 03f0ec92..77a0d987 100644 --- a/nars-dist/javadoc/nars/entity/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/TruthValue.html @@ -2,13 +2,13 @@ - + -TruthValue (NARS Document) +TruthValue - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="TruthValue (NARS Document)"; + parent.document.title="TruthValue"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -96,9 +96,12 @@

    java.lang.Object extended by nars.entity.TruthValue +
    +
    All Implemented Interfaces:
    java.lang.Cloneable
    +

    -
    public class TruthValue
    extends java.lang.Object
    +
    public class TruthValue
    extends java.lang.Object
    implements java.lang.Cloneable

    @@ -109,48 +112,7 @@


    - - - - - - - - - - - - - - - - - - - - - - - -
    -Field Summary
    -private  ShortFloatconfidence - -
    -          The confidence factor of the truth value
    -private static charDELIMITER -
    -          The charactor that marks the two ends of a truth value
    -private  ShortFloatfrequency - -
    -          The frequency factor of the truth value
    -private static charSEPARATOR - -
    -          The charactor that separates the factors in a truth value
    @@ -184,6 +146,14 @@

    + java.lang.Object +clone() + +
    +            + + +  boolean equals(java.lang.Object that) @@ -232,6 +202,14 @@

    + boolean +isNegative() + +
    +          Check if the truth value is negative + + +  java.lang.String toString() @@ -241,7 +219,7 @@

     java.lang.String -toString2() +toStringBrief()
              A simplified String representation of a TruthValue, where each factor is accruate to 1% @@ -253,69 +231,12 @@

    Methods inherited from class java.lang.Object -clone, finalize, getClass, notify, notifyAll, wait, wait, wait +finalize, getClass, notify, notifyAll, wait, wait, wait  

    - - - - - - - -
    -Field Detail
    - -

    -DELIMITER

    -
    -private static final char DELIMITER
    -
    -
    The charactor that marks the two ends of a truth value -

    -

    -
    See Also:
    Constant Field Values
    -
    -
    - -

    -SEPARATOR

    -
    -private static final char SEPARATOR
    -
    -
    The charactor that separates the factors in a truth value -

    -

    -
    See Also:
    Constant Field Values
    -
    -
    - -

    -frequency

    -
    -private ShortFloat frequency
    -
    -
    The frequency factor of the truth value -

    -

    -
    -
    -
    - -

    -confidence

    -
    -private ShortFloat confidence
    -
    -
    The confidence factor of the truth value -

    -

    -
    -
    - @@ -368,6 +289,9 @@

    Get the frequency value

    +
    +
    +
    Returns:
    The frequency value
    @@ -382,6 +306,9 @@

    Get the confidence value

    +
    +
    +
    Returns:
    The confidence value
    @@ -396,6 +323,9 @@

    Calculate the expectation value of the truth value

    +
    +
    +
    Returns:
    The expectation value
    @@ -410,12 +340,32 @@

    Calculate the absolute difference of the expectation value and that of a given truth value

    +
    +
    +
    Parameters:
    t - The given value
    Returns:
    The absolute difference

    +

    +isNegative

    +
    +public boolean isNegative()
    +
    +
    Check if the truth value is negative +

    +

    +
    +
    +
    + +
    Returns:
    True if the frequence is less than 1/2
    +
    +
    +
    +

    equals

    @@ -450,6 +400,20 @@ 


    +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    +
    Overrides:
    clone in class java.lang.Object
    +
    +
    +
    +
    +
    +
    +

    toString

    @@ -467,14 +431,17 @@ 


    -

    -toString2

    +

    +toStringBrief

    -public java.lang.String toString2()
    +public java.lang.String toStringBrief()
    A simplified String representation of a TruthValue, where each factor is accruate to 1%

    +
    +
    +
    Returns:
    The String
    @@ -531,9 +498,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html index 373dbd17..76991067 100644 --- a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.entity.BudgetValue (NARS Document) +Uses of Class nars.entity.BudgetValue - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.entity.BudgetValue (NARS Document)"; + parent.document.title="Uses of Class nars.entity.BudgetValue"; } } @@ -91,6 +91,10 @@

    Packages that use BudgetValue +nars.container +Storage management  + + nars.entity Data entities that are independently stored  @@ -98,22 +102,14 @@

    nars.inference The inference rules and control functions  - -nars.io -Input/output management  - - -nars.main -Top-level classes of the system  -  

    - + +Uses of BudgetValue in nars.container
    -Uses of BudgetValue in nars.entity
      @@ -121,49 +117,82 @@

    - + - + +          Adjust the activation level of a Concept - + + + + + +          Shared final operations by all double-premise rules, called from the rules except StructuralRules - + +          Shared final operations by all single-premise rules, called in StructuralRules - + +          Shared final operations by all single-premise rules, called in StructuralRules + +
    Subclasses of BudgetValue in nars.entityMethods in nars.container with parameters of type BudgetValue
    - classConcept + voidMemory.activateConcept(Concept c, + BudgetValue b)
    -          A concept contains information associated with a term, including directly - and indirectly related tasks and beliefs.
    - classItem + voidMemory.activatedTask(BudgetValue budget, + Sentence sentence, + Sentence candidateBelief) + +
    +          Activated task called in MatchingRules.trySolution and Concept.processGoal
    + voidMemory.doublePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget)
    -          An item is an object that can be put into a Bag, - to participate in the resource competation of the system.
    - classTask + voidMemory.singlePremiseTask(Term newContent, + char punctuation, + TruthValue newTruth, + BudgetValue newBudget)
    -          A task to be processed, consists of a Sentence and a BudgetValue
    - classTaskLink + voidMemory.singlePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget)
    -          Reference to a Task.
    +  +

    + + + + + +
    +Uses of BudgetValue in nars.entity
    +  +

    + + + + - + +          The budget of the Item, consisting of 3 numbers
    Fields in nars.entity declared as BudgetValue
    - classTermLink +protected  BudgetValueItem.budget
    -          A link between a compound term and a component term
      @@ -179,7 +208,7 @@

    Item.getBudget()
    -          Get current BudgetValue +          Get BudgetValue   @@ -192,7 +221,7 @@

     void -Concept.buildTermLinks(BudgetValue budget) +Concept.buildTermLinks(BudgetValue taskBudget)
              Recursively build TermLinks between a compound and its components @@ -205,6 +234,14 @@


              Merge one BudgetValue into another + + +protected  void +Item.setBudget(BudgetValue budget) + +
    +          Constructor with initial budget +  

    @@ -220,7 +257,8 @@

              Cloning constructor -Item(BudgetValue v) +Item(java.lang.String key, + BudgetValue budget)
              Constructor with initial budget @@ -230,7 +268,26 @@

    BudgetValue b)
    -          Constructor +          Constructor for input task + + +Task(Sentence s, + BudgetValue b, + Task parentTask, + Sentence parentBelief) + +
    +          Constructor for a derived task + + +Task(Sentence s, + BudgetValue b, + Task parentTask, + Sentence parentBelief, + Sentence solution) + +
    +          Constructor for an activated task TaskLink(Task t, @@ -241,13 +298,14 @@

              Constructor -TermLink(BudgetValue v) +TermLink(java.lang.String s, + BudgetValue v)
    -          Default Constructor need in TaskLink +          called from TaskLink -TermLink(Term t, +TermLink(Term t, TermLink template, BudgetValue v) @@ -274,7 +332,8 @@

    static BudgetValue -BudgetFunctions.backward(TruthValue truth) +BudgetFunctions.backward(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, stronger case @@ -282,24 +341,17 @@

    static BudgetValue -BudgetFunctions.backwardWeak(TruthValue truth) +BudgetFunctions.backwardWeak(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, weaker case -private static BudgetValue -BudgetFunctions.budgetInference(float qual, - int complexity) - -
    -          Common processing for all inference step - - - static BudgetValue -BudgetFunctions.compoundBackward(Term content) +BudgetFunctions.compoundBackward(Term content, + Memory memory)
              Backward inference with CompoundTerm conclusion, stronger case @@ -307,7 +359,8 @@

    static BudgetValue -BudgetFunctions.compoundBackwardWeak(Term content) +BudgetFunctions.compoundBackwardWeak(Term content, + Memory memory)
              Backward inference with CompoundTerm conclusion, weaker case @@ -315,8 +368,9 @@

    static BudgetValue -BudgetFunctions.compoundForward(TruthValue truth, - Term content) +BudgetFunctions.compoundForward(TruthValue truth, + Term content, + Memory memory)
              Forward inference with CompoundTerm conclusion @@ -330,55 +384,6 @@


              Distribute the budget of a task among the links to it - - -(package private) static BudgetValue -BudgetFunctions.forward(TruthValue truth) - -
    -          Forward inference result and adjustment - - - -(package private) static BudgetValue -BudgetFunctions.revise(TruthValue tTruth, - TruthValue bTruth, - TruthValue truth, - boolean feedbackToLinks) - -
    -          Evaluate the quality of a revision, then de-prioritize the premises - - - -(package private) static BudgetValue -BudgetFunctions.solutionEval(Sentence problem, - Judgment solution, - Task task) - -
    -          Evaluate the quality of a belief as a solution to a problem, then reward - the belief and de-prioritize the problem - - - -static BudgetValue -BudgetFunctions.temporalIndCom(BudgetValue b1, - BudgetValue b2, - TruthValue t) - -
    -          Special treatment for temporal induction and comparison among recent event, no feedback - - - -(package private) static BudgetValue -BudgetFunctions.update(Task task, - TruthValue bTruth) - -
    -          Update a belief -  

    @@ -424,123 +429,6 @@


              Merge an item into another one in a bag, when the two are identical except in budget values - - -static BudgetValue -BudgetFunctions.temporalIndCom(BudgetValue b1, - BudgetValue b2, - TruthValue t) - -
    -          Special treatment for temporal induction and comparison among recent event, no feedback - - -  -

    - - - - - -
    -Uses of BudgetValue in nars.io
    -  -

    - - - - - - - - - -
    Methods in nars.io that return BudgetValue
    -private static BudgetValueStringParser.parseBudget(java.lang.String s, - char punctuation, - TruthValue truth) - -
    -          parse the input String into a BudgetValue
    -  -

    - - - - - -
    -Uses of BudgetValue in nars.main
    -  -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Methods in nars.main with parameters of type BudgetValue
    -static voidMemory.activateConcept(Concept c, - BudgetValue b) - -
    -          Adjust the activation level of a Concept
    -static voidMemory.activatedTask(BudgetValue budget, - Sentence sentence, - boolean isInput) - -
    -          Activated task coming from MatchingRules.trySolution
    -static voidMemory.convertedJudgment(TruthValue truth, - BudgetValue budget) - -
    -          Convert jusgment into different relation
    -static voidMemory.doublePremiseTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise1, - Sentence premise2) - -
    -          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    -static voidMemory.revisionTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise1, - Sentence premise2) - -
    -          The final operations of the revision rules, called from MatchingRules
    -static voidMemory.singlePremiseTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise) - -
    -          Shared final operations by all single-premise rules, called in StructuralRules
     

    diff --git a/nars-dist/javadoc/nars/entity/class-use/Concept.html b/nars-dist/javadoc/nars/entity/class-use/Concept.html index 58775a9c..a83f8a87 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Concept.html +++ b/nars-dist/javadoc/nars/entity/class-use/Concept.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.entity.Concept (NARS Document) +Uses of Class nars.entity.Concept - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.entity.Concept (NARS Document)"; + parent.document.title="Uses of Class nars.entity.Concept"; } } @@ -91,6 +91,10 @@

    Packages that use Concept +nars.container +Storage management  + + nars.gui Graphical user interface of the system  @@ -98,18 +102,14 @@

    nars.inference The inference rules and control functions  - -nars.main -Top-level classes of the system  -  

    - + +Uses of Concept in nars.container
    -Uses of Concept in nars.gui
      @@ -117,15 +117,15 @@

    - + - + +          The selected Concept
    Fields in nars.gui declared as ConceptFields in nars.container declared as Concept
    -private  ConceptConceptWindow.concept + ConceptMemory.currentConcept
    -          The concept to be displayed
      @@ -133,22 +133,31 @@

    - + - + +          Get the Concept associated to a Term, or create it. -
    Constructors in nars.gui with parameters of type ConceptMethods in nars.container that return Concept
    ConceptWindow(Concept concept) + + ConceptMemory.getConcept(Term term)
    -          Constructor
    -  -

    - - - - + + + + + + +
    -Uses of Concept in nars.inference
    + ConceptMemory.nameToConcept(java.lang.String name) + +
    +          Get an existing Concept for a given name
    + ConceptMemory.termToConcept(Term term) + +
    +          Get an existing Concept for a given Term.
      @@ -156,25 +165,25 @@

    - + - + +          Adjust the activation level of a Concept
    Methods in nars.inference with parameters of type ConceptMethods in nars.container with parameters of type Concept
    -static voidBudgetFunctions.activate(Concept concept, - BudgetValue budget) + voidMemory.activateConcept(Concept c, + BudgetValue b)
    -          Activate a concept by an incoming TaskLink
     

    - + +Uses of Concept in nars.gui
    -Uses of Concept in nars.main
      @@ -182,31 +191,22 @@

    - - - - - + - - +          Constructor - - - +
    Methods in nars.main that return Concept
    -static ConceptMemory.getConcept(Term term) - -
    -          Get the Concept associated to a Term, or create it.
    Constructors in nars.gui with parameters of type Concept
    -static ConceptMemory.nameToConcept(java.lang.String name) +ConceptWindow(Concept concept)
    -          Get an existing Concept for a given name
    -static ConceptMemory.termToConcept(Term term) - -
    -          Get an existing Concept for a given Term.
    +  +

    + + + +
    +Uses of Concept in nars.inference
      @@ -214,16 +214,16 @@

    - + - +          Activate a concept by an incoming TaskLink
    Methods in nars.main with parameters of type ConceptMethods in nars.inference with parameters of type Concept
    static voidMemory.activateConcept(Concept c, - BudgetValue b) +BudgetFunctions.activate(Concept concept, + BudgetValue budget)
    -          Adjust the activation level of a Concept
      diff --git a/nars-dist/javadoc/nars/entity/class-use/Item.html b/nars-dist/javadoc/nars/entity/class-use/Item.html index e6bda666..2b824b14 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Item.html +++ b/nars-dist/javadoc/nars/entity/class-use/Item.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.entity.Item (NARS Document) +Uses of Class nars.entity.Item - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.entity.Item (NARS Document)"; + parent.document.title="Uses of Class nars.entity.Item"; } } @@ -91,12 +91,38 @@

    Packages that use Item +nars.container +Storage management  + + nars.entity Data entities that are independently stored  + +  +

    + + + + + +
    +Uses of Item in nars.container
    +  +

    + + + + + - - + +
    Classes in nars.container with type parameters of type Item
    nars.storageStorage management  + classBag<Type extends Item> + +
    +          A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
      @@ -159,44 +185,10 @@

     void -Task.merge(Item that) - -
    -          Merge one Task into another - - - - void -TaskLink.merge(Item that) - -
    -          Merge one TaskLink into another - - -  -

    - - - - - -
    -Uses of Item in nars.storage
    -  -

    - - - - - - - - +          Merge with another Item with identical key
    Classes in nars.storage with type parameters of type Item
    - classBag<Type extends Item> +Item.merge(Item that)
    -          A Bag is a storage with a constant capacity and maintains an internal priority - distribution for retrieval.
      diff --git a/nars-dist/javadoc/nars/entity/class-use/Sentence.html b/nars-dist/javadoc/nars/entity/class-use/Sentence.html index de306085..48917e9c 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Sentence.html +++ b/nars-dist/javadoc/nars/entity/class-use/Sentence.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.entity.Sentence (NARS Document) +Uses of Class nars.entity.Sentence - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.entity.Sentence (NARS Document)"; + parent.document.title="Uses of Class nars.entity.Sentence"; } } @@ -91,6 +91,10 @@

    Packages that use Sentence +nars.container +Storage management  + + nars.entity Data entities that are independently stored  @@ -98,18 +102,14 @@

    nars.inference The inference rules and control functions  - -nars.main -Top-level classes of the system  -  

    - + +Uses of Sentence in nars.container
    -Uses of Sentence in nars.entity
      @@ -117,47 +117,51 @@

    - + - + +          The selected belief + +
    Subclasses of Sentence in nars.entityFields in nars.container declared as Sentence
    - classGoal + SentenceMemory.currentBelief
    -          A Goal is an event to be realized, and may conain query variables
    +  +

    + + + + - + +          Activated task called in MatchingRules.trySolution and Concept.processGoal - + +          Display input/output sentence in the output channels.
    Methods in nars.container with parameters of type Sentence
    - classJudgment + voidMemory.activatedTask(BudgetValue budget, + Sentence sentence, + Sentence candidateBelief)
    -          A Judgment is an piece of new knowledge to be absorbed.
    - classQuestion + voidMemory.report(Sentence sentence, + boolean input)
    -          A Question is a sentence without a truth value, and may conain query variables
     

    - + - - - - - - + +
    Fields in nars.entity declared as Sentence
    -private  SentenceTask.sentence - -
    -          The sentence of the Task
    +Uses of Sentence in nars.entity
      @@ -170,36 +174,34 @@

     Sentence -Task.getSentence() +Concept.getBelief(Task task)
    -          Get the sentence +          Select a isBelief to interact with the given task in inference -static Sentence -Sentence.make(Sentence oldS, - Term term, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) + Sentence +Task.getBestSolution()
    -          Make a derived Sentence from a template and some initial values. +          Get the best-so-far solution for a Question or Goal -static Sentence -Sentence.make(Term term, - char punc, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) + Sentence +Task.getParentBelief() + +
    +          Get the parent belief of a task + + + + Sentence +Task.getSentence()
    -          Make a Sentence from an input String. +          Get the sentence   @@ -211,37 +213,19 @@

    -static Sentence -Sentence.make(Sentence oldS, - Term term, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) - -
    -          Make a derived Sentence from a template and some initial values. - - - -static Sentence -Sentence.make(Term term, - char punc, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) + boolean +Sentence.equivalentTo(Sentence that)
    -          Make a Sentence from an input String. +          Check whether the judgment is equivalent to another one - boolean -Sentence.noOverlapping(Sentence that) + void +Task.setBestSolution(Sentence judg)
    -          Check whether one sentence has stamp overlapping with another one, and change the system cash +          Set the best-so-far solution for a Question or Goal, and report answer for input question   @@ -252,22 +236,30 @@

    Constructors in nars.entity with parameters of type Sentence -Judgment(Term term, - char punc, - TruthValue t, - Stamp b, - Sentence premise1, - Sentence premise2) +Task(Sentence s, + BudgetValue b)
    -          Constructor +          Constructor for input task -Task(Sentence s, - BudgetValue b) +Task(Sentence s, + BudgetValue b, + Task parentTask, + Sentence parentBelief)
    -          Constructor +          Constructor for a derived task + + +Task(Sentence s, + BudgetValue b, + Task parentTask, + Sentence parentBelief, + Sentence solution) + +
    +          Constructor for an activated task   @@ -288,235 +280,63 @@

    -(package private) static void -SyllogisticRules.abdIndCom(Term term1, - Term term2, - Sentence taskSentence, - Judgment belief, - int figure) - -
    -          { S>, P>} |- { P>,

    S>, P>} - - - -(package private) static void -SyllogisticRules.analogy(Term term1, - Term term2, - Sentence asym, - Sentence sym, - int figure) - -
    -          { P>, P>} |- P> - - - -private static void -RuleTables.asymmetricAsymmetric(Sentence sentence, - Judgment belief, - int figure) - -
    -          Syllogistic rules whose both premises are on the same asymmetric relation - - - -private static void -RuleTables.asymmetricSymmetric(Sentence asym, - Sentence sym, - int figure) - -
    -          Syllogistic rules whose first premise is on an asymmetric relation, and the - second on a symmetric relation - - - -(package private) static void -CompositionalRules.composeCompound(Sentence taskSentence, - Judgment belief, - int index) - -
    -          { M>,

    M>} |- {<(S|P) ==> M>, <(S&P) ==> M>, <(S-P) ==> M>, <(P-S) ==> M>} - - - -(package private) static void -SyllogisticRules.dedExe(Term term1, - Term term2, - Sentence sentence, - Judgment belief) - -
    -          { M>, P>} |- { P>,

    S>} - - - -(package private) static void -SyllogisticRules.detachment(Sentence mainSentence, - Sentence subSentence, - int side) - -
    -          {< S> ==> P>>, S>} |- P> - {< S> ==> P>>, P>} |- S> - - - -private static void -RuleTables.detachmentWithVar(Sentence originalMainSentence, - Sentence subSentence, - int index) - -
    -          The detachment rule, with variable unification - - - -private static Statement -SyllogisticRules.introVarInd(Sentence sentence1, - Sentence sentence2, - int figure, - boolean isImplication) +static void +LocalRules.match(Task task, + Sentence belief, + Memory memory)
    -          { S>, P>} |- <<#x --> S> ==> <#x --> P>> - { S>, P>} |- <<#x --> S> <=> <#x --> P>> +          The task and belief have the same content static void -MatchingRules.matchAsymSym(Sentence asym, +LocalRules.matchAsymSym(Sentence asym, Sentence sym, - int figure) + int figure, + Memory memory)
              Inheritance/Implication matches Similarity/Equivalence -(package private) static void -SyllogisticRules.resemblance(Term term1, - Term term2, - Judgment belief, - Sentence sentence, - int figure) - -
    -          { M>, P>} |- P> - - - -(package private) static BudgetValue -BudgetFunctions.solutionEval(Sentence problem, - Judgment solution, - Task task) - -
    -          Evaluate the quality of a belief as a solution to a problem, then reward - the belief and de-prioritize the problem - - - static float -MatchingRules.solutionQuality(Sentence problem, - Judgment solution) - -
    -          Evaluate the quality of the judgment as a solution to a problem - - - -private static void -RuleTables.symmetricSymmetric(Judgment belief, - Sentence taskSentence, - int figure) +BudgetFunctions.rankBelief(Sentence judg)
    -          Syllogistic rules whose both premises are on the same symmetric relation +          Determine the rank of a judgment by its confidence and originality (stamp length) static void -MatchingRules.trySolution(Sentence problem, - Judgment belief, - Task task) +LocalRules.revision(Sentence newBelief, + Sentence oldBelief, + boolean feedbackToLinks, + Memory memory)
    -          Check if a Judgment provide a better answer to a Question - - -  -

    - - - - - -
    -Uses of Sentence in nars.main
    -  -

    - - - - +          Belief revision - - - - - - - - - - - - - + +          Evaluate the quality of the judgment as a solution to a problem - +          Check if a Sentence provide a better answer to a Question or Goal
    Methods in nars.main with parameters of type Sentence
    -static voidMemory.activatedTask(BudgetValue budget, - Sentence sentence, - boolean isInput) - -
    -          Activated task coming from MatchingRules.trySolution
    -static voidMemory.doublePremiseTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise1, - Sentence premise2) - -
    -          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    -static voidMemory.report(Sentence sentence, - boolean input) - -
    -          Display input/output sentence in the MainWindow.
    -static voidMemory.revisionTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise1, - Sentence premise2) +static floatLocalRules.solutionQuality(Sentence problem, + Sentence solution)
    -          The final operations of the revision rules, called from MatchingRules
    static voidMemory.singlePremiseTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise) +LocalRules.trySolution(Sentence problem, + Sentence belief, + Task task, + Memory memory)
    -          Shared final operations by all single-premise rules, called in StructuralRules
      diff --git a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html index 00651f2b..89952306 100644 --- a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.entity.ShortFloat (NARS Document) +Uses of Class nars.entity.ShortFloat - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.entity.ShortFloat (NARS Document)"; + parent.document.title="Uses of Class nars.entity.ShortFloat"; } } @@ -113,14 +113,6 @@

    -private  ShortFloat -TruthValue.confidence - -
    -          The confidence factor of the truth value - - - protected  ShortFloat BudgetValue.durability @@ -129,14 +121,6 @@

    -private  ShortFloat -TruthValue.frequency - -
    -          The frequency factor of the truth value - - - protected  ShortFloat BudgetValue.priority diff --git a/nars-dist/javadoc/nars/entity/class-use/Stamp.html b/nars-dist/javadoc/nars/entity/class-use/Stamp.html index dfdb5477..f3e056e8 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Stamp.html +++ b/nars-dist/javadoc/nars/entity/class-use/Stamp.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.entity.Stamp (NARS Document) +Uses of Class nars.entity.Stamp - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.entity.Stamp (NARS Document)"; + parent.document.title="Uses of Class nars.entity.Stamp"; } } @@ -91,21 +91,21 @@

    Packages that use Stamp -nars.entity -Data entities that are independently stored  +nars.container +Storage management  -nars.main -Top-level classes of the system  +nars.entity +Data entities that are independently stored   

    - + +Uses of Stamp in nars.container
    -Uses of Stamp in nars.entity
      @@ -113,15 +113,24 @@

    - + - + +          The new Stamp + +
    Fields in nars.entity declared as StampFields in nars.container declared as Stamp
    -protected  StampSentence.stamp + StampMemory.newStamp
    -          Partial record of the derivation path
    +  +

    + + + +
    +Uses of Stamp in nars.entity
      @@ -142,8 +151,9 @@

    static Stamp -Stamp.make(Stamp first, - Stamp second) +Stamp.make(Stamp first, + Stamp second, + long time)
              Try to merge two Stamps, return null if have overlap @@ -158,39 +168,14 @@

    -static Sentence -Sentence.make(Sentence oldS, - Term term, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) - -
    -          Make a derived Sentence from a template and some initial values. - - - static Stamp -Stamp.make(Stamp first, - Stamp second) +Stamp.make(Stamp first, + Stamp second, + long time)
              Try to merge two Stamps, return null if have overlap - - -static Sentence -Sentence.make(Term term, - char punc, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) - -
    -          Make a Sentence from an input String. -  

    @@ -200,72 +185,13 @@

    Constructors in nars.entity with parameters of type Stamp -Goal(Term term, - char punc, - TruthValue t, - Stamp s) - -
    -          Constructor - - -Judgment(Term term, - char punc, - TruthValue t, - Stamp b, - Sentence premise1, - Sentence premise2) - -
    -          Constructor - - -Question(Term term, - char punc, - Stamp s) - -
    -          Constructor - - -Stamp(Stamp old) - -
    -          Generate a new stamp from an existing one, with the same trail but different creation time - - -Stamp(Stamp first, - Stamp second, - long time) - -
    -          Generate a new stamp for derived sentence by merging the two from parents - the first one is no shorter than the second - - -  -

    - - - - - -
    -Uses of Stamp in nars.main
    -  -

    - - - - - - - - +          Create a Sentence with the given fields
    Fields in nars.main declared as Stamp
    -static StampMemory.newStamp +Sentence(Term content, + char punctuation, + TruthValue truth, + Stamp stamp)
    -          Shortcut to the derived Stamp
      diff --git a/nars-dist/javadoc/nars/entity/class-use/Task.html b/nars-dist/javadoc/nars/entity/class-use/Task.html index ea1f5ad7..b89b28b5 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Task.html +++ b/nars-dist/javadoc/nars/entity/class-use/Task.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.entity.Task (NARS Document) +Uses of Class nars.entity.Task - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.entity.Task (NARS Document)"; + parent.document.title="Uses of Class nars.entity.Task"; } } @@ -91,6 +91,10 @@

    Packages that use Task +nars.container +Storage management  + + nars.entity Data entities that are independently stored  @@ -99,21 +103,17 @@

    The inference rules and control functions  -nars.main -Top-level classes of the system  - - -nars.operation -Built-in operators  +nars.io +Input/output management   

    - + +Uses of Task in nars.container
    -Uses of Task in nars.entity
      @@ -121,15 +121,40 @@

    - + - + +          The selected Task + +
    Fields in nars.entity declared as TaskFields in nars.container declared as Task
    -private  TaskTaskLink.targetTask + TaskMemory.currentTask
    -          The Task linked.
    +  +

    + + + + + + + + + +
    Methods in nars.container with parameters of type Task
    + voidMemory.inputTask(Task task) + +
    +          Input task processing.
    +  +

    + + + +
    +Uses of Task in nars.entity
      @@ -165,35 +190,24 @@

    - Judgment + Sentence Concept.getBelief(Task task)
    -          Select a belief to interact with the given task in inference +          Select a isBelief to interact with the given task in inference -private  void -Concept.processGoal(Goal goal, - Task task) - -
    -          Direct processing a new goal - - - -private  void -Concept.processJudgment(Judgment judg, - Task task) + void +Task.merge(Task that)
    -          To accept a new judgment as belief, and check for revisions and solutions +          Merge one Task into another -private  void -Concept.processQuestion(Question ques, - Task task) + float +Concept.processQuestion(Task task)
              To answer a question by existing beliefs @@ -207,6 +221,25 @@

    Constructors in nars.entity with parameters of type Task +Task(Sentence s, + BudgetValue b, + Task parentTask, + Sentence parentBelief) + +
    +          Constructor for a derived task + + +Task(Sentence s, + BudgetValue b, + Task parentTask, + Sentence parentBelief, + Sentence solution) + +
    +          Constructor for an activated task + + TaskLink(Task t, TermLink template, BudgetValue v) @@ -234,82 +267,32 @@

    static void -MatchingRules.match(Task task, - Judgment belief) +LocalRules.match(Task task, + Sentence belief, + Memory memory)
              The task and belief have the same content -(package private) static BudgetValue -BudgetFunctions.solutionEval(Sentence problem, - Judgment solution, - Task task) - -
    -          Evaluate the quality of a belief as a solution to a problem, then reward - the belief and de-prioritize the problem - - - static void -SyllogisticRules.temporalIndCom(Task task1, - Task task2) - -
    -          { S>, P>} |- { P>,

    S>, P>} - - - -(package private) static void -StructuralRules.transformProductImage(Inheritance inh, - CompoundTerm oldContent, - short[] indices, - Task task) +LocalRules.trySolution(Sentence problem, + Sentence belief, + Task task, + Memory memory)
    -          Equivalent transformation between products and images - {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> - { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> - { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)> - - - -static void -RuleTables.transformTask(Task task, - TaskLink tLink) - -
    -          The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation - - - -static void -MatchingRules.trySolution(Sentence problem, - Judgment belief, - Task task) - -
    -          Check if a Judgment provide a better answer to a Question - - - -(package private) static BudgetValue -BudgetFunctions.update(Task task, - TruthValue bTruth) - -
    -          Update a belief +          Check if a Sentence provide a better answer to a Question or Goal  

    - + +Uses of Task in nars.io
    -Uses of Task in nars.main
      @@ -317,251 +300,27 @@

    - + - - -
    Fields in nars.main declared as TaskMethods in nars.io that return Task
    static TaskMemory.currentTask - -
    -          Shortcut to the selected Task
    -  -

    - - - - - - - - - -
    Fields in nars.main with type parameters of type Task
    -private static java.util.ArrayList<Task>Memory.newTasks - -
    -          List of inference newTasks, to be processed in the next working cycle
    -  -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Methods in nars.main with parameters of type Task
    -private static voidMemory.continuedProcess(Task task, - Term content) - -
    -          Link to a new task from all relevant concepts for continued processing in - the near future for unspecified time.
    -private static voidMemory.derivedTask(Task task) - -
    -          Derived task comes from the inference rules.
    -private static voidMemory.eventProcessing(Task event1) - -
    -          Simple temporal regularity discovery [To be refined]
    -static voidMemory.executedTask(Task task) - -
    -          Reporting executed task, and remember the event
    -private static voidMemory.immediateProcess(Task task) - -
    -          Imediate processing of a new task, in constant time - Local processing, in one concept only
    -static voidMemory.inputTask(Task task) - -
    -          Input task processing.
    -  -

    - - - - - -
    -Uses of Task in nars.operation
    -  -

    - - - - - - - - +          Parse a line of input experience - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Methods in nars.operation that return types with arguments of type Task
    - java.util.ArrayList<Task>Break.execute(Task task) +StringParser.parseExperience(java.lang.StringBuffer buffer, + Memory memory, + long time)
    -           
    - java.util.ArrayList<Task>Drop.execute(Task task) - -
    -           
    - java.util.ArrayList<Task>GoTo.execute(Task task) - -
    -           
    - java.util.ArrayList<Task>Open.execute(Task task) - -
    -           
    -abstract  java.util.ArrayList<Task>Operator.execute(Task task) - -
    -          Required method for every operation, specifying the operation
    - java.util.ArrayList<Task>Pick.execute(Task task) - -
    -           
    - java.util.ArrayList<Task>Strike.execute(Task task) - -
    -           
    - java.util.ArrayList<Task>Throw.execute(Task task) - -
    -           
    -  -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +          Enter a new Task in String into the memory, called from InputWindow or locally.
    Methods in nars.operation with parameters of type Task
    - voidOperator.call(Task task) - -
    -          Execute an operation, then handle feedback
    - java.util.ArrayList<Task>Break.execute(Task task) - -
    -           
    - java.util.ArrayList<Task>Drop.execute(Task task) - -
    -           
    - java.util.ArrayList<Task>GoTo.execute(Task task) - -
    -           
    - java.util.ArrayList<Task>Open.execute(Task task) - -
    -           
    -abstract  java.util.ArrayList<Task>Operator.execute(Task task) - -
    -          Required method for every operation, specifying the operation
    - java.util.ArrayList<Task>Pick.execute(Task task) - -
    -           
    - java.util.ArrayList<Task>Strike.execute(Task task) - -
    -           
    - java.util.ArrayList<Task>Throw.execute(Task task) +static TaskStringParser.parseTask(java.lang.String s, + Memory memory, + long time)
    -           
      diff --git a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html index a02ab7b4..54121f67 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.entity.TaskLink (NARS Document) +Uses of Class nars.entity.TaskLink - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.entity.TaskLink (NARS Document)"; + parent.document.title="Uses of Class nars.entity.TaskLink"; } } @@ -91,6 +91,10 @@

    Packages that use TaskLink +nars.container +Storage management  + + nars.entity Data entities that are independently stored  @@ -98,22 +102,14 @@

    nars.inference The inference rules and control functions  - -nars.main -Top-level classes of the system  - - -nars.storage -Storage management  -  

    - + +Uses of TaskLink in nars.container
    -Uses of TaskLink in nars.entity
      @@ -121,24 +117,15 @@

    - + - + - -
    Methods in nars.entity with parameters of type TaskLinkFields in nars.container declared as TaskLink
    - voidConcept.insertTaskLink(TaskLink taskLink) + TaskLinkMemory.currentTaskLink
    -          Insert a TaskLink into the TaskLink bag
    -  -

    - - - - +          The selected TaskLink
    -Uses of TaskLink in nars.inference
      @@ -146,46 +133,25 @@

    - - - - - - - - - + - + +          Replace defualt to prevent repeated inference, by checking TaskLink
    Methods in nars.inference with parameters of type TaskLink
    -static voidRuleTables.reason(TaskLink tLink, - TermLink bLink) - -
    -          Entry point of the inference engine
    -private static voidRuleTables.syllogisms(TaskLink tLink, - TermLink bLink, - Term taskTerm, - Term beliefTerm) - -
    -          Meta-table of syllogistic rules, indexed by the content classes of the - taskSentence and the belief
    Methods in nars.container with parameters of type TaskLink
    -static voidRuleTables.transformTask(Task task, - TaskLink tLink) + TermLinkTermLinkBag.takeOut(TaskLink taskLink, + long time)
    -          The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation
     

    - + +Uses of TaskLink in nars.entity
    -Uses of TaskLink in nars.main
      @@ -193,24 +159,24 @@

    - + - + +          Insert a TaskLink into the TaskLink bag
    Fields in nars.main declared as TaskLinkMethods in nars.entity with parameters of type TaskLink
    -static TaskLinkMemory.currentTaskLink + voidConcept.insertTaskLink(TaskLink taskLink)
    -          Shortcut to the selected TaskLink
     

    - + +Uses of TaskLink in nars.inference
    -Uses of TaskLink in nars.storage
      @@ -218,15 +184,26 @@

    - + - + +          Entry point of the inference engine + + + +
    Methods in nars.storage with parameters of type TaskLinkMethods in nars.inference with parameters of type TaskLink
    - TermLinkTermLinkBag.takeOut(TaskLink taskLink) +static voidRuleTables.reason(TaskLink tLink, + TermLink bLink, + Memory memory)
    -          Replace defualt to prevent repeated inference, by checking TaskLink
    +static voidRuleTables.transformTask(TaskLink tLink, + Memory memory) + +
    +          The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation
      diff --git a/nars-dist/javadoc/nars/entity/class-use/TermLink.html b/nars-dist/javadoc/nars/entity/class-use/TermLink.html index 05c4cc3d..934272c4 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TermLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TermLink.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.entity.TermLink (NARS Document) +Uses of Class nars.entity.TermLink - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.entity.TermLink (NARS Document)"; + parent.document.title="Uses of Class nars.entity.TermLink"; } } @@ -91,6 +91,10 @@

    Packages that use TermLink +nars.container +Storage management  + + nars.entity Data entities that are independently stored  @@ -99,25 +103,17 @@

    The inference rules and control functions  -nars.language +nars.term Term hierarchy in Narsese  - -nars.main -Top-level classes of the system  - - -nars.storage -Storage management  -  

    - + +Uses of TermLink in nars.container
    -Uses of TermLink in nars.entity
      @@ -125,15 +121,41 @@

    - + - + +          The selected TermLink + +
    Subclasses of TermLink in nars.entityFields in nars.container declared as TermLink
    - classTaskLink + TermLinkMemory.currentBeliefLink
    -          Reference to a Task.
    +  +

    + + + + + + + + + +
    Methods in nars.container that return TermLink
    + TermLinkTermLinkBag.takeOut(TaskLink taskLink, + long time) + +
    +          Replace defualt to prevent repeated inference, by checking TaskLink
    +  +

    + + + +
    +Uses of TermLink in nars.entity
      @@ -141,15 +163,15 @@

    - + - + +          Reference to a Task.
    Fields in nars.entity with type parameters of type TermLinkSubclasses of TermLink in nars.entity
    -private  java.util.ArrayList<TermLink>Concept.termLinkTemplates + classTaskLink
    -          Link templates of TermLink, only in concepts with CompoundTerm
      @@ -186,7 +208,8 @@

     boolean -TaskLink.novel(TermLink termLink) +TaskLink.novel(TermLink termLink, + long currentTime)
              To check whether a TaskLink should use a TermLink, return false if they @@ -209,7 +232,7 @@

              Constructor -TermLink(Term t, +TermLink(Term t, TermLink template, BudgetValue v) @@ -235,43 +258,22 @@

    -private static int -RuleTables.indexToFigure(TermLink link1, - TermLink link2) - -
    -          Decide the figure of syllogism according to the locations of the common - term in the premises - - - static void -RuleTables.reason(TaskLink tLink, - TermLink bLink) +RuleTables.reason(TaskLink tLink, + TermLink bLink, + Memory memory)
              Entry point of the inference engine - - -private static void -RuleTables.syllogisms(TaskLink tLink, - TermLink bLink, - Term taskTerm, - Term beliefTerm) - -
    -          Meta-table of syllogistic rules, indexed by the content classes of the - taskSentence and the belief -  

    - + +Uses of TermLink in nars.term
    -Uses of TermLink in nars.language
      @@ -279,12 +281,12 @@

    - + - @@ -292,74 +294,6 @@

    Methods in nars.language that return types with arguments of type TermLinkMethods in nars.term that return types with arguments of type TermLink
     java.util.ArrayList<TermLink>CompoundTerm.prepareComponentLinks() +CompoundTerm.prepareComponentLinks()
              Build TermLink templates to constant components and subcomponents
     

    - - - - - - - - - -
    Method parameters in nars.language with type arguments of type TermLink
    -private  voidCompoundTerm.prepareComponentLinks(java.util.ArrayList<TermLink> componentLinks, - short type, - CompoundTerm term) - -
    -          Collect TermLink templates into a list, go down one level except in special cases
    -  -

    - - - - - -
    -Uses of TermLink in nars.main
    -  -

    - - - - - - - - - -
    Fields in nars.main declared as TermLink
    -static TermLinkMemory.currentBeliefLink - -
    -          Shortcut to the selected TermLink
    -  -

    - - - - - -
    -Uses of TermLink in nars.storage
    -  -

    - - - - - - - - - -
    Methods in nars.storage that return TermLink
    - TermLinkTermLinkBag.takeOut(TaskLink taskLink) - -
    -          Replace defualt to prevent repeated inference, by checking TaskLink
    -  -


    diff --git a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html index 20bfc0eb..951ca4a3 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.entity.TruthValue (NARS Document) +Uses of Class nars.entity.TruthValue - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.entity.TruthValue (NARS Document)"; + parent.document.title="Uses of Class nars.entity.TruthValue"; } } @@ -91,6 +91,10 @@

    Packages that use TruthValue +nars.container +Storage management  + + nars.entity Data entities that are independently stored  @@ -98,22 +102,14 @@

    nars.inference The inference rules and control functions  - -nars.io -Input/output management  - - -nars.main -Top-level classes of the system  -  

    - + +Uses of TruthValue in nars.container
    -Uses of TruthValue in nars.entity
      @@ -121,15 +117,47 @@

    - + + + + + - + +          Shared final operations by all single-premise rules, called in StructuralRules + + + + + +
    Fields in nars.entity declared as TruthValueMethods in nars.container with parameters of type TruthValue
    + voidMemory.doublePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    -protected  TruthValueSentence.truth + voidMemory.singlePremiseTask(Term newContent, + char punctuation, + TruthValue newTruth, + BudgetValue newBudget)
    -          The truth value of Judgment or desire value of Goal
    + voidMemory.singlePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all single-premise rules, called in StructuralRules
    +  +

    + + + +
    +Uses of TruthValue in nars.entity
      @@ -163,40 +191,6 @@


              Calculate the absolute difference of the expectation value and that of a given truth value - - -static Sentence -Sentence.make(Sentence oldS, - Term term, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) - -
    -          Make a derived Sentence from a template and some initial values. - - - -static Sentence -Sentence.make(Term term, - char punc, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) - -
    -          Make a Sentence from an input String. - - - - void -Judgment.setTruth(TruthValue v) - -
    -            -  

    @@ -206,24 +200,13 @@

    Constructors in nars.entity with parameters of type TruthValue -Goal(Term term, - char punc, - TruthValue t, - Stamp s) - -
    -          Constructor - - -Judgment(Term term, - char punc, - TruthValue t, - Stamp b, - Sentence premise1, - Sentence premise2) +Sentence(Term content, + char punctuation, + TruthValue truth, + Stamp stamp)
    -          Constructor +          Create a Sentence with the given fields TruthValue(TruthValue v) @@ -244,282 +227,15 @@

     

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Methods in nars.inference that return TruthValue
    -(package private) static TruthValueTruthFunctions.abduction(TruthValue v1, - float reliance) - -
    -          {M,

    M>} |- P

    -(package private) static TruthValueTruthFunctions.abduction(TruthValue v1, - TruthValue v2) - -
    -          { M>,

    M>} |- P>

    -(package private) static TruthValueTruthFunctions.analogy(TruthValue v1, - TruthValue v2) - -
    -          { M>, P>} |- P>
    -(package private) static TruthValueTruthFunctions.anonymousAnalogy(TruthValue v1, - TruthValue v2) - -
    -          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P>
    -(package private) static TruthValueTruthFunctions.comparison(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- P>
    -(package private) static TruthValueTruthFunctions.contraposition(TruthValue v1) - -
    -          { B>} |- <(--, B) ==> (--, A)>
    -(package private) static TruthValueTruthFunctions.conversion(TruthValue v1) - -
    -          { B>} |- A>
    -(package private) static TruthValueTruthFunctions.deduction(TruthValue v1, - float reliance) - -
    -          {M, P>} |- P
    -(package private) static TruthValueTruthFunctions.deduction(TruthValue v1, - TruthValue v2) - -
    -          { M>, P>} |- P>
    -(package private) static TruthValueTruthFunctions.desireDed(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined]
    -(package private) static TruthValueTruthFunctions.desireInd(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined]
    -(package private) static TruthValueTruthFunctions.desireStrong(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined]
    -(package private) static TruthValueTruthFunctions.desireWeak(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined]
    -(package private) static TruthValueTruthFunctions.difference(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- (S-P)>
    -(package private) static TruthValueTruthFunctions.exemplification(TruthValue v1, - TruthValue v2) - -
    -          { S>,

    M>} |- P>

    -(package private) static TruthValueTruthFunctions.induction(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- P>
    -(package private) static TruthValueTruthFunctions.intersection(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- (S&P)>
    -(package private) static TruthValueTruthFunctions.negation(TruthValue v1) - -
    -          {A} |- (--A)
    -(package private) static TruthValueTruthFunctions.reduceConjunction(TruthValue v1, - TruthValue v2) - -
    -          {(--, (&&, A, B)), B} |- (--, A)
    -(package private) static TruthValueTruthFunctions.reduceConjunctionNeg(TruthValue v1, - TruthValue v2) - -
    -          {(--, (&&, A, (--, B))), (--, B)} |- (--, A)
    -(package private) static TruthValueTruthFunctions.reduceDisjunction(TruthValue v1, - TruthValue v2) - -
    -          {(||, A, B), (--, B)} |- A
    -(package private) static TruthValueTruthFunctions.resemblance(TruthValue v1, - TruthValue v2) - -
    -          { M>, P>} |- P>
    -(package private) static TruthValueTruthFunctions.revision(TruthValue v1, - TruthValue v2) - -
    -          { P>, P>} |- P>
    -static TruthValueTruthFunctions.temporalCasting(TruthValue v1, - long t1, - long t2, - long t) - -
    -          Casting truth-value v1 from moment t1 to moment t2, with respect to time t
    -(package private) static TruthValueTruthFunctions.union(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- (S|P)>
    -  -

    - - - - - - - - - - - - - - - - - - @@ -527,380 +243,30 @@

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Methods in nars.inference with parameters of type TruthValue
    -(package private) static TruthValueTruthFunctions.abduction(TruthValue v1, - float reliance) - -
    -          {M,

    M>} |- P

    -(package private) static TruthValueTruthFunctions.abduction(TruthValue v1, - TruthValue v2) - -
    -          { M>,

    M>} |- P>

    -(package private) static TruthValueTruthFunctions.analogy(TruthValue v1, - TruthValue v2) - -
    -          { M>, P>} |- P>
    -(package private) static TruthValueTruthFunctions.anonymousAnalogy(TruthValue v1, - TruthValue v2) - -
    -          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P>
    static BudgetValueBudgetFunctions.backward(TruthValue truth) +BudgetFunctions.backward(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, stronger case
    static BudgetValueBudgetFunctions.backwardWeak(TruthValue truth) +BudgetFunctions.backwardWeak(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, weaker case
    -(package private) static TruthValueTruthFunctions.comparison(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- P>
    static BudgetValueBudgetFunctions.compoundForward(TruthValue truth, - Term content) +BudgetFunctions.compoundForward(TruthValue truth, + Term content, + Memory memory)
              Forward inference with CompoundTerm conclusion
    -(package private) static TruthValueTruthFunctions.contraposition(TruthValue v1) - -
    -          { B>} |- <(--, B) ==> (--, A)>
    -(package private) static TruthValueTruthFunctions.conversion(TruthValue v1) - -
    -          { B>} |- A>
    -(package private) static TruthValueTruthFunctions.deduction(TruthValue v1, - float reliance) - -
    -          {M, P>} |- P
    -(package private) static TruthValueTruthFunctions.deduction(TruthValue v1, - TruthValue v2) - -
    -          { M>, P>} |- P>
    -(package private) static TruthValueTruthFunctions.desireDed(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined]
    -(package private) static TruthValueTruthFunctions.desireInd(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined]
    -(package private) static TruthValueTruthFunctions.desireStrong(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined]
    -(package private) static TruthValueTruthFunctions.desireWeak(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined]
    -(package private) static TruthValueTruthFunctions.difference(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- (S-P)>
    -(package private) static TruthValueTruthFunctions.exemplification(TruthValue v1, - TruthValue v2) - -
    -          { S>,

    M>} |- P>

    -(package private) static BudgetValueBudgetFunctions.forward(TruthValue truth) - -
    -          Forward inference result and adjustment
    -(package private) static TruthValueTruthFunctions.induction(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- P>
    -(package private) static TruthValueTruthFunctions.intersection(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- (S&P)>
    -(package private) static TruthValueTruthFunctions.negation(TruthValue v1) - -
    -          {A} |- (--A)
    -private static voidCompositionalRules.processComposed(Statement statement, - Term subject, - Term predicate, - TruthValue truth) - -
    -          Finish composing compound term
    -(package private) static TruthValueTruthFunctions.reduceConjunction(TruthValue v1, - TruthValue v2) - -
    -          {(--, (&&, A, B)), B} |- (--, A)
    -(package private) static TruthValueTruthFunctions.reduceConjunctionNeg(TruthValue v1, - TruthValue v2) - -
    -          {(--, (&&, A, (--, B))), (--, B)} |- (--, A)
    -(package private) static TruthValueTruthFunctions.reduceDisjunction(TruthValue v1, - TruthValue v2) - -
    -          {(||, A, B), (--, B)} |- A
    -(package private) static TruthValueTruthFunctions.resemblance(TruthValue v1, - TruthValue v2) - -
    -          { M>, P>} |- P>
    -(package private) static BudgetValueBudgetFunctions.revise(TruthValue tTruth, - TruthValue bTruth, - TruthValue truth, - boolean feedbackToLinks) - -
    -          Evaluate the quality of a revision, then de-prioritize the premises
    -(package private) static TruthValueTruthFunctions.revision(TruthValue v1, - TruthValue v2) - -
    -          { P>, P>} |- P>
    -private static voidStructuralRules.structuralStatement(Term subject, - Term predicate, - TruthValue truth) - -
    -          Common final operations of the above two methods
    -static TruthValueTruthFunctions.temporalCasting(TruthValue v1, - long t1, - long t2, - long t) - -
    -          Casting truth-value v1 from moment t1 to moment t2, with respect to time t
    -static BudgetValueBudgetFunctions.temporalIndCom(BudgetValue b1, - BudgetValue b2, - TruthValue t) - -
    -          Special treatment for temporal induction and comparison among recent event, no feedback
    static float BudgetFunctions.truthToQuality(TruthValue t)
              Determine the quality of a judgment by its truth value alone
    -(package private) static TruthValueTruthFunctions.union(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- (S|P)>
    -(package private) static BudgetValueBudgetFunctions.update(Task task, - TruthValue bTruth) - -
    -          Update a belief
    -  -

    - - - - - -
    -Uses of TruthValue in nars.io
    -  -

    - - - - - - - - - -
    Methods in nars.io that return TruthValue
    -private static TruthValueStringParser.parseTruth(java.lang.String s, - char type) - -
    -          parse the input String into a TruthValue (or DesireValue)
    -  -

    - - - - - - - - - -
    Methods in nars.io with parameters of type TruthValue
    -private static BudgetValueStringParser.parseBudget(java.lang.String s, - char punctuation, - TruthValue truth) - -
    -          parse the input String into a BudgetValue
    -  -

    - - - - - -
    -Uses of TruthValue in nars.main
    -  -

    - - - - - - - - - - - - - - - - - - - - -
    Methods in nars.main with parameters of type TruthValue
    -static voidMemory.convertedJudgment(TruthValue truth, - BudgetValue budget) - -
    -          Convert jusgment into different relation
    -static voidMemory.doublePremiseTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise1, - Sentence premise2) - -
    -          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    -static voidMemory.revisionTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise1, - Sentence premise2) - -
    -          The final operations of the revision rules, called from MatchingRules
    -static voidMemory.singlePremiseTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise) - -
    -          Shared final operations by all single-premise rules, called in StructuralRules
     

    diff --git a/nars-dist/javadoc/nars/entity/package-frame.html b/nars-dist/javadoc/nars/entity/package-frame.html index d756ff03..0e100612 100644 --- a/nars-dist/javadoc/nars/entity/package-frame.html +++ b/nars-dist/javadoc/nars/entity/package-frame.html @@ -2,13 +2,13 @@ - + -nars.entity (NARS Document) +nars.entity - + @@ -28,14 +28,8 @@
    Concept
    -Goal -
    Item
    -Judgment -
    -Question -
    Sentence
    ShortFloat diff --git a/nars-dist/javadoc/nars/entity/package-summary.html b/nars-dist/javadoc/nars/entity/package-summary.html index eb926b61..f0dd2f96 100644 --- a/nars-dist/javadoc/nars/entity/package-summary.html +++ b/nars-dist/javadoc/nars/entity/package-summary.html @@ -2,13 +2,13 @@ - + -nars.entity (NARS Document) +nars.entity - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.entity (NARS Document)"; + parent.document.title="nars.entity"; } } @@ -56,7 +56,7 @@ - PREV PACKAGE  + PREV PACKAGE   NEXT PACKAGE FRAMES   @@ -105,23 +105,11 @@

    and indirectly related tasks and beliefs. -Goal -A Goal is an event to be realized, and may conain query variables - - Item An item is an object that can be put into a Bag, to participate in the resource competation of the system. -Judgment -A Judgment is an piece of new knowledge to be absorbed. - - -Question -A Question is a sentence without a truth value, and may conain query variables - - Sentence A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp. @@ -133,8 +121,7 @@

    Stamp Each Sentence has a time stamp, consisting the following components: (1) The creation time of the sentence, - (2) The time when the truth-value is supported, - (3) A trail of serial numbers of sentence, from which the sentence is derived. + (2) A evidentialBase of serial numbers of sentence, from which the sentence is derived. Task @@ -167,24 +154,20 @@

    Package Specification

    • ShortFloats: BudgetValue (priority/durability/quality) and TruthValue (frequency/confidence)
    • -
    • Stamp: serial numbers associated to TruthVallue
    • +
    • Stamp: serial numbers and creation time associated to a TruthValue
    • Sentence: a Term, a TruthValue, and a Stamp. A Sentence can be a Judgment, a Goal, or a Question.
    • Task: a Sentence to be processed.
    • TermLink: built in pair between a compound term and a component term.
    • TaskLink: special TermLink refering to a Task, whose Term equals or contains the current Term.
    • Concept: labeled by a Term, contains a TaskLink bag and a TermLink bag for indirect tasks/beliefs, as well as beliefs/questions/goals directly on the Term.
    • Item: Concept, Task, or TermLink
    • -
    • TemporalValue: A relative time used in Sentence (for tense), Conjunction (for order), and Implication/Equivalence (for time interval)
    in NARS, each task is processed in two stages:
    1. Direct processing by matching, in the concept corresponding to the content, in one step. It happens when the task is inserted into memory.
    2. Indirect processing by reasoning, in related concepts and unlimited steps. It happens in each inference cycle.
    3. -
    -The transmission from (1) to (2) corresponds to "decision making". -

    -Inference between premises with no shared term can only happen among new events, as temporal induction/comparison. +

    @@ -220,7 +203,7 @@

    Package Specification

    - PREV PACKAGE  + PREV PACKAGE   NEXT PACKAGE FRAMES   diff --git a/nars-dist/javadoc/nars/entity/package-tree.html b/nars-dist/javadoc/nars/entity/package-tree.html index b8fe7cc2..0bd99186 100644 --- a/nars-dist/javadoc/nars/entity/package-tree.html +++ b/nars-dist/javadoc/nars/entity/package-tree.html @@ -2,13 +2,13 @@ - + -nars.entity Class Hierarchy (NARS Document) +nars.entity Class Hierarchy - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.entity Class Hierarchy (NARS Document)"; + parent.document.title="nars.entity Class Hierarchy"; } } @@ -56,7 +56,7 @@ - PREV  + PREV   NEXT FRAMES   @@ -94,20 +94,15 @@


    @@ -139,7 +134,7 @@

    - PREV  + PREV   NEXT FRAMES   diff --git a/nars-dist/javadoc/nars/entity/package-use.html b/nars-dist/javadoc/nars/entity/package-use.html index cd57bd96..090b5710 100644 --- a/nars-dist/javadoc/nars/entity/package-use.html +++ b/nars-dist/javadoc/nars/entity/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package nars.entity (NARS Document) +Uses of Package nars.entity - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package nars.entity (NARS Document)"; + parent.document.title="Uses of Package nars.entity"; } } @@ -91,6 +91,10 @@

    Packages that use nars.entity +nars.container +Storage management  + + nars.entity Data entities that are independently stored  @@ -107,102 +111,72 @@

    Input/output management  -nars.language +nars.term Term hierarchy in Narsese  - -nars.main -Top-level classes of the system  - - -nars.operation -Built-in operators  - - -nars.storage -Storage management  -  

    - + +Classes in nars.entity used by nars.container - - +          A concept contains information associated with a term, including directly + and indirectly related tasks and beliefs. - - - - - - - - - - - - + (2) A evidentialBase of serial numbers of sentence, from which the sentence is derived. - - - - @@ -210,94 +184,65 @@

    -Classes in nars.entity used by nars.entity
    BudgetValue +BudgetValue
              A triple of priority (current), durability (decay), and quality (long-term average).
    Goal +Concept
    -          A Goal is an event to be realized, and may conain query variables
    Item +Item
              An item is an object that can be put into a Bag, to participate in the resource competation of the system.
    Judgment - -
    -          A Judgment is an piece of new knowledge to be absorbed.
    Question - -
    -          A Question is a sentence without a truth value, and may conain query variables
    Sentence +Sentence
              A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
    ShortFloat - -
    -          A float value in [0, 1], with 4 digits accuracy.
    Stamp +Stamp
              Each Sentence has a time stamp, consisting the following components: (1) The creation time of the sentence, - (2) The time when the truth-value is supported, - (3) A trail of serial numbers of sentence, from which the sentence is derived.
    Task +Task
              A task to be processed, consists of a Sentence and a BudgetValue
    TaskLink +TaskLink
              Reference to a Task.
    TermLink +TermLink
              A link between a compound term and a component term
    TruthValue +TruthValue
              Frequency and confidence.
     

    - + +Classes in nars.entity used by nars.entity - - -
    -Classes in nars.entity used by nars.gui
    Concept +BudgetValue
    -          A concept contains information associated with a term, including directly - and indirectly related tasks and beliefs.
    -  -

    - - - - +          A triple of priority (current), durability (decay), and quality (long-term average). - +          An item is an object that can be put into a Bag, + to participate in the resource competation of the system. - +          A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp. - +          A float value in [0, 1], with 4 digits accuracy. - +          Each Sentence has a time stamp, consisting the following components: + (1) The creation time of the sentence, + (2) A evidentialBase of serial numbers of sentence, from which the sentence is derived. - - - - - -
    -Classes in nars.entity used by nars.inference
    BudgetValue +Item
    -          A triple of priority (current), durability (decay), and quality (long-term average).
    Concept +Sentence
    -          A concept contains information associated with a term, including directly - and indirectly related tasks and beliefs.
    Judgment +ShortFloat
    -          A Judgment is an piece of new knowledge to be absorbed.
    Sentence +Stamp
    -          A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
    Task +Task
              A task to be processed, consists of a Sentence and a BudgetValue
    TaskLink +TaskLink
              Reference to a Task.
    TermLink +TermLink
              A link between a compound term and a component term
    TruthValue - -
    -          Frequency and confidence.
    -  -

    - - - - - - - - - - @@ -305,81 +250,67 @@

    -Classes in nars.entity used by nars.io
    BudgetValue - -
    -          A triple of priority (current), durability (decay), and quality (long-term average).
    TruthValue +TruthValue
              Frequency and confidence.
     

    - + +Classes in nars.entity used by nars.gui - +          A concept contains information associated with a term, including directly + and indirectly related tasks and beliefs.
    -Classes in nars.entity used by nars.language
    TermLink +Concept
    -          A link between a compound term and a component term
     

    - + +Classes in nars.entity used by nars.inference - - - - - - - - - - - - - @@ -387,14 +318,14 @@

    -Classes in nars.entity used by nars.main
    BudgetValue +BudgetValue
              A triple of priority (current), durability (decay), and quality (long-term average).
    Concept +Concept
              A concept contains information associated with a term, including directly and indirectly related tasks and beliefs.
    Judgment - -
    -          A Judgment is an piece of new knowledge to be absorbed.
    Sentence +Sentence
              A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
    Stamp - -
    -          Each Sentence has a time stamp, consisting the following components: - (1) The creation time of the sentence, - (2) The time when the truth-value is supported, - (3) A trail of serial numbers of sentence, from which the sentence is derived.
    Task +Task
              A task to be processed, consists of a Sentence and a BudgetValue
    TaskLink +TaskLink
              Reference to a Task.
    TermLink +TermLink
              A link between a compound term and a component term
    TruthValue +TruthValue
              Frequency and confidence.
     

    - + +Classes in nars.entity used by nars.io - @@ -402,27 +333,14 @@

    -Classes in nars.entity used by nars.operation
    Task +Task
              A task to be processed, consists of a Sentence and a BudgetValue
     

    - + - - - - - - +Classes in nars.entity used by nars.term - diff --git a/nars-dist/javadoc/nars/gui/BagWindow.html b/nars-dist/javadoc/nars/gui/BagWindow.html index d29fd2a3..5e8cede3 100644 --- a/nars-dist/javadoc/nars/gui/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/BagWindow.html @@ -2,13 +2,13 @@ - + -BagWindow (NARS Document) +BagWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="BagWindow (NARS Document)"; + parent.document.title="BagWindow"; } } @@ -77,9 +77,9 @@ + SUMMARY: NESTED | FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD
    -Classes in nars.entity used by nars.storage
    Item - -
    -          An item is an object that can be put into a Bag, - to participate in the resource competation of the system.
    TaskLink - -
    -          Reference to a Task.
    TermLink +TermLink
              A link between a compound term and a component term
    @@ -176,87 +176,6 @@

    Field Summary - - -private  Bag -bag - -
    -          The bag to be displayed - - - -private  java.awt.Button -closeButton - -
    -          Control buttons - - - -private static int -counter - -
    -          The location of the display area, shifted according to the number of windows openned - - - -private  java.awt.Button -playButton - -
    -          Control buttons - - - -private  int -showLevel - -
    -          The lowest level displayed - - - -private  java.awt.Button -stopButton - -
    -          Control buttons - - - -private  java.awt.TextArea -text - -
    -          Display area - - - -private  java.awt.Scrollbar -valueBar - -
    -          Adjustable display level - - - -private  java.awt.Label -valueLabel - -
    -          Display label - - -  - - - - - - -
    Fields inherited from class nars.gui.NarsFrame
    DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
      @@ -295,7 +214,7 @@

    Constructor Summary

    - - - - -
    BagWindow(Bag b, +BagWindow(Bag b, java.lang.String title)
    @@ -329,14 +248,6 @@

    -private  voidclose() - -
    -           
     void post(java.lang.String str) @@ -426,123 +337,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -bag

    -
    -private Bag bag
    -
    -
    The bag to be displayed -

    -

    -
    -
    -
    - -

    -showLevel

    -
    -private int showLevel
    -
    -
    The lowest level displayed -

    -

    -
    -
    -
    - -

    -playButton

    -
    -private java.awt.Button playButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -stopButton

    -
    -private java.awt.Button stopButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -closeButton

    -
    -private java.awt.Button closeButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -text

    -
    -private java.awt.TextArea text
    -
    -
    Display area -

    -

    -
    -
    -
    - -

    -valueLabel

    -
    -private java.awt.Label valueLabel
    -
    -
    Display label -

    -

    -
    -
    -
    - -

    -valueBar

    -
    -private java.awt.Scrollbar valueBar
    -
    -
    Adjustable display level -

    -

    -
    -
    -
    - -

    -counter

    -
    -private static int counter
    -
    -
    The location of the display area, shifted according to the number of windows openned -

    -

    -
    -
    - @@ -553,10 +347,10 @@

    -

    +

    BagWindow

    -public BagWindow(Bag b,
    +public BagWindow(Bag b,
                      java.lang.String title)
    Constructor @@ -624,20 +418,6 @@


    -

    -close

    -
    -private void close()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    windowClosing

    @@ -718,9 +498,9 @@ 

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/gui/ConceptWindow.html b/nars-dist/javadoc/nars/gui/ConceptWindow.html index 791c5956..5a19111e 100644 --- a/nars-dist/javadoc/nars/gui/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/ConceptWindow.html @@ -2,13 +2,13 @@ - + -ConceptWindow (NARS Document) +ConceptWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ConceptWindow (NARS Document)"; + parent.document.title="ConceptWindow"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -102,11 +102,11 @@

    extended by nars.gui.ConceptWindow

    -
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.ItemListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

    -
    public class ConceptWindow
    extends NarsFrame
    implements java.awt.event.ActionListener, java.awt.event.ItemListener
    +
    public class ConceptWindow
    extends NarsFrame
    implements java.awt.event.ActionListener

    @@ -176,79 +176,6 @@

    Field Summary - - -private  java.awt.Button -closeButton - -
    -          Control buttons - - - -private  Concept -concept - -
    -          The concept to be displayed - - - -private static int -instanceCount - -
    -          Used to adjust the screen position - - - -private  java.awt.Button -playButton - -
    -          Control buttons - - - -private  java.awt.Button -playInNewWindowButton - -
    -          Control buttons - - - -private  java.awt.Checkbox -showDerivationCheckbox - -
    -            - - - -private  java.awt.Button -stopButton - -
    -          Control buttons - - - -private  java.awt.TextArea -text - -
    -          Display area - - -  - - - - - - -
    Fields inherited from class nars.gui.NarsFrame
    DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
      @@ -312,14 +239,6 @@

    - - - - - - - - - - - - + SUMMARY: NESTED | FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD
    -private  voidclose() - -
    -           
     void detachFromConcept() @@ -328,22 +247,6 @@

    - booleangetShowDerivation() - -
    -           
    - voiditemStateChanged(java.awt.event.ItemEvent e) - -
    -           
     void post(java.lang.String str) @@ -425,109 +328,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -playButton

    -
    -private java.awt.Button playButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -stopButton

    -
    -private java.awt.Button stopButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -playInNewWindowButton

    -
    -private java.awt.Button playInNewWindowButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -closeButton

    -
    -private java.awt.Button closeButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -showDerivationCheckbox

    -
    -private java.awt.Checkbox showDerivationCheckbox
    -
    -
    -
    -
    -
    - -

    -text

    -
    -private java.awt.TextArea text
    -
    -
    Display area -

    -

    -
    -
    -
    - -

    -concept

    -
    -private Concept concept
    -
    -
    The concept to be displayed -

    -

    -
    -
    -
    - -

    -instanceCount

    -
    -private static int instanceCount
    -
    -
    Used to adjust the screen position -

    -

    -
    -
    - @@ -607,20 +407,6 @@


    -

    -close

    -
    -private void close()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    windowClosing

    @@ -633,34 +419,6 @@ 

    -
    - -

    -getShowDerivation

    -
    -public boolean getShowDerivation()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -

    -itemStateChanged

    -
    -public void itemStateChanged(java.awt.event.ItemEvent e)
    -
    -
    -
    Specified by:
    itemStateChanged in interface java.awt.event.ItemListener
    -
    -
    -
    -
    -

    @@ -713,9 +471,9 @@

    diff --git a/nars-dist/javadoc/nars/gui/InferenceWindow.html b/nars-dist/javadoc/nars/gui/InferenceWindow.html index b92a1858..93090835 100644 --- a/nars-dist/javadoc/nars/gui/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/InferenceWindow.html @@ -2,13 +2,13 @@ - + -InferenceWindow (NARS Document) +InferenceWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="InferenceWindow (NARS Document)"; + parent.document.title="InferenceWindow"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -176,71 +176,6 @@

    Field Summary - - -private  java.awt.Button -hideButton - -
    -          Control buttons - - - -private  java.awt.Button -playButton - -
    -          Control buttons - - - -private  java.awt.Button -stopButton - -
    -          Control buttons - - - -private  java.awt.TextArea -text - -
    -          Display area - - - -private  java.lang.String -watched - -
    -          Type of catched text - - - -private  java.awt.TextField -watchText - -
    -          String to be catched - - - -private  java.awt.Choice -watchType - -
    -          Type of catched text - - -  - - - - - - -
    Fields inherited from class nars.gui.NarsFrame
    DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
      @@ -279,7 +214,7 @@

    Constructor Summary

    - @@ -320,14 +255,6 @@

    - - - -
    InferenceWindow() +InferenceWindow(InferenceRecorder recorder)
              Constructor
    -private  voidclose() - -
    -           
     void itemStateChanged(java.awt.event.ItemEvent event) @@ -425,99 +352,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -playButton

    -
    -private java.awt.Button playButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -stopButton

    -
    -private java.awt.Button stopButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -hideButton

    -
    -private java.awt.Button hideButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -text

    -
    -private java.awt.TextArea text
    -
    -
    Display area -

    -

    -
    -
    -
    - -

    -watchText

    -
    -private java.awt.TextField watchText
    -
    -
    String to be catched -

    -

    -
    -
    -
    - -

    -watchType

    -
    -private java.awt.Choice watchType
    -
    -
    Type of catched text -

    -

    -
    -
    -
    - -

    -watched

    -
    -private java.lang.String watched
    -
    -
    Type of catched text -

    -

    -
    -
    - @@ -528,13 +362,15 @@

    -

    +

    InferenceWindow

    -public InferenceWindow()
    +public InferenceWindow(InferenceRecorder recorder)
    Constructor

    +

    +
    Parameters:
    recorder - The inference recorder
    @@ -609,20 +445,6 @@


    -

    -close

    -
    -private void close()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    windowClosing

    @@ -719,9 +541,9 @@ 

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/gui/InputWindow.html b/nars-dist/javadoc/nars/gui/InputWindow.html index e44be078..d6a46f21 100644 --- a/nars-dist/javadoc/nars/gui/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/InputWindow.html @@ -2,13 +2,13 @@ - + -InputWindow (NARS Document) +InputWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="InputWindow (NARS Document)"; + parent.document.title="InputWindow"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -102,11 +102,11 @@

    extended by nars.gui.InputWindow

    -
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, InputChannel

    -
    public class InputWindow
    extends NarsFrame
    implements java.awt.event.ActionListener
    +
    public class InputWindow
    extends NarsFrame
    implements java.awt.event.ActionListener, InputChannel

    @@ -176,63 +176,6 @@

    Field Summary - - -private  java.awt.Button -clearButton - -
    -          Control buttons - - - -private  java.awt.Button -closeButton - -
    -          Control buttons - - - -private  java.awt.Button -holdButton - -
    -          Control buttons - - - -private  java.awt.TextArea -inputText - -
    -          Input area - - - -private  java.awt.Button -okButton - -
    -          Control buttons - - - -private  boolean -ready - -
    -          Whether the window is ready to accept new input - - -  - - - - - - -
    Fields inherited from class nars.gui.NarsFrame
    DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
      @@ -271,7 +214,8 @@

    Constructor Summary

    - @@ -296,35 +240,19 @@

    - - - - - + +          Initialize the window - + - - - - +          Accept text input in a tick, which can be multiple lines
    InputWindow() +InputWindow(Reasoner reasoner, + java.lang.String title)
              Constructor
    -private  voidclose() - -
    -           
    - longgetInput() + voidinit()
    -          Get input lines, and send them to Memory
    - java.lang.StringgetLine() + booleannextInput()
    -          Get one input lines
    - voidinit() - -
    -          Initialize the window
    @@ -401,87 +329,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -okButton

    -
    -private java.awt.Button okButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -holdButton

    -
    -private java.awt.Button holdButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -clearButton

    -
    -private java.awt.Button clearButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -closeButton

    -
    -private java.awt.Button closeButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -inputText

    -
    -private java.awt.TextArea inputText
    -
    -
    Input area -

    -

    -
    -
    -
    - -

    -ready

    -
    -private boolean ready
    -
    -
    Whether the window is ready to accept new input -

    -

    -
    -
    - @@ -492,13 +339,16 @@

    -

    +

    InputWindow

    -public InputWindow()
    +public InputWindow(Reasoner reasoner, + java.lang.String title)
    Constructor

    +

    +
    Parameters:
    reasoner - The reseasoner
    title - The title of the window
    @@ -543,20 +393,6 @@


    -

    -close

    -
    -private void close()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    windowClosing

    @@ -571,36 +407,19 @@ 


    -

    -getLine

    -
    -public java.lang.String getLine()
    -
    -
    Get one input lines -

    -

    -
    -
    -
    - -
    Returns:
    The top line in the input window
    -
    -
    -
    - -

    -getInput

    +

    +nextInput

    -public long getInput()
    +public boolean nextInput()
    -
    Get input lines, and send them to Memory +
    Accept text input in a tick, which can be multiple lines

    -
    +
    Specified by:
    nextInput in interface InputChannel
    -
    Returns:
    Nember of running steps, if any
    +
    Returns:
    Whether to check this channel again
    @@ -655,9 +474,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/gui/MainWindow.html b/nars-dist/javadoc/nars/gui/MainWindow.html index fc6908f6..39323b0d 100644 --- a/nars-dist/javadoc/nars/gui/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/MainWindow.html @@ -2,13 +2,13 @@ - + -MainWindow (NARS Document) +MainWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="MainWindow (NARS Document)"; + parent.document.title="MainWindow"; } } @@ -102,11 +102,11 @@

    extended by nars.gui.MainWindow
    -
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible
    +
    All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, OutputChannel

    -
    public class MainWindow
    extends NarsFrame
    implements java.awt.event.ActionListener
    +
    public class MainWindow
    extends NarsFrame
    implements java.awt.event.ActionListener, OutputChannel

    @@ -178,7 +178,7 @@

    -static TermWindow + TermWindow conceptWin
    @@ -186,15 +186,7 @@

    -private  java.awt.Button -exitButton - -
    -          Control buttons - - - -static ParameterWindow + ParameterWindow forgetBW
    @@ -202,7 +194,7 @@

    -static ParameterWindow + ParameterWindow forgetCW
    @@ -210,7 +202,7 @@

    -static ParameterWindow + ParameterWindow forgetTW
    @@ -218,7 +210,7 @@

    -static InputWindow + InputWindow inputWindow
    @@ -226,85 +218,12 @@

    -private  java.awt.TextArea -ioText - -
    -          Experience display area - - - -private  java.awt.Button -runButton - -
    -          Control buttons - - - -private  boolean -savingExp - -
    -          Whether the experience is saving into a file - - - -static ParameterWindow + ParameterWindow silentW
              Windows for run-time parameter adjustment - - -private  java.awt.Button -stopButton - -
    -          Control buttons - - - -private  long -timer - -
    -          System clock - - - -private  java.awt.Label -timerLabel - -
    -          Label of the clock - - - -private  java.awt.TextField -timerText - -
    -          Clock display field - - - -private  java.awt.Button -walkButton - -
    -          Control buttons - - -  - - - - - - -
    Fields inherited from class nars.gui.NarsFrame
    DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
      @@ -343,7 +262,8 @@

    Constructor Summary

    - @@ -368,14 +288,6 @@

    - - - - + void - +          To process the next chunk of output data + + + +
    MainWindow() +MainWindow(Reasoner reasoner, + java.lang.String title)
              Constructor
    -private  voidclose() - -
    -           
     void init() @@ -384,7 +296,7 @@

    -private  void initTimer()
    @@ -393,10 +305,10 @@

     voidpost(java.lang.String line) +nextOutput(java.util.ArrayList lines)
    -          Add new line to the display, plus the time interval
    @@ -408,6 +320,14 @@

    + longupdateTimer() + +
    +          To get the timer value and then to reset it
     void windowClosing(java.awt.event.WindowEvent arg0) @@ -491,118 +411,10 @@

    -

    -ioText

    -
    -private java.awt.TextArea ioText
    -
    -
    Experience display area -

    -

    -
    -
    -
    - -

    -stopButton

    -
    -private java.awt.Button stopButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -walkButton

    -
    -private java.awt.Button walkButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -runButton

    -
    -private java.awt.Button runButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -exitButton

    -
    -private java.awt.Button exitButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -timerText

    -
    -private java.awt.TextField timerText
    -
    -
    Clock display field -

    -

    -
    -
    -
    - -

    -timerLabel

    -
    -private java.awt.Label timerLabel
    -
    -
    Label of the clock -

    -

    -
    -
    -
    - -

    -timer

    -
    -private long timer
    -
    -
    System clock -

    -

    -
    -
    -
    - -

    -savingExp

    -
    -private boolean savingExp
    -
    -
    Whether the experience is saving into a file -

    -

    -
    -
    -
    -

    inputWindow

    -public static InputWindow inputWindow
    +public InputWindow inputWindow
    Input experience window

    @@ -614,7 +426,7 @@

    conceptWin

    -public static TermWindow conceptWin
    +public TermWindow conceptWin
    Window to accept a Term to be looked into

    @@ -626,7 +438,7 @@

    forgetTW

    -public static ParameterWindow forgetTW
    +public ParameterWindow forgetTW
    Windows for run-time parameter adjustment

    @@ -638,7 +450,7 @@

    forgetBW

    -public static ParameterWindow forgetBW
    +public ParameterWindow forgetBW
    Windows for run-time parameter adjustment

    @@ -650,7 +462,7 @@

    forgetCW

    -public static ParameterWindow forgetCW
    +public ParameterWindow forgetCW
    Windows for run-time parameter adjustment

    @@ -662,7 +474,7 @@

    silentW

    -public static ParameterWindow silentW
    +public ParameterWindow silentW
    Windows for run-time parameter adjustment

    @@ -680,13 +492,16 @@

    -

    +

    MainWindow

    -public MainWindow()
    +public MainWindow(Reasoner reasoner, + java.lang.String title)
    Constructor

    +

    +
    Parameters:
    reasoner -
    title -
    @@ -718,7 +533,7 @@

    initTimer

    -private void initTimer()
    +public void initTimer()
    Reset timer and its display

    @@ -747,62 +562,65 @@


    -

    -post

    +

    +actionPerformed

    -public void post(java.lang.String line)
    +public void actionPerformed(java.awt.event.ActionEvent e)
    -
    Add new line to the display, plus the time interval +
    Handling button click

    -
    +
    Specified by:
    actionPerformed in interface java.awt.event.ActionListener
    -
    Parameters:
    line - The text to be displayed
    +
    Parameters:
    e - The ActionEvent

    -

    -actionPerformed

    +

    +windowClosing

    -public void actionPerformed(java.awt.event.ActionEvent e)
    +public void windowClosing(java.awt.event.WindowEvent arg0)
    -
    Handling button click -

    -
    Specified by:
    actionPerformed in interface java.awt.event.ActionListener
    +
    Specified by:
    windowClosing in interface java.awt.event.WindowListener
    Overrides:
    windowClosing in class NarsFrame
    -
    Parameters:
    e - The ActionEvent
    +

    -

    -close

    +

    +nextOutput

    -private void close()
    +public void nextOutput(java.util.ArrayList lines)
    +
    To process the next chunk of output data +

    -
    +
    Specified by:
    nextOutput in interface OutputChannel
    -
    +
    Parameters:
    lines - The text lines to be displayed

    -

    -windowClosing

    +

    +updateTimer

    -public void windowClosing(java.awt.event.WindowEvent arg0)
    +public long updateTimer()
    +
    To get the timer value and then to reset it +

    -
    Specified by:
    windowClosing in interface java.awt.event.WindowListener
    Overrides:
    windowClosing in class NarsFrame
    +
    -
    + +
    Returns:
    The previous timer value
    diff --git a/nars-dist/javadoc/nars/gui/MessageDialog.html b/nars-dist/javadoc/nars/gui/MessageDialog.html index dc6f7cb6..bdfeae23 100644 --- a/nars-dist/javadoc/nars/gui/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/MessageDialog.html @@ -2,13 +2,13 @@ - + -MessageDialog (NARS Document) +MessageDialog - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="MessageDialog (NARS Document)"; + parent.document.title="MessageDialog"; } } @@ -255,14 +255,6 @@

    -private  void -close() - -
    -            - - -  void windowActivated(java.awt.event.WindowEvent arg0) @@ -443,20 +435,6 @@


    -

    -close

    -
    -private void close()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    windowActivated

    diff --git a/nars-dist/javadoc/nars/gui/NarsFrame.html b/nars-dist/javadoc/nars/gui/NarsFrame.html
    index d6fee1a7..99bb242a 100644
    --- a/nars-dist/javadoc/nars/gui/NarsFrame.html
    +++ b/nars-dist/javadoc/nars/gui/NarsFrame.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -NarsFrame (NARS Document)
    +NarsFrame
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="NarsFrame (NARS Document)";
    +        parent.document.title="NarsFrame";
         }
     }
     
    @@ -77,9 +77,9 @@
     
     
     
    -  SUMMARY: NESTED | FIELD | CONSTR | METHOD
    +  SUMMARY: NESTED | FIELD | CONSTR | METHOD
     
    -DETAIL: FIELD | CONSTR | METHOD
    +DETAIL: FIELD | CONSTR | METHOD
     
     
     
    @@ -178,62 +178,6 @@ 

    Field Summary - - -(package private) static java.awt.Color -DISPLAY_BACKGROUND_COLOR - -
    -          Color for the background of the text components that are read-only - - - -(package private) static java.awt.Color -MAIN_WINDOW_COLOR - -
    -          Color for the background of the main window - - - -(package private) static java.awt.Color -MULTIPLE_WINDOW_COLOR - -
    -          Color for the background of the windows with multiple instantiations - - - -(package private) static java.awt.Font -NarsFont - -
    -          Font for NARS GUI - - - -(package private) static java.awt.Color -SAVING_BACKGROUND_COLOR - -
    -          Color for the background of the text components that are being saved into a file - - - -(package private) static java.awt.Color -SINGLE_WINDOW_COLOR - -
    -          Color for the background of the windows with unique instantiation - - - -(package private) static java.lang.String -UNAVAILABLE - -
    -          Message for unimplemented functions -   @@ -263,28 +207,6 @@

      - - - - - - - - - - - - - -
    -Constructor Summary
    NarsFrame() - -
    -          Default constructor
    NarsFrame(java.lang.String title) - -
    -          Constructor with title and font setting
    @@ -407,130 +329,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -MAIN_WINDOW_COLOR

    -
    -static final java.awt.Color MAIN_WINDOW_COLOR
    -
    -
    Color for the background of the main window -

    -

    -
    -
    -
    - -

    -SINGLE_WINDOW_COLOR

    -
    -static final java.awt.Color SINGLE_WINDOW_COLOR
    -
    -
    Color for the background of the windows with unique instantiation -

    -

    -
    -
    -
    - -

    -MULTIPLE_WINDOW_COLOR

    -
    -static final java.awt.Color MULTIPLE_WINDOW_COLOR
    -
    -
    Color for the background of the windows with multiple instantiations -

    -

    -
    -
    -
    - -

    -DISPLAY_BACKGROUND_COLOR

    -
    -static final java.awt.Color DISPLAY_BACKGROUND_COLOR
    -
    -
    Color for the background of the text components that are read-only -

    -

    -
    -
    -
    - -

    -SAVING_BACKGROUND_COLOR

    -
    -static final java.awt.Color SAVING_BACKGROUND_COLOR
    -
    -
    Color for the background of the text components that are being saved into a file -

    -

    -
    -
    -
    - -

    -NarsFont

    -
    -static final java.awt.Font NarsFont
    -
    -
    Font for NARS GUI -

    -

    -
    -
    -
    - -

    -UNAVAILABLE

    -
    -static final java.lang.String UNAVAILABLE
    -
    -
    Message for unimplemented functions -

    -

    -
    See Also:
    Constant Field Values
    -
    - - - - - - - - -
    -Constructor Detail
    - -

    -NarsFrame

    -
    -NarsFrame()
    -
    -
    Default constructor -

    -

    -
    - -

    -NarsFrame

    -
    -NarsFrame(java.lang.String title)
    -
    -
    Constructor with title and font setting -

    -

    -
    Parameters:
    title - The title displayed by the window
    -
    - @@ -689,9 +487,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/gui/ParameterWindow.html b/nars-dist/javadoc/nars/gui/ParameterWindow.html index 606523e4..b6b5ec87 100644 --- a/nars-dist/javadoc/nars/gui/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/ParameterWindow.html @@ -2,13 +2,13 @@ - + -ParameterWindow (NARS Document) +ParameterWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ParameterWindow (NARS Document)"; + parent.document.title="ParameterWindow"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -176,79 +176,6 @@

    Field Summary - - -private  int -currentValue - -
    -          parameter values - - - -private  java.awt.Button -defaultButton - -
    -          Control buttons - - - -private  int -defaultValue - -
    -          parameter values - - - -private  java.awt.Button -hideButton - -
    -          Control buttons - - - -private  int -previousValue - -
    -          parameter values - - - -private  java.awt.Button -undoButton - -
    -          Control buttons - - - -private  java.awt.Scrollbar -valueBar - -
    -          Adjusting bar - - - -private  java.awt.Label -valueLabel - -
    -          Display label - - -  - - - - - - -
    Fields inherited from class nars.gui.NarsFrame
    DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
      @@ -278,23 +205,6 @@

      - - - - - - - - - - -
    -Constructor Summary
    ParameterWindow(java.lang.String title, - int dft) - -
    -          Constructor
    @@ -321,14 +231,6 @@

    -private  void -close() - -
    -            - - -  int value() @@ -410,133 +312,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -valueLabel

    -
    -private java.awt.Label valueLabel
    -
    -
    Display label -

    -

    -
    -
    -
    - -

    -hideButton

    -
    -private java.awt.Button hideButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -undoButton

    -
    -private java.awt.Button undoButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -defaultButton

    -
    -private java.awt.Button defaultButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -valueBar

    -
    -private java.awt.Scrollbar valueBar
    -
    -
    Adjusting bar -

    -

    -
    -
    -
    - -

    -defaultValue

    -
    -private int defaultValue
    -
    -
    parameter values -

    -

    -
    -
    -
    - -

    -previousValue

    -
    -private int previousValue
    -
    -
    parameter values -

    -

    -
    -
    -
    - -

    -currentValue

    -
    -private int currentValue
    -
    -
    parameter values -

    -

    -
    -
    - - - - - - - - -
    -Constructor Detail
    - -

    -ParameterWindow

    -
    -ParameterWindow(java.lang.String title,
    -                int dft)
    -
    -
    Constructor -

    -

    -
    Parameters:
    title - Parameter name
    dft - The default value of the parameter
    -
    - @@ -580,20 +355,6 @@


    -

    -close

    -
    -private void close()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    windowClosing

    @@ -674,9 +435,9 @@ 

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/gui/TermWindow.html b/nars-dist/javadoc/nars/gui/TermWindow.html index 41139476..5d8a7ac6 100644 --- a/nars-dist/javadoc/nars/gui/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/TermWindow.html @@ -2,13 +2,13 @@ - + -TermWindow (NARS Document) +TermWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="TermWindow (NARS Document)"; + parent.document.title="TermWindow"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -176,47 +176,6 @@

    Field Summary - - -private  java.awt.Button -hideButton - -
    -          Control buttons - - - -private  java.awt.Button -playButton - -
    -          Control buttons - - - -private  java.awt.TextField -termField - -
    -          Input field for term name - - - -private  java.awt.Label -termLabel - -
    -          Display label - - -  - - - - - - -
    Fields inherited from class nars.gui.NarsFrame
    DISPLAY_BACKGROUND_COLOR, MAIN_WINDOW_COLOR, MULTIPLE_WINDOW_COLOR, NarsFont, SAVING_BACKGROUND_COLOR, SINGLE_WINDOW_COLOR, UNAVAILABLE
      @@ -246,22 +205,6 @@

      - - - - - - - - - - -
    -Constructor Summary
    TermWindow() - -
    -          Constructor
    @@ -280,14 +223,6 @@

    -private  void -close() - -
    -            - - -  void windowClosing(java.awt.event.WindowEvent arg0) @@ -361,82 +296,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -termLabel

    -
    -private java.awt.Label termLabel
    -
    -
    Display label -

    -

    -
    -
    -
    - -

    -termField

    -
    -private java.awt.TextField termField
    -
    -
    Input field for term name -

    -

    -
    -
    -
    - -

    -playButton

    -
    -private java.awt.Button playButton
    -
    -
    Control buttons -

    -

    -
    -
    -
    - -

    -hideButton

    -
    -private java.awt.Button hideButton
    -
    -
    Control buttons -

    -

    -
    -
    - - - - - - - - -
    -Constructor Detail
    - -

    -TermWindow

    -
    -TermWindow()
    -
    -
    Constructor -

    -

    - @@ -463,20 +322,6 @@


    -

    -close

    -
    -private void close()
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    windowClosing

    @@ -541,9 +386,9 @@ 

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html index 1dba28ca..148dec72 100644 --- a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.gui.BagWindow (NARS Document) +Uses of Class nars.gui.BagWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.gui.BagWindow (NARS Document)"; + parent.document.title="Uses of Class nars.gui.BagWindow"; } } @@ -84,43 +84,7 @@

    Uses of Class
    nars.gui.BagWindow

    - - - - - - - - - -
    -Packages that use BagWindow
    nars.storageStorage management 
    -  -

    - - - - - -
    -Uses of BagWindow in nars.storage
    -  -

    - - - - - - - - - -
    Fields in nars.storage declared as BagWindow
    -protected  BagWindowBag.window - -
    -          display window
    -  +No usage of nars.gui.BagWindow


    diff --git a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html index ba42bc38..a9a52b17 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.gui.ConceptWindow (NARS Document) +Uses of Class nars.gui.ConceptWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.gui.ConceptWindow (NARS Document)"; + parent.document.title="Uses of Class nars.gui.ConceptWindow"; } } @@ -84,43 +84,7 @@

    Uses of Class
    nars.gui.ConceptWindow

    - - - - - - - - - -
    -Packages that use ConceptWindow
    nars.entityData entities that are independently stored 
    -  -

    - - - - - -
    -Uses of ConceptWindow in nars.entity
    -  -

    - - - - - - - - - -
    Fields in nars.entity declared as ConceptWindow
    -private  ConceptWindowConcept.window - -
    -          The display window
    -  +No usage of nars.gui.ConceptWindow


    diff --git a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html index 74dde228..fb31e9bd 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.gui.InferenceWindow (NARS Document) +Uses of Class nars.gui.InferenceWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.gui.InferenceWindow (NARS Document)"; + parent.document.title="Uses of Class nars.gui.InferenceWindow"; } } @@ -84,43 +84,7 @@

    Uses of Class
    nars.gui.InferenceWindow

    - - - - - - - - - -
    -Packages that use InferenceWindow
    nars.ioInput/output management 
    -  -

    - - - - - -
    -Uses of InferenceWindow in nars.io
    -  -

    - - - - - - - - - -
    Fields in nars.io declared as InferenceWindow
    -private static InferenceWindowRecord.window - -
    -          the display window
    -  +No usage of nars.gui.InferenceWindow


    diff --git a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html index 5f05b98e..0393823b 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.gui.InputWindow (NARS Document) +Uses of Class nars.gui.InputWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.gui.InputWindow (NARS Document)"; + parent.document.title="Uses of Class nars.gui.InputWindow"; } } @@ -95,8 +95,8 @@

    Graphical user interface of the system  -nars.io -Input/output management  +nars.main +Top-level classes of the system    @@ -117,7 +117,7 @@

    -static InputWindow + InputWindow MainWindow.inputWindow
    @@ -126,11 +126,11 @@

     

    - + +Uses of InputWindow in nars.main
    -Uses of InputWindow in nars.io
      @@ -138,15 +138,15 @@

    - + - + +           
    Fields in nars.io declared as InputWindowMethods in nars.main that return InputWindow
    -private  InputWindowExperienceIO.inputWindow + InputWindowReasoner.getInputWindow()
    -          Input experience from a window
      diff --git a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html index 11eaeb02..ad8cff39 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.gui.MainWindow (NARS Document) +Uses of Class nars.gui.MainWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.gui.MainWindow (NARS Document)"; + parent.document.title="Uses of Class nars.gui.MainWindow"; } } @@ -91,12 +91,41 @@

    Packages that use MainWindow +nars.container +Storage management  + + nars.main Top-level classes of the system   

    + + + + + +
    +Uses of MainWindow in nars.container
    +  +

    + + + + + + + + + +
    Methods in nars.container that return MainWindow
    + MainWindowMemory.getMainWindow() + +
    +           
    +  +

    @@ -109,15 +138,15 @@

    - + - + +           
    Fields in nars.main declared as MainWindowMethods in nars.main that return MainWindow
    -static MainWindowCenter.mainWindow + MainWindowReasoner.getMainWindow()
    -          The unique main window
      diff --git a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html index 8a537488..6d52e737 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.gui.MessageDialog (NARS Document) +Uses of Class nars.gui.MessageDialog - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.gui.MessageDialog (NARS Document)"; + parent.document.title="Uses of Class nars.gui.MessageDialog"; } } diff --git a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html index d5d3c733..0b462d04 100644 --- a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.gui.NarsFrame (NARS Document) +Uses of Class nars.gui.NarsFrame - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.gui.NarsFrame (NARS Document)"; + parent.document.title="Uses of Class nars.gui.NarsFrame"; } } diff --git a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html index d77819a4..86aea373 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.gui.ParameterWindow (NARS Document) +Uses of Class nars.gui.ParameterWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.gui.ParameterWindow (NARS Document)"; + parent.document.title="Uses of Class nars.gui.ParameterWindow"; } } @@ -113,7 +113,7 @@

    -static ParameterWindow + ParameterWindow MainWindow.forgetBW
    @@ -121,7 +121,7 @@

    -static ParameterWindow + ParameterWindow MainWindow.forgetCW
    @@ -129,7 +129,7 @@

    -static ParameterWindow + ParameterWindow MainWindow.forgetTW
    @@ -137,7 +137,7 @@

    -static ParameterWindow + ParameterWindow MainWindow.silentW
    diff --git a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html index ac02588f..40928a9d 100644 --- a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.gui.TermWindow (NARS Document) +Uses of Class nars.gui.TermWindow - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.gui.TermWindow (NARS Document)"; + parent.document.title="Uses of Class nars.gui.TermWindow"; } } @@ -113,7 +113,7 @@

    -static TermWindow + TermWindow MainWindow.conceptWin
    diff --git a/nars-dist/javadoc/nars/gui/package-frame.html b/nars-dist/javadoc/nars/gui/package-frame.html index b0affb94..ad24456d 100644 --- a/nars-dist/javadoc/nars/gui/package-frame.html +++ b/nars-dist/javadoc/nars/gui/package-frame.html @@ -2,13 +2,13 @@ - + -nars.gui (NARS Document) +nars.gui - + diff --git a/nars-dist/javadoc/nars/gui/package-summary.html b/nars-dist/javadoc/nars/gui/package-summary.html index eb00599c..fa10523b 100644 --- a/nars-dist/javadoc/nars/gui/package-summary.html +++ b/nars-dist/javadoc/nars/gui/package-summary.html @@ -2,13 +2,13 @@ - + -nars.gui (NARS Document) +nars.gui - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.gui (NARS Document)"; + parent.document.title="nars.gui"; } } diff --git a/nars-dist/javadoc/nars/gui/package-tree.html b/nars-dist/javadoc/nars/gui/package-tree.html index 9dbe81c5..cbe2bf33 100644 --- a/nars-dist/javadoc/nars/gui/package-tree.html +++ b/nars-dist/javadoc/nars/gui/package-tree.html @@ -2,13 +2,13 @@ - + -nars.gui Class Hierarchy (NARS Document) +nars.gui Class Hierarchy - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.gui Class Hierarchy (NARS Document)"; + parent.document.title="nars.gui Class Hierarchy"; } } @@ -106,10 +106,10 @@

  • nars.gui.NarsFrame (implements java.awt.event.WindowListener)
    • nars.gui.BagWindow (implements java.awt.event.ActionListener, java.awt.event.AdjustmentListener) -
    • nars.gui.ConceptWindow (implements java.awt.event.ActionListener, java.awt.event.ItemListener) +
    • nars.gui.ConceptWindow (implements java.awt.event.ActionListener)
    • nars.gui.InferenceWindow (implements java.awt.event.ActionListener, java.awt.event.ItemListener) -
    • nars.gui.InputWindow (implements java.awt.event.ActionListener) -
    • nars.gui.MainWindow (implements java.awt.event.ActionListener) +
    • nars.gui.InputWindow (implements java.awt.event.ActionListener, nars.io.InputChannel) +
    • nars.gui.MainWindow (implements java.awt.event.ActionListener, nars.io.OutputChannel)
    • nars.gui.ParameterWindow (implements java.awt.event.ActionListener, java.awt.event.AdjustmentListener)
    • nars.gui.TermWindow (implements java.awt.event.ActionListener)
    diff --git a/nars-dist/javadoc/nars/gui/package-use.html b/nars-dist/javadoc/nars/gui/package-use.html index 0abd677e..c59f30fb 100644 --- a/nars-dist/javadoc/nars/gui/package-use.html +++ b/nars-dist/javadoc/nars/gui/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package nars.gui (NARS Document) +Uses of Package nars.gui - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package nars.gui (NARS Document)"; + parent.document.title="Uses of Package nars.gui"; } } @@ -91,39 +91,31 @@

    Packages that use nars.gui -nars.entity -Data entities that are independently stored  +nars.container +Storage management  nars.gui Graphical user interface of the system  -nars.io -Input/output management  - - nars.main Top-level classes of the system  - -nars.storage -Storage management  -  

    - + +Classes in nars.gui used by nars.container - +          Main window of NARS GUI
    -Classes in nars.gui used by nars.entity
    ConceptWindow +MainWindow
    -          Window displaying the content of a Concept, such as beliefs, goals, and questions
      @@ -161,33 +153,18 @@

     

    - + - - - +Classes in nars.gui used by nars.main - -
    -Classes in nars.gui used by nars.io
    InferenceWindow - -
    -          Window displying inference log
    InputWindow +InputWindow
              Input window, accepting user tasks
    -  -

    - - - - -
    -Classes in nars.gui used by nars.main
    MainWindow @@ -197,21 +174,6 @@

     

    - - - - - - - - -
    -Classes in nars.gui used by nars.storage
    BagWindow - -
    -          Window display the priority distribution of items within a given bag
    -  -


    diff --git a/nars-dist/javadoc/nars/inference/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/BudgetFunctions.html index d97cebf8..2b58f6ee 100644 --- a/nars-dist/javadoc/nars/inference/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/BudgetFunctions.html @@ -2,13 +2,13 @@ - + -BudgetFunctions (NARS Document) +BudgetFunctions - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="BudgetFunctions (NARS Document)"; + parent.document.title="BudgetFunctions"; } } @@ -147,7 +147,8 @@

    static BudgetValue -backward(TruthValue truth) +backward(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, stronger case @@ -155,24 +156,17 @@

    static BudgetValue -backwardWeak(TruthValue truth) +backwardWeak(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, weaker case -private static BudgetValue -budgetInference(float qual, - int complexity) - -
    -          Common processing for all inference step - - - static BudgetValue -compoundBackward(Term content) +compoundBackward(Term content, + Memory memory)
              Backward inference with CompoundTerm conclusion, stronger case @@ -180,7 +174,8 @@

    static BudgetValue -compoundBackwardWeak(Term content) +compoundBackwardWeak(Term content, + Memory memory)
              Backward inference with CompoundTerm conclusion, weaker case @@ -188,8 +183,9 @@

    static BudgetValue -compoundForward(TruthValue truth, - Term content) +compoundForward(TruthValue truth, + Term content, + Memory memory)
              Forward inference with CompoundTerm conclusion @@ -215,14 +211,6 @@

    -(package private) static BudgetValue -forward(TruthValue truth) - -
    -          Forward inference result and adjustment - - - static void merge(BudgetValue baseValue, BudgetValue adjustValue) @@ -233,60 +221,19 @@

    static float -rankBelief(Judgment judg) +rankBelief(Sentence judg)
              Determine the rank of a judgment by its confidence and originality (stamp length) -(package private) static BudgetValue -revise(TruthValue tTruth, - TruthValue bTruth, - TruthValue truth, - boolean feedbackToLinks) - -
    -          Evaluate the quality of a revision, then de-prioritize the premises - - - -(package private) static BudgetValue -solutionEval(Sentence problem, - Judgment solution, - Task task) - -
    -          Evaluate the quality of a belief as a solution to a problem, then reward - the belief and de-prioritize the problem - - - -static BudgetValue -temporalIndCom(BudgetValue b1, - BudgetValue b2, - TruthValue t) - -
    -          Special treatment for temporal induction and comparison among recent event, no feedback - - - static float truthToQuality(TruthValue t)
              Determine the quality of a judgment by its truth value alone - - -(package private) static BudgetValue -update(Task task, - TruthValue bTruth) - -
    -          Update a belief -   @@ -352,10 +299,10 @@


    -

    +

    rankBelief

    -public static float rankBelief(Judgment judg)
    +public static float rankBelief(Sentence judg)
    Determine the rank of a judgment by its confidence and originality (stamp length)

    @@ -366,55 +313,6 @@


    -

    -solutionEval

    -
    -static BudgetValue solutionEval(Sentence problem,
    -                                Judgment solution,
    -                                Task task)
    -
    -
    Evaluate the quality of a belief as a solution to a problem, then reward - the belief and de-prioritize the problem -

    -

    -
    Parameters:
    problem - The problem (question or goal) to be solved
    solution - The belief as solution
    task - The task to be immediatedly processed, or null for continued process -
    Returns:
    The budget for the new task which is the belief activated, if necessary
    -
    -
    -
    - -

    -revise

    -
    -static BudgetValue revise(TruthValue tTruth,
    -                          TruthValue bTruth,
    -                          TruthValue truth,
    -                          boolean feedbackToLinks)
    -
    -
    Evaluate the quality of a revision, then de-prioritize the premises -

    -

    -
    Parameters:
    tTruth - The truth value of the judgment in the task
    bTruth - The truth value of the belief
    truth - The truth value of the conclusion of revision -
    Returns:
    The budget for the new task
    -
    -
    -
    - -

    -update

    -
    -static BudgetValue update(Task task,
    -                          TruthValue bTruth)
    -
    -
    Update a belief -

    -

    -
    Parameters:
    task - The task containing new belief
    bTruth - Truth value of the previous belief -
    Returns:
    Budget value of the updating task
    -
    -
    -
    -

    distributeAmongLinks

    @@ -478,120 +376,80 @@ 


    -

    -forward

    -
    -static BudgetValue forward(TruthValue truth)
    -
    -
    Forward inference result and adjustment -

    -

    -
    Parameters:
    truth - The truth value of the conclusion -
    Returns:
    The budget value of the conclusion
    -
    -
    -
    - -

    +

    backward

    -public static BudgetValue backward(TruthValue truth)
    +public static BudgetValue backward(TruthValue truth, + Memory memory)
    Backward inference result and adjustment, stronger case

    -
    Parameters:
    truth - The truth value of the belief deriving the conclusion +
    Parameters:
    truth - The truth value of the belief deriving the conclusion
    memory - Reference to the memory
    Returns:
    The budget value of the conclusion

    -

    +

    backwardWeak

    -public static BudgetValue backwardWeak(TruthValue truth)
    +public static BudgetValuebackwardWeak(TruthValue truth, + Memory memory)
    Backward inference result and adjustment, weaker case

    -
    Parameters:
    truth - The truth value of the belief deriving the conclusion +
    Parameters:
    truth - The truth value of the belief deriving the conclusion
    memory - Reference to the memory
    Returns:
    The budget value of the conclusion

    -

    +

    compoundForward

     public static BudgetValue compoundForward(TruthValue truth,
    -                                          Term content)
    + Term content, + Memory memory)
    Forward inference with CompoundTerm conclusion

    -
    Parameters:
    truth - The truth value of the conclusion
    content - The content of the conclusion +
    Parameters:
    truth - The truth value of the conclusion
    content - The content of the conclusion
    memory - Reference to the memory
    Returns:
    The budget of the conclusion

    -

    +

    compoundBackward

    -public static BudgetValue compoundBackward(Term content)
    +public static BudgetValuecompoundBackward(Term content, + Memory memory)
    Backward inference with CompoundTerm conclusion, stronger case

    -
    Parameters:
    content - The content of the conclusion +
    Parameters:
    content - The content of the conclusion
    memory - Reference to the memory
    Returns:
    The budget of the conclusion

    -

    +

    compoundBackwardWeak

    -public static BudgetValue compoundBackwardWeak(Term content)
    +public static BudgetValuecompoundBackwardWeak(Term content, + Memory memory)
    Backward inference with CompoundTerm conclusion, weaker case

    -
    Parameters:
    content - The content of the conclusion +
    Parameters:
    content - The content of the conclusion
    memory - Reference to the memory
    Returns:
    The budget of the conclusion
    -
    - -

    -budgetInference

    -
    -private static BudgetValue budgetInference(float qual,
    -                                           int complexity)
    -
    -
    Common processing for all inference step -

    -

    -
    Parameters:
    qual - Quality of the inference
    complexity - Syntactic complexity of the conclusion -
    Returns:
    Budget of the conclusion task
    -
    -
    -
    - -

    -temporalIndCom

    -
    -public static BudgetValue temporalIndCom(BudgetValue b1,
    -                                         BudgetValue b2,
    -                                         TruthValue t)
    -
    -
    Special treatment for temporal induction and comparison among recent event, no feedback -

    -

    -
    Parameters:
    b1 - Budget value of the first premise
    b2 - Budget value of the second premise
    t - Truth value of the conclusion -
    Returns:
    Budget value of the conclusion task
    -
    -

    diff --git a/nars-dist/javadoc/nars/inference/CompositionalRules.html b/nars-dist/javadoc/nars/inference/CompositionalRules.html index cc7d2d71..96b00bc3 100644 --- a/nars-dist/javadoc/nars/inference/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/CompositionalRules.html @@ -2,13 +2,13 @@ - + -CompositionalRules (NARS Document) +CompositionalRules - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CompositionalRules (NARS Document)"; + parent.document.title="CompositionalRules"; } } @@ -57,7 +57,7 @@ + NEXT CLASS + SUMMARY: NESTED | FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD
    @@ -137,90 +137,6 @@

    Method Summary - - -(package private) static void -anaVarDepOuter(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S> - - - -(package private) static void -composeCompound(Sentence taskSentence, - Judgment belief, - int index) - -
    -          { M>,

    M>} |- {<(S|P) ==> M>, <(S&P) ==> M>, <(S-P) ==> M>, <(P-S) ==> M>} - - - -private static void -decomposeCompound(CompoundTerm compound, - Term component, - Term term1, - int index, - boolean compoundTask) - -
    -          {<(S|P) ==> M>,

    M>} |- M> - - - -(package private) static void -decomposeStatement(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          {(||, S, P), P} |- S - {(&&, S, P), P} |- S - - - -private static Conjunction -introVarDep(Statement premise1, - Statement premise2, - int index) - -
    -          { S>, P>} |- (&&, <#x() --> S>, <#x() --> P>> - - - -(package private) static void -introVarDepInner(CompoundTerm compound, - Term component, - Term premise) - -
    -          Introduce a dependent variable in an inner-layer conjunction - - - -private static void -introVarDepOuter(Statement premise1, - Statement premise2, - int index) - -
    -          Introduce a dependent variable in an outer-layer conjunction - - - -private static void -processComposed(Statement statement, - Term subject, - Term predicate, - TruthValue truth) - -
    -          Finish composing compound term -   @@ -250,139 +166,6 @@

    public CompositionalRules()
    - - - - -

    - - - -
    -Method Detail
    - -

    -composeCompound

    -
    -static void composeCompound(Sentence taskSentence,
    -                            Judgment belief,
    -                            int index)
    -
    -
    { M>,

    M>} |- {<(S|P) ==> M>, <(S&P) ==> M>, <(S-P) ==> M>, <(P-S) ==> M>} -

    -

    -
    Parameters:
    taskSentence - The first premise
    belief - The second premise
    index - The location of the shared term
    -
    -
    -
    - -

    -processComposed

    -
    -private static void processComposed(Statement statement,
    -                                    Term subject,
    -                                    Term predicate,
    -                                    TruthValue truth)
    -
    -
    Finish composing compound term -

    -

    -
    Parameters:
    statement - Type of the content
    subject - Subject of content
    predicate - Predicate of content
    truth - TruthValue of the content
    -
    -
    -
    - -

    -decomposeCompound

    -
    -private static void decomposeCompound(CompoundTerm compound,
    -                                      Term component,
    -                                      Term term1,
    -                                      int index,
    -                                      boolean compoundTask)
    -
    -
    {<(S|P) ==> M>,

    M>} |- M> -

    -

    -
    Parameters:
    compound - The compound term to be decomposed
    component - The part of the compound to be removed
    term1 - The other term in the content
    index - The location of the shared term: 0 for subject, 1 for predicate
    compoundTask - Whether the compound comes from the task
    -
    -
    -
    - -

    -decomposeStatement

    -
    -static void decomposeStatement(CompoundTerm compound,
    -                               Term component,
    -                               boolean compoundTask)
    -
    -
    {(||, S, P), P} |- S - {(&&, S, P), P} |- S -

    -

    -
    Parameters:
    compound - The compound term to be decomposed
    component - The part of the compound to be removed
    compoundTask - Whether the compound comes from the task
    -
    -
    -
    - -

    -introVarDep

    -
    -private static Conjunction introVarDep(Statement premise1,
    -                                       Statement premise2,
    -                                       int index)
    -
    -
    { S>, P>} |- (&&, <#x() --> S>, <#x() --> P>> -

    -

    -
    Parameters:
    premise1 - The first premise P>
    premise2 - The second premise P>
    index - The location of the shared term: 0 for subject, 1 for predicate
    -
    -
    -
    - -

    -introVarDepOuter

    -
    -private static void introVarDepOuter(Statement premise1,
    -                                     Statement premise2,
    -                                     int index)
    -
    -
    Introduce a dependent variable in an outer-layer conjunction -

    -

    -
    Parameters:
    premise1 - The first premise S>
    premise2 - The second premise P>
    index - The location of the shared term: 0 for subject, 1 for predicate
    -
    -
    -
    - -

    -introVarDepInner

    -
    -static void introVarDepInner(CompoundTerm compound,
    -                             Term component,
    -                             Term premise)
    -
    -
    Introduce a dependent variable in an inner-layer conjunction -

    -

    -
    Parameters:
    compound - The compound containing the first premise
    component - The first premise S>
    premise - The second premise P>
    -
    -
    -
    - -

    -anaVarDepOuter

    -
    -static void anaVarDepOuter(CompoundTerm compound,
    -                           Term component,
    -                           boolean compoundTask)
    -
    -
    {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S> -

    -

    -
    Parameters:
    compound - The compound term to be decomposed
    component - The part of the compound to be removed
    compoundTask - Whether the compound comes from the task
    -
    -

    @@ -415,7 +198,7 @@

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -435,9 +218,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/inference/LocalRules.html b/nars-dist/javadoc/nars/inference/LocalRules.html new file mode 100644 index 00000000..4896ec8a --- /dev/null +++ b/nars-dist/javadoc/nars/inference/LocalRules.html @@ -0,0 +1,400 @@ + + + + + + + +LocalRules + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.inference +
    +Class LocalRules

    +
    +java.lang.Object
    +  extended by nars.inference.LocalRules
    +
    +
    +
    +
    public class LocalRules
    extends java.lang.Object
    +

  • + +

    +Directly process a task by a oldBelief, with only two Terms in both. + In matching, the new task is compared with all existing direct Tasks in that Concept, to carry out: +

    + revision: between judgments on non-overlapping evidence; + revision: between judgments; + satisfy: between a Sentence and a Question/Goal; + merge: between items of the same type and stamp; + conversion: between different inheritance relations. +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Constructor Summary
    LocalRules() + +
    +           
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +static voidmatch(Task task, + Sentence belief, + Memory memory) + +
    +          The task and belief have the same content
    +static voidmatchAsymSym(Sentence asym, + Sentence sym, + int figure, + Memory memory) + +
    +          Inheritance/Implication matches Similarity/Equivalence
    +static voidmatchReverse(Memory memory) + +
    +          The task and belief match reversely
    +static voidrevision(Sentence newBelief, + Sentence oldBelief, + boolean feedbackToLinks, + Memory memory) + +
    +          Belief revision
    +static floatsolutionQuality(Sentence problem, + Sentence solution) + +
    +          Evaluate the quality of the judgment as a solution to a problem
    +static voidtrySolution(Sentence problem, + Sentence belief, + Task task, + Memory memory) + +
    +          Check if a Sentence provide a better answer to a Question or Goal
    + + + + + + + +
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +LocalRules

    +
    +public LocalRules()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +match

    +
    +public static void match(Task task,
    +                         Sentence belief,
    +                         Memory memory)
    +
    +
    The task and belief have the same content +

    + called in RuleTables.reason +

    +

    +
    Parameters:
    task - The task
    belief - The belief
    memory - Reference to the memory
    +
    +
    +
    + +

    +revision

    +
    +public static void revision(Sentence newBelief,
    +                            Sentence oldBelief,
    +                            boolean feedbackToLinks,
    +                            Memory memory)
    +
    +
    Belief revision +

    + called from Concept.reviseTable and match +

    +

    +
    Parameters:
    newBelief - The new belief in task
    oldBelief - The previous belief with the same content
    feedbackToLinks - Whether to send feedback to the links
    memory - Reference to the memory
    +
    +
    +
    + +

    +trySolution

    +
    +public static void trySolution(Sentence problem,
    +                               Sentence belief,
    +                               Task task,
    +                               Memory memory)
    +
    +
    Check if a Sentence provide a better answer to a Question or Goal +

    +

    +
    Parameters:
    problem - The Goal or Question to be answered
    belief - The proposed answer
    task - The task to be processed
    memory - Reference to the memory
    +
    +
    +
    + +

    +solutionQuality

    +
    +public static float solutionQuality(Sentence problem,
    +                                    Sentence solution)
    +
    +
    Evaluate the quality of the judgment as a solution to a problem +

    +

    +
    Parameters:
    problem - A goal or question
    solution - The solution to be evaluated +
    Returns:
    The quality of the judgment as the solution
    +
    +
    +
    + +

    +matchReverse

    +
    +public static void matchReverse(Memory memory)
    +
    +
    The task and belief match reversely +

    +

    +
    Parameters:
    memory - Reference to the memory
    +
    +
    +
    + +

    +matchAsymSym

    +
    +public static void matchAsymSym(Sentence asym,
    +                                Sentence sym,
    +                                int figure,
    +                                Memory memory)
    +
    +
    Inheritance/Implication matches Similarity/Equivalence +

    +

    +
    Parameters:
    asym - A Inheritance/Implication sentence
    sym - A Similarity/Equivalence sentence
    figure - location of the shared term
    memory - Reference to the memory
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/inference/RuleTables.html b/nars-dist/javadoc/nars/inference/RuleTables.html index f3341129..22cdaba7 100644 --- a/nars-dist/javadoc/nars/inference/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/RuleTables.html @@ -2,13 +2,13 @@ - + -RuleTables (NARS Document) +RuleTables - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="RuleTables (NARS Document)"; + parent.document.title="RuleTables"; } } @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -98,7 +98,7 @@


    -
    public final class RuleTables
    extends java.lang.Object
    +
    public class RuleTables
    extends java.lang.Object

    @@ -138,134 +138,19 @@

    -private static void -asymmetricAsymmetric(Sentence sentence, - Judgment belief, - int figure) - -
    -          Syllogistic rules whose both premises are on the same asymmetric relation - - - -private static void -asymmetricSymmetric(Sentence asym, - Sentence sym, - int figure) - -
    -          Syllogistic rules whose first premise is on an asymmetric relation, and the - second on a symmetric relation - - - -private static void -componentAndStatement(CompoundTerm compound, - short index, - Statement statement, - short side) - -
    -          Inference between a component term (of the current term) and a statement - - - -private static void -compoundAndCompound(CompoundTerm taskTerm, - CompoundTerm beliefTerm) - -
    -          Inference between two compound terms - - - -private static void -compoundAndSelf(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          Inference between a compound term and a component of it - - - -private static void -compoundAndStatement(CompoundTerm compound, - short index, - Statement statement, - short side, - Term beliefTerm) - -
    -          Inference between a compound term and a statement - - - -private static void -conditionalDedIndWithVar(Implication conditional, - short index, - Statement statement, - short side) - -
    -          Conditional deduction or induction, with variable unification - - - -private static void -detachmentWithVar(Sentence originalMainSentence, - Sentence subSentence, - int index) - -
    -          The detachment rule, with variable unification - - - -private static int -indexToFigure(TermLink link1, - TermLink link2) - -
    -          Decide the figure of syllogism according to the locations of the common - term in the premises - - - static void -reason(TaskLink tLink, - TermLink bLink) +reason(TaskLink tLink, + TermLink bLink, + Memory memory)
              Entry point of the inference engine -private static void -syllogisms(TaskLink tLink, - TermLink bLink, - Term taskTerm, - Term beliefTerm) - -
    -          Meta-table of syllogistic rules, indexed by the content classes of the - taskSentence and the belief - - - -private static void -symmetricSymmetric(Judgment belief, - Sentence taskSentence, - int figure) - -
    -          Syllogistic rules whose both premises are on the same symmetric relation - - - static void -transformTask(Task task, - TaskLink tLink) +transformTask(TaskLink tLink, + Memory memory)
              The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation @@ -310,202 +195,31 @@

    -

    +

    reason

     public static void reason(TaskLink tLink,
    -                          TermLink bLink)
    + TermLink bLink, + Memory memory)
    Entry point of the inference engine

    -
    Parameters:
    tLink - The selected TaskLink, which will provide a task
    bLink - The selected TermLink, which may provide a belief
    -
    -
    -
    - -

    -syllogisms

    -
    -private static void syllogisms(TaskLink tLink,
    -                               TermLink bLink,
    -                               Term taskTerm,
    -                               Term beliefTerm)
    -
    -
    Meta-table of syllogistic rules, indexed by the content classes of the - taskSentence and the belief -

    -

    -
    Parameters:
    tLink - The link to task
    bLink - The link to belief
    taskTerm - The content of task
    beliefTerm - The content of belief
    -
    -
    -
    - -

    -indexToFigure

    -
    -private static int indexToFigure(TermLink link1,
    -                                 TermLink link2)
    -
    -
    Decide the figure of syllogism according to the locations of the common - term in the premises -

    -

    -
    Parameters:
    link1 - The link to the first premise
    link2 - The link to the second premise -
    Returns:
    The figure of the syllogism, one of the four: 11, 12, 21, or 22
    -
    -
    -
    - -

    -asymmetricAsymmetric

    -
    -private static void asymmetricAsymmetric(Sentence sentence,
    -                                         Judgment belief,
    -                                         int figure)
    -
    -
    Syllogistic rules whose both premises are on the same asymmetric relation -

    -

    -
    Parameters:
    sentence - The taskSentence in the task
    belief - The judgment in the belief
    figure - The location of the shared term
    -
    -
    -
    - -

    -asymmetricSymmetric

    -
    -private static void asymmetricSymmetric(Sentence asym,
    -                                        Sentence sym,
    -                                        int figure)
    -
    -
    Syllogistic rules whose first premise is on an asymmetric relation, and the - second on a symmetric relation -

    -

    -
    Parameters:
    asym - The asymmetric premise
    sym - The symmetric premise
    figure - The location of the shared term
    -
    -
    -
    - -

    -symmetricSymmetric

    -
    -private static void symmetricSymmetric(Judgment belief,
    -                                       Sentence taskSentence,
    -                                       int figure)
    -
    -
    Syllogistic rules whose both premises are on the same symmetric relation -

    -

    -
    Parameters:
    belief - The premise that comes from a belief
    taskSentence - The premise that comes from a task
    figure - The location of the shared term
    -
    -
    -
    - -

    -detachmentWithVar

    -
    -private static void detachmentWithVar(Sentence originalMainSentence,
    -                                      Sentence subSentence,
    -                                      int index)
    -
    -
    The detachment rule, with variable unification -

    -

    -
    Parameters:
    originalMainSentence - The premise that is an Implication or Equivalence
    subSentence - The premise that is the subject or predicate of the first one
    index - The location of the second premise in the first
    -
    -
    -
    - -

    -conditionalDedIndWithVar

    -
    -private static void conditionalDedIndWithVar(Implication conditional,
    -                                             short index,
    -                                             Statement statement,
    -                                             short side)
    -
    -
    Conditional deduction or induction, with variable unification -

    -

    -
    Parameters:
    conditional - The premise that is an Implication with a Conjunction as condition
    index - The location of the shared term in the condition
    statement - The second premise that is a statement
    side - The location of the shared term in the statement
    -
    -
    -
    - -

    -compoundAndSelf

    -
    -private static void compoundAndSelf(CompoundTerm compound,
    -                                    Term component,
    -                                    boolean compoundTask)
    -
    -
    Inference between a compound term and a component of it -

    -

    -
    Parameters:
    compound - The compound term
    component - The component term
    compoundTask - Whether the compound comes from the task
    -
    -
    -
    - -

    -compoundAndCompound

    -
    -private static void compoundAndCompound(CompoundTerm taskTerm,
    -                                        CompoundTerm beliefTerm)
    -
    -
    Inference between two compound terms -

    -

    -
    Parameters:
    taskTerm - The compound from the task
    beliefTerm - The compound from the belief
    -
    -
    -
    - -

    -compoundAndStatement

    -
    -private static void compoundAndStatement(CompoundTerm compound,
    -                                         short index,
    -                                         Statement statement,
    -                                         short side,
    -                                         Term beliefTerm)
    -
    -
    Inference between a compound term and a statement -

    -

    -
    Parameters:
    compound - The compound term
    index - The location of the current term in the compound
    statement - The statement
    side - The location of the current term in the statement
    beliefTerm - The content of the belief
    -
    -
    -
    - -

    -componentAndStatement

    -
    -private static void componentAndStatement(CompoundTerm compound,
    -                                          short index,
    -                                          Statement statement,
    -                                          short side)
    -
    -
    Inference between a component term (of the current term) and a statement -

    -

    -
    Parameters:
    compound - The compound term
    index - The location of the current term in the compound
    statement - The statement
    side - The location of the current term in the statement
    +
    Parameters:
    tLink - The selected TaskLink, which will provide a task
    bLink - The selected TermLink, which may provide a belief
    memory - Reference to the memory

    -

    +

    transformTask

    -public static void transformTask(Task task,
    -                                 TaskLink tLink)
    +public static void transformTask(TaskLink tLink, + Memory memory)
    The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation

    -
    Parameters:
    task - The task
    tLink - The task link
    +
    Parameters:
    tLink - The task link
    memory - Reference to the memory
    @@ -539,7 +253,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/inference/StructuralRules.html b/nars-dist/javadoc/nars/inference/StructuralRules.html index e89d9061..c59ecd5d 100644 --- a/nars-dist/javadoc/nars/inference/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/StructuralRules.html @@ -2,13 +2,13 @@ - + -StructuralRules (NARS Document) +StructuralRules - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="StructuralRules (NARS Document)"; + parent.document.title="StructuralRules"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -110,24 +110,7 @@


    - - - - - - - - - - -
    -Field Summary
    -private static floatRELIANCE - -
    -           
    @@ -154,114 +137,13 @@

    -(package private) static void -contraposition(Statement statement) - -
    -          { B>, A@(--, A)} |- <(--, B) ==> (--, A)> - - - -(package private) static void -structuralCompose1(CompoundTerm compound, - short index, - Statement statement) - -
    -          { P>, P@(P&Q)} |- (P&Q)> - - - -(package private) static void -structuralCompose2(CompoundTerm compound, - short index, - Statement statement, - short side) - -
    -          { P>, S@(S&T)} |- <(S&T) --> (P&T)> - { P>, S@(M-S)} |- <(M-P) --> (M-S)> - - - -(package private) static void -structuralCompound(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          {(&&, A, B), A@(&&, A, B)} |- A - {(||, A, B), A@(||, A, B)} |- A - - - -(package private) static void -structuralDecompose1(CompoundTerm compound, - short index, - Statement statement) - -
    -          {<(S&T) --> P>, S@(S&T)} |- P> - - - -(package private) static void -structuralDecompose2(Statement statement) - -
    -          {<(S&T) --> (P&T)>, S@(S&T)} |- P> - - - -private static void -structuralStatement(Term subject, - Term predicate, - TruthValue truth) - -
    -          Common final operations of the above two methods - - - -private static boolean -switchOrder(CompoundTerm compound, - short index) - -
    -          List the cases where the direction of inheritance is revised in conclusion - - - static void -transformNegation(Term content) +transformNegation(Term content, + Memory memory)
              {A, A@(--, A)} |- (--, A) - - -(package private) static void -transformProductImage(Inheritance inh, - CompoundTerm oldContent, - short[] indices, - Task task) - -
    -          Equivalent transformation between products and images - {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> - { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> - { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)> - - - -(package private) static void -transformSetRelation(CompoundTerm compound, - Statement statement, - short side) - -
    -          { {P}>} |- {P}> -   @@ -275,25 +157,6 @@

     

    - - - -

    - - - -
    -Field Detail
    - -

    -RELIANCE

    -
    -private static final float RELIANCE
    -
    -
    -
    See Also:
    Constant Field Values
    -
    - @@ -321,168 +184,16 @@

    -

    -structuralCompose2

    -
    -static void structuralCompose2(CompoundTerm compound,
    -                               short index,
    -                               Statement statement,
    -                               short side)
    -
    -
    { P>, S@(S&T)} |- <(S&T) --> (P&T)> - { P>, S@(M-S)} |- <(M-P) --> (M-S)> -

    -

    -
    Parameters:
    compound - The compound term
    index - The location of the indicated term in the compound
    statement - The premise
    side - The location of the indicated term in the premise
    -
    -
    -
    - -

    -structuralDecompose2

    -
    -static void structuralDecompose2(Statement statement)
    -
    -
    {<(S&T) --> (P&T)>, S@(S&T)} |- P> -

    -

    -
    Parameters:
    statement - The premise
    -
    -
    -
    - -

    -switchOrder

    -
    -private static boolean switchOrder(CompoundTerm compound,
    -                                   short index)
    -
    -
    List the cases where the direction of inheritance is revised in conclusion -

    -

    -
    Parameters:
    compound - The compound term
    index - The location of focus in the compound -
    Returns:
    Whether the direction of inheritance should be revised
    -
    -
    -
    - -

    -structuralCompose1

    -
    -static void structuralCompose1(CompoundTerm compound,
    -                               short index,
    -                               Statement statement)
    -
    -
    { P>, P@(P&Q)} |- (P&Q)> -

    -

    -
    Parameters:
    compound - The compound term
    index - The location of the indicated term in the compound
    statement - The premise
    -
    -
    -
    - -

    -structuralDecompose1

    -
    -static void structuralDecompose1(CompoundTerm compound,
    -                                 short index,
    -                                 Statement statement)
    -
    -
    {<(S&T) --> P>, S@(S&T)} |- P> -

    -

    -
    Parameters:
    compound - The compound term
    index - The location of the indicated term in the compound
    statement - The premise
    -
    -
    -
    - -

    -structuralStatement

    -
    -private static void structuralStatement(Term subject,
    -                                        Term predicate,
    -                                        TruthValue truth)
    -
    -
    Common final operations of the above two methods -

    -

    -
    Parameters:
    subject - The subject of the new task
    predicate - The predicate of the new task
    truth - The truth value of the new task
    -
    -
    -
    - -

    -transformSetRelation

    -
    -static void transformSetRelation(CompoundTerm compound,
    -                                 Statement statement,
    -                                 short side)
    -
    -
    { {P}>} |- {P}> -

    -

    -
    Parameters:
    compound - The set compound
    statement - The premise
    side - The location of the indicated term in the premise
    -
    -
    -
    - -

    -transformProductImage

    -
    -static void transformProductImage(Inheritance inh,
    -                                  CompoundTerm oldContent,
    -                                  short[] indices,
    -                                  Task task)
    -
    -
    Equivalent transformation between products and images - {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> - { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> - { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)> -

    -

    -
    Parameters:
    inh - An Inheritance statement
    oldContent - The whole content
    indices - The indices of the TaskLink
    task - The task
    -
    -
    -
    - -

    -structuralCompound

    -
    -static void structuralCompound(CompoundTerm compound,
    -                               Term component,
    -                               boolean compoundTask)
    -
    -
    {(&&, A, B), A@(&&, A, B)} |- A - {(||, A, B), A@(||, A, B)} |- A -

    -

    -
    Parameters:
    compound - The premise
    component - The recognized component in the premise
    compoundTask - Whether the compound comes from the task
    -
    -
    -
    - -

    +

    transformNegation

    -public static void transformNegation(Term content)
    +public static void transformNegation(Term content, + Memory memory)
    {A, A@(--, A)} |- (--, A)

    -
    Parameters:
    content - The premise
    -
    -
    -
    - -

    -contraposition

    -
    -static void contraposition(Statement statement)
    -
    -
    { B>, A@(--, A)} |- <(--, B) ==> (--, A)> -

    -

    -
    Parameters:
    statement - The premise
    +
    Parameters:
    content - The premise
    memory - Reference to the memory
    @@ -537,9 +248,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/inference/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/SyllogisticRules.html index 09c21a36..bf002bc8 100644 --- a/nars-dist/javadoc/nars/inference/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/SyllogisticRules.html @@ -2,13 +2,13 @@ - + -SyllogisticRules (NARS Document) +SyllogisticRules - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="SyllogisticRules (NARS Document)"; + parent.document.title="SyllogisticRules"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -134,130 +134,6 @@

    Method Summary - - -(package private) static void -abdIndCom(Term term1, - Term term2, - Sentence taskSentence, - Judgment belief, - int figure) - -
    -          { S>, P>} |- { P>,

    S>, P>} - - - -(package private) static void -analogy(Term term1, - Term term2, - Sentence asym, - Sentence sym, - int figure) - -
    -          { P>, P>} |- P> - - - -(package private) static boolean -conditionalAbd(Term cond1, - Term cond2, - Statement st1, - Statement st2) - -
    -          {<(&&, S2, S3) ==> P>, <(&&, S1, S3) ==> P>} |- S2> - - - -(package private) static void -conditionalDedInd(Implication premise1, - short index, - Term premise2, - int side) - -
    -          {<(&&, S1, S2, S3) ==> P>, S1} |- <(&&, S2, S3) ==> P> - {<(&&, S2, S3) ==> P>, S2>} |- <(&&, S1, S3) ==> P> - {<(&&, S1, S3) ==> P>, S2>} |- <(&&, S2, S3) ==> P> - - - -(package private) static void -dedExe(Term term1, - Term term2, - Sentence sentence, - Judgment belief) - -
    -          { M>, P>} |- { P>,

    S>} - - - -(package private) static void -detachment(Sentence mainSentence, - Sentence subSentence, - int side) - -
    -          {< S> ==> P>>, S>} |- P> - {< S> ==> P>>, P>} |- S> - - - -private static Statement -introVarInd(Sentence sentence1, - Sentence sentence2, - int figure, - boolean isImplication) - -
    -          { S>, P>} |- <<#x --> S> ==> <#x --> P>> - { S>, P>} |- <<#x --> S> <=> <#x --> P>> - - - -(package private) static void -introVarIndInner(Statement premise1, - Statement premise2, - CompoundTerm oldCompound) - -
    -          { S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> - { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>) - - - -(package private) static void -resemblance(Term term1, - Term term2, - Judgment belief, - Sentence sentence, - int figure) - -
    -          { M>, P>} |- P> - - - -static void -temporalIndCom(Task task1, - Task task2) - -
    -          { S>, P>} |- { P>,

    S>, P>} - - - -static int -temporalSyllogism(int r1, - int r2, - int figure) - -
    -          Temporal inference in syllogism, with figure -   @@ -287,196 +163,6 @@

    public SyllogisticRules()
    - - - - -

    - - - -
    -Method Detail
    - -

    -dedExe

    -
    -static void dedExe(Term term1,
    -                   Term term2,
    -                   Sentence sentence,
    -                   Judgment belief)
    -
    -
    { M>, P>} |- { P>,

    S>} -

    -

    -
    Parameters:
    term1 - Subject of the first new task
    term2 - Predicate of the first new task
    sentence - The first premise
    belief - The second premise
    -
    -
    -
    - -

    -abdIndCom

    -
    -static void abdIndCom(Term term1,
    -                      Term term2,
    -                      Sentence taskSentence,
    -                      Judgment belief,
    -                      int figure)
    -
    -
    { S>, P>} |- { P>,

    S>, P>} -

    -

    -
    Parameters:
    term1 - Subject of the first new task
    term2 - Predicate of the first new task
    taskSentence - The first premise
    belief - The second premise
    figure - Locations of the shared term in premises
    -
    -
    -
    - -

    -analogy

    -
    -static void analogy(Term term1,
    -                    Term term2,
    -                    Sentence asym,
    -                    Sentence sym,
    -                    int figure)
    -
    -
    { P>, P>} |- P> -

    -

    -
    Parameters:
    term1 - Subject of the new task
    term2 - Predicate of the new task
    asym - The asymmetric premise
    sym - The symmetric premise
    figure - Locations of the shared term in premises
    -
    -
    -
    - -

    -resemblance

    -
    -static void resemblance(Term term1,
    -                        Term term2,
    -                        Judgment belief,
    -                        Sentence sentence,
    -                        int figure)
    -
    -
    { M>, P>} |- P> -

    -

    -
    Parameters:
    term1 - Subject of the new task
    term2 - Predicate of the new task
    belief - The first premise
    sentence - The second premise
    figure - Locations of the shared term in premises
    -
    -
    -
    - -

    -detachment

    -
    -static void detachment(Sentence mainSentence,
    -                       Sentence subSentence,
    -                       int side)
    -
    -
    {< S> ==> P>>, S>} |- P> - {< S> ==> P>>, P>} |- S> -

    -

    -
    Parameters:
    mainSentence - The implication/equivalence premise
    subSentence - The premise on part of s1
    side - The location of s2 in s1
    -
    -
    -
    - -

    -conditionalDedInd

    -
    -static void conditionalDedInd(Implication premise1,
    -                              short index,
    -                              Term premise2,
    -                              int side)
    -
    -
    {<(&&, S1, S2, S3) ==> P>, S1} |- <(&&, S2, S3) ==> P> - {<(&&, S2, S3) ==> P>, S2>} |- <(&&, S1, S3) ==> P> - {<(&&, S1, S3) ==> P>, S2>} |- <(&&, S2, S3) ==> P> -

    -

    -
    Parameters:
    premise1 - The conditional premise
    index - The location of the shared term in the condition of premise1
    premise2 - The premise which, or part of which, appears in the condition of premise1
    side - The location of the shared term in premise2: 0 for subject, 1 for predicate, -1 for the whole term
    -
    -
    -
    - -

    -conditionalAbd

    -
    -static boolean conditionalAbd(Term cond1,
    -                              Term cond2,
    -                              Statement st1,
    -                              Statement st2)
    -
    -
    {<(&&, S2, S3) ==> P>, <(&&, S1, S3) ==> P>} |- S2> -

    -

    -
    Parameters:
    cond1 - The condition of the first premise
    cond2 - The condition of the second premise
    st1 - The first premise
    st2 - The second premise -
    Returns:
    Whether there are derived tasks
    -
    -
    -
    - -

    -introVarInd

    -
    -private static Statement introVarInd(Sentence sentence1,
    -                                     Sentence sentence2,
    -                                     int figure,
    -                                     boolean isImplication)
    -
    -
    { S>, P>} |- <<#x --> S> ==> <#x --> P>> - { S>, P>} |- <<#x --> S> <=> <#x --> P>> -

    -

    -
    Parameters:
    sentence1 - The first premise S>
    sentence2 - The second premise P>
    figure - The figure indicating the location of the shared term
    isImplication - The conclusion is Implication, not Equivalence
    -
    -
    -
    - -

    -introVarIndInner

    -
    -static void introVarIndInner(Statement premise1,
    -                             Statement premise2,
    -                             CompoundTerm oldCompound)
    -
    -
    { S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> - { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>) -

    -

    -
    Parameters:
    premise1 - The first premise directly used in internal induction, S>
    premise2 - The component to be used as a premise in internal induction, P>
    oldCompound - The whole content of the first premise, Implication or Conjunction
    -
    -
    -
    - -

    -temporalIndCom

    -
    -public static void temporalIndCom(Task task1,
    -                                  Task task2)
    -
    -
    { S>, P>} |- { P>,

    S>, P>} -

    -

    -
    Parameters:
    task1 - The first premise
    task2 - The second premise
    -
    -
    -
    - -

    -temporalSyllogism

    -
    -public static int temporalSyllogism(int r1,
    -                                    int r2,
    -                                    int figure)
    -
    -
    Temporal inference in syllogism, with figure -

    -

    -
    Parameters:
    r1 - The first premise, containing the subject of the conclusion
    r2 - The second premise, containing the predicate of the conclusion
    figure - The location of the shared term -
    Returns:
    The temporal order in the conclusion
    -
    -

    @@ -529,9 +215,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/inference/TruthFunctions.html b/nars-dist/javadoc/nars/inference/TruthFunctions.html index 94e69d0b..c7f2f29e 100644 --- a/nars-dist/javadoc/nars/inference/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/TruthFunctions.html @@ -2,13 +2,13 @@ - + -TruthFunctions (NARS Document) +TruthFunctions - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="TruthFunctions (NARS Document)"; + parent.document.title="TruthFunctions"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -135,230 +135,6 @@

    Method Summary - - -(package private) static TruthValue -abduction(TruthValue v1, - float reliance) - -
    -          {M,

    M>} |- P - - - -(package private) static TruthValue -abduction(TruthValue v1, - TruthValue v2) - -
    -          { M>,

    M>} |- P> - - - -(package private) static TruthValue -analogy(TruthValue v1, - TruthValue v2) - -
    -          { M>, P>} |- P> - - - -(package private) static TruthValue -anonymousAnalogy(TruthValue v1, - TruthValue v2) - -
    -          {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P> - - - -(package private) static TruthValue -comparison(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- P> - - - -(package private) static TruthValue -contraposition(TruthValue v1) - -
    -          { B>} |- <(--, B) ==> (--, A)> - - - -(package private) static TruthValue -conversion(TruthValue v1) - -
    -          { B>} |- A> - - - -(package private) static TruthValue -deduction(TruthValue v1, - float reliance) - -
    -          {M, P>} |- P - - - -(package private) static TruthValue -deduction(TruthValue v1, - TruthValue v2) - -
    -          { M>, P>} |- P> - - - -(package private) static TruthValue -desireDed(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined] - - - -(package private) static TruthValue -desireInd(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined] - - - -(package private) static TruthValue -desireStrong(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined] - - - -(package private) static TruthValue -desireWeak(TruthValue v1, - TruthValue v2) - -
    -          A function specially designed for desire value [To be refined] - - - -(package private) static TruthValue -difference(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- (S-P)> - - - -(package private) static TruthValue -exemplification(TruthValue v1, - TruthValue v2) - -
    -          { S>,

    M>} |- P> - - - -(package private) static TruthValue -induction(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- P> - - - -(package private) static TruthValue -intersection(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- (S&P)> - - - -(package private) static TruthValue -negation(TruthValue v1) - -
    -          {A} |- (--A) - - - -(package private) static TruthValue -reduceConjunction(TruthValue v1, - TruthValue v2) - -
    -          {(--, (&&, A, B)), B} |- (--, A) - - - -(package private) static TruthValue -reduceConjunctionNeg(TruthValue v1, - TruthValue v2) - -
    -          {(--, (&&, A, (--, B))), (--, B)} |- (--, A) - - - -(package private) static TruthValue -reduceDisjunction(TruthValue v1, - TruthValue v2) - -
    -          {(||, A, B), (--, B)} |- A - - - -(package private) static TruthValue -resemblance(TruthValue v1, - TruthValue v2) - -
    -          { M>, P>} |- P> - - - -(package private) static TruthValue -revision(TruthValue v1, - TruthValue v2) - -
    -          { P>, P>} |- P> - - - -static TruthValue -temporalCasting(TruthValue v1, - long t1, - long t2, - long t) - -
    -          Casting truth-value v1 from moment t1 to moment t2, with respect to time t - - - -(package private) static TruthValue -union(TruthValue v1, - TruthValue v2) - -
    -          { S>, P>} |- (S|P)> -   @@ -397,389 +173,6 @@

    public TruthFunctions()
    - - - - -

    - - - -
    -Method Detail
    - -

    -conversion

    -
    -static TruthValue conversion(TruthValue v1)
    -
    -
    { B>} |- A> -

    -

    -
    Parameters:
    v1 - Truth value of the premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -negation

    -
    -static TruthValue negation(TruthValue v1)
    -
    -
    {A} |- (--A) -

    -

    -
    Parameters:
    v1 - Truth value of the premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -contraposition

    -
    -static TruthValue contraposition(TruthValue v1)
    -
    -
    { B>} |- <(--, B) ==> (--, A)> -

    -

    -
    Parameters:
    v1 - Truth value of the premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -revision

    -
    -static TruthValue revision(TruthValue v1,
    -                           TruthValue v2)
    -
    -
    { P>, P>} |- P> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -temporalCasting

    -
    -public static TruthValue temporalCasting(TruthValue v1,
    -                                         long t1,
    -                                         long t2,
    -                                         long t)
    -
    -
    Casting truth-value v1 from moment t1 to moment t2, with respect to time t -

    -

    -
    Parameters:
    v1 - Truth value of the premise to be casted
    t1 - Source time
    t2 - Target time
    t - Reference time -
    Returns:
    Truth value after temporal discount
    -
    -
    -
    - -

    -deduction

    -
    -static TruthValue deduction(TruthValue v1,
    -                            TruthValue v2)
    -
    -
    { M>, P>} |- P> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -deduction

    -
    -static TruthValue deduction(TruthValue v1,
    -                            float reliance)
    -
    -
    {M, P>} |- P -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    reliance - Confidence of the second (analytical) premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -analogy

    -
    -static TruthValue analogy(TruthValue v1,
    -                          TruthValue v2)
    -
    -
    { M>, P>} |- P> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -resemblance

    -
    -static TruthValue resemblance(TruthValue v1,
    -                              TruthValue v2)
    -
    -
    { M>, P>} |- P> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -abduction

    -
    -static TruthValue abduction(TruthValue v1,
    -                            TruthValue v2)
    -
    -
    { M>,

    M>} |- P> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -abduction

    -
    -static TruthValue abduction(TruthValue v1,
    -                            float reliance)
    -
    -
    {M,

    M>} |- P -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    reliance - Confidence of the second (analytical) premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -induction

    -
    -static TruthValue induction(TruthValue v1,
    -                            TruthValue v2)
    -
    -
    { S>, P>} |- P> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -exemplification

    -
    -static TruthValue exemplification(TruthValue v1,
    -                                  TruthValue v2)
    -
    -
    { S>,

    M>} |- P> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -comparison

    -
    -static TruthValue comparison(TruthValue v1,
    -                             TruthValue v2)
    -
    -
    { S>, P>} |- P> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -desireStrong

    -
    -static TruthValue desireStrong(TruthValue v1,
    -                               TruthValue v2)
    -
    -
    A function specially designed for desire value [To be refined] -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -desireWeak

    -
    -static TruthValue desireWeak(TruthValue v1,
    -                             TruthValue v2)
    -
    -
    A function specially designed for desire value [To be refined] -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -desireDed

    -
    -static TruthValue desireDed(TruthValue v1,
    -                            TruthValue v2)
    -
    -
    A function specially designed for desire value [To be refined] -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -desireInd

    -
    -static TruthValue desireInd(TruthValue v1,
    -                            TruthValue v2)
    -
    -
    A function specially designed for desire value [To be refined] -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -union

    -
    -static TruthValue union(TruthValue v1,
    -                        TruthValue v2)
    -
    -
    { S>, P>} |- (S|P)> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -intersection

    -
    -static TruthValue intersection(TruthValue v1,
    -                               TruthValue v2)
    -
    -
    { S>, P>} |- (S&P)> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -difference

    -
    -static TruthValue difference(TruthValue v1,
    -                             TruthValue v2)
    -
    -
    { S>, P>} |- (S-P)> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -reduceDisjunction

    -
    -static TruthValue reduceDisjunction(TruthValue v1,
    -                                    TruthValue v2)
    -
    -
    {(||, A, B), (--, B)} |- A -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -reduceConjunction

    -
    -static TruthValue reduceConjunction(TruthValue v1,
    -                                    TruthValue v2)
    -
    -
    {(--, (&&, A, B)), B} |- (--, A) -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -reduceConjunctionNeg

    -
    -static TruthValue reduceConjunctionNeg(TruthValue v1,
    -                                       TruthValue v2)
    -
    -
    {(--, (&&, A, (--, B))), (--, B)} |- (--, A) -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -
    -
    - -

    -anonymousAnalogy

    -
    -static TruthValue anonymousAnalogy(TruthValue v1,
    -                                   TruthValue v2)
    -
    -
    {(&&, <#x() ==> M>, <#x() ==> P>), S ==> M} |- P> -

    -

    -
    Parameters:
    v1 - Truth value of the first premise
    v2 - Truth value of the second premise -
    Returns:
    Truth value of the conclusion
    -
    -

    @@ -832,9 +225,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/inference/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/UtilityFunctions.html index cfbace07..bba4c050 100644 --- a/nars-dist/javadoc/nars/inference/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/UtilityFunctions.html @@ -2,13 +2,13 @@ - + -UtilityFunctions (NARS Document) +UtilityFunctions - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="UtilityFunctions (NARS Document)"; + parent.document.title="UtilityFunctions"; } } diff --git a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html index d3edfbb5..097231c5 100644 --- a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.inference.BudgetFunctions (NARS Document) +Uses of Class nars.inference.BudgetFunctions - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.inference.BudgetFunctions (NARS Document)"; + parent.document.title="Uses of Class nars.inference.BudgetFunctions"; } } diff --git a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html index aa2c9d83..02a8c4c7 100644 --- a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.inference.CompositionalRules (NARS Document) +Uses of Class nars.inference.CompositionalRules - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.inference.CompositionalRules (NARS Document)"; + parent.document.title="Uses of Class nars.inference.CompositionalRules"; } } diff --git a/nars-dist/javadoc/nars/inference/class-use/LocalRules.html b/nars-dist/javadoc/nars/inference/class-use/LocalRules.html new file mode 100644 index 00000000..d44a103d --- /dev/null +++ b/nars-dist/javadoc/nars/inference/class-use/LocalRules.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.inference.LocalRules + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.inference.LocalRules

    +
    +No usage of nars.inference.LocalRules +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html index 1a345eeb..f95bb376 100644 --- a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.inference.RuleTables (NARS Document) +Uses of Class nars.inference.RuleTables - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.inference.RuleTables (NARS Document)"; + parent.document.title="Uses of Class nars.inference.RuleTables"; } } diff --git a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html index 61e836ea..966efd59 100644 --- a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.inference.StructuralRules (NARS Document) +Uses of Class nars.inference.StructuralRules - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.inference.StructuralRules (NARS Document)"; + parent.document.title="Uses of Class nars.inference.StructuralRules"; } } diff --git a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html index 0e794990..98b04df0 100644 --- a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.inference.SyllogisticRules (NARS Document) +Uses of Class nars.inference.SyllogisticRules - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.inference.SyllogisticRules (NARS Document)"; + parent.document.title="Uses of Class nars.inference.SyllogisticRules"; } } diff --git a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html index e8e53ba8..f68990da 100644 --- a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.inference.TruthFunctions (NARS Document) +Uses of Class nars.inference.TruthFunctions - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.inference.TruthFunctions (NARS Document)"; + parent.document.title="Uses of Class nars.inference.TruthFunctions"; } } diff --git a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html index 90fa6d25..bb1e3484 100644 --- a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.inference.UtilityFunctions (NARS Document) +Uses of Class nars.inference.UtilityFunctions - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.inference.UtilityFunctions (NARS Document)"; + parent.document.title="Uses of Class nars.inference.UtilityFunctions"; } } diff --git a/nars-dist/javadoc/nars/inference/package-frame.html b/nars-dist/javadoc/nars/inference/package-frame.html index 2802465c..183b3003 100644 --- a/nars-dist/javadoc/nars/inference/package-frame.html +++ b/nars-dist/javadoc/nars/inference/package-frame.html @@ -2,13 +2,13 @@ - + -nars.inference (NARS Document) +nars.inference - + @@ -28,7 +28,7 @@
    CompositionalRules
    -MatchingRules +LocalRules
    RuleTables
    diff --git a/nars-dist/javadoc/nars/inference/package-summary.html b/nars-dist/javadoc/nars/inference/package-summary.html index fa453ff2..728f88fa 100644 --- a/nars-dist/javadoc/nars/inference/package-summary.html +++ b/nars-dist/javadoc/nars/inference/package-summary.html @@ -2,13 +2,13 @@ - + -nars.inference (NARS Document) +nars.inference - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.inference (NARS Document)"; + parent.document.title="nars.inference"; } } @@ -104,7 +104,7 @@

    Compound term composition and decomposition rules, with two premises. -MatchingRules +LocalRules Directly process a task by a oldBelief, with only two Terms in both. @@ -145,7 +145,7 @@

    Package Specification

    There are four major groups of inference rules:

      -
    1. MatchingRules, where the task and belief contains the same pair +
    2. LocalRules, where the task and belief contains the same pair of terms, and the rules provide direct solutions to problems, revise beliefs, and derive some conclusions;
    3. SyllogisticRules, where the task and belief share one common term, @@ -155,12 +155,8 @@

      Package Specification

    4. StructuralRules, where the task derives conclusions all by itself, while the other "premise" serves by indicating a certain syntactic structure in a compound term.
    -In addition to the above rules, which handles the semantic and syntactic information -in the premises, the TemporalRules handle the temporal information, and decides the -temporal aspect of the conclusions. -

    In the system, forward inference (the task is a Judgment) and backward inference -(the task is a Question or Goal) are mostly isomorphic to each other, so that the +(the task is a Question) are mostly isomorphic to each other, so that the inference rules produce clonclusions with the same content for different types of tasks. However, there are exceptions. For example, backward inference does not generate compound terms.

    @@ -176,8 +172,7 @@

    Package Specification

    In each case, there may be multiple applicable rules, which will be applied in parallel. For each rule, each conclusion is formed in three stages, to determine (1) the content -(as a Term) and tense, (2) the truth-value or desire-value, and (3) the budget-value, -roughly in that order. +(as a Term), (2) the truth-value, and (3) the budget-value, roughly in that order.

    diff --git a/nars-dist/javadoc/nars/inference/package-tree.html b/nars-dist/javadoc/nars/inference/package-tree.html index 0723f576..c66b52a0 100644 --- a/nars-dist/javadoc/nars/inference/package-tree.html +++ b/nars-dist/javadoc/nars/inference/package-tree.html @@ -2,13 +2,13 @@ - + -nars.inference Class Hierarchy (NARS Document) +nars.inference Class Hierarchy - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.inference Class Hierarchy (NARS Document)"; + parent.document.title="nars.inference Class Hierarchy"; } } @@ -93,7 +93,7 @@

    • java.lang.Object diff --git a/nars-dist/javadoc/nars/inference/package-use.html b/nars-dist/javadoc/nars/inference/package-use.html index 4bf75504..cbf21c80 100644 --- a/nars-dist/javadoc/nars/inference/package-use.html +++ b/nars-dist/javadoc/nars/inference/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package nars.inference (NARS Document) +Uses of Package nars.inference - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package nars.inference (NARS Document)"; + parent.document.title="Uses of Package nars.inference"; } } diff --git a/nars-dist/javadoc/nars/io/ExperienceReader.html b/nars-dist/javadoc/nars/io/ExperienceReader.html new file mode 100644 index 00000000..8beb7c5d --- /dev/null +++ b/nars-dist/javadoc/nars/io/ExperienceReader.html @@ -0,0 +1,318 @@ + + + + + + + +ExperienceReader + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + +

      + +nars.io +
      +Class ExperienceReader

      +
      +java.lang.Object
      +  extended by nars.io.ExperienceReader
      +
      +
      +
      All Implemented Interfaces:
      InputChannel
      +
      +
      +
      +
      public class ExperienceReader
      extends java.lang.Object
      implements InputChannel
      + + +

      +To read and write experience as Task streams +

      + +

      +


      + +

      + + + + + + + + + + + +
      +Constructor Summary
      ExperienceReader(Reasoner reasoner) + +
      +          Default constructor
      +  + + + + + + + + + + + + + + + + + + + +
      +Method Summary
      + voidcloseLoadFile() + +
      +          Close an input experience file
      + booleannextInput() + +
      +          Process the next chunk of input data
      + voidopenLoadFile() + +
      +          Open an input experience file
      + + + + + + + +
      Methods inherited from class java.lang.Object
      clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      +  +

      + + + + + + + + +
      +Constructor Detail
      + +

      +ExperienceReader

      +
      +public ExperienceReader(Reasoner reasoner)
      +
      +
      Default constructor +

      +

      +
      Parameters:
      reasoner - Backward link to the reasoner
      +
      + + + + + + + + +
      +Method Detail
      + +

      +openLoadFile

      +
      +public void openLoadFile()
      +
      +
      Open an input experience file +

      +

      +
      +
      +
      +
      +
      +
      +
      + +

      +closeLoadFile

      +
      +public void closeLoadFile()
      +
      +
      Close an input experience file +

      +

      +
      +
      +
      +
      +
      +
      +
      + +

      +nextInput

      +
      +public boolean nextInput()
      +
      +
      Process the next chunk of input data +

      +

      +
      Specified by:
      nextInput in interface InputChannel
      +
      +
      + +
      Returns:
      Whether the input channel should be chacked again
      +
      +
      + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/io/ExperienceWriter.html b/nars-dist/javadoc/nars/io/ExperienceWriter.html new file mode 100644 index 00000000..b04ffd50 --- /dev/null +++ b/nars-dist/javadoc/nars/io/ExperienceWriter.html @@ -0,0 +1,317 @@ + + + + + + + +ExperienceWriter + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + +

      + +nars.io +
      +Class ExperienceWriter

      +
      +java.lang.Object
      +  extended by nars.io.ExperienceWriter
      +
      +
      +
      All Implemented Interfaces:
      OutputChannel
      +
      +
      +
      +
      public class ExperienceWriter
      extends java.lang.Object
      implements OutputChannel
      + + +

      +To read and write experience as Task streams +

      + +

      +


      + +

      + + + + + + + + + + + +
      +Constructor Summary
      ExperienceWriter(Reasoner reasoner) + +
      +          Default constructor
      +  + + + + + + + + + + + + + + + + + + + +
      +Method Summary
      + voidcloseSaveFile() + +
      +          Close an output experience file
      + voidnextOutput(java.util.ArrayList lines) + +
      +          Process the next chunk of output data
      + voidopenSaveFile() + +
      +          Open an output experience file
      + + + + + + + +
      Methods inherited from class java.lang.Object
      clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      +  +

      + + + + + + + + +
      +Constructor Detail
      + +

      +ExperienceWriter

      +
      +public ExperienceWriter(Reasoner reasoner)
      +
      +
      Default constructor +

      +

      +
      Parameters:
      reasoner -
      +
      + + + + + + + + +
      +Method Detail
      + +

      +openSaveFile

      +
      +public void openSaveFile()
      +
      +
      Open an output experience file +

      +

      +
      +
      +
      +
      +
      +
      +
      + +

      +closeSaveFile

      +
      +public void closeSaveFile()
      +
      +
      Close an output experience file +

      +

      +
      +
      +
      +
      +
      +
      +
      + +

      +nextOutput

      +
      +public void nextOutput(java.util.ArrayList lines)
      +
      +
      Process the next chunk of output data +

      +

      +
      Specified by:
      nextOutput in interface OutputChannel
      +
      +
      +
      Parameters:
      lines - The text to be displayed
      +
      +
      + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/io/InferenceRecorder.html b/nars-dist/javadoc/nars/io/InferenceRecorder.html new file mode 100644 index 00000000..b5ac8cc3 --- /dev/null +++ b/nars-dist/javadoc/nars/io/InferenceRecorder.html @@ -0,0 +1,407 @@ + + + + + + + +InferenceRecorder + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + +

      + +nars.io +
      +Class InferenceRecorder

      +
      +java.lang.Object
      +  extended by nars.io.InferenceRecorder
      +
      +
      +
      +
      public class InferenceRecorder
      extends java.lang.Object
      + + +

      +Inference log, which record input/output of each inference step +

      + +

      +


      + +

      + + + + + + + + + + + +
      +Constructor Summary
      InferenceRecorder() + +
      +           
      +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      +Method Summary
      + voidappend(java.lang.String s) + +
      +          Add new text to display
      + voidcloseLogFile() + +
      +          Close the log file
      + voidinit() + +
      +          Initialize the window and the file
      + booleanisLogging() + +
      +          Check file logging
      + voidopenLogFile() + +
      +          Open the log file
      + voidplay() + +
      +          Begin the display
      + voidshow() + +
      +          Show the window
      + voidstop() + +
      +          Stop the display
      + + + + + + + +
      Methods inherited from class java.lang.Object
      clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      +  +

      + + + + + + + + +
      +Constructor Detail
      + +

      +InferenceRecorder

      +
      +public InferenceRecorder()
      +
      +
      + + + + + + + + +
      +Method Detail
      + +

      +init

      +
      +public void init()
      +
      +
      Initialize the window and the file +

      +

      +
      +
      +
      +
      + +

      +show

      +
      +public void show()
      +
      +
      Show the window +

      +

      +
      +
      +
      +
      + +

      +play

      +
      +public void play()
      +
      +
      Begin the display +

      +

      +
      +
      +
      +
      + +

      +stop

      +
      +public void stop()
      +
      +
      Stop the display +

      +

      +
      +
      +
      +
      + +

      +append

      +
      +public void append(java.lang.String s)
      +
      +
      Add new text to display +

      +

      +
      Parameters:
      s - The line to be displayed
      +
      +
      +
      + +

      +openLogFile

      +
      +public void openLogFile()
      +
      +
      Open the log file +

      +

      +
      +
      +
      +
      + +

      +closeLogFile

      +
      +public void closeLogFile()
      +
      +
      Close the log file +

      +

      +
      +
      +
      +
      + +

      +isLogging

      +
      +public boolean isLogging()
      +
      +
      Check file logging +

      +

      + +
      Returns:
      If the file logging is going on
      +
      +
      + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/io/InputChannel.html b/nars-dist/javadoc/nars/io/InputChannel.html new file mode 100644 index 00000000..2edba414 --- /dev/null +++ b/nars-dist/javadoc/nars/io/InputChannel.html @@ -0,0 +1,216 @@ + + + + + + + +InputChannel + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + +

      + +nars.io +
      +Interface InputChannel

      +
      +
      All Known Implementing Classes:
      ExperienceReader, InputWindow
      +
      +
      +
      +
      public interface InputChannel
      + + +

      +An interface to be implemented in all input channels + To get the input for the next moment from an input channel + The return value indicating whether the reasoner should run +

      + +

      +


      + +

      + + + + + + + + + + + + +
      +Method Summary
      + booleannextInput() + +
      +           
      +  +

      + + + + + + + + +
      +Method Detail
      + +

      +nextInput

      +
      +boolean nextInput()
      +
      +
      +
      +
      +
      + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/io/OutputChannel.html b/nars-dist/javadoc/nars/io/OutputChannel.html new file mode 100644 index 00000000..44182d8f --- /dev/null +++ b/nars-dist/javadoc/nars/io/OutputChannel.html @@ -0,0 +1,214 @@ + + + + + + + +OutputChannel + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + +

      + +nars.io +
      +Interface OutputChannel

      +
      +
      All Known Implementing Classes:
      ExperienceWriter, MainWindow
      +
      +
      +
      +
      public interface OutputChannel
      + + +

      +An interface to be implemented in all output channel +

      + +

      +


      + +

      + + + + + + + + + + + + +
      +Method Summary
      + voidnextOutput(java.util.ArrayList output) + +
      +           
      +  +

      + + + + + + + + +
      +Method Detail
      + +

      +nextOutput

      +
      +void nextOutput(java.util.ArrayList output)
      +
      +
      +
      +
      +
      + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/io/StringParser.html b/nars-dist/javadoc/nars/io/StringParser.html index 6827aaee..ef6182c1 100644 --- a/nars-dist/javadoc/nars/io/StringParser.html +++ b/nars-dist/javadoc/nars/io/StringParser.html @@ -2,13 +2,13 @@ - + -StringParser (NARS Document) +StringParser - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="StringParser (NARS Document)"; + parent.document.title="StringParser"; } } @@ -56,8 +56,8 @@ PREV CLASS  - NEXT CLASSPREV CLASS  + NEXT CLASS FRAMES    NO FRAMES   @@ -77,7 +77,7 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD @@ -103,31 +103,15 @@

      -Parse input String into Task. +Parse input String into Task or Term. + Abstract class with static methods only.


      - - - - - - - - - - - -
      -Nested Class Summary
      -private static classStringParser.InvalidInputException - -
      -          All kinds of invalid input lines
      + @@ -142,7 +126,7 @@

      - +
      Fields inherited from class nars.io.Symbols
      ARGUMENT_SEPARATOR, BUDGET_VALUE_MARK, COMMENT_MARK, COMPOUND_TERM_CLOSER, COMPOUND_TERM_OPENER, CONJUNCTION_OPERATOR, DIFFERENCE_EXT_OPERATOR, DIFFERENCE_INT_OPERATOR, DISJUNCTION_OPERATOR, EQUIVALENCE_AFTER_RELATION, EQUIVALENCE_RELATION, EQUIVALENCE_WHEN_RELATION, GOAL_MARK, IMAGE_EXT_OPERATOR, IMAGE_INT_OPERATOR, IMAGE_PLACE_HOLDER, IMPLICATION_AFTER_RELATION, IMPLICATION_BEFORE_RELATION, IMPLICATION_RELATION, IMPLICATION_WHEN_RELATION, INHERITANCE_RELATION, INPUT_LINE, INSTANCE_PROPERTY_RELATION, INSTANCE_RELATION, INTERSECTION_EXT_OPERATOR, INTERSECTION_INT_OPERATOR, JUDGMENT_MARK, NEGATION_OPERATOR, OPERATOR_TAG, OUTPUT_LINE, PARALLEL_OPERATOR, PREFIX_MARK, PRODUCT_OPERATOR, PROPERTY_RELATION, QUERY_VARIABLE_TAG, QUESTION_MARK, RESET_MARK, SEQUENCE_OPERATOR, SET_EXT_CLOSER, SET_EXT_OPENER, SET_INT_CLOSER, SET_INT_OPENER, SIMILARITY_RELATION, STAMP_CLOSER, STAMP_OPENER, STAMP_SEPARATOR, STAMP_STARTER, STATEMENT_CLOSER, STATEMENT_OPENER, TENSE_FUTURE, TENSE_MARK, TENSE_PAST, TENSE_PRESENT, TO_COMPONENT_1, TO_COMPONENT_2, TO_COMPOUND_1, TO_COMPOUND_2, TRUTH_VALUE_MARK, VALUE_SEPARATOR, VARIABLE_TAGARGUMENT_SEPARATOR, BUDGET_VALUE_MARK, COMMENT_MARK, COMPOUND_TERM_CLOSER, COMPOUND_TERM_OPENER, CONJUNCTION_OPERATOR, DIFFERENCE_EXT_OPERATOR, DIFFERENCE_INT_OPERATOR, DISJUNCTION_OPERATOR, EQUIVALENCE_RELATION, IMAGE_EXT_OPERATOR, IMAGE_INT_OPERATOR, IMAGE_PLACE_HOLDER, IMPLICATION_RELATION, INHERITANCE_RELATION, INPUT_LINE, INSTANCE_PROPERTY_RELATION, INSTANCE_RELATION, INTERSECTION_EXT_OPERATOR, INTERSECTION_INT_OPERATOR, JUDGMENT_MARK, NEGATION_OPERATOR, OUTPUT_LINE, PREFIX_MARK, PRODUCT_OPERATOR, PROPERTY_RELATION, QUESTION_MARK, RESET_MARK, SET_EXT_CLOSER, SET_EXT_OPENER, SET_INT_CLOSER, SET_INT_OPENER, SIMILARITY_RELATION, STAMP_CLOSER, STAMP_OPENER, STAMP_SEPARATOR, STAMP_STARTER, STATEMENT_CLOSER, STATEMENT_OPENER, TO_COMPONENT_1, TO_COMPONENT_2, TO_COMPOUND_1, TO_COMPOUND_2, TRUTH_VALUE_MARK, VALUE_SEPARATOR, VAR_DEPENDENT, VAR_INDEPENDENT, VAR_QUERY
        @@ -172,138 +156,33 @@

      -private static java.lang.String -getBudgetString(java.lang.StringBuffer s) - -
      -          Return the prefex of a task string that contains a BudgetValue - - - -private static java.lang.String -getTruthString(java.lang.StringBuffer s) - -
      -          Return the postfix of a task string that contains a TruthValue - - - -private static boolean -isCloser(java.lang.String s, - int i) - -
      -          Check CompoundTerm closer symbol - - - -private static boolean -isOpener(java.lang.String s, - int i) - -
      -          Check CompoundTerm opener symbol - - - -private static int -nextSeparator(java.lang.String s, - int first) - -
      -          Locate the first top-level separator in a CompoundTerm - - - -private static java.util.ArrayList<Term> -parseArguments(java.lang.String s0) - -
      -          Parse a String into the argument get of a CompoundTerm. - - - -private static BudgetValue -parseBudget(java.lang.String s, - char punctuation, - TruthValue truth) - -
      -          parse the input String into a BudgetValue - - - -private static Term -parseCompoundTerm(java.lang.String s0) - -
      -          Parse a String to create a CompoundTerm. - - - -static void -parseExperience(java.lang.StringBuffer buffer) +static Task +parseExperience(java.lang.StringBuffer buffer, + Memory memory, + long time)
                Parse a line of input experience -private static Term -parseSimpleTerm(java.lang.String s0) - -
      -          Parse a Term that has no internal structure. - - - -private static Statement -parseStatement(java.lang.String s0) - -
      -          Parse a String to create a Statement. - - - -static void -parseTask(java.lang.String s) +static Task +parseTask(java.lang.String s, + Memory memory, + long time)
                Enter a new Task in String into the memory, called from InputWindow or locally. -private static java.lang.String -parseTense(java.lang.StringBuffer s) - -
      -          Recognize the tense of an input sentence - - - -static Term -parseTerm(java.lang.String s0) +static Term +parseTerm(java.lang.String s0, + Memory memory)
                Top-level method that parse a Term in general, which may recursively call itself. - - -private static TruthValue -parseTruth(java.lang.String s, - char type) - -
      -          parse the input String into a TruthValue (or DesireValue) - - - -private static int -topRelation(java.lang.String s) - -
      -          locate the top-level relation in a statement -   @@ -344,10 +223,12 @@

      -

      +

      parseExperience

      -public static void parseExperience(java.lang.StringBuffer buffer)
      +public static Task parseExperience(java.lang.StringBuffer buffer, + Memory memory, + long time)
      Parse a line of input experience

      @@ -359,10 +240,12 @@


      -

      +

      parseTask

      -public static void parseTask(java.lang.String s)
      +public static Task parseTask(java.lang.String s, + Memory memory, + long time)
      Enter a new Task in String into the memory, called from InputWindow or locally.

      @@ -372,92 +255,11 @@


      -

      -getBudgetString

      -
      -private static java.lang.String getBudgetString(java.lang.StringBuffer s)
      -                                         throws StringParser.InvalidInputException
      -
      -
      Return the prefex of a task string that contains a BudgetValue -

      -

      -
      Parameters:
      s - the input in a StringBuffer -
      Returns:
      a String containing a BudgetValue -
      Throws: -
      StringParser.InvalidInputException - if the input cannot be parsed into a BudgetValue
      -
      -
      -
      - -

      -parseTense

      -
      -private static java.lang.String parseTense(java.lang.StringBuffer s)
      -
      -
      Recognize the tense of an input sentence -

      -

      -
      Parameters:
      s - the input in a StringBuffer -
      Returns:
      a tense value
      -
      -
      -
      - -

      -getTruthString

      -
      -private static java.lang.String getTruthString(java.lang.StringBuffer s)
      -                                        throws StringParser.InvalidInputException
      -
      -
      Return the postfix of a task string that contains a TruthValue -

      -

      -
      Parameters:
      s - the input in a StringBuffer -
      Returns:
      a String containing a TruthValue -
      Throws: -
      StringParser.InvalidInputException - if the input cannot be parsed into a TruthValue
      -
      -
      -
      - -

      -parseTruth

      -
      -private static TruthValue parseTruth(java.lang.String s,
      -                                     char type)
      -
      -
      parse the input String into a TruthValue (or DesireValue) -

      -

      -
      Parameters:
      s - input String
      type - Task type -
      Returns:
      the input TruthValue
      -
      -
      -
      - -

      -parseBudget

      -
      -private static BudgetValue parseBudget(java.lang.String s,
      -                                       char punctuation,
      -                                       TruthValue truth)
      -                                throws StringParser.InvalidInputException
      -
      -
      parse the input String into a BudgetValue -

      -

      -
      Parameters:
      truth - the TruthValue of the task
      s - input String
      punctuation - Task punctuation -
      Returns:
      the input BudgetValue -
      Throws: -
      StringParser.InvalidInputException - If the String cannot be parsed into a BudgetValue
      -
      -
      -
      - -

      +

      parseTerm

      -public static Term parseTerm(java.lang.String s0)
      +public static Term parseTerm(java.lang.String s0, + Memory memory)
      Top-level method that parse a Term in general, which may recursively call itself.

      @@ -469,139 +271,10 @@

      5. otherwise it is a simple term.

      -
      Parameters:
      s0 - the String to be parsed +
      Parameters:
      s0 - the String to be parsed
      memory - Reference to the memory
      Returns:
      the Term generated from the String

      -
      - -

      -parseSimpleTerm

      -
      -private static Term parseSimpleTerm(java.lang.String s0)
      -                             throws StringParser.InvalidInputException
      -
      -
      Parse a Term that has no internal structure. -

      - The Term can be a constant or a variable. -

      -

      -
      Parameters:
      s0 - the String to be parsed -
      Returns:
      the Term generated from the String -
      Throws: -
      StringParser.InvalidInputException - the String cannot be parsed into a Term
      -
      -
      -
      - -

      -parseStatement

      -
      -private static Statement parseStatement(java.lang.String s0)
      -                                 throws StringParser.InvalidInputException
      -
      -
      Parse a String to create a Statement. -

      -

      -
      Parameters:
      s0 - The input String to be parsed -
      Returns:
      the Statement generated from the String -
      Throws: -
      StringParser.InvalidInputException - the String cannot be parsed into a Term
      -
      -
      -
      - -

      -parseCompoundTerm

      -
      -private static Term parseCompoundTerm(java.lang.String s0)
      -                               throws StringParser.InvalidInputException
      -
      -
      Parse a String to create a CompoundTerm. -

      -

      -
      Parameters:
      s0 - The String to be parsed -
      Returns:
      the Term generated from the String -
      Throws: -
      StringParser.InvalidInputException - the String cannot be parsed into a Term
      -
      -
      -
      - -

      -parseArguments

      -
      -private static java.util.ArrayList<Term> parseArguments(java.lang.String s0)
      -                                                 throws StringParser.InvalidInputException
      -
      -
      Parse a String into the argument get of a CompoundTerm. -

      -

      -
      Parameters:
      s0 - The String to be parsed -
      Returns:
      the arguments in an ArrayList -
      Throws: -
      StringParser.InvalidInputException - the String cannot be parsed into an argument get
      -
      -
      -
      - -

      -nextSeparator

      -
      -private static int nextSeparator(java.lang.String s,
      -                                 int first)
      -
      -
      Locate the first top-level separator in a CompoundTerm -

      -

      -
      Parameters:
      s - The String to be parsed
      first - The starting index -
      Returns:
      the index of the next seperator in a String
      -
      -
      -
      - -

      -topRelation

      -
      -private static int topRelation(java.lang.String s)
      -
      -
      locate the top-level relation in a statement -

      -

      -
      Parameters:
      s - The String to be parsed -
      Returns:
      the index of the top-level relation
      -
      -
      -
      - -

      -isOpener

      -
      -private static boolean isOpener(java.lang.String s,
      -                                int i)
      -
      -
      Check CompoundTerm opener symbol -

      -

      -
      Parameters:
      s - The String to be checked
      i - The starting index -
      Returns:
      if the given String is an opener symbol
      -
      -
      -
      - -

      -isCloser

      -
      -private static boolean isCloser(java.lang.String s,
      -                                int i)
      -
      -
      Check CompoundTerm closer symbol -

      -

      -
      Parameters:
      s - The String to be checked
      i - The starting index -
      Returns:
      if the given String is a closer symbol
      -
      -

      @@ -633,8 +306,8 @@

      PREV CLASS  - NEXT CLASSPREV CLASS  + NEXT CLASS FRAMES    NO FRAMES   @@ -654,7 +327,7 @@

      - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/io/Symbols.html b/nars-dist/javadoc/nars/io/Symbols.html index 6d827993..22d9b5f1 100644 --- a/nars-dist/javadoc/nars/io/Symbols.html +++ b/nars-dist/javadoc/nars/io/Symbols.html @@ -2,13 +2,13 @@ - + -Symbols (NARS Document) +Symbols - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Symbols (NARS Document)"; + parent.document.title="Symbols"; } } @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -189,14 +189,6 @@

      static java.lang.String DISJUNCTION_OPERATOR -
      -            - - - -static java.lang.String -EQUIVALENCE_AFTER_RELATION -
                  @@ -205,22 +197,6 @@

      static java.lang.String EQUIVALENCE_RELATION -
      -            - - - -static java.lang.String -EQUIVALENCE_WHEN_RELATION - -
      -            - - - -static char -GOAL_MARK -
                  @@ -245,22 +221,6 @@

      static char IMAGE_PLACE_HOLDER -
      -            - - - -static java.lang.String -IMPLICATION_AFTER_RELATION - -
      -            - - - -static java.lang.String -IMPLICATION_BEFORE_RELATION -
                  @@ -269,14 +229,6 @@

      static java.lang.String IMPLICATION_RELATION -
      -            - - - -static java.lang.String -IMPLICATION_WHEN_RELATION -
                  @@ -341,14 +293,6 @@

      static java.lang.String NEGATION_OPERATOR -
      -            - - - -static char -OPERATOR_TAG -
                  @@ -357,14 +301,6 @@

      static java.lang.String OUTPUT_LINE -
      -            - - - -static java.lang.String -PARALLEL_OPERATOR -
                  @@ -389,14 +325,6 @@

      static java.lang.String PROPERTY_RELATION -
      -            - - - -static char -QUERY_VARIABLE_TAG -
                  @@ -413,14 +341,6 @@

      static char RESET_MARK -
      -            - - - -static java.lang.String -SEQUENCE_OPERATOR -
                  @@ -515,23 +435,7 @@

      static java.lang.String -TENSE_FUTURE - -
      -            - - - -static java.lang.String -TENSE_MARK - -
      -            - - - -static java.lang.String -TENSE_PAST +TO_COMPONENT_1
                  @@ -539,7 +443,7 @@

      static java.lang.String -TENSE_PRESENT +TO_COMPONENT_2
                  @@ -547,7 +451,7 @@

      static java.lang.String -TO_COMPONENT_1 +TO_COMPOUND_1
                  @@ -555,23 +459,23 @@

      static java.lang.String -TO_COMPONENT_2 +TO_COMPOUND_2
                  -static java.lang.String -TO_COMPOUND_1 +static char +TRUTH_VALUE_MARK
                  -static java.lang.String -TO_COMPOUND_2 +static char +VALUE_SEPARATOR
                  @@ -579,7 +483,7 @@

      static char -TRUTH_VALUE_MARK +VAR_DEPENDENT
                  @@ -587,7 +491,7 @@

      static char -VALUE_SEPARATOR +VAR_INDEPENDENT
                  @@ -595,7 +499,7 @@

      static char -VARIABLE_TAG +VAR_QUERY
                  @@ -669,53 +573,33 @@


      -

      -GOAL_MARK

      +

      +VAR_INDEPENDENT

      -public static final char GOAL_MARK
      +public static final char VAR_INDEPENDENT
      -
      See Also:
      Constant Field Values
      +
      See Also:
      Constant Field Values

      -

      -TENSE_MARK

      +

      +VAR_DEPENDENT

      -public static final java.lang.String TENSE_MARK
      +public static final char VAR_DEPENDENT
      -
      See Also:
      Constant Field Values
      +
      See Also:
      Constant Field Values

      -

      -TENSE_PAST

      +

      +VAR_QUERY

      -public static final java.lang.String TENSE_PAST
      +public static final char VAR_QUERY
      -
      See Also:
      Constant Field Values
      -
      -
      - -

      -TENSE_PRESENT

      -
      -public static final java.lang.String TENSE_PRESENT
      -
      -
      -
      See Also:
      Constant Field Values
      -
      -
      - -

      -TENSE_FUTURE

      -
      -public static final java.lang.String TENSE_FUTURE
      -
      -
      -
      See Also:
      Constant Field Values
      +
      See Also:
      Constant Field Values

      @@ -949,26 +833,6 @@


      -

      -SEQUENCE_OPERATOR

      -
      -public static final java.lang.String SEQUENCE_OPERATOR
      -
      -
      -
      See Also:
      Constant Field Values
      -
      -
      - -

      -PARALLEL_OPERATOR

      -
      -public static final java.lang.String PARALLEL_OPERATOR
      -
      -
      -
      See Also:
      Constant Field Values
      -
      -
      -

      INHERITANCE_RELATION

      @@ -1039,86 +903,6 @@ 


      -

      -IMPLICATION_AFTER_RELATION

      -
      -public static final java.lang.String IMPLICATION_AFTER_RELATION
      -
      -
      -
      See Also:
      Constant Field Values
      -
      -
      - -

      -IMPLICATION_BEFORE_RELATION

      -
      -public static final java.lang.String IMPLICATION_BEFORE_RELATION
      -
      -
      -
      See Also:
      Constant Field Values
      -
      -
      - -

      -IMPLICATION_WHEN_RELATION

      -
      -public static final java.lang.String IMPLICATION_WHEN_RELATION
      -
      -
      -
      See Also:
      Constant Field Values
      -
      -
      - -

      -EQUIVALENCE_AFTER_RELATION

      -
      -public static final java.lang.String EQUIVALENCE_AFTER_RELATION
      -
      -
      -
      See Also:
      Constant Field Values
      -
      -
      - -

      -EQUIVALENCE_WHEN_RELATION

      -
      -public static final java.lang.String EQUIVALENCE_WHEN_RELATION
      -
      -
      -
      See Also:
      Constant Field Values
      -
      -
      - -

      -VARIABLE_TAG

      -
      -public static final char VARIABLE_TAG
      -
      -
      -
      See Also:
      Constant Field Values
      -
      -
      - -

      -QUERY_VARIABLE_TAG

      -
      -public static final char QUERY_VARIABLE_TAG
      -
      -
      -
      See Also:
      Constant Field Values
      -
      -
      - -

      -OPERATOR_TAG

      -
      -public static final char OPERATOR_TAG
      -
      -
      -
      See Also:
      Constant Field Values
      -
      -
      -

      INPUT_LINE

      @@ -1295,7 +1079,7 @@ 

      PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/io/class-use/ExperienceReader.html b/nars-dist/javadoc/nars/io/class-use/ExperienceReader.html new file mode 100644 index 00000000..64464115 --- /dev/null +++ b/nars-dist/javadoc/nars/io/class-use/ExperienceReader.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.io.ExperienceReader + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + +
      + +
      + + + +
      +
      +

      +Uses of Class
      nars.io.ExperienceReader

      +
      +No usage of nars.io.ExperienceReader +

      +


      + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/io/class-use/ExperienceWriter.html b/nars-dist/javadoc/nars/io/class-use/ExperienceWriter.html new file mode 100644 index 00000000..3a6b04f4 --- /dev/null +++ b/nars-dist/javadoc/nars/io/class-use/ExperienceWriter.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.io.ExperienceWriter + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + +
      + +
      + + + +
      +
      +

      +Uses of Class
      nars.io.ExperienceWriter

      +
      +No usage of nars.io.ExperienceWriter +

      +


      + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/io/class-use/InferenceRecorder.html b/nars-dist/javadoc/nars/io/class-use/InferenceRecorder.html new file mode 100644 index 00000000..cc6cadde --- /dev/null +++ b/nars-dist/javadoc/nars/io/class-use/InferenceRecorder.html @@ -0,0 +1,208 @@ + + + + + + + +Uses of Class nars.io.InferenceRecorder + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + +
      + +
      + + + +
      +
      +

      +Uses of Class
      nars.io.InferenceRecorder

      +
      + + + + + + + + + + + + + +
      +Packages that use InferenceRecorder
      nars.containerStorage management 
      nars.guiGraphical user interface of the system 
      +  +

      + + + + + +
      +Uses of InferenceRecorder in nars.container
      +  +

      + + + + + + + + + +
      Methods in nars.container that return InferenceRecorder
      + InferenceRecorderMemory.getRecorder() + +
      +           
      +  +

      + + + + + +
      +Uses of InferenceRecorder in nars.gui
      +  +

      + + + + + + + + +
      Constructors in nars.gui with parameters of type InferenceRecorder
      InferenceWindow(InferenceRecorder recorder) + +
      +          Constructor
      +  +

      +


      + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/io/class-use/InputChannel.html b/nars-dist/javadoc/nars/io/class-use/InputChannel.html new file mode 100644 index 00000000..af05f5b9 --- /dev/null +++ b/nars-dist/javadoc/nars/io/class-use/InputChannel.html @@ -0,0 +1,247 @@ + + + + + + + +Uses of Interface nars.io.InputChannel + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + +
      + +
      + + + +
      +
      +

      +Uses of Interface
      nars.io.InputChannel

      +
      + + + + + + + + + + + + + + + + + +
      +Packages that use InputChannel
      nars.guiGraphical user interface of the system 
      nars.ioInput/output management 
      nars.mainTop-level classes of the system 
      +  +

      + + + + + +
      +Uses of InputChannel in nars.gui
      +  +

      + + + + + + + + + +
      Classes in nars.gui that implement InputChannel
      + classInputWindow + +
      +          Input window, accepting user tasks
      +  +

      + + + + + +
      +Uses of InputChannel in nars.io
      +  +

      + + + + + + + + + +
      Classes in nars.io that implement InputChannel
      + classExperienceReader + +
      +          To read and write experience as Task streams
      +  +

      + + + + + +
      +Uses of InputChannel in nars.main
      +  +

      + + + + + + + + + + + + + +
      Methods in nars.main with parameters of type InputChannel
      + voidReasoner.addInputChannel(InputChannel channel) + +
      +           
      + voidReasoner.removeInputChannel(InputChannel channel) + +
      +           
      +  +

      +


      + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/io/class-use/OutputChannel.html b/nars-dist/javadoc/nars/io/class-use/OutputChannel.html new file mode 100644 index 00000000..f09ca436 --- /dev/null +++ b/nars-dist/javadoc/nars/io/class-use/OutputChannel.html @@ -0,0 +1,247 @@ + + + + + + + +Uses of Interface nars.io.OutputChannel + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + +
      + +
      + + + +
      +
      +

      +Uses of Interface
      nars.io.OutputChannel

      +
      + + + + + + + + + + + + + + + + + +
      +Packages that use OutputChannel
      nars.guiGraphical user interface of the system 
      nars.ioInput/output management 
      nars.mainTop-level classes of the system 
      +  +

      + + + + + +
      +Uses of OutputChannel in nars.gui
      +  +

      + + + + + + + + + +
      Classes in nars.gui that implement OutputChannel
      + classMainWindow + +
      +          Main window of NARS GUI
      +  +

      + + + + + +
      +Uses of OutputChannel in nars.io
      +  +

      + + + + + + + + + +
      Classes in nars.io that implement OutputChannel
      + classExperienceWriter + +
      +          To read and write experience as Task streams
      +  +

      + + + + + +
      +Uses of OutputChannel in nars.main
      +  +

      + + + + + + + + + + + + + +
      Methods in nars.main with parameters of type OutputChannel
      + voidReasoner.addOutputChannel(OutputChannel channel) + +
      +           
      + voidReasoner.removeOutputChannel(OutputChannel channel) + +
      +           
      +  +

      +


      + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.html b/nars-dist/javadoc/nars/io/class-use/StringParser.html index 4d740aa5..bcba8373 100644 --- a/nars-dist/javadoc/nars/io/class-use/StringParser.html +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.io.StringParser (NARS Document) +Uses of Class nars.io.StringParser - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.io.StringParser (NARS Document)"; + parent.document.title="Uses of Class nars.io.StringParser"; } } diff --git a/nars-dist/javadoc/nars/io/class-use/Symbols.html b/nars-dist/javadoc/nars/io/class-use/Symbols.html index 0931e39b..b17f9451 100644 --- a/nars-dist/javadoc/nars/io/class-use/Symbols.html +++ b/nars-dist/javadoc/nars/io/class-use/Symbols.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.io.Symbols (NARS Document) +Uses of Class nars.io.Symbols - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.io.Symbols (NARS Document)"; + parent.document.title="Uses of Class nars.io.Symbols"; } } @@ -117,7 +117,7 @@

      StringParser
      -          Parse input String into Task. +          Parse input String into Task or Term.   diff --git a/nars-dist/javadoc/nars/io/package-frame.html b/nars-dist/javadoc/nars/io/package-frame.html index c9904b80..8dfbaf0f 100644 --- a/nars-dist/javadoc/nars/io/package-frame.html +++ b/nars-dist/javadoc/nars/io/package-frame.html @@ -2,13 +2,13 @@ - + -nars.io (NARS Document) +nars.io - + @@ -21,16 +21,12 @@ +OutputChannel
      -Classes  +Interfaces 
      -ExperienceIO -
      -Record -
      -StringParser +InputChannel
      -Symbols
      @@ -38,10 +34,18 @@ +ExperienceReader +
      +ExperienceWriter +
      +InferenceRecorder +
      +StringParser +
      +Symbols
      -Exceptions  +Classes 
      -StringParser.InvalidInputException
      diff --git a/nars-dist/javadoc/nars/io/package-summary.html b/nars-dist/javadoc/nars/io/package-summary.html index 57f14d94..0b4c6cfe 100644 --- a/nars-dist/javadoc/nars/io/package-summary.html +++ b/nars-dist/javadoc/nars/io/package-summary.html @@ -2,13 +2,13 @@ - + -nars.io (NARS Document) +nars.io - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.io (NARS Document)"; + parent.document.title="nars.io"; } } @@ -57,7 +57,7 @@  PREV PACKAGE  - NEXT PACKAGENEXT PACKAGE
      FRAMES    NO FRAMES   @@ -93,23 +93,17 @@

      +Interface Summary - - + + - - - - - - - - - - + +
      -Class Summary
      ExperienceIOTo read and write experience as Task streamsInputChannelAn interface to be implemented in all input channels + To get the input for the next moment from an input channel + The return value indicating whether the reasoner should run
      RecordInference log, which record input/output of each inference step
      StringParserParse input String into Task.
      SymbolsThe ASCII symbols used in I/O.OutputChannelAn interface to be implemented in all output channel
        @@ -119,11 +113,27 @@

      +Class Summary - - + + + + + + + + + + + + + + + + + +
      -Exception Summary
      StringParser.InvalidInputExceptionAll kinds of invalid input linesExperienceReaderTo read and write experience as Task streams
      ExperienceWriterTo read and write experience as Task streams
      InferenceRecorderInference log, which record input/output of each inference step
      StringParserParse input String into Task or Term.
      SymbolsThe ASCII symbols used in I/O.
        @@ -175,7 +185,7 @@

      Package Specification

       PREV PACKAGE  - NEXT PACKAGENEXT PACKAGE
      FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/io/package-tree.html b/nars-dist/javadoc/nars/io/package-tree.html index 035a74b0..a90659b0 100644 --- a/nars-dist/javadoc/nars/io/package-tree.html +++ b/nars-dist/javadoc/nars/io/package-tree.html @@ -2,13 +2,13 @@ - + -nars.io Class Hierarchy (NARS Document) +nars.io Class Hierarchy - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.io Class Hierarchy (NARS Document)"; + parent.document.title="nars.io Class Hierarchy"; } } @@ -57,7 +57,7 @@  PREV  - NEXTNEXT FRAMES    NO FRAMES   @@ -93,15 +93,17 @@

      • java.lang.Object +

        +Interface Hierarchy +

        +
        @@ -133,7 +135,7 @@

         PREV  - NEXTNEXT FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/io/package-use.html b/nars-dist/javadoc/nars/io/package-use.html index 2dd2f3b2..b571f747 100644 --- a/nars-dist/javadoc/nars/io/package-use.html +++ b/nars-dist/javadoc/nars/io/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package nars.io (NARS Document) +Uses of Package nars.io - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package nars.io (NARS Document)"; + parent.document.title="Uses of Package nars.io"; } } @@ -91,6 +91,14 @@

        Packages that use nars.io +nars.container +Storage management  + + +nars.gui +Graphical user interface of the system  + + nars.io Input/output management  @@ -101,6 +109,50 @@

         

        + + + + + + + + +
        +Classes in nars.io used by nars.container
        InferenceRecorder + +
        +          Inference log, which record input/output of each inference step
        +  +

        + + + + + + + + + + + + + + +
        +Classes in nars.io used by nars.gui
        InferenceRecorder + +
        +          Inference log, which record input/output of each inference step
        InputChannel + +
        +          An interface to be implemented in all input channels + To get the input for the next moment from an input channel + The return value indicating whether the reasoner should run
        OutputChannel + +
        +          An interface to be implemented in all output channel
        +  +

        @@ -108,10 +160,18 @@

        Classes in nars.io used by nars.io

        - + + + +          An interface to be implemented in all output channel - + + + +          An interface to be implemented in all output channel
        StringParser.InvalidInputException +InputChannel + +
        +          An interface to be implemented in all input channels + To get the input for the next moment from an input channel + The return value indicating whether the reasoner should run
        OutputChannel
        -          All kinds of invalid input lines
        Symbols @@ -129,10 +189,18 @@

        Classes in nars.io used by nars.main

        ExperienceIO +InputChannel + +
        +          An interface to be implemented in all input channels + To get the input for the next moment from an input channel + The return value indicating whether the reasoner should run
        OutputChannel
        -          To read and write experience as Task streams
          diff --git a/nars-dist/javadoc/nars/main/NARS.html b/nars-dist/javadoc/nars/main/NARS.html index fdee870f..e1a1b5a5 100644 --- a/nars-dist/javadoc/nars/main/NARS.html +++ b/nars-dist/javadoc/nars/main/NARS.html @@ -2,13 +2,13 @@ - + -NARS (NARS Document) +NARS - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="NARS (NARS Document)"; + parent.document.title="NARS"; } } @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -113,7 +113,7 @@

        Define an application with full funcationality and an applet with partial functionality.

        - Manage the internal working thread. Communicate with Center only. + Manage the internal working thread. Communicate with Reasoner only.

        @@ -189,14 +189,6 @@

        -(package private)  java.lang.Thread -narsThread - -
        -          The internal working thread of the system. - - - static java.lang.String WEBSITE @@ -384,18 +376,6 @@

        See Also:
        Constant Field Values
        -
        - -

        -narsThread

        -
        -java.lang.Thread narsThread
        -
        -
        The internal working thread of the system. -

        -

        -
        -
        @@ -447,7 +427,8 @@

         public void init()
        -
        Initialize the system at the control center. +
        Initialize the system at the control center.

        + Can instantiate multiple reasoners

        Overrides:
        init in class java.applet.Applet
        @@ -569,7 +550,7 @@

        PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/main/Parameters.html b/nars-dist/javadoc/nars/main/Parameters.html index 54f7cc8b..d0ab388f 100644 --- a/nars-dist/javadoc/nars/main/Parameters.html +++ b/nars-dist/javadoc/nars/main/Parameters.html @@ -2,13 +2,13 @@ - + -Parameters (NARS Document) +Parameters - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Parameters (NARS Document)"; + parent.document.title="Parameters"; } } @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   @@ -139,7 +139,7 @@

        BUDGET_THRESHOLD
        -          The budget threthold for task to be accepted. +          The budget threthold rate for task to be accepted. @@ -160,26 +160,18 @@

        static float -DECISION_THRESHOLD +DEFAULT_CONFIRMATION_EXPECTATION
        -          The desireability threthold for an operation to be executed. +          Default expectation for conformation. static float -DEFAULT_GOAL_DURABILITY +DEFAULT_CREATION_EXPECTATION
        -          Default durability of input goal - - - -static float -DEFAULT_GOAL_PRIORITY - -
        -          Default priority of input goal +          Default expectation for conformation. @@ -264,15 +256,7 @@

        static int -MAXMUM_EVENTS_LENGTH - -
        -          Range of temporal induction in input events. - - - -static int -MAXMUM_GOALS_LENGTH +MAXMUM_QUESTIONS_LENGTH
                  Maximum number of goals kept in a Concept @@ -296,14 +280,6 @@

        static float -PRIORITY_THRESHOLD - -
        -          The priority threthold for operation to be executed. - - - -static float RELIANCE
        @@ -522,51 +498,39 @@


        -

        -DECISION_THRESHOLD

        -
        -public static final float DECISION_THRESHOLD
        -
        -
        The desireability threthold for an operation to be executed. -

        -

        -
        See Also:
        Constant Field Values
        -
        -
        - -

        -MAXMUM_EVENTS_LENGTH

        +

        +BUDGET_THRESHOLD

        -public static final int MAXMUM_EVENTS_LENGTH
        +public static final float BUDGET_THRESHOLD

      -
      Range of temporal induction in input events. +
      The budget threthold rate for task to be accepted.

      -
      See Also:
      Constant Field Values
      +
      See Also:
      Constant Field Values

      -

      -BUDGET_THRESHOLD

      +

      +DEFAULT_CONFIRMATION_EXPECTATION

      -public static final float BUDGET_THRESHOLD
      +public static final float DEFAULT_CONFIRMATION_EXPECTATION
      -
      The budget threthold for task to be accepted. +
      Default expectation for conformation.

      -
      See Also:
      Constant Field Values
      +
      See Also:
      Constant Field Values

      -

      -PRIORITY_THRESHOLD

      +

      +DEFAULT_CREATION_EXPECTATION

      -public static final float PRIORITY_THRESHOLD
      +public static final float DEFAULT_CREATION_EXPECTATION
      -
      The priority threthold for operation to be executed. +
      Default expectation for conformation.

      -
      See Also:
      Constant Field Values
      +
      See Also:
      Constant Field Values

      @@ -606,30 +570,6 @@


      -

      -DEFAULT_GOAL_PRIORITY

      -
      -public static final float DEFAULT_GOAL_PRIORITY
      -
      -
      Default priority of input goal -

      -

      -
      See Also:
      Constant Field Values
      -
      -
      - -

      -DEFAULT_GOAL_DURABILITY

      -
      -public static final float DEFAULT_GOAL_DURABILITY
      -
      -
      Default durability of input goal -

      -

      -
      See Also:
      Constant Field Values
      -
      -
      -

      DEFAULT_QUESTION_PRIORITY

      @@ -774,15 +714,15 @@ 


      -

      -MAXMUM_GOALS_LENGTH

      +

      +MAXMUM_QUESTIONS_LENGTH

      -public static final int MAXMUM_GOALS_LENGTH
      +public static final int MAXMUM_QUESTIONS_LENGTH
      Maximum number of goals kept in a Concept

      -
      See Also:
      Constant Field Values
      +
      See Also:
      Constant Field Values
      @@ -833,7 +773,7 @@

       PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/main/Reasoner.html b/nars-dist/javadoc/nars/main/Reasoner.html new file mode 100644 index 00000000..2474cd90 --- /dev/null +++ b/nars-dist/javadoc/nars/main/Reasoner.html @@ -0,0 +1,527 @@ + + + + + + + +Reasoner + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + +

      + +nars.main +
      +Class Reasoner

      +
      +java.lang.Object
      +  extended by nars.main.Reasoner
      +
      +
      +
      +
      public class Reasoner
      extends java.lang.Object
      + + +

      +A NARS Reasoner has its memory, I/O channels, and internal clock. +

      + Create static main window and input channel, reset memory, and manage system clock. +

      + +

      +


      + +

      + + + + + + + + + + + +
      +Constructor Summary
      Reasoner(java.lang.String name) + +
      +          Start the initial windows and memory.
      +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      +Method Summary
      + voidaddInputChannel(InputChannel channel) + +
      +           
      + voidaddOutputChannel(OutputChannel channel) + +
      +           
      + InputWindowgetInputWindow() + +
      +           
      + MainWindowgetMainWindow() + +
      +           
      + MemorygetMemory() + +
      +           
      + longgetTime() + +
      +          Get the current time from the clock + Called in nars.entity.Stamp
      + voidremoveInputChannel(InputChannel channel) + +
      +           
      + voidremoveOutputChannel(OutputChannel channel) + +
      +           
      + voidreset() + +
      +          Reset the system with an empty memory and reset clock.
      + voidrun() + +
      +          Start the inference process
      + voidstop() + +
      +          Stop the inference process
      + voidtextInputLine(java.lang.String text) + +
      +          To process a line of input text
      + voidtick() + +
      +          A clock tick.
      + voidwalk(int n) + +
      +          Carry the inference process for a certain number of steps
      + + + + + + + +
      Methods inherited from class java.lang.Object
      clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      +  +

      + + + + + + + + +
      +Constructor Detail
      + +

      +Reasoner

      +
      +public Reasoner(java.lang.String name)
      +
      +
      Start the initial windows and memory. Called from NARS only. +

      +

      +
      Parameters:
      name - The name of the reasoner
      +
      + + + + + + + + +
      +Method Detail
      + +

      +reset

      +
      +public void reset()
      +
      +
      Reset the system with an empty memory and reset clock. Called locally and from MainWindow. +

      +

      +
      +
      +
      +
      + +

      +getMemory

      +
      +public Memory getMemory()
      +
      +
      +
      +
      +
      +
      + +

      +getMainWindow

      +
      +public MainWindow getMainWindow()
      +
      +
      +
      +
      +
      +
      + +

      +getInputWindow

      +
      +public InputWindow getInputWindow()
      +
      +
      +
      +
      +
      +
      + +

      +addInputChannel

      +
      +public void addInputChannel(InputChannel channel)
      +
      +
      +
      +
      +
      +
      + +

      +removeInputChannel

      +
      +public void removeInputChannel(InputChannel channel)
      +
      +
      +
      +
      +
      +
      + +

      +addOutputChannel

      +
      +public void addOutputChannel(OutputChannel channel)
      +
      +
      +
      +
      +
      +
      + +

      +removeOutputChannel

      +
      +public void removeOutputChannel(OutputChannel channel)
      +
      +
      +
      +
      +
      +
      + +

      +getTime

      +
      +public long getTime()
      +
      +
      Get the current time from the clock + Called in nars.entity.Stamp +

      +

      + +
      Returns:
      The current time
      +
      +
      +
      + +

      +run

      +
      +public void run()
      +
      +
      Start the inference process +

      +

      +
      +
      +
      +
      + +

      +walk

      +
      +public void walk(int n)
      +
      +
      Carry the inference process for a certain number of steps +

      +

      +
      Parameters:
      n - The number of inference steps to be carried
      +
      +
      +
      + +

      +stop

      +
      +public void stop()
      +
      +
      Stop the inference process +

      +

      +
      +
      +
      +
      + +

      +tick

      +
      +public void tick()
      +
      +
      A clock tick. Run one working workCycle or read input. Called from NARS only. +

      +

      +
      +
      +
      +
      + +

      +textInputLine

      +
      +public void textInputLine(java.lang.String text)
      +
      +
      To process a line of input text +

      +

      +
      Parameters:
      text -
      +
      +
      + +
      + + + + + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/main/class-use/NARS.html b/nars-dist/javadoc/nars/main/class-use/NARS.html index 64961261..a2e0d7f0 100644 --- a/nars-dist/javadoc/nars/main/class-use/NARS.html +++ b/nars-dist/javadoc/nars/main/class-use/NARS.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.main.NARS (NARS Document) +Uses of Class nars.main.NARS - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.main.NARS (NARS Document)"; + parent.document.title="Uses of Class nars.main.NARS"; } } diff --git a/nars-dist/javadoc/nars/main/class-use/Parameters.html b/nars-dist/javadoc/nars/main/class-use/Parameters.html index 00348725..0b916e58 100644 --- a/nars-dist/javadoc/nars/main/class-use/Parameters.html +++ b/nars-dist/javadoc/nars/main/class-use/Parameters.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.main.Parameters (NARS Document) +Uses of Class nars.main.Parameters - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.main.Parameters (NARS Document)"; + parent.document.title="Uses of Class nars.main.Parameters"; } } diff --git a/nars-dist/javadoc/nars/main/class-use/Reasoner.html b/nars-dist/javadoc/nars/main/class-use/Reasoner.html new file mode 100644 index 00000000..3433d07b --- /dev/null +++ b/nars-dist/javadoc/nars/main/class-use/Reasoner.html @@ -0,0 +1,247 @@ + + + + + + + +Uses of Class nars.main.Reasoner + + + + + + + + + + + + +
      + + + + + + + + + + + + + + + +
      + +
      + + + +
      +
      +

      +Uses of Class
      nars.main.Reasoner

      +
      + + + + + + + + + + + + + + + + + +
      +Packages that use Reasoner
      nars.containerStorage management 
      nars.guiGraphical user interface of the system 
      nars.ioInput/output management 
      +  +

      + + + + + +
      +Uses of Reasoner in nars.container
      +  +

      + + + + + + + + +
      Constructors in nars.container with parameters of type Reasoner
      Memory(Reasoner reasoner) + +
      +          Create a new memory
      +  +

      + + + + + +
      +Uses of Reasoner in nars.gui
      +  +

      + + + + + + + + + + + +
      Constructors in nars.gui with parameters of type Reasoner
      InputWindow(Reasoner reasoner, + java.lang.String title) + +
      +          Constructor
      MainWindow(Reasoner reasoner, + java.lang.String title) + +
      +          Constructor
      +  +

      + + + + + +
      +Uses of Reasoner in nars.io
      +  +

      + + + + + + + + + + + +
      Constructors in nars.io with parameters of type Reasoner
      ExperienceReader(Reasoner reasoner) + +
      +          Default constructor
      ExperienceWriter(Reasoner reasoner) + +
      +          Default constructor
      +  +

      +


      + + + + + + + + + + + + + + + +
      + +
      + + + +
      + + + diff --git a/nars-dist/javadoc/nars/main/package-frame.html b/nars-dist/javadoc/nars/main/package-frame.html index dfd74672..f3079854 100644 --- a/nars-dist/javadoc/nars/main/package-frame.html +++ b/nars-dist/javadoc/nars/main/package-frame.html @@ -2,13 +2,13 @@ - + -nars.main (NARS Document) +nars.main - + @@ -24,13 +24,11 @@ Classes
       
      -Center -
      -Memory -
      NARS
      -Parameters
      +Parameters +
      +Reasoner
      diff --git a/nars-dist/javadoc/nars/main/package-summary.html b/nars-dist/javadoc/nars/main/package-summary.html index 261cd4f8..afb2d01e 100644 --- a/nars-dist/javadoc/nars/main/package-summary.html +++ b/nars-dist/javadoc/nars/main/package-summary.html @@ -2,13 +2,13 @@ - + -nars.main (NARS Document) +nars.main - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.main (NARS Document)"; + parent.document.title="nars.main"; } } @@ -56,8 +56,8 @@ PREV PACKAGE  - NEXT PACKAGEPREV PACKAGE  + NEXT PACKAGE
      FRAMES    NO FRAMES   @@ -96,14 +96,6 @@

      Class Summary -Center -The control center of the system. - - -Memory -The memory of the system. - - NARS The main class of the project. @@ -111,6 +103,10 @@

      Parameters Collected system parameters. + +Reasoner +A NARS Reasoner has its memory, I/O channels, and internal clock. +   @@ -130,10 +126,8 @@

      Package Specification

      Parameters: collects all system parameters, which can be edited before compiling.

      -Center: controls the running of the whole system. +Reasoner: controls the interaction between the memory and the communication channels.

      -Memory: maintains the work space of the system, including static objects that -can be directly accessed from anywhere of the system:

      • a bag of concept,
      • a look-up table of all built-in operators,
      • @@ -174,8 +168,8 @@

        Package Specification

        PREV PACKAGE  - NEXT PACKAGEPREV PACKAGE  + NEXT PACKAGE
        FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/main/package-tree.html b/nars-dist/javadoc/nars/main/package-tree.html index 4a7430af..886e9340 100644 --- a/nars-dist/javadoc/nars/main/package-tree.html +++ b/nars-dist/javadoc/nars/main/package-tree.html @@ -2,13 +2,13 @@ - + -nars.main Class Hierarchy (NARS Document) +nars.main Class Hierarchy - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.main Class Hierarchy (NARS Document)"; + parent.document.title="nars.main Class Hierarchy"; } } @@ -56,8 +56,8 @@ PREV  - NEXTPREV  + NEXT FRAMES    NO FRAMES   @@ -93,7 +93,7 @@

        • java.lang.Object
            -
          • nars.main.Center
          • java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable) +
          • java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable)
            • java.awt.Container
              • java.awt.Panel (implements javax.accessibility.Accessible) @@ -104,7 +104,7 @@

          -
        • nars.main.Memory
        • nars.main.Parameters
        +
      • nars.main.Parameters
      • nars.main.Reasoner


    @@ -136,8 +136,8 @@

    PREV  - NEXTPREV  + NEXT FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/main/package-use.html b/nars-dist/javadoc/nars/main/package-use.html index 41a51ff4..77965d96 100644 --- a/nars-dist/javadoc/nars/main/package-use.html +++ b/nars-dist/javadoc/nars/main/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package nars.main (NARS Document) +Uses of Package nars.main - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package nars.main (NARS Document)"; + parent.document.title="Uses of Package nars.main"; } } @@ -84,7 +84,71 @@

    Uses of Package
    nars.main

    -No usage of nars.main + + + + + + + + + + + + + + + + + +
    +Packages that use nars.main
    nars.containerStorage management 
    nars.guiGraphical user interface of the system 
    nars.ioInput/output management 
    +  +

    + + + + + + + + +
    +Classes in nars.main used by nars.container
    Reasoner + +
    +          A NARS Reasoner has its memory, I/O channels, and internal clock.
    +  +

    + + + + + + + + +
    +Classes in nars.main used by nars.gui
    Reasoner + +
    +          A NARS Reasoner has its memory, I/O channels, and internal clock.
    +  +

    + + + + + + + + +
    +Classes in nars.main used by nars.io
    Reasoner + +
    +          A NARS Reasoner has its memory, I/O channels, and internal clock.


    diff --git a/nars-dist/javadoc/nars/term/CompoundTerm.html b/nars-dist/javadoc/nars/term/CompoundTerm.html new file mode 100644 index 00000000..d07eafa0 --- /dev/null +++ b/nars-dist/javadoc/nars/term/CompoundTerm.html @@ -0,0 +1,1131 @@ + + + + + + + +CompoundTerm + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class CompoundTerm

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    Direct Known Subclasses:
    Conjunction, DifferenceExt, DifferenceInt, Disjunction, ImageExt, ImageInt, IntersectionExt, IntersectionInt, Negation, Product, SetExt, SetInt, Statement
    +
    +
    +
    +
    public abstract class CompoundTerm
    extends Term
    + + +

    +A CompoundTerm is a Term with internal (syntactic) structure +

    + A CompoundTerm consists of a term operator with one or more component Terms. +

    + This abstract class contains default methods for all CompoundTerms. +

    + +

    +


    + +

    + + + + + + + + + + + + + + + +
    +Field Summary
    +protected  shortcomplexity + +
    +          syntactic complexity of the compound, the sum of those of its components plus 1
    +protected  java.util.ArrayList<Term>components + +
    +          list of (direct) components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    +protected CompoundTerm() + +
    +          Default constructor
    +protected CompoundTerm(java.util.ArrayList<Term> components) + +
    +          Constructor called from subclasses constructors to initialize the fields
    +protected CompoundTerm(java.lang.String name, + java.util.ArrayList<Term> components) + +
    +          Constructor called from subclasses constructors to initialize the fields
    +protected CompoundTerm(java.lang.String name, + java.util.ArrayList<Term> components, + boolean isConstant, + short complexity) + +
    +          Constructor called from subclasses constructors to clone the fields
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    +static TermaddComponents(CompoundTerm t1, + Term t2, + Memory memory) + +
    +          Try to add a component into a compound
    + voidapplySubstitute(java.util.HashMap<Term,Term> subs) + +
    +          Recersively apply a substitute to the current CompoundTerm
    +protected static java.util.ArrayList<Term>argumentsToList(Term t1, + Term t2) + +
    +          build a component list from two terms
    +abstract  java.lang.Objectclone() + +
    +          Abstract clone method
    + java.util.ArrayList<Term>cloneComponents() + +
    +          Clone the component list
    +static java.util.ArrayList<Term>cloneList(java.util.ArrayList<Term> original) + +
    +          Deep clone an array list of terms
    + TermcomponentAt(int i) + +
    +          get a component by index
    + booleancontainAllComponents(Term t) + +
    +          Check whether the compound contains all components of another term, or that term as a whole
    + booleancontainComponent(Term t) + +
    +          Check whether the compound contains a certain component
    + booleancontainTerm(Term target) + +
    +          Recursively check if a compound contains a term
    + booleancontainVar() + +
    +          Whether this compound term contains any variable term
    + intgetComplexity() + +
    +          report the term's syntactic complexity
    + java.util.ArrayList<Term>getComponents() + +
    +          Get the component list
    + booleanisCommutative() + +
    +          Check if the order of the components matters
    + booleanisConstant() + +
    +          check if the term contains free variable
    +static booleanisOperator(java.lang.String s) + +
    +          Check CompoundTerm operator symbol
    +static Termmake(CompoundTerm compound, + java.util.ArrayList<Term> components, + Memory memory) + +
    +          Try to make a compound term from a template and a list of components
    +static Termmake(java.lang.String op, + java.util.ArrayList<Term> arg, + Memory memory) + +
    +          Try to make a compound term from an operator and a list of components
    +protected static java.lang.StringmakeCompoundName(java.lang.String op, + java.util.ArrayList<Term> arg) + +
    +          default method to make the oldName of a compound term from given fields
    +protected static java.lang.StringmakeImageName(java.lang.String op, + java.util.ArrayList<Term> arg, + int relationIndex) + +
    +          default method to make the oldName of an image term from given fields
    +protected  java.lang.StringmakeName() + +
    +          default method to make the oldName of the current term from existing fields
    +protected static java.lang.StringmakeSetName(char opener, + java.util.ArrayList<Term> arg, + char closer) + +
    +          make the oldName of an ExtensionSet or IntensionSet
    +abstract  java.lang.Stringoperator() + +
    +          Abstract method to get the operator of the compound
    + java.util.ArrayList<TermLink>prepareComponentLinks() + +
    +          Build TermLink templates to constant components and subcomponents
    +static TermreduceComponents(CompoundTerm t1, + Term t2, + Memory memory) + +
    +          Try to remove a component from a compound
    + voidrenameVariables() + +
    +          Rename the variables in the compound
    + voidrenameVariables(java.util.HashMap<Variable,Variable> map) + +
    +          Rename the variables in the compound
    +static TermsetComponent(CompoundTerm compound, + int index, + Term t, + Memory memory) + +
    +          Try to replace a component in a compound at a given index by another one
    + voidsetConstant(boolean isConstant) + +
    +          Set the constant status
    +protected  voidsetName(java.lang.String s) + +
    +          Change the oldName of a CompoundTerm, called after variable substitution
    + intsize() + +
    +          get the number of components
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +components

    +
    +protected java.util.ArrayList<Term> components
    +
    +
    list of (direct) components +

    +

    +
    +
    +
    + +

    +complexity

    +
    +protected short complexity
    +
    +
    syntactic complexity of the compound, the sum of those of its components plus 1 +

    +

    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +CompoundTerm

    +
    +protected CompoundTerm()
    +
    +
    Default constructor +

    +

    +
    + +

    +CompoundTerm

    +
    +protected CompoundTerm(java.lang.String name,
    +                       java.util.ArrayList<Term> components,
    +                       boolean isConstant,
    +                       short complexity)
    +
    +
    Constructor called from subclasses constructors to clone the fields +

    +

    +
    Parameters:
    name - Name
    components - Component list
    isConstant - Whether the term refers to a concept
    complexity - Complexity of the compound term
    +
    +
    + +

    +CompoundTerm

    +
    +protected CompoundTerm(java.util.ArrayList<Term> components)
    +
    +
    Constructor called from subclasses constructors to initialize the fields +

    +

    +
    Parameters:
    components - Component list
    +
    +
    + +

    +CompoundTerm

    +
    +protected CompoundTerm(java.lang.String name,
    +                       java.util.ArrayList<Term> components)
    +
    +
    Constructor called from subclasses constructors to initialize the fields +

    +

    +
    Parameters:
    name - Name of the compound
    components - Component list
    +
    + + + + + + + + +
    +Method Detail
    + +

    +operator

    +
    +public abstract java.lang.String operator()
    +
    +
    Abstract method to get the operator of the compound +

    +

    + +
    Returns:
    The operator in a String
    +
    +
    +
    + +

    +clone

    +
    +public abstract java.lang.Object clone()
    +
    +
    Abstract clone method +

    +

    +
    Overrides:
    clone in class Term
    +
    +
    + +
    Returns:
    A clone of the compound term
    +
    +
    +
    + +

    +setName

    +
    +protected void setName(java.lang.String s)
    +
    +
    Change the oldName of a CompoundTerm, called after variable substitution +

    +

    +
    Parameters:
    s - The new oldName
    +
    +
    +
    + +

    +make

    +
    +public static Term make(CompoundTerm compound,
    +                        java.util.ArrayList<Term> components,
    +                        Memory memory)
    +
    +
    Try to make a compound term from a template and a list of components +

    +

    +
    Parameters:
    compound - The template
    components - The components
    memory - Reference to the memory +
    Returns:
    A compound term or null
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.lang.String op,
    +                        java.util.ArrayList<Term> arg,
    +                        Memory memory)
    +
    +
    Try to make a compound term from an operator and a list of components +

    + Called from StringParser +

    +

    +
    Parameters:
    op - Term operator
    arg - Component list
    memory - Reference to the memory +
    Returns:
    A compound term or null
    +
    +
    +
    + +

    +isOperator

    +
    +public static boolean isOperator(java.lang.String s)
    +
    +
    Check CompoundTerm operator symbol +

    +

    +
    Parameters:
    s - The String to be checked +
    Returns:
    if the given String is an operator symbol
    +
    +
    +
    + +

    +argumentsToList

    +
    +protected static java.util.ArrayList<Term> argumentsToList(Term t1,
    +                                                           Term t2)
    +
    +
    build a component list from two terms +

    +

    +
    Parameters:
    t1 - the first component
    t2 - the second component +
    Returns:
    the component list
    +
    +
    +
    + +

    +makeName

    +
    +protected java.lang.String makeName()
    +
    +
    default method to make the oldName of the current term from existing fields +

    +

    + +
    Returns:
    the oldName of the term
    +
    +
    +
    + +

    +makeCompoundName

    +
    +protected static java.lang.String makeCompoundName(java.lang.String op,
    +                                                   java.util.ArrayList<Term> arg)
    +
    +
    default method to make the oldName of a compound term from given fields +

    +

    +
    Parameters:
    op - the term operator
    arg - the list of components +
    Returns:
    the oldName of the term
    +
    +
    +
    + +

    +makeSetName

    +
    +protected static java.lang.String makeSetName(char opener,
    +                                              java.util.ArrayList<Term> arg,
    +                                              char closer)
    +
    +
    make the oldName of an ExtensionSet or IntensionSet +

    +

    +
    Parameters:
    opener - the set opener
    closer - the set closer
    arg - the list of components +
    Returns:
    the oldName of the term
    +
    +
    +
    + +

    +makeImageName

    +
    +protected static java.lang.String makeImageName(java.lang.String op,
    +                                                java.util.ArrayList<Term> arg,
    +                                                int relationIndex)
    +
    +
    default method to make the oldName of an image term from given fields +

    +

    +
    Parameters:
    op - the term operator
    arg - the list of components
    relationIndex - the location of the place holder +
    Returns:
    the oldName of the term
    +
    +
    +
    + +

    +getComplexity

    +
    +public int getComplexity()
    +
    +
    report the term's syntactic complexity +

    +

    +
    Overrides:
    getComplexity in class Term
    +
    +
    + +
    Returns:
    the comlexity value
    +
    +
    +
    + +

    +isConstant

    +
    +public boolean isConstant()
    +
    +
    check if the term contains free variable +

    +

    +
    Overrides:
    isConstant in class Term
    +
    +
    + +
    Returns:
    if the term is a constant
    +
    +
    +
    + +

    +setConstant

    +
    +public void setConstant(boolean isConstant)
    +
    +
    Set the constant status +

    +

    +
    Parameters:
    isConstant -
    +
    +
    +
    + +

    +isCommutative

    +
    +public boolean isCommutative()
    +
    +
    Check if the order of the components matters +

    + commutative CompoundTerms: Sets, Intersections + communative Statements: Similarity, Equivalence (except the one with a temporal order) + communative CompoundStatements: Disjunction, Conjunction (except the one with a temporal order) +

    +

    + +
    Returns:
    The default value is false
    +
    +
    +
    + +

    +size

    +
    +public int size()
    +
    +
    get the number of components +

    +

    + +
    Returns:
    the size of the component list
    +
    +
    +
    + +

    +componentAt

    +
    +public Term componentAt(int i)
    +
    +
    get a component by index +

    +

    +
    Parameters:
    i - index of the component +
    Returns:
    the component
    +
    +
    +
    + +

    +getComponents

    +
    +public java.util.ArrayList<Term> getComponents()
    +
    +
    Get the component list +

    +

    + +
    Returns:
    The component list
    +
    +
    +
    + +

    +cloneComponents

    +
    +public java.util.ArrayList<Term> cloneComponents()
    +
    +
    Clone the component list +

    +

    + +
    Returns:
    The cloned component list
    +
    +
    +
    + +

    +cloneList

    +
    +public static java.util.ArrayList<Term> cloneList(java.util.ArrayList<Term> original)
    +
    +
    Deep clone an array list of terms +

    +

    +
    Parameters:
    original - The original component list +
    Returns:
    an identical and separate copy of the list
    +
    +
    +
    + +

    +containComponent

    +
    +public boolean containComponent(Term t)
    +
    +
    Check whether the compound contains a certain component +

    +

    +
    Parameters:
    t - The component to be checked +
    Returns:
    Whether the component is in the compound
    +
    +
    +
    + +

    +containTerm

    +
    +public boolean containTerm(Term target)
    +
    +
    Recursively check if a compound contains a term +

    +

    +
    Overrides:
    containTerm in class Term
    +
    +
    +
    Parameters:
    target - The term to be searched +
    Returns:
    Whether the terget is in the current term
    +
    +
    +
    + +

    +containAllComponents

    +
    +public boolean containAllComponents(Term t)
    +
    +
    Check whether the compound contains all components of another term, or that term as a whole +

    +

    +
    Parameters:
    t - The other term +
    Returns:
    Whether the components are all in the compound
    +
    +
    +
    + +

    +addComponents

    +
    +public static Term addComponents(CompoundTerm t1,
    +                                 Term t2,
    +                                 Memory memory)
    +
    +
    Try to add a component into a compound +

    +

    +
    Parameters:
    t1 - The compound
    t2 - The component
    memory - Reference to the memeory +
    Returns:
    The new compound
    +
    +
    +
    + +

    +reduceComponents

    +
    +public static Term reduceComponents(CompoundTerm t1,
    +                                    Term t2,
    +                                    Memory memory)
    +
    +
    Try to remove a component from a compound +

    +

    +
    Parameters:
    t1 - The compound
    t2 - The component
    memory - Reference to the memeory +
    Returns:
    The new compound
    +
    +
    +
    + +

    +setComponent

    +
    +public static Term setComponent(CompoundTerm compound,
    +                                int index,
    +                                Term t,
    +                                Memory memory)
    +
    +
    Try to replace a component in a compound at a given index by another one +

    +

    +
    Parameters:
    compound - The compound
    index - The location of replacement
    t - The new component
    memory - Reference to the memeory +
    Returns:
    The new compound
    +
    +
    +
    + +

    +containVar

    +
    +public boolean containVar()
    +
    +
    Whether this compound term contains any variable term +

    +

    + +
    Returns:
    Whether the name contains a variable
    +
    +
    +
    + +

    +renameVariables

    +
    +public void renameVariables()
    +
    +
    Rename the variables in the compound +

    +

    +
    Overrides:
    renameVariables in class Term
    +
    +
    +
    +
    +
    +
    + +

    +renameVariables

    +
    +public void renameVariables(java.util.HashMap<Variable,Variable> map)
    +
    +
    Rename the variables in the compound +

    +

    +
    Parameters:
    map - The substitution established so far
    +
    +
    +
    + +

    +applySubstitute

    +
    +public void applySubstitute(java.util.HashMap<Term,Term> subs)
    +
    +
    Recersively apply a substitute to the current CompoundTerm +

    +

    +
    Parameters:
    subs -
    +
    +
    +
    + +

    +prepareComponentLinks

    +
    +public java.util.ArrayList<TermLink> prepareComponentLinks()
    +
    +
    Build TermLink templates to constant components and subcomponents +

    + The compound type determines the link type; the component type determines whether to build the link. +

    +

    + +
    Returns:
    A list of TermLink templates
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Conjunction.html b/nars-dist/javadoc/nars/term/Conjunction.html new file mode 100644 index 00000000..dd41b12e --- /dev/null +++ b/nars-dist/javadoc/nars/term/Conjunction.html @@ -0,0 +1,445 @@ + + + + + + + +Conjunction + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Conjunction

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Conjunction
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Conjunction
    extends CompoundTerm
    + + +

    +Conjunction of statements +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + +
    +Constructor Summary
    +protected Conjunction(java.util.ArrayList<Term> arg) + +
    +          Constructor with partial values, called by make
    +protected Conjunction(java.lang.String n, + java.util.ArrayList<Term> cs, + boolean con, + short i) + +
    +          Constructor with full values, called by clone
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    + booleanisCommutative() + +
    +          Check if the compound is communitative.
    +static Termmake(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new compound from a list of components.
    +static Termmake(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Conjunction

    +
    +protected Conjunction(java.util.ArrayList<Term> arg)
    +
    +
    Constructor with partial values, called by make +

    +

    +
    Parameters:
    arg - The component list of the term
    +
    +
    + +

    +Conjunction

    +
    +protected Conjunction(java.lang.String n,
    +                      java.util.ArrayList<Term> cs,
    +                      boolean con,
    +                      short i)
    +
    +
    Constructor with full values, called by clone +

    +

    +
    Parameters:
    n - The name of the term
    cs - Component list
    con - Whether the term is a constant
    i - Syntactic complexity of the compound
    +
    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    +
    + +

    +isCommutative

    +
    +public boolean isCommutative()
    +
    +
    Check if the compound is communitative. +

    +

    +
    Overrides:
    isCommutative in class CompoundTerm
    +
    +
    + +
    Returns:
    true for communitative
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argList,
    +                        Memory memory)
    +
    +
    Try to make a new compound from a list of components. Called by StringParser. +

    +

    +
    Parameters:
    argList - the list of arguments
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Term term1,
    +                        Term term2,
    +                        Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    +

    +
    Parameters:
    term1 - The first compoment
    term2 - The second compoment
    memory - Reference to the memory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/DifferenceExt.html b/nars-dist/javadoc/nars/term/DifferenceExt.html new file mode 100644 index 00000000..0ce588e3 --- /dev/null +++ b/nars-dist/javadoc/nars/term/DifferenceExt.html @@ -0,0 +1,355 @@ + + + + + + + +DifferenceExt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class DifferenceExt

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.DifferenceExt
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class DifferenceExt
    extends CompoundTerm
    + + +

    +A compound term whose extension is the difference of the extensions of its components +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    +static Termmake(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new DifferenceExt.
    +static Termmake(Term t1, + Term t2, + Memory memory) + +
    +          Try to make a new compound from two components.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object, to be casted into a DifferenceExt
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argList,
    +                        Memory memory)
    +
    +
    Try to make a new DifferenceExt. Called by StringParser. +

    +

    +
    Parameters:
    argList - The list of components
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Term t1,
    +                        Term t2,
    +                        Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    +

    +
    Parameters:
    t1 - The first compoment
    t2 - The second compoment
    memory - Reference to the memory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/DifferenceInt.html b/nars-dist/javadoc/nars/term/DifferenceInt.html new file mode 100644 index 00000000..e68eace8 --- /dev/null +++ b/nars-dist/javadoc/nars/term/DifferenceInt.html @@ -0,0 +1,355 @@ + + + + + + + +DifferenceInt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class DifferenceInt

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.DifferenceInt
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class DifferenceInt
    extends CompoundTerm
    + + +

    +A compound term whose extension is the difference of the intensions of its components +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    +static Termmake(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new DifferenceExt.
    +static Termmake(Term t1, + Term t2, + Memory memory) + +
    +          Try to make a new compound from two components.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object, to be casted into a DifferenceInt
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argList,
    +                        Memory memory)
    +
    +
    Try to make a new DifferenceExt. Called by StringParser. +

    +

    +
    Parameters:
    argList - The list of components
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Term t1,
    +                        Term t2,
    +                        Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    +

    +
    Parameters:
    t1 - The first compoment
    t2 - The second compoment
    memory - Reference to the memory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Disjunction.html b/nars-dist/javadoc/nars/term/Disjunction.html new file mode 100644 index 00000000..23030657 --- /dev/null +++ b/nars-dist/javadoc/nars/term/Disjunction.html @@ -0,0 +1,404 @@ + + + + + + + +Disjunction + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Disjunction

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Disjunction
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Disjunction
    extends CompoundTerm
    + + +

    +A disjunction of Statements. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    + booleanisCommutative() + +
    +          Disjunction is communitative.
    +static Termmake(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static Termmake(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new Disjunction from two components.
    +static Termmake(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new Disjunction from a set of components.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Term term1,
    +                        Term term2,
    +                        Memory memory)
    +
    +
    Try to make a new Disjunction from two components. Called by the inference rules. +

    +

    +
    Parameters:
    term1 - The first compoment
    term2 - The first compoment
    memory - Reference to the memory +
    Returns:
    A Disjunction generated or a Term it reduced to
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argList,
    +                        Memory memory)
    +
    +
    Try to make a new IntersectionExt. Called by StringParser. +

    +

    +
    Parameters:
    argList - a list of Term as compoments
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.TreeSet<Term> set,
    +                        Memory memory)
    +
    +
    Try to make a new Disjunction from a set of components. Called by the public make methods. +

    +

    +
    Parameters:
    set - a set of Term as compoments
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    +
    + +

    +isCommutative

    +
    +public boolean isCommutative()
    +
    +
    Disjunction is communitative. +

    +

    +
    Overrides:
    isCommutative in class CompoundTerm
    +
    +
    + +
    Returns:
    true for communitative
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Equivalence.html b/nars-dist/javadoc/nars/term/Equivalence.html new file mode 100644 index 00000000..1ff7e3f6 --- /dev/null +++ b/nars-dist/javadoc/nars/term/Equivalence.html @@ -0,0 +1,431 @@ + + + + + + + +Equivalence + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Equivalence

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Statement
    +              extended by nars.term.Equivalence
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Equivalence
    extends Statement
    + + +

    +A Statement about an Equivalence relation. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + +
    +Constructor Summary
    +protected Equivalence(java.util.ArrayList<Term> components) + +
    +          Constructor with partial values, called by make
    +protected Equivalence(java.lang.String n, + java.util.ArrayList<Term> components, + boolean constant, + short complexity) + +
    +          Constructor with full values, called by clone
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    + booleanisCommutative() + +
    +          Check if the compound is communitative.
    +static Equivalencemake(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.Statement
    getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Equivalence

    +
    +protected Equivalence(java.util.ArrayList<Term> components)
    +
    +
    Constructor with partial values, called by make +

    +

    +
    Parameters:
    components - The component list of the term
    +
    +
    + +

    +Equivalence

    +
    +protected Equivalence(java.lang.String n,
    +                      java.util.ArrayList<Term> components,
    +                      boolean constant,
    +                      short complexity)
    +
    +
    Constructor with full values, called by clone +

    +

    +
    Parameters:
    n - The name of the term
    components - Component list
    constant - Whether the statement contains open variable
    complexity - Syntactic complexity of the compound
    +
    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object
    +
    +
    +
    + +

    +make

    +
    +public static Equivalence make(Term subject,
    +                               Term predicate,
    +                               Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    +

    +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memory +
    Returns:
    A compound generated or null
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    +
    + +

    +isCommutative

    +
    +public boolean isCommutative()
    +
    +
    Check if the compound is communitative. +

    +

    +
    Overrides:
    isCommutative in class CompoundTerm
    +
    +
    + +
    Returns:
    true for communitative
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/ImageExt.html b/nars-dist/javadoc/nars/term/ImageExt.html new file mode 100644 index 00000000..6207b168 --- /dev/null +++ b/nars-dist/javadoc/nars/term/ImageExt.html @@ -0,0 +1,506 @@ + + + + + + + +ImageExt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class ImageExt

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.ImageExt
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class ImageExt
    extends CompoundTerm
    + + +

    +An extension image. +

    + B --> (/,P,A,_)) iff (*,A,B) --> P +

    + Internally, it is actually (/,A,P)_1, with an index. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    + TermgetRelation() + +
    +          Get the relation term in the Image
    + shortgetRelationIndex() + +
    +          get the index of the relation in the component list
    + TermgetTheOtherComponent() + +
    +          Get the other term in the Image
    +static Termmake(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new ImageExt.
    +static Termmake(java.util.ArrayList<Term> argument, + short index, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static Termmake(ImageExt oldImage, + Term component, + short index, + Memory memory) + +
    +          Try to make an Image from an existing Image and a component.
    +static Termmake(Product product, + Term relation, + short index, + Memory memory) + +
    +          Try to make an Image from a Product and a relation.
    + java.lang.StringmakeName() + +
    +          override the default in making the name of the current term from existing fields
    + java.lang.Stringoperator() + +
    +          get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object, to be casted into an ImageExt
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argList,
    +                        Memory memory)
    +
    +
    Try to make a new ImageExt. Called by StringParser. +

    +

    +
    Parameters:
    argList - The list of components +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Product product,
    +                        Term relation,
    +                        short index,
    +                        Memory memory)
    +
    +
    Try to make an Image from a Product and a relation. Called by the inference rules. +

    +

    +
    Parameters:
    product - The product
    relation - The relation
    index - The index of the place-holder +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +make

    +
    +public static Term make(ImageExt oldImage,
    +                        Term component,
    +                        short index,
    +                        Memory memory)
    +
    +
    Try to make an Image from an existing Image and a component. Called by the inference rules. +

    +

    +
    Parameters:
    oldImage - The existing Image
    component - The component to be added into the component list
    index - The index of the place-holder in the new Image +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argument,
    +                        short index,
    +                        Memory memory)
    +
    +
    Try to make a new compound from a set of components. Called by the public make methods. +

    +

    +
    Parameters:
    argument - The argument list
    index - The index of the place-holder in the new Image +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +getRelationIndex

    +
    +public short getRelationIndex()
    +
    +
    get the index of the relation in the component list +

    +

    + +
    Returns:
    the index of relation
    +
    +
    +
    + +

    +getRelation

    +
    +public Term getRelation()
    +
    +
    Get the relation term in the Image +

    +

    + +
    Returns:
    The term representing a relation
    +
    +
    +
    + +

    +getTheOtherComponent

    +
    +public Term getTheOtherComponent()
    +
    +
    Get the other term in the Image +

    +

    + +
    Returns:
    The term related
    +
    +
    +
    + +

    +makeName

    +
    +public java.lang.String makeName()
    +
    +
    override the default in making the name of the current term from existing fields +

    +

    +
    Overrides:
    makeName in class CompoundTerm
    +
    +
    + +
    Returns:
    the name of the term
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/ImageInt.html b/nars-dist/javadoc/nars/term/ImageInt.html new file mode 100644 index 00000000..2de54e7a --- /dev/null +++ b/nars-dist/javadoc/nars/term/ImageInt.html @@ -0,0 +1,506 @@ + + + + + + + +ImageInt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class ImageInt

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.ImageInt
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class ImageInt
    extends CompoundTerm
    + + +

    +An intension image. +

    + (\,P,A,_)) --> B iff P --> (*,A,B) +

    + Internally, it is actually (\,A,P)_1, with an index. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    + TermgetRelation() + +
    +          Get the relation term in the Image
    + shortgetRelationIndex() + +
    +          get the index of the relation in the component list
    + TermgetTheOtherComponent() + +
    +          Get the other term in the Image
    +static Termmake(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new ImageExt.
    +static Termmake(java.util.ArrayList<Term> argument, + short index, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static Termmake(ImageInt oldImage, + Term component, + short index, + Memory memory) + +
    +          Try to make an Image from an existing Image and a component.
    +static Termmake(Product product, + Term relation, + short index, + Memory memory) + +
    +          Try to make an Image from a Product and a relation.
    + java.lang.StringmakeName() + +
    +          Override the default in making the name of the current term from existing fields
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object, to be casted into an ImageInt
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argList,
    +                        Memory memory)
    +
    +
    Try to make a new ImageExt. Called by StringParser. +

    +

    +
    Parameters:
    argList - The list of components
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Product product,
    +                        Term relation,
    +                        short index,
    +                        Memory memory)
    +
    +
    Try to make an Image from a Product and a relation. Called by the inference rules. +

    +

    +
    Parameters:
    product - The product
    relation - The relation
    index - The index of the place-holder
    memory - Reference to the memory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +make

    +
    +public static Term make(ImageInt oldImage,
    +                        Term component,
    +                        short index,
    +                        Memory memory)
    +
    +
    Try to make an Image from an existing Image and a component. Called by the inference rules. +

    +

    +
    Parameters:
    oldImage - The existing Image
    component - The component to be added into the component list
    index - The index of the place-holder in the new Image
    memory - Reference to the memory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argument,
    +                        short index,
    +                        Memory memory)
    +
    +
    Try to make a new compound from a set of components. Called by the public make methods. +

    +

    +
    Parameters:
    argument - The argument list
    index - The index of the place-holder in the new Image
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +getRelationIndex

    +
    +public short getRelationIndex()
    +
    +
    get the index of the relation in the component list +

    +

    + +
    Returns:
    the index of relation
    +
    +
    +
    + +

    +getRelation

    +
    +public Term getRelation()
    +
    +
    Get the relation term in the Image +

    +

    + +
    Returns:
    The term representing a relation
    +
    +
    +
    + +

    +getTheOtherComponent

    +
    +public Term getTheOtherComponent()
    +
    +
    Get the other term in the Image +

    +

    + +
    Returns:
    The term related
    +
    +
    +
    + +

    +makeName

    +
    +public java.lang.String makeName()
    +
    +
    Override the default in making the name of the current term from existing fields +

    +

    +
    Overrides:
    makeName in class CompoundTerm
    +
    +
    + +
    Returns:
    the name of the term
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Implication.html b/nars-dist/javadoc/nars/term/Implication.html new file mode 100644 index 00000000..dea441d4 --- /dev/null +++ b/nars-dist/javadoc/nars/term/Implication.html @@ -0,0 +1,406 @@ + + + + + + + +Implication + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Implication

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Statement
    +              extended by nars.term.Implication
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Implication
    extends Statement
    + + +

    +A Statement about an Inheritance relation. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + +
    +Constructor Summary
    +protected Implication(java.util.ArrayList<Term> arg) + +
    +          Constructor with partial values, called by make
    +protected Implication(java.lang.String n, + java.util.ArrayList<Term> cs, + boolean con, + short i) + +
    +          Constructor with full values, called by clone
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    +static Implicationmake(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.Statement
    getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Implication

    +
    +protected Implication(java.util.ArrayList<Term> arg)
    +
    +
    Constructor with partial values, called by make +

    +

    +
    Parameters:
    arg - The component list of the term
    +
    +
    + +

    +Implication

    +
    +protected Implication(java.lang.String n,
    +                      java.util.ArrayList<Term> cs,
    +                      boolean con,
    +                      short i)
    +
    +
    Constructor with full values, called by clone +

    +

    +
    Parameters:
    n - The name of the term
    cs - Component list
    con - Whether it is a constant term
    i - Syntactic complexity of the compound
    +
    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object
    +
    +
    +
    + +

    +make

    +
    +public static Implication make(Term subject,
    +                               Term predicate,
    +                               Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    +

    +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Inheritance.html b/nars-dist/javadoc/nars/term/Inheritance.html new file mode 100644 index 00000000..00b865cc --- /dev/null +++ b/nars-dist/javadoc/nars/term/Inheritance.html @@ -0,0 +1,341 @@ + + + + + + + +Inheritance + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Inheritance

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Statement
    +              extended by nars.term.Inheritance
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Inheritance
    extends Statement
    + + +

    +A Statement about an Inheritance relation. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    +static Inheritancemake(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.Statement
    getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object, to be casted into a SetExt
    +
    +
    +
    + +

    +make

    +
    +public static Inheritance make(Term subject,
    +                               Term predicate,
    +                               Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    +

    +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memory +
    Returns:
    A compound generated or null
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Instance.html b/nars-dist/javadoc/nars/term/Instance.html new file mode 100644 index 00000000..5a4dd9f0 --- /dev/null +++ b/nars-dist/javadoc/nars/term/Instance.html @@ -0,0 +1,327 @@ + + + + + + + +Instance + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Instance

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Statement
    +              extended by nars.term.Instance
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public abstract class Instance
    extends Statement
    + + +

    +A Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + +
    +Constructor Summary
    Instance() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    +static Statementmake(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    + + + + + + + +
    Methods inherited from class nars.term.Statement
    getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Instance

    +
    +public Instance()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +make

    +
    +public static Statement make(Term subject,
    +                             Term predicate,
    +                             Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    + A {-- B becomes {A} --> B +

    +

    +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memory +
    Returns:
    A compound generated or null
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/InstanceProperty.html b/nars-dist/javadoc/nars/term/InstanceProperty.html new file mode 100644 index 00000000..79fa55cc --- /dev/null +++ b/nars-dist/javadoc/nars/term/InstanceProperty.html @@ -0,0 +1,327 @@ + + + + + + + +InstanceProperty + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class InstanceProperty

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Statement
    +              extended by nars.term.InstanceProperty
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public abstract class InstanceProperty
    extends Statement
    + + +

    +A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + +
    +Constructor Summary
    InstanceProperty() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    +static Statementmake(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    + + + + + + + +
    Methods inherited from class nars.term.Statement
    getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +InstanceProperty

    +
    +public InstanceProperty()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +make

    +
    +public static Statement make(Term subject,
    +                             Term predicate,
    +                             Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    + A {-] B becomes {A} --> [B] +

    +

    +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memory +
    Returns:
    A compound generated or null
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/IntersectionExt.html b/nars-dist/javadoc/nars/term/IntersectionExt.html new file mode 100644 index 00000000..9d83085a --- /dev/null +++ b/nars-dist/javadoc/nars/term/IntersectionExt.html @@ -0,0 +1,404 @@ + + + + + + + +IntersectionExt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class IntersectionExt

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.IntersectionExt
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class IntersectionExt
    extends CompoundTerm
    + + +

    +A compound term whose extension is the intersection of the extensions of its components +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    + booleanisCommutative() + +
    +          Check if the compound is communitative.
    +static Termmake(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static Termmake(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static Termmake(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object, to be casted into a IntersectionExt
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Term term1,
    +                        Term term2,
    +                        Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    +

    +
    Parameters:
    term1 - The first compoment
    term2 - The first compoment
    memory - Reference to the memory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argList,
    +                        Memory memory)
    +
    +
    Try to make a new IntersectionExt. Called by StringParser. +

    +

    +
    Parameters:
    argList - The list of components
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.TreeSet<Term> set,
    +                        Memory memory)
    +
    +
    Try to make a new compound from a set of components. Called by the public make methods. +

    +

    +
    Parameters:
    set - a set of Term as compoments
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    +
    + +

    +isCommutative

    +
    +public boolean isCommutative()
    +
    +
    Check if the compound is communitative. +

    +

    +
    Overrides:
    isCommutative in class CompoundTerm
    +
    +
    + +
    Returns:
    true for communitative
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/IntersectionInt.html b/nars-dist/javadoc/nars/term/IntersectionInt.html new file mode 100644 index 00000000..0a1b2240 --- /dev/null +++ b/nars-dist/javadoc/nars/term/IntersectionInt.html @@ -0,0 +1,404 @@ + + + + + + + +IntersectionInt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class IntersectionInt

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.IntersectionInt
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class IntersectionInt
    extends CompoundTerm
    + + +

    +A compound term whose intension is the intersection of the extensions of its components +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    + booleanisCommutative() + +
    +          Check if the compound is communitative.
    +static Termmake(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static Termmake(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static Termmake(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object, to be casted into a Conjunction
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Term term1,
    +                        Term term2,
    +                        Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    +

    +
    Parameters:
    term1 - The first compoment
    term2 - The first compoment
    memory - Reference to the memory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argList,
    +                        Memory memory)
    +
    +
    Try to make a new IntersectionExt. Called by StringParser. +

    +

    +
    Parameters:
    argList - The list of components
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.TreeSet<Term> set,
    +                        Memory memory)
    +
    +
    Try to make a new compound from a set of components. Called by the public make methods. +

    +

    +
    Parameters:
    set - a set of Term as compoments
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    +
    + +

    +isCommutative

    +
    +public boolean isCommutative()
    +
    +
    Check if the compound is communitative. +

    +

    +
    Overrides:
    isCommutative in class CompoundTerm
    +
    +
    + +
    Returns:
    true for communitative
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Negation.html b/nars-dist/javadoc/nars/term/Negation.html new file mode 100644 index 00000000..56a8e919 --- /dev/null +++ b/nars-dist/javadoc/nars/term/Negation.html @@ -0,0 +1,353 @@ + + + + + + + +Negation + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Negation

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Negation
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Negation
    extends CompoundTerm
    + + +

    +A negation of a Statement. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    +static Termmake(java.util.ArrayList<Term> argument, + Memory memory) + +
    +          Try to make a new SetExt.
    +static Termmake(Term t, + Memory memory) + +
    +          Try to make a Negation of one component.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Term t,
    +                        Memory memory)
    +
    +
    Try to make a Negation of one component. Called by the inference rules. +

    +

    +
    Parameters:
    t - The compoment
    memory - Reference to the memory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argument,
    +                        Memory memory)
    +
    +
    Try to make a new SetExt. Called by StringParser. +

    +

    +
    Parameters:
    argument - The list of components
    memory - Reference to the memory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Product.html b/nars-dist/javadoc/nars/term/Product.html new file mode 100644 index 00000000..2d409244 --- /dev/null +++ b/nars-dist/javadoc/nars/term/Product.html @@ -0,0 +1,357 @@ + + + + + + + +Product + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Product

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Product
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Product
    extends CompoundTerm
    + + +

    +A Product is a sequence of terms. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone a Product
    +static Termmake(java.util.ArrayList<Term> argument, + Memory memory) + +
    +          Try to make a new compound.
    +static Termmake(CompoundTerm image, + Term component, + int index, + Memory memory) + +
    +          Try to make a Product from an ImageExt/ImageInt and a component.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone a Product +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object, to be casted into an ImageExt
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argument,
    +                        Memory memory)
    +
    +
    Try to make a new compound. Called by StringParser. +

    +

    +
    Parameters:
    argument - The list of components
    memory - Reference to the memeory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(CompoundTerm image,
    +                        Term component,
    +                        int index,
    +                        Memory memory)
    +
    +
    Try to make a Product from an ImageExt/ImageInt and a component. Called by the inference rules. +

    +

    +
    Parameters:
    image - The existing Image
    component - The component to be added into the component list
    index - The index of the place-holder in the new Image -- optional parameter
    memory - Reference to the memeory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Property.html b/nars-dist/javadoc/nars/term/Property.html new file mode 100644 index 00000000..a9ccfa77 --- /dev/null +++ b/nars-dist/javadoc/nars/term/Property.html @@ -0,0 +1,327 @@ + + + + + + + +Property + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Property

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Statement
    +              extended by nars.term.Property
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public abstract class Property
    extends Statement
    + + +

    +A Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + +
    +Constructor Summary
    Property() + +
    +           
    +  + + + + + + + + + + + +
    +Method Summary
    +static Statementmake(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    + + + + + + + +
    Methods inherited from class nars.term.Statement
    getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Property

    +
    +public Property()
    +
    +
    + + + + + + + + +
    +Method Detail
    + +

    +make

    +
    +public static Statement make(Term subject,
    +                             Term predicate,
    +                             Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    + A --] B becomes A --> [B] +

    +

    +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memeory +
    Returns:
    A compound generated or null
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/SetExt.html b/nars-dist/javadoc/nars/term/SetExt.html new file mode 100644 index 00000000..28d5acc0 --- /dev/null +++ b/nars-dist/javadoc/nars/term/SetExt.html @@ -0,0 +1,427 @@ + + + + + + + +SetExt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class SetExt

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.SetExt
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class SetExt
    extends CompoundTerm
    + + +

    +An extensionally defined set, which contains one or more instances. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone a SetExt
    + booleanisCommutative() + +
    +          Check if the compound is communitative.
    +static Termmake(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new SetExt.
    +static Termmake(Term t, + Memory memory) + +
    +          Try to make a new set from one component.
    +static Termmake(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    + java.lang.StringmakeName() + +
    +          Make a String representation of the set, override the default.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone a SetExt +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object, to be casted into a SetExt
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Term t,
    +                        Memory memory)
    +
    +
    Try to make a new set from one component. Called by the inference rules. +

    +

    +
    Parameters:
    t - The compoment
    memory - Reference to the memeory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argList,
    +                        Memory memory)
    +
    +
    Try to make a new SetExt. Called by StringParser. +

    +

    +
    Parameters:
    argList - The list of components
    memory - Reference to the memeory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.TreeSet<Term> set,
    +                        Memory memory)
    +
    +
    Try to make a new compound from a set of components. Called by the public make methods. +

    +

    +
    Parameters:
    set - a set of Term as compoments
    memory - Reference to the memeory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    +
    + +

    +isCommutative

    +
    +public boolean isCommutative()
    +
    +
    Check if the compound is communitative. +

    +

    +
    Overrides:
    isCommutative in class CompoundTerm
    +
    +
    + +
    Returns:
    true for communitative
    +
    +
    +
    + +

    +makeName

    +
    +public java.lang.String makeName()
    +
    +
    Make a String representation of the set, override the default. +

    +

    +
    Overrides:
    makeName in class CompoundTerm
    +
    +
    + +
    Returns:
    true for communitative
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/SetInt.html b/nars-dist/javadoc/nars/term/SetInt.html new file mode 100644 index 00000000..b20fcd75 --- /dev/null +++ b/nars-dist/javadoc/nars/term/SetInt.html @@ -0,0 +1,427 @@ + + + + + + + +SetInt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class SetInt

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.SetInt
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class SetInt
    extends CompoundTerm
    + + +

    +An intensionally defined set, which contains one or more instances defining the Term. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone a SetInt
    + booleanisCommutative() + +
    +          Check if the compound is communitative.
    +static Termmake(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new SetExt.
    +static Termmake(Term t, + Memory memory) + +
    +          Try to make a new set from one component.
    +static Termmake(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    + java.lang.StringmakeName() + +
    +          Make a String representation of the set, override the default.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone a SetInt +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object, to be casted into a SetInt
    +
    +
    +
    + +

    +make

    +
    +public static Term make(Term t,
    +                        Memory memory)
    +
    +
    Try to make a new set from one component. Called by the inference rules. +

    +

    +
    Parameters:
    t - The compoment
    memory - Reference to the memeory +
    Returns:
    A compound generated or a term it reduced to
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.ArrayList<Term> argList,
    +                        Memory memory)
    +
    +
    Try to make a new SetExt. Called by StringParser. +

    +

    +
    Parameters:
    argList - The list of components
    memory - Reference to the memeory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +make

    +
    +public static Term make(java.util.TreeSet<Term> set,
    +                        Memory memory)
    +
    +
    Try to make a new compound from a set of components. Called by the public make methods. +

    +

    +
    Parameters:
    set - a set of Term as compoments
    memory - Reference to the memeory +
    Returns:
    the Term generated from the arguments
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    +
    + +

    +isCommutative

    +
    +public boolean isCommutative()
    +
    +
    Check if the compound is communitative. +

    +

    +
    Overrides:
    isCommutative in class CompoundTerm
    +
    +
    + +
    Returns:
    true for communitative
    +
    +
    +
    + +

    +makeName

    +
    +public java.lang.String makeName()
    +
    +
    Make a String representation of the set, override the default. +

    +

    +
    Overrides:
    makeName in class CompoundTerm
    +
    +
    + +
    Returns:
    true for communitative
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Similarity.html b/nars-dist/javadoc/nars/term/Similarity.html new file mode 100644 index 00000000..809701a5 --- /dev/null +++ b/nars-dist/javadoc/nars/term/Similarity.html @@ -0,0 +1,366 @@ + + + + + + + +Similarity + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Similarity

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Statement
    +              extended by nars.term.Similarity
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Similarity
    extends Statement
    + + +

    +A Statement about a Similarity relation. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone an object
    + booleanisCommutative() + +
    +          Check if the compound is communitative.
    +static Similaritymake(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    + java.lang.Stringoperator() + +
    +          Get the operator of the term.
    + + + + + + + +
    Methods inherited from class nars.term.Statement
    getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone an object +

    +

    +
    Specified by:
    clone in class CompoundTerm
    +
    +
    + +
    Returns:
    A new object, to be casted into a Similarity
    +
    +
    +
    + +

    +make

    +
    +public static Similarity make(Term subject,
    +                              Term predicate,
    +                              Memory memory)
    +
    +
    Try to make a new compound from two components. Called by the inference rules. +

    +

    +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memeory +
    Returns:
    A compound generated or null
    +
    +
    +
    + +

    +operator

    +
    +public java.lang.String operator()
    +
    +
    Get the operator of the term. +

    +

    +
    Specified by:
    operator in class CompoundTerm
    +
    +
    + +
    Returns:
    the operator of the term
    +
    +
    +
    + +

    +isCommutative

    +
    +public boolean isCommutative()
    +
    +
    Check if the compound is communitative. +

    +

    +
    Overrides:
    isCommutative in class CompoundTerm
    +
    +
    + +
    Returns:
    true for communitative
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Statement.html b/nars-dist/javadoc/nars/term/Statement.html new file mode 100644 index 00000000..71997dc0 --- /dev/null +++ b/nars-dist/javadoc/nars/term/Statement.html @@ -0,0 +1,593 @@ + + + + + + + +Statement + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Statement

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.CompoundTerm
    +          extended by nars.term.Statement
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    Direct Known Subclasses:
    Equivalence, Implication, Inheritance, Instance, InstanceProperty, Property, Similarity
    +
    +
    +
    +
    public abstract class Statement
    extends CompoundTerm
    + + +

    +A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between. It can be of either first-order or higher-order. +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.CompoundTerm
    complexity, components
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + + + + + + + + + + +
    +Constructor Summary
    +protected Statement() + +
    +          Default constructor
    +protected Statement(java.util.ArrayList<Term> arg) + +
    +          Constructor with partial values, called by make
    +protected Statement(java.lang.String n, + java.util.ArrayList<Term> cs, + boolean con, + short i) + +
    +          Constructor with full values, called by clone
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + TermgetPredicate() + +
    +          Return the second component of the statement
    + TermgetSubject() + +
    +          Return the first component of the statement
    + booleaninvalid() + +
    +          Check the validity of a potential Statement.
    +static booleaninvalidStatement(Term subject, + Term predicate) + +
    +          Check the validity of a potential Statement.
    +static booleanisRelation(java.lang.String s0) + +
    +          Check Statement relation symbol, called in StringPaser
    +static Statementmake(Statement statement, + Term subj, + Term pred, + Memory memory) + +
    +          Make a Statement from given components, called by the rules
    +static Statementmake(java.lang.String relation, + Term subject, + Term predicate, + Memory memory) + +
    +          Make a Statement from String, called by StringParser
    +protected  java.lang.StringmakeName() + +
    +          Override the default in making the nameStr of the current term from existing fields
    +protected static java.lang.StringmakeStatementName(Term subject, + java.lang.String relation, + Term predicate) + +
    +          Default method to make the nameStr of an image term from given fields
    +static StatementmakeSym(Statement statement, + Term subj, + Term pred, + Memory memory) + +
    +          Make a symmetric Statement from given components and temporal information, called by the rules
    + + + + + + + +
    Methods inherited from class nars.term.CompoundTerm
    addComponents, applySubstitute, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, equals, getName, hashCode, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Statement

    +
    +protected Statement()
    +
    +
    Default constructor +

    +

    +
    + +

    +Statement

    +
    +protected Statement(java.util.ArrayList<Term> arg)
    +
    +
    Constructor with partial values, called by make +

    +

    +
    Parameters:
    arg - The component list of the term
    +
    +
    + +

    +Statement

    +
    +protected Statement(java.lang.String n,
    +                    java.util.ArrayList<Term> cs,
    +                    boolean con,
    +                    short i)
    +
    +
    Constructor with full values, called by clone +

    +

    +
    Parameters:
    n - The nameStr of the term
    cs - Component list
    con - Constant indicator
    i - Syntactic complexity of the compound
    +
    + + + + + + + + +
    +Method Detail
    + +

    +make

    +
    +public static Statement make(java.lang.String relation,
    +                             Term subject,
    +                             Term predicate,
    +                             Memory memory)
    +
    +
    Make a Statement from String, called by StringParser +

    +

    +
    Parameters:
    relation - The relation String
    subject - The first component
    predicate - The second component
    memory - Reference to the memeory +
    Returns:
    The Statement built
    +
    +
    +
    + +

    +make

    +
    +public static Statement make(Statement statement,
    +                             Term subj,
    +                             Term pred,
    +                             Memory memory)
    +
    +
    Make a Statement from given components, called by the rules +

    +

    +
    Parameters:
    subj - The first component
    pred - The second component
    statement - A sample statement providing the class type
    memory - Reference to the memeory +
    Returns:
    The Statement built
    +
    +
    +
    + +

    +makeSym

    +
    +public static Statement makeSym(Statement statement,
    +                                Term subj,
    +                                Term pred,
    +                                Memory memory)
    +
    +
    Make a symmetric Statement from given components and temporal information, called by the rules +

    +

    +
    Parameters:
    statement - A sample asymmetric statement providing the class type
    subj - The first component
    pred - The second component
    memory - Reference to the memeory +
    Returns:
    The Statement built
    +
    +
    +
    + +

    +isRelation

    +
    +public static boolean isRelation(java.lang.String s0)
    +
    +
    Check Statement relation symbol, called in StringPaser +

    +

    +
    Parameters:
    s0 - The String to be checked +
    Returns:
    if the given String is a relation symbol
    +
    +
    +
    + +

    +makeName

    +
    +protected java.lang.String makeName()
    +
    +
    Override the default in making the nameStr of the current term from existing fields +

    +

    +
    Overrides:
    makeName in class CompoundTerm
    +
    +
    + +
    Returns:
    the nameStr of the term
    +
    +
    +
    + +

    +makeStatementName

    +
    +protected static java.lang.String makeStatementName(Term subject,
    +                                                    java.lang.String relation,
    +                                                    Term predicate)
    +
    +
    Default method to make the nameStr of an image term from given fields +

    +

    +
    Parameters:
    subject - The first component
    predicate - The second component
    relation - The relation operator +
    Returns:
    The nameStr of the term
    +
    +
    +
    + +

    +invalidStatement

    +
    +public static boolean invalidStatement(Term subject,
    +                                       Term predicate)
    +
    +
    Check the validity of a potential Statement. [To be refined] +

    + Minimum requirement: the two terms cannot be the same, or containing each other as component +

    +

    +
    Parameters:
    subject - The first component
    predicate - The second component +
    Returns:
    Whether The Statement is invalid
    +
    +
    +
    + +

    +invalid

    +
    +public boolean invalid()
    +
    +
    Check the validity of a potential Statement. [To be refined] +

    + Minimum requirement: the two terms cannot be the same, or containing each other as component +

    +

    + +
    Returns:
    Whether The Statement is invalid
    +
    +
    +
    + +

    +getSubject

    +
    +public Term getSubject()
    +
    +
    Return the first component of the statement +

    +

    + +
    Returns:
    The first component
    +
    +
    +
    + +

    +getPredicate

    +
    +public Term getPredicate()
    +
    +
    Return the second component of the statement +

    +

    + +
    Returns:
    The second component
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Term.html b/nars-dist/javadoc/nars/term/Term.html new file mode 100644 index 00000000..a9bfa9b6 --- /dev/null +++ b/nars-dist/javadoc/nars/term/Term.html @@ -0,0 +1,561 @@ + + + + + + + +Term + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Term

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    Direct Known Subclasses:
    CompoundTerm, Variable
    +
    +
    +
    +
    public class Term
    extends java.lang.Object
    implements java.lang.Cloneable, java.lang.Comparable<Term>
    + + +

    +Term is the basic component of Narsese, and the object of processing in NARS. +

    + A Term may have an associated Concept containing relations with other Terms. It + is not linked in the Term, because a Concept may be forgot while the Term exists. + Multiple objects may represent the same Term. +

    + +

    +


    + +

    + + + + + + + + + + + +
    +Field Summary
    +protected  java.lang.Stringname + +
    +          A Term is identified uniquely by its name, a sequence of characters in a + given alphabet (ASCII or Unicode)
    +  + + + + + + + + + + + + + + + +
    +Constructor Summary
    +protected Term() + +
    +          Default constructor that build an internal Term
    + Term(java.lang.String name) + +
    +          Constructor with a given name
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Make a new Term with the same name.
    + intcompareTo(Term that) + +
    +          Check the relative order of two Terms.
    + booleancontainTerm(Term target) + +
    +          Recursively check if a compound contains a term
    + booleanequals(java.lang.Object that) + +
    +          Equal terms have identical name, though not necessarily the same reference.
    + intgetComplexity() + +
    +          The syntactic complexity, for constant automic Term, is 1.
    + java.lang.StringgetName() + +
    +          Reporting the name of the current Term.
    + inthashCode() + +
    +          Produce a hash code for the term
    + booleanisConstant() + +
    +          Check whether the current Term can name a Concept.
    + voidrenameVariables() + +
    +          Blank method to be override in CompoundTerm
    + java.lang.StringtoString() + +
    +          The same as getName by default, used in display only.
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Field Detail
    + +

    +name

    +
    +protected java.lang.String name
    +
    +
    A Term is identified uniquely by its name, a sequence of characters in a + given alphabet (ASCII or Unicode) +

    +

    +
    +
    + + + + + + + + +
    +Constructor Detail
    + +

    +Term

    +
    +protected Term()
    +
    +
    Default constructor that build an internal Term +

    +

    +
    + +

    +Term

    +
    +public Term(java.lang.String name)
    +
    +
    Constructor with a given name +

    +

    +
    Parameters:
    name - A String as the name of the Term
    +
    + + + + + + + + +
    +Method Detail
    + +

    +getName

    +
    +public java.lang.String getName()
    +
    +
    Reporting the name of the current Term. +

    +

    +
    +
    +
    + +
    Returns:
    The name of the term as a String
    +
    +
    +
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Make a new Term with the same name. +

    +

    +
    Overrides:
    clone in class java.lang.Object
    +
    +
    + +
    Returns:
    The new Term
    +
    +
    +
    + +

    +equals

    +
    +public boolean equals(java.lang.Object that)
    +
    +
    Equal terms have identical name, though not necessarily the same reference. +

    +

    +
    Overrides:
    equals in class java.lang.Object
    +
    +
    +
    Parameters:
    that - The Term to be compared with the current Term +
    Returns:
    Whether the two Terms are equal
    +
    +
    +
    + +

    +hashCode

    +
    +public int hashCode()
    +
    +
    Produce a hash code for the term +

    +

    +
    Overrides:
    hashCode in class java.lang.Object
    +
    +
    + +
    Returns:
    An integer hash code
    +
    +
    +
    + +

    +isConstant

    +
    +public boolean isConstant()
    +
    +
    Check whether the current Term can name a Concept. +

    +

    +
    +
    +
    + +
    Returns:
    A Term is constant by default
    +
    +
    +
    + +

    +renameVariables

    +
    +public void renameVariables()
    +
    +
    Blank method to be override in CompoundTerm +

    +

    +
    +
    +
    +
    +
    +
    +
    + +

    +getComplexity

    +
    +public int getComplexity()
    +
    +
    The syntactic complexity, for constant automic Term, is 1. +

    +

    +
    +
    +
    + +
    Returns:
    The conplexity of the term, an integer
    +
    +
    +
    + +

    +compareTo

    +
    +public final int compareTo(Term that)
    +
    +
    Check the relative order of two Terms. +

    +

    +
    Specified by:
    compareTo in interface java.lang.Comparable<Term>
    +
    +
    +
    Parameters:
    that - The Term to be compared with the current Term +
    Returns:
    The same as compareTo as defined on Strings
    +
    +
    +
    + +

    +containTerm

    +
    +public boolean containTerm(Term target)
    +
    +
    Recursively check if a compound contains a term +

    +

    +
    +
    +
    +
    Parameters:
    target - The term to be searched +
    Returns:
    Whether the two have the same content
    +
    +
    +
    + +

    +toString

    +
    +public final java.lang.String toString()
    +
    +
    The same as getName by default, used in display only. +

    +

    +
    Overrides:
    toString in class java.lang.Object
    +
    +
    + +
    Returns:
    The name of the term as a String
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/Variable.html b/nars-dist/javadoc/nars/term/Variable.html new file mode 100644 index 00000000..569a9a96 --- /dev/null +++ b/nars-dist/javadoc/nars/term/Variable.html @@ -0,0 +1,515 @@ + + + + + + + +Variable + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + +

    + +nars.term +
    +Class Variable

    +
    +java.lang.Object
    +  extended by nars.term.Term
    +      extended by nars.term.Variable
    +
    +
    +
    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    +
    +
    +
    +
    public class Variable
    extends Term
    + + +

    +A variable term, which does not correspond to a concept +

    + +

    +


    + +

    + + + + + + + +
    +Field Summary
    + + + + + + + +
    Fields inherited from class nars.term.Term
    name
    +  + + + + + + + + + + +
    +Constructor Summary
    Variable(java.lang.String s) + +
    +          Constructor, from a given variable name
    +  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Method Summary
    + java.lang.Objectclone() + +
    +          Clone a Variable
    +static booleancontainVar(java.lang.String n) + +
    +          Check whether a string represent a name of a term that contains a variable
    +static booleancontainVarDep(java.lang.String n) + +
    +          Check whether a string represent a name of a term that contains a dependent variable
    +static booleancontainVarIndep(java.lang.String n) + +
    +          Check whether a string represent a name of a term that contains an independent variable
    +static booleancontainVarQuery(java.lang.String n) + +
    +          Check whether a string represent a name of a term that contains a query variable
    + chargetType() + +
    +          Get the type of the variable
    +static booleanhasSubstitute(char type, + Term term1, + Term term2) + +
    +          Check if two terms can be unified
    + booleanisConstant() + +
    +          A variable is not constant
    +static booleanunify(char type, + Term t1, + Term t2) + +
    +          To unify two terms
    +static booleanunify(char type, + Term t1, + Term t2, + Term compound1, + Term compound2) + +
    +          To unify two terms
    + + + + + + + +
    Methods inherited from class nars.term.Term
    compareTo, containTerm, equals, getComplexity, getName, hashCode, renameVariables, toString
    + + + + + + + +
    Methods inherited from class java.lang.Object
    finalize, getClass, notify, notifyAll, wait, wait, wait
    +  +

    + + + + + + + + +
    +Constructor Detail
    + +

    +Variable

    +
    +public Variable(java.lang.String s)
    +
    +
    Constructor, from a given variable name +

    +

    +
    Parameters:
    s - A String read from input
    +
    + + + + + + + + +
    +Method Detail
    + +

    +clone

    +
    +public java.lang.Object clone()
    +
    +
    Clone a Variable +

    +

    +
    Overrides:
    clone in class Term
    +
    +
    + +
    Returns:
    The cloned Variable
    +
    +
    +
    + +

    +getType

    +
    +public char getType()
    +
    +
    Get the type of the variable +

    +

    + +
    Returns:
    The variable type
    +
    +
    +
    + +

    +isConstant

    +
    +public boolean isConstant()
    +
    +
    A variable is not constant +

    +

    +
    Overrides:
    isConstant in class Term
    +
    +
    + +
    Returns:
    false
    +
    +
    +
    + +

    +containVarIndep

    +
    +public static boolean containVarIndep(java.lang.String n)
    +
    +
    Check whether a string represent a name of a term that contains an independent variable +

    +

    +
    Parameters:
    n - The string name to be checked +
    Returns:
    Whether the name contains an independent variable
    +
    +
    +
    + +

    +containVarDep

    +
    +public static boolean containVarDep(java.lang.String n)
    +
    +
    Check whether a string represent a name of a term that contains a dependent variable +

    +

    +
    Parameters:
    n - The string name to be checked +
    Returns:
    Whether the name contains a dependent variable
    +
    +
    +
    + +

    +containVarQuery

    +
    +public static boolean containVarQuery(java.lang.String n)
    +
    +
    Check whether a string represent a name of a term that contains a query variable +

    +

    +
    Parameters:
    n - The string name to be checked +
    Returns:
    Whether the name contains a query variable
    +
    +
    +
    + +

    +containVar

    +
    +public static boolean containVar(java.lang.String n)
    +
    +
    Check whether a string represent a name of a term that contains a variable +

    +

    +
    Parameters:
    n - The string name to be checked +
    Returns:
    Whether the name contains a variable
    +
    +
    +
    + +

    +unify

    +
    +public static boolean unify(char type,
    +                            Term t1,
    +                            Term t2)
    +
    +
    To unify two terms +

    +

    +
    Parameters:
    type - The type of variable that can be substituted
    t1 - The first term
    t2 - The second term +
    Returns:
    Whether the unification is possible
    +
    +
    +
    + +

    +unify

    +
    +public static boolean unify(char type,
    +                            Term t1,
    +                            Term t2,
    +                            Term compound1,
    +                            Term compound2)
    +
    +
    To unify two terms +

    +

    +
    Parameters:
    type - The type of variable that can be substituted
    t1 - The first term to be unified
    t2 - The second term to be unified
    compound1 - The compound contermaining the first term
    compound2 - The compound contermaining the second term +
    Returns:
    Whether the unification is possible
    +
    +
    +
    + +

    +hasSubstitute

    +
    +public static boolean hasSubstitute(char type,
    +                                    Term term1,
    +                                    Term term2)
    +
    +
    Check if two terms can be unified +

    +

    +
    Parameters:
    type - The type of variable that can be substituted
    term1 - The first term to be unified
    term2 - The second term to be unified +
    Returns:
    Whether there is a substitution
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/CompoundTerm.html b/nars-dist/javadoc/nars/term/class-use/CompoundTerm.html new file mode 100644 index 00000000..11f0f201 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/CompoundTerm.html @@ -0,0 +1,397 @@ + + + + + + + +Uses of Class nars.term.CompoundTerm + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.CompoundTerm

    +
    + + + + + + + + + +
    +Packages that use CompoundTerm
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of CompoundTerm in nars.term
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Subclasses of CompoundTerm in nars.term
    + classConjunction + +
    +          Conjunction of statements
    + classDifferenceExt + +
    +          A compound term whose extension is the difference of the extensions of its components
    + classDifferenceInt + +
    +          A compound term whose extension is the difference of the intensions of its components
    + classDisjunction + +
    +          A disjunction of Statements.
    + classEquivalence + +
    +          A Statement about an Equivalence relation.
    + classImageExt + +
    +          An extension image.
    + classImageInt + +
    +          An intension image.
    + classImplication + +
    +          A Statement about an Inheritance relation.
    + classInheritance + +
    +          A Statement about an Inheritance relation.
    + classInstance + +
    +          A Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    + classInstanceProperty + +
    +          A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    + classIntersectionExt + +
    +          A compound term whose extension is the intersection of the extensions of its components
    + classIntersectionInt + +
    +          A compound term whose intension is the intersection of the extensions of its components
    + classNegation + +
    +          A negation of a Statement.
    + classProduct + +
    +          A Product is a sequence of terms.
    + classProperty + +
    +          A Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    + classSetExt + +
    +          An extensionally defined set, which contains one or more instances.
    + classSetInt + +
    +          An intensionally defined set, which contains one or more instances defining the Term.
    + classSimilarity + +
    +          A Statement about a Similarity relation.
    + classStatement + +
    +          A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.term with parameters of type CompoundTerm
    +static TermCompoundTerm.addComponents(CompoundTerm t1, + Term t2, + Memory memory) + +
    +          Try to add a component into a compound
    +static TermCompoundTerm.make(CompoundTerm compound, + java.util.ArrayList<Term> components, + Memory memory) + +
    +          Try to make a compound term from a template and a list of components
    +static TermProduct.make(CompoundTerm image, + Term component, + int index, + Memory memory) + +
    +          Try to make a Product from an ImageExt/ImageInt and a component.
    +static TermCompoundTerm.reduceComponents(CompoundTerm t1, + Term t2, + Memory memory) + +
    +          Try to remove a component from a compound
    +static TermCompoundTerm.setComponent(CompoundTerm compound, + int index, + Term t, + Memory memory) + +
    +          Try to replace a component in a compound at a given index by another one
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Conjunction.html b/nars-dist/javadoc/nars/term/class-use/Conjunction.html new file mode 100644 index 00000000..356668ab --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Conjunction.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.Conjunction + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Conjunction

    +
    +No usage of nars.term.Conjunction +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/DifferenceExt.html b/nars-dist/javadoc/nars/term/class-use/DifferenceExt.html new file mode 100644 index 00000000..0d421ec7 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/DifferenceExt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.DifferenceExt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.DifferenceExt

    +
    +No usage of nars.term.DifferenceExt +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/DifferenceInt.html b/nars-dist/javadoc/nars/term/class-use/DifferenceInt.html new file mode 100644 index 00000000..23af3335 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/DifferenceInt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.DifferenceInt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.DifferenceInt

    +
    +No usage of nars.term.DifferenceInt +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Disjunction.html b/nars-dist/javadoc/nars/term/class-use/Disjunction.html new file mode 100644 index 00000000..eef90cb6 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Disjunction.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.Disjunction + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Disjunction

    +
    +No usage of nars.term.Disjunction +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Equivalence.html b/nars-dist/javadoc/nars/term/class-use/Equivalence.html new file mode 100644 index 00000000..3140df90 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Equivalence.html @@ -0,0 +1,183 @@ + + + + + + + +Uses of Class nars.term.Equivalence + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Equivalence

    +
    + + + + + + + + + +
    +Packages that use Equivalence
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of Equivalence in nars.term
    +  +

    + + + + + + + + + +
    Methods in nars.term that return Equivalence
    +static EquivalenceEquivalence.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/ImageExt.html b/nars-dist/javadoc/nars/term/class-use/ImageExt.html new file mode 100644 index 00000000..af1cef78 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/ImageExt.html @@ -0,0 +1,184 @@ + + + + + + + +Uses of Class nars.term.ImageExt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.ImageExt

    +
    + + + + + + + + + +
    +Packages that use ImageExt
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of ImageExt in nars.term
    +  +

    + + + + + + + + + +
    Methods in nars.term with parameters of type ImageExt
    +static TermImageExt.make(ImageExt oldImage, + Term component, + short index, + Memory memory) + +
    +          Try to make an Image from an existing Image and a component.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/ImageInt.html b/nars-dist/javadoc/nars/term/class-use/ImageInt.html new file mode 100644 index 00000000..6bd09059 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/ImageInt.html @@ -0,0 +1,184 @@ + + + + + + + +Uses of Class nars.term.ImageInt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.ImageInt

    +
    + + + + + + + + + +
    +Packages that use ImageInt
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of ImageInt in nars.term
    +  +

    + + + + + + + + + +
    Methods in nars.term with parameters of type ImageInt
    +static TermImageInt.make(ImageInt oldImage, + Term component, + short index, + Memory memory) + +
    +          Try to make an Image from an existing Image and a component.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Implication.html b/nars-dist/javadoc/nars/term/class-use/Implication.html new file mode 100644 index 00000000..a492ca2d --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Implication.html @@ -0,0 +1,183 @@ + + + + + + + +Uses of Class nars.term.Implication + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Implication

    +
    + + + + + + + + + +
    +Packages that use Implication
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of Implication in nars.term
    +  +

    + + + + + + + + + +
    Methods in nars.term that return Implication
    +static ImplicationImplication.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Inheritance.html b/nars-dist/javadoc/nars/term/class-use/Inheritance.html new file mode 100644 index 00000000..b658f4fe --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Inheritance.html @@ -0,0 +1,183 @@ + + + + + + + +Uses of Class nars.term.Inheritance + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Inheritance

    +
    + + + + + + + + + +
    +Packages that use Inheritance
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of Inheritance in nars.term
    +  +

    + + + + + + + + + +
    Methods in nars.term that return Inheritance
    +static InheritanceInheritance.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Instance.html b/nars-dist/javadoc/nars/term/class-use/Instance.html new file mode 100644 index 00000000..924571d5 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Instance.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.Instance + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Instance

    +
    +No usage of nars.term.Instance +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/InstanceProperty.html b/nars-dist/javadoc/nars/term/class-use/InstanceProperty.html new file mode 100644 index 00000000..f58c1c91 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/InstanceProperty.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.InstanceProperty + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.InstanceProperty

    +
    +No usage of nars.term.InstanceProperty +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/IntersectionExt.html b/nars-dist/javadoc/nars/term/class-use/IntersectionExt.html new file mode 100644 index 00000000..7358a4b9 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/IntersectionExt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.IntersectionExt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.IntersectionExt

    +
    +No usage of nars.term.IntersectionExt +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/IntersectionInt.html b/nars-dist/javadoc/nars/term/class-use/IntersectionInt.html new file mode 100644 index 00000000..cfbda6f3 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/IntersectionInt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.IntersectionInt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.IntersectionInt

    +
    +No usage of nars.term.IntersectionInt +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Negation.html b/nars-dist/javadoc/nars/term/class-use/Negation.html new file mode 100644 index 00000000..26b47d84 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Negation.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.Negation + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Negation

    +
    +No usage of nars.term.Negation +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Product.html b/nars-dist/javadoc/nars/term/class-use/Product.html new file mode 100644 index 00000000..874e9818 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Product.html @@ -0,0 +1,195 @@ + + + + + + + +Uses of Class nars.term.Product + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Product

    +
    + + + + + + + + + +
    +Packages that use Product
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of Product in nars.term
    +  +

    + + + + + + + + + + + + + +
    Methods in nars.term with parameters of type Product
    +static TermImageExt.make(Product product, + Term relation, + short index, + Memory memory) + +
    +          Try to make an Image from a Product and a relation.
    +static TermImageInt.make(Product product, + Term relation, + short index, + Memory memory) + +
    +          Try to make an Image from a Product and a relation.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Property.html b/nars-dist/javadoc/nars/term/class-use/Property.html new file mode 100644 index 00000000..972e13f0 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Property.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.Property + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Property

    +
    +No usage of nars.term.Property +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/SetExt.html b/nars-dist/javadoc/nars/term/class-use/SetExt.html new file mode 100644 index 00000000..07bc3f35 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/SetExt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.SetExt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.SetExt

    +
    +No usage of nars.term.SetExt +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/SetInt.html b/nars-dist/javadoc/nars/term/class-use/SetInt.html new file mode 100644 index 00000000..623347e2 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/SetInt.html @@ -0,0 +1,145 @@ + + + + + + + +Uses of Class nars.term.SetInt + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.SetInt

    +
    +No usage of nars.term.SetInt +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Similarity.html b/nars-dist/javadoc/nars/term/class-use/Similarity.html new file mode 100644 index 00000000..b961309c --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Similarity.html @@ -0,0 +1,183 @@ + + + + + + + +Uses of Class nars.term.Similarity + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Similarity

    +
    + + + + + + + + + +
    +Packages that use Similarity
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of Similarity in nars.term
    +  +

    + + + + + + + + + +
    Methods in nars.term that return Similarity
    +static SimilaritySimilarity.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Statement.html b/nars-dist/javadoc/nars/term/class-use/Statement.html new file mode 100644 index 00000000..63c25622 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Statement.html @@ -0,0 +1,333 @@ + + + + + + + +Uses of Class nars.term.Statement + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Statement

    +
    + + + + + + + + + +
    +Packages that use Statement
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of Statement in nars.term
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Subclasses of Statement in nars.term
    + classEquivalence + +
    +          A Statement about an Equivalence relation.
    + classImplication + +
    +          A Statement about an Inheritance relation.
    + classInheritance + +
    +          A Statement about an Inheritance relation.
    + classInstance + +
    +          A Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    + classInstanceProperty + +
    +          A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    + classProperty + +
    +          A Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    + classSimilarity + +
    +          A Statement about a Similarity relation.
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.term that return Statement
    +static StatementStatement.make(Statement statement, + Term subj, + Term pred, + Memory memory) + +
    +          Make a Statement from given components, called by the rules
    +static StatementStatement.make(java.lang.String relation, + Term subject, + Term predicate, + Memory memory) + +
    +          Make a Statement from String, called by StringParser
    +static StatementInstance.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static StatementInstanceProperty.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static StatementProperty.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static StatementStatement.makeSym(Statement statement, + Term subj, + Term pred, + Memory memory) + +
    +          Make a symmetric Statement from given components and temporal information, called by the rules
    +  +

    + + + + + + + + + + + + + +
    Methods in nars.term with parameters of type Statement
    +static StatementStatement.make(Statement statement, + Term subj, + Term pred, + Memory memory) + +
    +          Make a Statement from given components, called by the rules
    +static StatementStatement.makeSym(Statement statement, + Term subj, + Term pred, + Memory memory) + +
    +          Make a symmetric Statement from given components and temporal information, called by the rules
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Term.html b/nars-dist/javadoc/nars/term/class-use/Term.html new file mode 100644 index 00000000..ea2e1bf6 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Term.html @@ -0,0 +1,1897 @@ + + + + + + + +Uses of Class nars.term.Term + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Term

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Packages that use Term
    nars.containerStorage management 
    nars.entityData entities that are independently stored 
    nars.inferenceThe inference rules and control functions 
    nars.ioInput/output management 
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of Term in nars.container
    +  +

    + + + + + + + + + +
    Fields in nars.container declared as Term
    + TermMemory.currentTerm + +
    +          The selected Term
    +  +

    + + + + + + + + + + + + + +
    Fields in nars.container with type parameters of type Term
    +protected  java.util.HashMap<Term,Term>Memory.substitute + +
    +          The substitution that unify the common term in the Task and the Belief
    +protected  java.util.HashMap<Term,Term>Memory.substitute + +
    +          The substitution that unify the common term in the Task and the Belief
    +  +

    + + + + + + + + + +
    Methods in nars.container that return Term
    + TermMemory.nameToListedTerm(java.lang.String name) + +
    +          Get a Term for a given name of a Concept or Operator
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.container with parameters of type Term
    + voidMemory.doublePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    + ConceptMemory.getConcept(Term term) + +
    +          Get the Concept associated to a Term, or create it.
    + voidMemory.singlePremiseTask(Term newContent, + char punctuation, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all single-premise rules, called in StructuralRules
    + voidMemory.singlePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all single-premise rules, called in StructuralRules
    + ConceptMemory.termToConcept(Term term) + +
    +          Get an existing Concept for a given Term.
    +  +

    + + + + + +
    +Uses of Term in nars.entity
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.entity that return Term
    + TermSentence.cloneContent() + +
    +          Clone the content of the sentence
    + TermSentence.getContent() + +
    +          Get the content of the sentence
    + TermTask.getContent() + +
    +          Directly get the content of the sentence
    + TermTermLink.getTarget() + +
    +          Get the target of the link
    + TermConcept.getTerm() + +
    +          Return the assocated term, called from Memory only
    +  +

    + + + + + + + + + +
    Methods in nars.entity with parameters of type Term
    + voidSentence.setContent(Term t) + +
    +          Set the content Term of the Sentence
    +  +

    + + + + + + + + + + + + + + + + + +
    Constructors in nars.entity with parameters of type Term
    Concept(Term tm, + Memory memory) + +
    +          Constructor, called in Memory.getConcept only
    Sentence(Term content, + char punctuation, + TruthValue truth, + Stamp stamp) + +
    +          Create a Sentence with the given fields
    TermLink(Term t, + short p, + int... indices) + +
    +          Constructor for TermLink template
    TermLink(Term t, + TermLink template, + BudgetValue v) + +
    +          Constructor to make actual TermLink from a template
    +  +

    + + + + + +
    +Uses of Term in nars.inference
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.inference with parameters of type Term
    +static BudgetValueBudgetFunctions.compoundBackward(Term content, + Memory memory) + +
    +          Backward inference with CompoundTerm conclusion, stronger case
    +static BudgetValueBudgetFunctions.compoundBackwardWeak(Term content, + Memory memory) + +
    +          Backward inference with CompoundTerm conclusion, weaker case
    +static BudgetValueBudgetFunctions.compoundForward(TruthValue truth, + Term content, + Memory memory) + +
    +          Forward inference with CompoundTerm conclusion
    +static voidStructuralRules.transformNegation(Term content, + Memory memory) + +
    +          {A, A@(--, A)} |- (--, A)
    +  +

    + + + + + +
    +Uses of Term in nars.io
    +  +

    + + + + + + + + + +
    Methods in nars.io that return Term
    +static TermStringParser.parseTerm(java.lang.String s0, + Memory memory) + +
    +          Top-level method that parse a Term in general, which may recursively call itself.
    +  +

    + + + + + +
    +Uses of Term in nars.term
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Subclasses of Term in nars.term
    + classCompoundTerm + +
    +          A CompoundTerm is a Term with internal (syntactic) structure
    + classConjunction + +
    +          Conjunction of statements
    + classDifferenceExt + +
    +          A compound term whose extension is the difference of the extensions of its components
    + classDifferenceInt + +
    +          A compound term whose extension is the difference of the intensions of its components
    + classDisjunction + +
    +          A disjunction of Statements.
    + classEquivalence + +
    +          A Statement about an Equivalence relation.
    + classImageExt + +
    +          An extension image.
    + classImageInt + +
    +          An intension image.
    + classImplication + +
    +          A Statement about an Inheritance relation.
    + classInheritance + +
    +          A Statement about an Inheritance relation.
    + classInstance + +
    +          A Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    + classInstanceProperty + +
    +          A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    + classIntersectionExt + +
    +          A compound term whose extension is the intersection of the extensions of its components
    + classIntersectionInt + +
    +          A compound term whose intension is the intersection of the extensions of its components
    + classNegation + +
    +          A negation of a Statement.
    + classProduct + +
    +          A Product is a sequence of terms.
    + classProperty + +
    +          A Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    + classSetExt + +
    +          An extensionally defined set, which contains one or more instances.
    + classSetInt + +
    +          An intensionally defined set, which contains one or more instances defining the Term.
    + classSimilarity + +
    +          A Statement about a Similarity relation.
    + classStatement + +
    +          A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
    + classVariable + +
    +          A variable term, which does not correspond to a concept
    +  +

    + + + + + + + + + +
    Fields in nars.term with type parameters of type Term
    +protected  java.util.ArrayList<Term>CompoundTerm.components + +
    +          list of (direct) components
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.term that return Term
    +static TermCompoundTerm.addComponents(CompoundTerm t1, + Term t2, + Memory memory) + +
    +          Try to add a component into a compound
    + TermCompoundTerm.componentAt(int i) + +
    +          get a component by index
    + TermStatement.getPredicate() + +
    +          Return the second component of the statement
    + TermImageExt.getRelation() + +
    +          Get the relation term in the Image
    + TermImageInt.getRelation() + +
    +          Get the relation term in the Image
    + TermStatement.getSubject() + +
    +          Return the first component of the statement
    + TermImageExt.getTheOtherComponent() + +
    +          Get the other term in the Image
    + TermImageInt.getTheOtherComponent() + +
    +          Get the other term in the Image
    +static TermConjunction.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new compound from a list of components.
    +static TermDifferenceExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new DifferenceExt.
    +static TermDifferenceInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new DifferenceExt.
    +static TermDisjunction.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static TermImageExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new ImageExt.
    +static TermImageInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new ImageExt.
    +static TermIntersectionExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static TermIntersectionInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static TermNegation.make(java.util.ArrayList<Term> argument, + Memory memory) + +
    +          Try to make a new SetExt.
    +static TermProduct.make(java.util.ArrayList<Term> argument, + Memory memory) + +
    +          Try to make a new compound.
    +static TermSetExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new SetExt.
    +static TermSetInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new SetExt.
    +static TermImageExt.make(java.util.ArrayList<Term> argument, + short index, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermImageInt.make(java.util.ArrayList<Term> argument, + short index, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermCompoundTerm.make(CompoundTerm compound, + java.util.ArrayList<Term> components, + Memory memory) + +
    +          Try to make a compound term from a template and a list of components
    +static TermProduct.make(CompoundTerm image, + Term component, + int index, + Memory memory) + +
    +          Try to make a Product from an ImageExt/ImageInt and a component.
    +static TermImageExt.make(ImageExt oldImage, + Term component, + short index, + Memory memory) + +
    +          Try to make an Image from an existing Image and a component.
    +static TermImageInt.make(ImageInt oldImage, + Term component, + short index, + Memory memory) + +
    +          Try to make an Image from an existing Image and a component.
    +static TermImageExt.make(Product product, + Term relation, + short index, + Memory memory) + +
    +          Try to make an Image from a Product and a relation.
    +static TermImageInt.make(Product product, + Term relation, + short index, + Memory memory) + +
    +          Try to make an Image from a Product and a relation.
    +static TermCompoundTerm.make(java.lang.String op, + java.util.ArrayList<Term> arg, + Memory memory) + +
    +          Try to make a compound term from an operator and a list of components
    +static TermNegation.make(Term t, + Memory memory) + +
    +          Try to make a Negation of one component.
    +static TermSetExt.make(Term t, + Memory memory) + +
    +          Try to make a new set from one component.
    +static TermSetInt.make(Term t, + Memory memory) + +
    +          Try to make a new set from one component.
    +static TermConjunction.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermDifferenceExt.make(Term t1, + Term t2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermDifferenceInt.make(Term t1, + Term t2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermDisjunction.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new Disjunction from two components.
    +static TermIntersectionExt.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermIntersectionInt.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermDisjunction.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new Disjunction from a set of components.
    +static TermIntersectionExt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermIntersectionInt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermSetExt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermSetInt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermCompoundTerm.reduceComponents(CompoundTerm t1, + Term t2, + Memory memory) + +
    +          Try to remove a component from a compound
    +static TermCompoundTerm.setComponent(CompoundTerm compound, + int index, + Term t, + Memory memory) + +
    +          Try to replace a component in a compound at a given index by another one
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.term that return types with arguments of type Term
    +protected static java.util.ArrayList<Term>CompoundTerm.argumentsToList(Term t1, + Term t2) + +
    +          build a component list from two terms
    + java.util.ArrayList<Term>CompoundTerm.cloneComponents() + +
    +          Clone the component list
    +static java.util.ArrayList<Term>CompoundTerm.cloneList(java.util.ArrayList<Term> original) + +
    +          Deep clone an array list of terms
    + java.util.ArrayList<Term>CompoundTerm.getComponents() + +
    +          Get the component list
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.term with parameters of type Term
    +static TermCompoundTerm.addComponents(CompoundTerm t1, + Term t2, + Memory memory) + +
    +          Try to add a component into a compound
    +protected static java.util.ArrayList<Term>CompoundTerm.argumentsToList(Term t1, + Term t2) + +
    +          build a component list from two terms
    + intTerm.compareTo(Term that) + +
    +          Check the relative order of two Terms.
    + booleanCompoundTerm.containAllComponents(Term t) + +
    +          Check whether the compound contains all components of another term, or that term as a whole
    + booleanCompoundTerm.containComponent(Term t) + +
    +          Check whether the compound contains a certain component
    + booleanCompoundTerm.containTerm(Term target) + +
    +          Recursively check if a compound contains a term
    + booleanTerm.containTerm(Term target) + +
    +          Recursively check if a compound contains a term
    +static booleanVariable.hasSubstitute(char type, + Term term1, + Term term2) + +
    +          Check if two terms can be unified
    +static booleanStatement.invalidStatement(Term subject, + Term predicate) + +
    +          Check the validity of a potential Statement.
    +static TermProduct.make(CompoundTerm image, + Term component, + int index, + Memory memory) + +
    +          Try to make a Product from an ImageExt/ImageInt and a component.
    +static TermImageExt.make(ImageExt oldImage, + Term component, + short index, + Memory memory) + +
    +          Try to make an Image from an existing Image and a component.
    +static TermImageInt.make(ImageInt oldImage, + Term component, + short index, + Memory memory) + +
    +          Try to make an Image from an existing Image and a component.
    +static TermImageExt.make(Product product, + Term relation, + short index, + Memory memory) + +
    +          Try to make an Image from a Product and a relation.
    +static TermImageInt.make(Product product, + Term relation, + short index, + Memory memory) + +
    +          Try to make an Image from a Product and a relation.
    +static StatementStatement.make(Statement statement, + Term subj, + Term pred, + Memory memory) + +
    +          Make a Statement from given components, called by the rules
    +static StatementStatement.make(java.lang.String relation, + Term subject, + Term predicate, + Memory memory) + +
    +          Make a Statement from String, called by StringParser
    +static TermNegation.make(Term t, + Memory memory) + +
    +          Try to make a Negation of one component.
    +static TermSetExt.make(Term t, + Memory memory) + +
    +          Try to make a new set from one component.
    +static TermSetInt.make(Term t, + Memory memory) + +
    +          Try to make a new set from one component.
    +static TermConjunction.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermDifferenceExt.make(Term t1, + Term t2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermDifferenceInt.make(Term t1, + Term t2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermDisjunction.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new Disjunction from two components.
    +static EquivalenceEquivalence.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static ImplicationImplication.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static InheritanceInheritance.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static StatementInstance.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static StatementInstanceProperty.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermIntersectionExt.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static TermIntersectionInt.make(Term term1, + Term term2, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static StatementProperty.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +static SimilaritySimilarity.make(Term subject, + Term predicate, + Memory memory) + +
    +          Try to make a new compound from two components.
    +protected static java.lang.StringStatement.makeStatementName(Term subject, + java.lang.String relation, + Term predicate) + +
    +          Default method to make the nameStr of an image term from given fields
    +static StatementStatement.makeSym(Statement statement, + Term subj, + Term pred, + Memory memory) + +
    +          Make a symmetric Statement from given components and temporal information, called by the rules
    +static TermCompoundTerm.reduceComponents(CompoundTerm t1, + Term t2, + Memory memory) + +
    +          Try to remove a component from a compound
    +static TermCompoundTerm.setComponent(CompoundTerm compound, + int index, + Term t, + Memory memory) + +
    +          Try to replace a component in a compound at a given index by another one
    +static booleanVariable.unify(char type, + Term t1, + Term t2) + +
    +          To unify two terms
    +static booleanVariable.unify(char type, + Term t1, + Term t2, + Term compound1, + Term compound2) + +
    +          To unify two terms
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Method parameters in nars.term with type arguments of type Term
    + voidCompoundTerm.applySubstitute(java.util.HashMap<Term,Term> subs) + +
    +          Recersively apply a substitute to the current CompoundTerm
    + voidCompoundTerm.applySubstitute(java.util.HashMap<Term,Term> subs) + +
    +          Recersively apply a substitute to the current CompoundTerm
    +static java.util.ArrayList<Term>CompoundTerm.cloneList(java.util.ArrayList<Term> original) + +
    +          Deep clone an array list of terms
    +static TermConjunction.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new compound from a list of components.
    +static TermDifferenceExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new DifferenceExt.
    +static TermDifferenceInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new DifferenceExt.
    +static TermDisjunction.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static TermImageExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new ImageExt.
    +static TermImageInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new ImageExt.
    +static TermIntersectionExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static TermIntersectionInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new IntersectionExt.
    +static TermNegation.make(java.util.ArrayList<Term> argument, + Memory memory) + +
    +          Try to make a new SetExt.
    +static TermProduct.make(java.util.ArrayList<Term> argument, + Memory memory) + +
    +          Try to make a new compound.
    +static TermSetExt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new SetExt.
    +static TermSetInt.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new SetExt.
    +static TermImageExt.make(java.util.ArrayList<Term> argument, + short index, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermImageInt.make(java.util.ArrayList<Term> argument, + short index, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermCompoundTerm.make(CompoundTerm compound, + java.util.ArrayList<Term> components, + Memory memory) + +
    +          Try to make a compound term from a template and a list of components
    +static TermCompoundTerm.make(java.lang.String op, + java.util.ArrayList<Term> arg, + Memory memory) + +
    +          Try to make a compound term from an operator and a list of components
    +static TermDisjunction.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new Disjunction from a set of components.
    +static TermIntersectionExt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermIntersectionInt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermSetExt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +static TermSetInt.make(java.util.TreeSet<Term> set, + Memory memory) + +
    +          Try to make a new compound from a set of components.
    +protected static java.lang.StringCompoundTerm.makeCompoundName(java.lang.String op, + java.util.ArrayList<Term> arg) + +
    +          default method to make the oldName of a compound term from given fields
    +protected static java.lang.StringCompoundTerm.makeImageName(java.lang.String op, + java.util.ArrayList<Term> arg, + int relationIndex) + +
    +          default method to make the oldName of an image term from given fields
    +protected static java.lang.StringCompoundTerm.makeSetName(char opener, + java.util.ArrayList<Term> arg, + char closer) + +
    +          make the oldName of an ExtensionSet or IntensionSet
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Constructor parameters in nars.term with type arguments of type Term
    CompoundTerm(java.util.ArrayList<Term> components) + +
    +          Constructor called from subclasses constructors to initialize the fields
    CompoundTerm(java.lang.String name, + java.util.ArrayList<Term> components) + +
    +          Constructor called from subclasses constructors to initialize the fields
    CompoundTerm(java.lang.String name, + java.util.ArrayList<Term> components, + boolean isConstant, + short complexity) + +
    +          Constructor called from subclasses constructors to clone the fields
    Conjunction(java.util.ArrayList<Term> arg) + +
    +          Constructor with partial values, called by make
    Conjunction(java.lang.String n, + java.util.ArrayList<Term> cs, + boolean con, + short i) + +
    +          Constructor with full values, called by clone
    Equivalence(java.util.ArrayList<Term> components) + +
    +          Constructor with partial values, called by make
    Equivalence(java.lang.String n, + java.util.ArrayList<Term> components, + boolean constant, + short complexity) + +
    +          Constructor with full values, called by clone
    Implication(java.util.ArrayList<Term> arg) + +
    +          Constructor with partial values, called by make
    Implication(java.lang.String n, + java.util.ArrayList<Term> cs, + boolean con, + short i) + +
    +          Constructor with full values, called by clone
    Statement(java.util.ArrayList<Term> arg) + +
    +          Constructor with partial values, called by make
    Statement(java.lang.String n, + java.util.ArrayList<Term> cs, + boolean con, + short i) + +
    +          Constructor with full values, called by clone
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/class-use/Variable.html b/nars-dist/javadoc/nars/term/class-use/Variable.html new file mode 100644 index 00000000..9b1ea699 --- /dev/null +++ b/nars-dist/javadoc/nars/term/class-use/Variable.html @@ -0,0 +1,189 @@ + + + + + + + +Uses of Class nars.term.Variable + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Class
    nars.term.Variable

    +
    + + + + + + + + + +
    +Packages that use Variable
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + +
    +Uses of Variable in nars.term
    +  +

    + + + + + + + + + + + + + +
    Method parameters in nars.term with type arguments of type Variable
    + voidCompoundTerm.renameVariables(java.util.HashMap<Variable,Variable> map) + +
    +          Rename the variables in the compound
    + voidCompoundTerm.renameVariables(java.util.HashMap<Variable,Variable> map) + +
    +          Rename the variables in the compound
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/package-frame.html b/nars-dist/javadoc/nars/term/package-frame.html new file mode 100644 index 00000000..b73939bc --- /dev/null +++ b/nars-dist/javadoc/nars/term/package-frame.html @@ -0,0 +1,77 @@ + + + + + + + +nars.term + + + + + + + + + + + +nars.term + + + + +
    +Classes  + +
    +CompoundTerm +
    +Conjunction +
    +DifferenceExt +
    +DifferenceInt +
    +Disjunction +
    +Equivalence +
    +ImageExt +
    +ImageInt +
    +Implication +
    +Inheritance +
    +Instance +
    +InstanceProperty +
    +IntersectionExt +
    +IntersectionInt +
    +Negation +
    +Product +
    +Property +
    +SetExt +
    +SetInt +
    +Similarity +
    +Statement +
    +Term +
    +Variable
    + + + + diff --git a/nars-dist/javadoc/nars/term/package-summary.html b/nars-dist/javadoc/nars/term/package-summary.html new file mode 100644 index 00000000..68796a60 --- /dev/null +++ b/nars-dist/javadoc/nars/term/package-summary.html @@ -0,0 +1,318 @@ + + + + + + + +nars.term + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +

    +Package nars.term +

    +Term hierarchy in Narsese +

    +See: +
    +          Description +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Class Summary
    CompoundTermA CompoundTerm is a Term with internal (syntactic) structure
    ConjunctionConjunction of statements
    DifferenceExtA compound term whose extension is the difference of the extensions of its components
    DifferenceIntA compound term whose extension is the difference of the intensions of its components
    DisjunctionA disjunction of Statements.
    EquivalenceA Statement about an Equivalence relation.
    ImageExtAn extension image.
    ImageIntAn intension image.
    ImplicationA Statement about an Inheritance relation.
    InheritanceA Statement about an Inheritance relation.
    InstanceA Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    InstancePropertyA Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    IntersectionExtA compound term whose extension is the intersection of the extensions of its components
    IntersectionIntA compound term whose intension is the intersection of the extensions of its components
    NegationA negation of a Statement.
    ProductA Product is a sequence of terms.
    PropertyA Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    SetExtAn extensionally defined set, which contains one or more instances.
    SetIntAn intensionally defined set, which contains one or more instances defining the Term.
    SimilarityA Statement about a Similarity relation.
    StatementA statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
    TermTerm is the basic component of Narsese, and the object of processing in NARS.
    VariableA variable term, which does not correspond to a concept
    +  + +

    +

    +Package nars.term Description +

    + +

    +Term hierarchy in Narsese + +

    Package Specification

    + +Open-NARS implements the following formal language, Narsese. +
    +           <sentence> ::= <judgment>
    +                        | <question>
    +           <judgment> ::= <statement> <truth-value>
    +           <question> ::= <statement> 
    +          <statement> ::= <<term> <relation> <term>>
    +                        | <compound-statement>
    +                        | <term>
    +               <term> ::= <word>
    +                        | <variable>
    +                        | <compound-term>
    +                        | <statement>
    +           <relation> ::= -->    // Inheritance
    +                        | <->    // Similarity
    +                        | {--    // Instance
    +                        | --]    // Property
    +                        | {-]    // InstanceProperty
    +                        | ==>    // Implication
    +                        | <=>    // Equivalence
    + <compound-statement> ::= (-- <statement>)                 // Negation
    +                        | (|| <statement> <statement>+)    // Disjunction
    +                        | (&& <statement> <statement>+)    // Conjunction
    +      <compound-term> ::= {<term>+}    // SetExt
    +                        | [<term>+]    // SetInt
    +                        | (& <term> <term>+)    // IntersectionExt
    +                        | (| <term> <term>+)    // IntersectionInt
    +                        | (- <term> <term>)     // DifferenceExt
    +                        | (~ <term> <term>)     // DifferenceInt
    +                        | (* <term> <term>+)    // Product
    +                        | (/ <term>+ _ <term>*)    // ImageExt
    +                        | (\ <term>+ _ <term>*)    // ImageInt
    +           <variable> ::= <independent-var>
    +                        | <dependent-var>
    +                        | <query-var>
    +    <independent-var> ::= $[<word>]
    +      <dependent-var> ::= #<word>
    +          <query-var> ::= ?[<word>]
    +               <word> : string in an alphabet
    +        <truth-value> : a pair of real numbers in [0, 1] x (0, 1)
    +
    + +Major methods in the Term classes: +
      +
    • constructors
    • +
    • get and set
    • +
    • clone, compare, and unify
    • +
    • create and access corresponding concept
    • +
    • structural operation in compound
    • +
    +

    + +

    +

    +
    +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/package-tree.html b/nars-dist/javadoc/nars/term/package-tree.html new file mode 100644 index 00000000..13eaf7e2 --- /dev/null +++ b/nars-dist/javadoc/nars/term/package-tree.html @@ -0,0 +1,161 @@ + + + + + + + +nars.term Class Hierarchy + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Hierarchy For Package nars.term +

    +
    +
    +
    Package Hierarchies:
    All Packages
    +
    +

    +Class Hierarchy +

    + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/nars/term/package-use.html b/nars-dist/javadoc/nars/term/package-use.html new file mode 100644 index 00000000..6f493584 --- /dev/null +++ b/nars-dist/javadoc/nars/term/package-use.html @@ -0,0 +1,308 @@ + + + + + + + +Uses of Package nars.term + + + + + + + + + + + + +
    + + + + + + + + + + + + + + + +
    + +
    + + + +
    +
    +

    +Uses of Package
    nars.term

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Packages that use nars.term
    nars.containerStorage management 
    nars.entityData entities that are independently stored 
    nars.inferenceThe inference rules and control functions 
    nars.ioInput/output management 
    nars.termTerm hierarchy in Narsese 
    +  +

    + + + + + + + + +
    +Classes in nars.term used by nars.container
    Term + +
    +          Term is the basic component of Narsese, and the object of processing in NARS.
    +  +

    + + + + + + + + +
    +Classes in nars.term used by nars.entity
    Term + +
    +          Term is the basic component of Narsese, and the object of processing in NARS.
    +  +

    + + + + + + + + +
    +Classes in nars.term used by nars.inference
    Term + +
    +          Term is the basic component of Narsese, and the object of processing in NARS.
    +  +

    + + + + + + + + +
    +Classes in nars.term used by nars.io
    Term + +
    +          Term is the basic component of Narsese, and the object of processing in NARS.
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Classes in nars.term used by nars.term
    CompoundTerm + +
    +          A CompoundTerm is a Term with internal (syntactic) structure
    Equivalence + +
    +          A Statement about an Equivalence relation.
    ImageExt + +
    +          An extension image.
    ImageInt + +
    +          An intension image.
    Implication + +
    +          A Statement about an Inheritance relation.
    Inheritance + +
    +          A Statement about an Inheritance relation.
    Product + +
    +          A Product is a sequence of terms.
    Similarity + +
    +          A Statement about a Similarity relation.
    Statement + +
    +          A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
    Term + +
    +          Term is the basic component of Narsese, and the object of processing in NARS.
    Variable + +
    +          A variable term, which does not correspond to a concept
    +  +

    +


    + + + + + + + + + + + + + + + +
    + +
    + + + +
    + + + diff --git a/nars-dist/javadoc/overview-frame.html b/nars-dist/javadoc/overview-frame.html index b2b550a3..f46c8b98 100644 --- a/nars-dist/javadoc/overview-frame.html +++ b/nars-dist/javadoc/overview-frame.html @@ -2,13 +2,13 @@ - + -Overview List (NARS Document) +Overview List - + @@ -31,6 +31,8 @@ Packages
    +nars.container +
    nars.entity
    nars.gui @@ -39,13 +41,9 @@
    nars.io
    -nars.language -
    nars.main
    -nars.operation -
    -nars.storage +nars.term
    diff --git a/nars-dist/javadoc/overview-summary.html b/nars-dist/javadoc/overview-summary.html index d237023c..61ad33bb 100644 --- a/nars-dist/javadoc/overview-summary.html +++ b/nars-dist/javadoc/overview-summary.html @@ -2,13 +2,13 @@ - + -Overview (NARS Document) +Overview - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Overview (NARS Document)"; + parent.document.title="Overview"; } } @@ -80,12 +80,6 @@
    -NARS overview -

    -See: -
    -          Description -

    @@ -93,6 +87,10 @@ Packages + + + + @@ -109,53 +107,17 @@ - - - - - - - - - - + +
    nars.containerStorage management
    nars.entity Data entities that are independently stored
    Input/output management
    nars.languageTerm hierarchy in Narsese
    nars.main Top-level classes of the system
    nars.operationBuilt-in operators
    nars.storageStorage managementnars.termTerm hierarchy in Narsese

    -

    -NARS overview - -

    Package Specification

    - - The code for distribution is NARS.jar, in Java 1.6.0_17. -

    - It works both as an application (with full functionality) and an applet - (with restricted functionality and display). -

    - To run the application from the command line, go to the folder containing NARS.jar - and type the following: -

    -            java -jar "NARS.jar"
    -        
    - To run the applet in a browser, open an HTML file, which is in the folder - containing NARS.jar, and has the following line in it: -
    -            <applet ARCHIVE="NARS.jar" CODE="nars.main.NARS"></applet>
    -        
    - For more information, see - NARS website, - open-source project, - discussion group -

    - -

    -



    diff --git a/nars-dist/javadoc/overview-tree.html b/nars-dist/javadoc/overview-tree.html index 6459898a..a112190c 100644 --- a/nars-dist/javadoc/overview-tree.html +++ b/nars-dist/javadoc/overview-tree.html @@ -2,13 +2,13 @@ - + -Class Hierarchy (NARS Document) +Class Hierarchy - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Class Hierarchy (NARS Document)"; + parent.document.title="Class Hierarchy"; } } @@ -85,23 +85,17 @@

    Hierarchy For All Packages

    -
    Package Hierarchies:
    nars.entity, nars.gui, nars.inference, nars.io, nars.language, nars.main, nars.operation, nars.storage
    +
    Package Hierarchies:
    nars.container, nars.entity, nars.gui, nars.inference, nars.io, nars.main, nars.term

    Class Hierarchy

    -Enum Hierarchy +Interface Hierarchy

      -
    • java.lang.Object
        -
      • java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable) - -
      -
    +
  • nars.io.InputChannel
  • nars.io.OutputChannel
    diff --git a/nars-dist/javadoc/package-list b/nars-dist/javadoc/package-list index b99852bb..80ba9ee8 100644 --- a/nars-dist/javadoc/package-list +++ b/nars-dist/javadoc/package-list @@ -1,8 +1,7 @@ +nars.container nars.entity nars.gui nars.inference nars.io -nars.language nars.main -nars.operation -nars.storage +nars.term diff --git a/nars-dist/javadoc/serialized-form.html b/nars-dist/javadoc/serialized-form.html index 33b4d3d7..2c2be0c7 100644 --- a/nars-dist/javadoc/serialized-form.html +++ b/nars-dist/javadoc/serialized-form.html @@ -2,13 +2,13 @@ - + -Serialized Form (NARS Document) +Serialized Form - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Serialized Form (NARS Document)"; + parent.document.title="Serialized Form"; } } @@ -114,7 +114,7 @@

    bag

    -Bag<Type extends Item> bag
    +Bag<Type extends Item> bag
    The bag to be displayed

    @@ -262,15 +262,6 @@


    -showDerivationCheckbox

    -
    -java.awt.Checkbox showDerivationCheckbox
    -
    -
    -
    -
    -
    -

    text

     java.awt.TextArea text
    @@ -386,6 +377,17 @@

    +
    +

    +recorder

    +
    +InferenceRecorder recorder
    +
    +
    Inference recorder +

    +

    +
    +

    @@ -405,6 +407,15 @@

    +

    +reasoner

    +
    +Reasoner reasoner
    +
    +
    +
    +
    +

    okButton

    @@ -470,6 +481,17 @@ 

    +
    +

    +timer

    +
    +int timer
    +
    +
    number of cycles between experience lines +

    +

    +
    +

    @@ -489,6 +511,61 @@

    +

    +reasoner

    +
    +Reasoner reasoner
    +
    +
    Reference to the reasoner +

    +

    +
    +
    +
    +

    +memory

    +
    +Memory memory
    +
    +
    Reference to the memory +

    +

    +
    +
    +
    +

    +record

    +
    +InferenceRecorder record
    +
    +
    Reference to the inference recorder +

    +

    +
    +
    +
    +

    +experienceReader

    +
    +ExperienceReader experienceReader
    +
    +
    Reference to the experience reader +

    +

    +
    +
    +
    +

    +experienceWriter

    +
    +ExperienceWriter experienceWriter
    +
    +
    Reference to the experience writer +

    +

    +
    +
    +

    ioText

    @@ -587,6 +664,72 @@ 

    +
    +

    +inputWindow

    +
    +InputWindow inputWindow
    +
    +
    Input experience window +

    +

    +
    +
    +
    +

    +conceptWin

    +
    +TermWindow conceptWin
    +
    +
    Window to accept a Term to be looked into +

    +

    +
    +
    +
    +

    +forgetTW

    +
    +ParameterWindow forgetTW
    +
    +
    Windows for run-time parameter adjustment +

    +

    +
    +
    +
    +

    +forgetBW

    +
    +ParameterWindow forgetBW
    +
    +
    Windows for run-time parameter adjustment +

    +

    +
    +
    +
    +

    +forgetCW

    +
    +ParameterWindow forgetCW
    +
    +
    Windows for run-time parameter adjustment +

    +

    +
    +
    +
    +

    +silentW

    +
    +ParameterWindow silentW
    +
    +
    Windows for run-time parameter adjustment +

    +

    +
    +

    @@ -802,6 +945,17 @@

    +
    +

    +memory

    +
    +Memory memory
    +
    +
    Reference to the memory +

    +

    +
    +

    @@ -839,6 +993,17 @@

    +
    +

    +reasoner

    +
    +Reasoner reasoner
    +
    +
    The reasoner +

    +

    +
    +


    From a55dfd2865ff569bed6fe04c23d41e242a7b0288 Mon Sep 17 00:00:00 2001 From: "NARS.Wang@gmail.com" Date: Mon, 21 Jan 2013 22:25:48 +0000 Subject: [PATCH 056/206] open-nars 1.5.0 source code --- nars/entity/BudgetValue.java | 7 +- nars/entity/Concept.java | 333 ++++----- nars/entity/Goal.java | 47 -- nars/entity/Item.java | 148 +++- nars/entity/Judgment.java | 106 --- nars/entity/Quest.java | 41 -- nars/entity/Question.java | 83 --- nars/entity/Sentence.java | 289 ++------ nars/entity/ShortFloat.java | 31 +- nars/entity/Stamp.java | 191 ++--- nars/entity/Task.java | 114 ++- nars/entity/TaskLink.java | 44 +- nars/entity/TermLink.java | 38 +- nars/entity/TruthValue.java | 45 +- nars/entity/package.html | 6 +- nars/gui/BagWindow.java | 19 +- nars/gui/ConceptWindow.java | 21 +- nars/gui/InferenceWindow.java | 30 +- nars/gui/InputWindow.java | 108 ++- nars/gui/MainWindow.java | 161 +++-- nars/gui/MessageDialog.java | 60 +- nars/gui/NarsFrame.java | 50 +- nars/gui/ParameterWindow.java | 16 +- nars/gui/TermWindow.java | 14 +- nars/inference/BudgetFunctions.java | 84 +-- nars/inference/CompositionalRules.java | 483 +++++++------ .../{MatchingRules.java => LocalRules.java} | 182 +++-- nars/inference/RuleTables.java | 361 +++++----- nars/inference/StructuralRules.java | 320 ++++++--- nars/inference/SyllogisticRules.java | 663 ++++-------------- nars/inference/TruthFunctions.java | 37 +- nars/inference/package.html | 11 +- ...xperienceIO.java => ExperienceReader.java} | 101 +-- nars/io/ExperienceWriter.java | 82 +++ .../{Record.java => InferenceRecorder.java} | 35 +- nars/io/InputChannel.java | 15 + nars/io/OutputChannel.java | 14 + nars/io/StringParser.java | 115 ++- nars/io/Symbols.java | 23 +- nars/main/Center.java | 106 --- nars/main/Memory.java | 627 ----------------- nars/main/NARS.java | 29 +- nars/main/Parameters.java | 22 +- nars/main/Reasoner.java | 192 +++++ nars/main/package.html | 4 +- 45 files changed, 2129 insertions(+), 3379 deletions(-) delete mode 100644 nars/entity/Goal.java delete mode 100644 nars/entity/Judgment.java delete mode 100644 nars/entity/Quest.java delete mode 100644 nars/entity/Question.java rename nars/inference/{MatchingRules.java => LocalRules.java} (54%) rename nars/io/{ExperienceIO.java => ExperienceReader.java} (54%) create mode 100644 nars/io/ExperienceWriter.java rename nars/io/{Record.java => InferenceRecorder.java} (79%) create mode 100644 nars/io/InputChannel.java create mode 100644 nars/io/OutputChannel.java delete mode 100644 nars/main/Center.java delete mode 100644 nars/main/Memory.java create mode 100644 nars/main/Reasoner.java diff --git a/nars/entity/BudgetValue.java b/nars/entity/BudgetValue.java index 818f4e54..b4bfd34b 100644 --- a/nars/entity/BudgetValue.java +++ b/nars/entity/BudgetValue.java @@ -198,8 +198,7 @@ public float summary() { * @return The decision on whether to process the Item */ public boolean aboveThreshold() { - return (summary() >= Memory.busyValue()*Parameters.BUDGET_THRESHOLD); -// return (summary() >= Parameters.BUDGET_THRESHOLD); + return (summary() >= Parameters.BUDGET_THRESHOLD); } /** @@ -215,7 +214,7 @@ public String toString() { * Briefly display the BudgetValue * @return String representation of the value with 2-digit accuracy */ - public String toString2() { - return MARK + priority.toString2() + SEPARATOR + durability.toString2() + SEPARATOR + quality.toString2() + MARK; + public String toStringBrief() { + return MARK + priority.toStringBrief() + SEPARATOR + durability.toStringBrief() + SEPARATOR + quality.toStringBrief() + MARK; } } diff --git a/nars/entity/Concept.java b/nars/entity/Concept.java index bc6ebc6b..412d907f 100644 --- a/nars/entity/Concept.java +++ b/nars/entity/Concept.java @@ -24,11 +24,10 @@ import nars.gui.ConceptWindow; import nars.inference.*; -import nars.io.Record; -import nars.language.*; +import nars.io.Symbols; +import nars.term.*; import nars.main.*; -import nars.operation.Operator; -import nars.storage.*; +import nars.container.*; /** * A concept contains information associated with a term, including directly @@ -48,88 +47,95 @@ public final class Concept extends Item { /** Link templates of TermLink, only in concepts with CompoundTerm */ private ArrayList termLinkTemplates; /** Question directly asked about the term */ - private ArrayList questions; - /** Goals directly requested on the term */ - private ArrayList goals; - /** Judgments directly made about the term, with non-future tense */ - private ArrayList beliefs; - /** Most recent and confidence judgment */ -// private Judgment perfectBelief = null; // stored for demo and debugging purpose only - /** Whether truth value of judgments can be revised */ - private boolean revisible = true; + private ArrayList questions; + /** Sentences directly made about the term, with non-future tense */ + private ArrayList beliefs; /** Whether the content of the concept is being displayed */ private boolean showing = false; /** The display window */ private ConceptWindow window = null; + /** Reference to the memory */ + Memory memory; /* ---------- constructor and intialization ---------- */ /** * Constructor, called in Memory.getConcept only * @param tm A term corresponding to the concept + * @param memory A reference to the memory */ - public Concept(Term tm) { - super(); - key = tm.getName(); + public Concept(Term tm, Memory memory) { + super(tm.getName()); term = tm; - questions = new ArrayList(); - goals = new ArrayList(); - beliefs = new ArrayList(); - taskLinks = new TaskLinkBag(); - termLinks = new TermLinkBag(); + this.memory = memory; + questions = new ArrayList(); + beliefs = new ArrayList(); + taskLinks = new TaskLinkBag(memory); + termLinks = new TermLinkBag(memory); if (tm instanceof CompoundTerm) { termLinkTemplates = ((CompoundTerm) tm).prepareComponentLinks(); - checkRevisibility(); } } - /** - * Judgments with dependent variable cannot be revised - */ - private void checkRevisibility() { - revisible = ((key.indexOf("()") < 0) && (key.indexOf("(#")) < 0); - } - /* ---------- direct processing of tasks ---------- */ /** * Directly process a new task. Called exactly once on each task. * Using local information and finishing in a constant time. - * Provide feedback in the budget value of the task. + * Provide feedback in the taskBudget value of the task. *

    * called in Memory.immediateProcess only * @param task The task to be processed */ public void directProcess(Task task) { - Sentence problem = task.getSentence(); - if (problem instanceof Quest) { - processQuestion((Quest) problem, task); - } else if (problem instanceof Question) { - processQuestion((Question) problem, task); - } else if (problem instanceof Goal) { - processGoal((Goal) problem, task); + if (task.getSentence().isJudgment()) { + processJudgment(task); } else { - processJudgment((Judgment) problem, task); + processQuestion(task); } - if (task.aboveThreshold()) { // still need to be processed - Memory.linkToTask(task, problem.getContent(), this); + if (task.getBudget().aboveThreshold()) { // still need to be processed + linkToTask(task); } if (showing) { window.post(displayContent()); } - Memory.rememberAction(task); + } + + /** + * To accept a new judgment as isBelief, and check for revisions and solutions + * @param judg The judgment to be accepted + * @param task The task to be processed + * @return Whether to continue the processing of the task + */ + private void processJudgment(Task task) { + Sentence judg = task.getSentence(); + Sentence oldBelief = evaluation(judg, beliefs); + if (oldBelief != null) { + memory.newStamp = Stamp.make(judg.getStamp(), oldBelief.getStamp(), memory.getTime()); + if ((memory.newStamp != null) && Variable.unify(Symbols.VAR_INDEPENDENT, judg.getContent(), oldBelief.getContent())) { + memory.currentBelief = oldBelief; + LocalRules.revision(judg, oldBelief, false, memory); + } + } + if (task.getBudget().aboveThreshold()) { + for (Task ques : questions) { + LocalRules.trySolution(ques.getSentence(), judg, ques, memory); + } + addToTable(judg, beliefs, Parameters.MAXMUM_BELIEF_LENGTH); + } } /** * To answer a question by existing beliefs - * @param ques The question to be answered * @param task The task to be processed * @return Whether to continue the processing of the task */ - public float processQuestion(Question ques, Task task) { + public float processQuestion(Task task) { + Sentence ques = task.getSentence(); boolean newQuestion = true; if (questions != null) { - for (Question q : questions) { - if (q.getContent().equals(ques.getContent()) && (q.getEventTime() == ques.getEventTime())) { + for (Task t : questions) { + Sentence q = t.getSentence(); + if (q.getContent().equals(ques.getContent())) { ques = q; newQuestion = false; break; @@ -137,14 +143,14 @@ public float processQuestion(Question ques, Task task) { } } if (newQuestion) { - questions.add(ques); + questions.add(task); } if (questions.size() > Parameters.MAXMUM_QUESTIONS_LENGTH) { questions.remove(0); // FIFO } - Judgment newAnswer = (ques instanceof Quest) ? evaluation(ques, goals) : evaluation(ques, beliefs); + Sentence newAnswer = evaluation(ques, beliefs); if (newAnswer != null) { - MatchingRules.trySolution(ques, newAnswer, task); + LocalRules.trySolution(ques, newAnswer, task, memory); return newAnswer.getTruth().getExpectation(); } else { return 0.5f; @@ -152,122 +158,59 @@ public float processQuestion(Question ques, Task task) { } /** - * Direct processing a new goal - * @param goal The goal to be processed - * @param task The task to be processed - * @return Whether to continue the processing of the task + * Link to a new task from all relevant concepts for continued processing in + * the near future for unspecified time. + *

    + * The only method that calls the TaskLink constructor. + * @param task The task to be linked + * @param content The content of the task */ - private void processGoal(Goal goal, Task task) { - if (revisible) { - Judgment oldGoal = evaluation(goal, goals); - if ((oldGoal != null) && (goal.noOverlapping(oldGoal))) { - MatchingRules.revision(goal, oldGoal, false); - } - } - addToTable(goal, goals, Parameters.MAXMUM_GOALS_LENGTH); - if (task.aboveThreshold()) { - Judgment fact = evaluation(goal, beliefs); - if (fact != null) { - MatchingRules.trySolution(goal, fact, task); - } - } - if (task.aboveThreshold()) { - Term content = goal.getContent(); - ArrayList list = content.parseOperation(null); - if (list != null) { - Operator op = (Operator) list.get(0); - float netDesire = goal.getTruth().getExpectation(); - if (netDesire > Parameters.DECISION_THRESHOLD) { - op.call(task); - task.setPriority(0); + private void linkToTask(Task task) { + BudgetValue taskBudget = task.getBudget(); + TaskLink taskLink = new TaskLink(task, null, taskBudget); // link type: SELF + insertTaskLink(taskLink); + if (term instanceof CompoundTerm) { + if (termLinkTemplates.size() > 0) { + BudgetValue subBudget = BudgetFunctions.distributeAmongLinks(taskBudget, termLinkTemplates.size()); + if (subBudget.aboveThreshold()) { + Term componentTerm; + Concept componentConcept; + for (TermLink termLink : termLinkTemplates) { + if (!(task.isStructural() && (termLink.getType() == TermLink.TRANSFORM))) { // avoid circular transform + taskLink = new TaskLink(task, termLink, subBudget); + componentTerm = termLink.getTarget(); + componentConcept = memory.getConcept(componentTerm); + if (componentConcept != null) { + componentConcept.insertTaskLink(taskLink); + } + } + } + buildTermLinks(taskBudget); // recursively insert TermLink } - } else { - Question ques = new Question(goal); - Memory.activatedTask(task.getBudget(), ques, false); - } - } - } - - /** - * To accept a new judgment as isBelief, and check for revisions and solutions - * @param judg The judgment to be accepted - * @param task The task to be processed - * @return Whether to continue the processing of the task - */ - private void processJudgment(Judgment judg, Task task) { - if (revisible) { - Judgment oldBelief = evaluation(judg, beliefs); - if ((oldBelief != null) && (judg.noOverlapping(oldBelief))) { - MatchingRules.revision(judg, oldBelief, false); - } - } - if (task.aboveThreshold()) { - for (Question ques : questions) { - MatchingRules.trySolution(ques, judg, task); - } - for (Judgment goal : goals) { - MatchingRules.trySolution((Goal) goal, judg, task); - } - addToTable(judg, beliefs, Parameters.MAXMUM_BELIEF_LENGTH); -// generateNegation(task); // may be recovered in the future - if (judg.isEvent()) { - Memory.eventProcessing(task); } } } /** - * Directly express a negative judgment as a negation - * @param task The task to be processed - */ -// private void generateNegation(Task task) { -// if (task.getSentence() instanceof Judgment) { -// Sentence s = task.getSentence(); -// if (s.getTruth().getFrequency() < 0.5) { -// Term t = Negation.make(s.getContent()); -// if (t != null) { -// StructuralRules.transformNegation(t); -// } -// } -// } -// } - /** - * Revise existing beliefs or goals - * @param judg The judgment (isBelief or goal) to be processed - * @param table The table to be revised - * @return Whether the new isBelief triggered a revision - */ -// private boolean reviseTable(Judgment judg, ArrayList table) { -// boolean revised = false; -// for (Object isBelief : table) { -// if (judg.noOverlapping((Judgment) isBelief)) { -// MatchingRules.revision(judg, (Judgment) isBelief, false); -// revised = true; -// } -// } -// return revised; -// } - /** - * Add a new isBelief or goal into the table + * Add a new belief (or goal) into the table * Sort the beliefs/goals by rank, and remove redundant or low rank one - * @param newJudgment The judgment to be processed + * @param newSentence The judgment to be processed * @param table The table to be revised * @param capacity The capacity of the table */ - @SuppressWarnings("unchecked") - private void addToTable(Judgment newJudgment, ArrayList table, int capacity) { - float rank1 = BudgetFunctions.rankBelief(newJudgment); // for the new isBelief - Judgment judgment2; + private void addToTable(Sentence newSentence, ArrayList table, int capacity) { + float rank1 = BudgetFunctions.rankBelief(newSentence); // for the new isBelief + Sentence judgment2; float rank2; int i; for (i = 0; i < table.size(); i++) { - judgment2 = (Judgment) table.get(i); + judgment2 = (Sentence) table.get(i); rank2 = BudgetFunctions.rankBelief(judgment2); if (rank1 >= rank2) { - if (newJudgment.equivalentTo(judgment2)) { + if (newSentence.equivalentTo(judgment2)) { return; } - table.add(i, newJudgment); + table.add(i, newSentence); break; } } @@ -276,24 +219,25 @@ private void addToTable(Judgment newJudgment, ArrayList table, int capacity) { table.remove(table.size() - 1); } } else if (i == table.size()) { - table.add(newJudgment); + table.add(newSentence); } } -// public float evaluation(boolean isBelief) { -// Judgment j = isBelief ? evaluation(null, beliefs) : evaluation(null, goals); -// return j.getTruth().getExpectation(); -// } - - private Judgment evaluation(Sentence query, ArrayList list) { + /** + * Evaluate a query against beliefs (and desires in the future) + * @param query The question to be processed + * @param list The list of beliefs to be used + * @return The best candidate belief selected + */ + private Sentence evaluation(Sentence query, ArrayList list) { if (list == null) { return null; } float currentBest = 0; float beliefQuality; - Judgment candidate = null; - for (Judgment judg : list) { - beliefQuality = MatchingRules.solutionQuality(query, judg); + Sentence candidate = null; + for (Sentence judg : list) { + beliefQuality = LocalRules.solutionQuality(query, judg); if (beliefQuality > currentBest) { currentBest = beliefQuality; candidate = judg; @@ -310,29 +254,28 @@ private Judgment evaluation(Sentence query, ArrayList list) { * @param taskLink The termLink to be inserted */ public void insertTaskLink(TaskLink taskLink) { - BudgetValue budget = taskLink.getBudget(); + BudgetValue taskBudget = taskLink.getBudget(); taskLinks.putIn(taskLink); - Memory.activateConcept(this, budget); + memory.activateConcept(this, taskBudget); } /** * Recursively build TermLinks between a compound and its components *

    * called only from Memory.continuedProcess - * @param budget The budget of the task + * @param taskBudget The BudgetValue of the task */ - public void buildTermLinks(BudgetValue budget) { + public void buildTermLinks(BudgetValue taskBudget) { Term t; Concept concept; - TermLink termLink1, termLink2; if (termLinkTemplates.size() > 0) { - BudgetValue subBudget = BudgetFunctions.distributeAmongLinks(budget, termLinkTemplates.size()); + BudgetValue subBudget = BudgetFunctions.distributeAmongLinks(taskBudget, termLinkTemplates.size()); if (subBudget.aboveThreshold()) { for (TermLink template : termLinkTemplates) { if (template.getType() != TermLink.TRANSFORM) { t = template.getTarget(); - concept = Memory.getConcept(t); + concept = memory.getConcept(t); if (concept != null) { termLink1 = new TermLink(t, template, subBudget); insertTermLink(termLink1); // this termLink to that @@ -369,12 +312,12 @@ public Term getTerm() { /** * Return a string representation of the concept, called in ConceptBag only - * @return The concept name, with budget in the full version + * @return The concept name, with taskBudget in the full version */ @Override public String toString() { // called from concept bag if (NARS.isStandAlone()) { - return (super.toString2() + " " + key); + return (super.toStringBrief() + " " + key); } else { return key; } @@ -408,21 +351,15 @@ public ArrayList getTermLinkTemplates() { * @param task The selected task * @return The selected isBelief */ - public Judgment getBelief(Task task) { + public Sentence getBelief(Task task) { Sentence taskSentence = task.getSentence(); - Judgment belief; + Sentence belief; for (int i = 0; i < beliefs.size(); i++) { belief = beliefs.get(i); - Record.append(" * Selected Belief: " + belief + "\n"); - if (taskSentence.noOverlapping(belief)) { - long taskTime = taskSentence.getEventTime(); - long beliefTime = belief.getEventTime(); - if ((taskTime == beliefTime) || (beliefTime == Stamp.ALWAYS) || (taskSentence instanceof Goal)) { - return belief; - } - Judgment belief2 = (Judgment) belief.clone(); // will this mess up priority adjustment? - TruthValue v = TruthFunctions.temporalCasting(belief.getTruth(), beliefTime, taskTime, taskSentence.getCreationTime()); - belief2.setTruth(v); + memory.getRecorder().append(" * Selected Belief: " + belief + "\n"); + memory.newStamp = Stamp.make(taskSentence.getStamp(), belief.getStamp(), memory.getTime()); + if (memory.newStamp != null) { + Sentence belief2 = (Sentence) belief.clone(); // will this mess up priority adjustment? return belief2; } } @@ -438,25 +375,21 @@ public void fire() { if (tLink == null) { return; } - Memory.currentTaskLink = tLink; - Memory.currentBeliefLink = null; - Record.append(" * Selected TaskLink: " + tLink + "\n"); + memory.currentTaskLink = tLink; + memory.currentBeliefLink = null; + memory.getRecorder().append(" * Selected TaskLink: " + tLink + "\n"); Task task = tLink.getTargetTask(); - Memory.currentTask = task; // one of the two places where this variable is set - if (task.getSentence().isQuestion()) { - ((Question) task.getSentence()).checkFeedback(); - } + memory.currentTask = task; // one of the two places where this variable is set if (tLink.getType() == TermLink.TRANSFORM) { - RuleTables.transformTask(task, tLink); // to turn this into structural inference as below? - return; + RuleTables.transformTask(tLink, memory); // to turn this into structural inference as below? } int termLinkCount = Parameters.MAX_REASONED_TERM_LINK; - while (Memory.noResult() && (termLinkCount > 0)) { - TermLink termLink = termLinks.takeOut(tLink); + while (memory.noResult() && (termLinkCount > 0)) { + TermLink termLink = termLinks.takeOut(tLink, memory.getTime()); if (termLink != null) { - Record.append(" * Selected TermLink: " + termLink + "\n"); - Memory.currentBeliefLink = termLink; - RuleTables.reason(tLink, termLink); + memory.getRecorder().append(" * Selected TermLink: " + termLink + "\n"); + memory.currentBeliefLink = termLink; + RuleTables.reason(tLink, termLink, memory); termLinks.putBack(termLink); termLinkCount--; } else { @@ -505,30 +438,16 @@ public void stop() { */ public String displayContent() { StringBuffer buffer = new StringBuffer(); -// if (perfectBelief != null && perfectBelief != presentBelief) { -// buffer.append(" Perfect Belief:\n"); -// if (perfectBelief instanceof Judgment && window != null && window.getShowDerivation()) { -// buffer.append(((Judgment) perfectBelief).toStringWithPremises("")); -// } else { -// buffer.append(perfectBelief + "\n"); -// } -// } if (beliefs.size() > 0) { buffer.append("\n Beliefs:\n"); for (Sentence s : beliefs) { buffer.append(s + "\n"); } } - if (goals.size() > 0) { - buffer.append("\n Goals:\n"); - for (Sentence s : goals) { - buffer.append(s + "\n"); - } - } if (questions.size() > 0) { buffer.append("\n Question:\n"); - for (Sentence s : questions) { - buffer.append(s + "\n"); + for (Task t : questions) { + buffer.append(t + "\n"); } } return buffer.toString(); diff --git a/nars/entity/Goal.java b/nars/entity/Goal.java deleted file mode 100644 index ed5835c9..00000000 --- a/nars/entity/Goal.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Goal.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ - -package nars.entity; - -import nars.language.Term; -import nars.io.Symbols; - -/** - * A Goal is an event to be realized, and may conain query variables - */ -public class Goal extends Judgment { - /** - * Constructor - *

    - * A goal has no tense - * @param term The content - * @param punc The punctuation - * @param t The desire (truth) value - * @param s The stamp - */ - public Goal(Term term, char punc, TruthValue t, Stamp s) { - super(term, punc, t, s, null, null); - } - - public Goal(Term term, TruthValue t, Stamp s) { - super(term, Symbols.GOAL_MARK, t, s, null, null); - } -} diff --git a/nars/entity/Item.java b/nars/entity/Item.java index 698905b1..dc0a4483 100644 --- a/nars/entity/Item.java +++ b/nars/entity/Item.java @@ -24,26 +24,45 @@ * An item is an object that can be put into a Bag, * to participate in the resource competation of the system. *

    - * It has a key and a budget. + * It has a key and a budget. Cannot be cloned */ -public abstract class Item extends BudgetValue { +public abstract class Item { /** The key of the Item, unique in a Bag */ - protected String key; // uniquely define an Item in a bag + protected String key; + /** The budget of the Item, consisting of 3 numbers */ + protected BudgetValue budget; /** - * Default constructor + * The default constructor */ - protected Item() { - super(); + protected Item() {} + + /** + * Constructor with default budget + * @param key The key value + */ + protected Item(String key) { + this.key = key; + this.budget = new BudgetValue(); + } + + /** + * Constructor with initial budget + * @param key The key value + * @param budget The initial budget + */ + protected Item(String key, BudgetValue budget) { + this.key = key; + this.budget = new BudgetValue(budget); // clone, not assignment } /** * Constructor with initial budget - * @param v The initial budget + * @param budget The initial budget */ - protected Item(BudgetValue v) { - super(v); + protected void setBudget(BudgetValue budget) { + this.budget = budget; } /** @@ -55,12 +74,115 @@ public String getKey() { } /** - * Get current BudgetValue - *

    - * This method is redundant, just to make the code more readable + * Get BudgetValue * @return Current BudgetValue */ public BudgetValue getBudget() { - return this; + return budget; + } + + /** + * Get priority value + * @return Current priority value + */ + public float getPriority() { + return budget.getPriority(); + } + + /** + * Set priority value + * @param v Set a new priority value + */ + public void setPriority(float v) { + budget.setPriority(v); + } + + /** + * Increase priority value + * @param v The amount of increase + */ + public void incPriority(float v) { + budget.incPriority(v); + } + + /** + * Decrease priority value + * @param v The amount of decrease + */ + public void decPriority(float v) { + budget.decPriority(v); + } + + /** + * Get durability value + * @return Current durability value + */ + public float getDurability() { + return budget.getDurability(); + } + + /** + * Set durability value + * @param v The new durability value + */ + public void setDurability(float v) { + budget.setDurability(v); + } + + /** + * Increase durability value + * @param v The amount of increase + */ + public void incDurability(float v) { + budget.incDurability(v); + } + + /** + * Decrease durability value + * @param v The amount of decrease + */ + public void decDurability(float v) { + budget.decDurability(v); + } + + /** + * Get quality value + * @return The quality value + */ + public float getQuality() { + return budget.getQuality(); + } + + /** + * Set quality value + * @param v The new quality value + */ + public void setQuality(float v) { + budget.setQuality(v); + } + + /** + * Merge with another Item with identical key + * @param that The Item to be merged + */ + public void merge(Item that) { + budget.merge(that.getBudget()); + } + + /** + * Return a String representation of the Item + * @return The String representation of the full content + */ + @Override + public String toString() { + return budget + " " + key ; + } + + /** + * Return a String representation of the Item after simplification + * @return A simplified String representation of the content + */ + public String toStringBrief() { + return budget.toStringBrief() + " " + key ; } } diff --git a/nars/entity/Judgment.java b/nars/entity/Judgment.java deleted file mode 100644 index 128d5886..00000000 --- a/nars/entity/Judgment.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Judgment.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ -package nars.entity; - -import nars.io.Symbols; -import nars.language.Term; -import nars.main.Parameters; - -/** - * A Judgment is an piece of new knowledge to be absorbed. - */ -public class Judgment extends Sentence { - - public Judgment _premise1 = null; - public Judgment _premise2 = null; - - /** - * Constructor - * @param term The content - * @param punc The punctuation - * @param t The truth value - * @param b The stamp - * @param premise1 The first premise to record in the new Judgment. May be null. - * This is only used for display. It is not used in processing. - * @param premise2 The second premise to record in the new Judgment. May be null. - * This is only used for display. It is not used in processing. - */ - public Judgment(Term term, char punc, TruthValue t, Stamp b, Sentence premise1, Sentence premise2) { - content = term; - punctuation = punc; - truth = t; - stamp = b; -// if (premise1 instanceof Judgment) { -// _premise1 = (Judgment) premise1; -// } -// if (premise2 instanceof Judgment) { -// _premise2 = (Judgment) premise2; -// } - } - - /** - * Construct a Judgment from a term - * @param t The content of the judgment - */ - public Judgment(Term t) { - content = t; - punctuation = Symbols.JUDGMENT_MARK; - truth = new TruthValue(1.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); - stamp = new Stamp(0, true); - } - - public Judgment(Term t, TruthValue v, Stamp s) { - content = t; - punctuation = Symbols.JUDGMENT_MARK; - truth = v; - stamp = s; - } - - /** - * Check whether the judgment is equivalent to another one - *

    - * The two may have different keys - * @param that The other judgment - * @return Whether the two are equivalent - */ - boolean equivalentTo(Judgment that) { - assert content.equals(that.getContent()); - return (truth.equals(that.getTruth()) && stamp.equals(that.getStamp())); - } - - public void setTruth(TruthValue v) { - truth = v; - } - - /** - * To display the premises used to derive a judgment - */ -// public String toStringWithPremises(String indentation) { -// String result = indentation + toString() + "\n"; -// if (_premise1 != null) { -// result = result + _premise1.toStringWithPremises(indentation + " "); -// } -// if (_premise2 != null) { -// result = result + _premise2.toStringWithPremises(indentation + " "); -// } -// return result; -// } -} diff --git a/nars/entity/Quest.java b/nars/entity/Quest.java deleted file mode 100644 index 80ccfa18..00000000 --- a/nars/entity/Quest.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Question.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ - -package nars.entity; - -import nars.language.Term; -import nars.io.Symbols; - -/** - * A Quest is a question on the desire-value of a statement - */ -public class Quest extends Question { - - public Quest(Term term, char punc, Stamp s) { - super(term, punc, s); - } - - public Quest(Goal g) { - content = g.cloneContent(); - punctuation = Symbols.QUEST_MARK; - stamp = new Stamp(0, true); - } -} diff --git a/nars/entity/Question.java b/nars/entity/Question.java deleted file mode 100644 index fdffa377..00000000 --- a/nars/entity/Question.java +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Question.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ - -package nars.entity; - -import nars.language.Term; -import nars.io.Symbols; -import nars.main.*; - -/** - * A Question is a sentence without a truth value, and may conain query variables - */ -public class Question extends Sentence { - private boolean needFeedback = false; - - public Question() { - } - - /** - * Constructor - * @param term The content - * @param punc The punctuation - * @param s The stamp - */ - public Question(Term term, char punc, Stamp s) { - content = term; - punctuation = punc; - stamp = s; - } - - /** - * Construct a question to check whether a goal has been achieved - * @param g The goal that trigger the question - */ - public Question(Goal g) { - content = g.cloneContent(); - punctuation = Symbols.QUESTION_MARK; - stamp = new Stamp(0, true); - } - - /** - * Construct a question to check whether a prediction can be confirmed - * @param j The judgment that provides a default answer - */ - public Question(Judgment j) { - content = j.cloneContent(); - punctuation = Symbols.QUESTION_MARK; - stamp = Memory.newStamp; - bestSolution = j; - needFeedback = true; -// needFeedback = (stamp.getEventTime() >= Center.getTime()); - } - - public void checkFeedback() { - if (needFeedback) { - if (stamp.getEventTime() <= Center.getTime()) { - needFeedback = false; // only do once - if ((bestSolution == null) || - (bestSolution.getTruth().getExpectation() < Parameters.DEFAULT_CONFIRMATION_EXPECTATION)) { - Memory.lackConfirmation(content, stamp.getEventTime()); - } - } - } - } -} diff --git a/nars/entity/Sentence.java b/nars/entity/Sentence.java index aec5f16e..184cd2ca 100644 --- a/nars/entity/Sentence.java +++ b/nars/entity/Sentence.java @@ -20,10 +20,8 @@ */ package nars.entity; -import java.util.*; - import nars.io.Symbols; -import nars.language.*; +import nars.term.*; import nars.main.*; /** @@ -31,81 +29,70 @@ *

    * It is used as the premises and conclusions of all inference rules. */ -public abstract class Sentence implements Cloneable { +public class Sentence implements Cloneable { /** The content of a Sentence is a Term */ - protected Term content; + private Term content; /** The punctuation also indicates the type of the Sentence: Judgment, Question, or Goal */ - protected char punctuation; - /** The truth value of Judgment or desire value of Goal */ - protected TruthValue truth = null; + private char punctuation; + /** The truth value of Judgment */ + private TruthValue truth; /** Partial record of the derivation path */ - protected Stamp stamp = null; - /** Whether it is an input sentence */ - protected boolean input = false; - /** For Question and Goal: best solution found so far */ - protected Judgment bestSolution = null; + private Stamp stamp; /** - * Make a Sentence from an input String. Called by StringParser. - * @param term The content of the sentence - * @param punc The puncuation (and therefore, type) of the sentence - * @param truth The truth value of the sentence, if it is a Judgment (or Goal) - * @param stamp The stamp of the truth value (for Judgment or Goal) - * @param premise1 The first premise to record in the new Judgment. May be null. - * @param premise2 The second premise to record in the new Judgment. May be null. - * @return the Sentence generated from the arguments + * Create a Sentence with the given fields + * @param content The Term that forms the content of the sentence + * @param punctuation The punctuation indicating the type of the sentence + * @param truth The truth value of the sentence, null for question + * @param stamp The stamp of the sentence indicating its derivation time and base */ - public static Sentence make(Term term, char punc, TruthValue truth, Stamp stamp, Sentence premise1, Sentence premise2) { - if (term instanceof CompoundTerm) { - ((CompoundTerm) term).renameVariables(); - } - Sentence s = null; - switch (punc) { - case Symbols.JUDGMENT_MARK: - s = new Judgment(term, punc, truth, stamp, premise1, premise2); - break; - case Symbols.GOAL_MARK: - s = new Goal(term, punc, truth, stamp); - break; - case Symbols.QUESTION_MARK: - s = new Question(term, punc, stamp); - break; - case Symbols.QUEST_MARK: - s = new Quest(term, punc, stamp); - break; - default: - return null; - } - return s; + public Sentence(Term content, char punctuation, TruthValue truth, Stamp stamp) { + this.content = content; + this.content.renameVariables(); + this.punctuation = punctuation; + this.truth = truth; + this.stamp = stamp; } /** - * Make a derived Sentence from a template and some initial values. Called by Memory. - * @param oldS A sample sentence providing the type of the new sentence - * @param term The content of the sentence - * @param truth The truth value of the sentence, if it is a Judgment (or Goal) - * @param stamp The stamp of the truth value (for Judgment or Goal) - * @param premise1 The first premise to record in the new Judgment. May be null. - * @param premise2 The second premise to record in the new Judgment. May be null. - * @return the Sentence generated from the arguments + * To check whether two sentences are equal + * @param that The other sentence + * @return Whether the two sentences have the same content */ - public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp stamp, - Sentence premise1, Sentence premise2) { - if (term instanceof CompoundTerm) { - ((CompoundTerm) term).renameVariables(); - } - Sentence s = null; - if (oldS instanceof Quest) { - s = new Quest(term, Symbols.QUEST_MARK, stamp); - } else if (oldS instanceof Question) { - s = new Question(term, Symbols.QUESTION_MARK, stamp); - } else if (oldS instanceof Goal) { - s = new Goal(term, Symbols.GOAL_MARK, truth, stamp); - } else { - s = new Judgment(term, Symbols.JUDGMENT_MARK, truth, stamp, premise1, premise2); + @Override + public boolean equals(Object that) { + if (that instanceof Sentence) { + Sentence t = (Sentence) that; + return content.equals(t.getContent()) && punctuation == t.getPunctuation() && truth.equals(t.getTruth()) && stamp.equals(t.getStamp()); } - return s; + return false; + } + + /** + * To produce the hashcode of a sentence + * @return A hashcode + */ + @Override + public int hashCode() { + int hash = 5; + hash = 67 * hash + (this.content != null ? this.content.hashCode() : 0); + hash = 67 * hash + this.punctuation; + hash = 67 * hash + (this.truth != null ? this.truth.hashCode() : 0); + hash = 67 * hash + (this.stamp != null ? this.stamp.hashCode() : 0); + return hash; + } + + /** + * Check whether the judgment is equivalent to another one + *

    + * The two may have different keys + * @param that The other judgment + * @return Whether the two are equivalent + */ + public boolean equivalentTo(Sentence that) { + assert content.equals(that.getContent()) && punctuation == that.getPunctuation(); + return (truth.equals(that.getTruth()) && stamp.equals(that.getStamp())); } /** @@ -114,12 +101,10 @@ public static Sentence make(Sentence oldS, Term term, TruthValue truth, Stamp st */ @Override public Object clone() { - if (this instanceof Judgment) { - return make((Term) content.clone(), punctuation, truth, (Stamp) stamp.clone(), - ((Judgment) this)._premise1, ((Judgment) this)._premise2); - } else { - return make((Term) content.clone(), punctuation, truth, (Stamp) stamp.clone(), null, null); + if (truth == null) { + return new Sentence((Term) content.clone(), punctuation, null, (Stamp) stamp.clone()); } + return new Sentence((Term) content.clone(), punctuation, new TruthValue(truth), (Stamp) stamp.clone()); } /** @@ -130,6 +115,14 @@ public Term getContent() { return content; } + /** + * Get the punctuation of the sentence + * @return The character '.' or '?' + */ + public char getPunctuation() { + return punctuation; + } + /** * Clone the content of the sentence * @return A clone of the content Term @@ -178,98 +171,6 @@ public boolean isQuestion() { return (punctuation == Symbols.QUESTION_MARK); } - /** - * Check input sentence - * @return Whether the - */ - public boolean isInput() { - return input; - } - - /** - * The only place to change the default, called in StringParser - */ - public void setInput() { - input = true; - } - - /** - * Get the best-so-far solution for a Question or Goal - * @return The stored Judgment or null - */ - public Judgment getBestSolution() { - return bestSolution; - } - - /** - * Set the best-so-far solution for a Question or Goal, and report answer for input question - * @param judg The solution to be remembered - */ - public void setBestSolution(Judgment judg) { - bestSolution = judg; - if (input) { - Memory.report(judg, false); - } - } - - /** - * Check whether one sentence has stamp overlapping with another one, and change the system cash - *

    - * Normally 'this' is a task, and 'that' is a belief - * @param that The sentence to be checked against - * @return Whether the two have overlapping stamps - */ - public boolean noOverlapping(Sentence that) { - Memory.newStamp = Stamp.make(stamp, that.getStamp()); - return (Memory.newStamp != null); - } - - /** - * Get a stable String representation for a Sentece, called from Task only - * Different from toString: tense symbol is replaced by the actual value - * @return String representation for a Sentece - */ - public String forTaskKey() { - StringBuffer s = new StringBuffer(); - s.append(content.getName()); - s.append(punctuation + " "); - if (truth != null) { - s.append(truth.toString()); - } - s.append(stamp.toString()); - return s.toString(); - } - - public Term toTerm() { - String opName; - switch (punctuation) { - case Symbols.JUDGMENT_MARK: - opName = "^believe"; - break; - case Symbols.GOAL_MARK: - opName = "^want"; - break; - case Symbols.QUESTION_MARK: - opName = "^wonder"; - break; - case Symbols.QUEST_MARK: - opName = "^assess"; - break; - default: - return null; - } - Term opTerm = Memory.nameToOperator(opName); - ArrayList arg = new ArrayList(); - arg.add(content); - if (truth != null) { - String word = truth.toWord(); - arg.add(new Term(word)); - } - Term argTerm = Product.make(arg); - Term operation = Inheritance.make(argTerm, opTerm); - return operation; - } - /** * Get a String representation of the sentence * @return The String @@ -279,16 +180,10 @@ public String toString() { StringBuffer s = new StringBuffer(); s.append(content.toString()); s.append(punctuation + " "); - s.append(tenseToString()); if (truth != null) { s.append(truth.toString()); } - if (NARS.isStandAlone()) { - s.append(stamp.toString()); - if (bestSolution != null) { - s.append("BestSolution: " + bestSolution); - } - } + s.append(stamp.toString()); return s.toString(); } @@ -296,62 +191,14 @@ public String toString() { * Get a String representation of the sentence, with 2-digit accuracy * @return The String */ - public String toString2() { + public String toStringBrief() { StringBuffer s = new StringBuffer(); s.append(content.toString()); s.append(punctuation + " "); - s.append(tenseToString()); if (truth != null) { - s.append(truth.toString2()); - } - if (NARS.isStandAlone()) { - s.append(stamp.toString()); - if (bestSolution != null) { - s.append("BestSolution: " + bestSolution); - } + s.append(truth.toStringBrief()); } + s.append(stamp.toString()); return s.toString(); } - - /** - * Get a String representation of the tense of the sentence - * @return The String - */ - private String tenseToString() { - if (!isEvent()) { - return ""; - } - long delta = getEventTime() - Center.getTime(); - if (delta > 0) { - return Symbols.TENSE_FUTURE + " "; - } - if (delta < 0) { - return Symbols.TENSE_PAST + " "; - } - return Symbols.TENSE_PRESENT + " "; - } - - /** - * Get the creation time of the truth-value from the Stamp - * @return The creation time of the truth-value - */ - public long getCreationTime() { - return getStamp().getCreationTime(); - } - - /** - * Get the occurrence time of the event - * @return The occurrence time of the event - */ - public long getEventTime() { - return getStamp().getEventTime(); - } - - /** - * Check if the truth-value of the Sentence is about a certain time - * @return Whether the sentence is about an event - */ - public boolean isEvent() { - return (getEventTime() != Stamp.ALWAYS); - } } diff --git a/nars/entity/ShortFloat.java b/nars/entity/ShortFloat.java index 0cb65bba..29cf860e 100644 --- a/nars/entity/ShortFloat.java +++ b/nars/entity/ShortFloat.java @@ -29,10 +29,18 @@ public class ShortFloat implements Cloneable { but used as float */ private short value; - /** + /** * Constructor * @param v The initial value */ + public ShortFloat(short v) { + value = v; + } + + /** + * Constructor + * @param v The initial value in float + */ public ShortFloat(float v) { setValue(v); } @@ -42,14 +50,14 @@ public ShortFloat(float v) { * @return The current value in float */ public float getValue() { - return (float) (value * 0.0001); + return value * 0.0001f; } /** * To access the value as short * @return The current value in short */ - short getShortValue() { + private short getShortValue() { return value; } @@ -59,7 +67,7 @@ short getShortValue() { */ public void setValue(float v) { if ((v < 0) || (v > 1)) { - System.out.println("!!! Wrong value: " + v); + throw new ArithmeticException("Invalid value: " + v); } else { value = (short) (v * 10000.0 + 0.5); } @@ -81,9 +89,16 @@ public boolean equals(Object that) { */ @Override public int hashCode() { - int hash = 3; - hash = 17 * hash + this.value; - return hash; + return this.value + 17; + } + + /** + * To create an identifical copy of the ShortFloat + * @return A cloned ShortFloat + */ + @Override + public Object clone() { + return new ShortFloat(value); } /** @@ -107,7 +122,7 @@ public String toString() { * Round the value into a short String * @return The String representation, with 2 digits accuracy */ - public String toString2() { + public String toStringBrief() { value += 50; String s = toString(); value -= 50; diff --git a/nars/entity/Stamp.java b/nars/entity/Stamp.java index 1fdbee82..9f4fbd8a 100644 --- a/nars/entity/Stamp.java +++ b/nars/entity/Stamp.java @@ -28,86 +28,53 @@ /** * Each Sentence has a time stamp, consisting the following components: * (1) The creation time of the sentence, - * (2) The time when the truth-value is supported, - * (3) A trail of serial numbers of sentence, from which the sentence is derived. - * Each input sentence gets a unique serial number. - * The derived sentences inherits serial numbers from its parents, cut at the length limit. + * (2) A evidentialBase of serial numbers of sentence, from which the sentence is derived. + * Each input sentence gets a unique serial number, though the creation time may be not unique. + * The derived sentences inherits serial numbers from its parents, cut at the baseLength limit. */ public class Stamp implements Cloneable { /** serial number, for the whole system */ - private static long current = 0; - /** special value, for time-independent truth-values */ - public static final long ALWAYS = Long.MIN_VALUE; + private static long currentSerial = 0; /** serial numbers */ - private long[] trail; - /** trail length */ - private int length; + private long[] evidentialBase; + /** evidentialBase baseLength */ + private int baseLength; /** creation time of the stamp */ private long creationTime; - /** creation time of the stamp */ - private long eventTime; - - /** - * Generate a new stamp, with a new serial number, for new sentence without tense - */ - public Stamp() { - current++; - length = 1; - trail = new long[length]; - trail[0] = current; - creationTime = Center.getTime(); - eventTime = ALWAYS; - } /** - * Generate a new stamp, with a new serial number, for new sentence with numeric tense - * @param time The time of the event - * @param relative Whether the time is absolute or relative + * Generate a new stamp, with a new serial number, for a new Task + * @param time Creation time of the stamp */ - public Stamp(long time, boolean relative) { - current++; - length = 1; - trail = new long[length]; - trail[0] = current; - creationTime = Center.getTime(); - if (relative) { - eventTime = creationTime + time; - } else { - eventTime = time; - } + public Stamp(long time) { + currentSerial++; + baseLength = 1; + evidentialBase = new long[baseLength]; + evidentialBase[0] = currentSerial; + creationTime = time; } /** - * Generate a new stamp, with a new serial number, for input sentence with symbolic tense - * @param tense The String representing input tense + * Generate a new stamp identical with a given one + * @param old The stamp to be cloned */ - public Stamp(String tense) { - current++; - length = 1; - trail = new long[length]; - trail[0] = current; - creationTime = Center.getTime(); - if (tense.equals(Symbols.TENSE_PAST)) { - eventTime = creationTime - 1; - } else if (tense.equals(Symbols.TENSE_FUTURE)) { - eventTime = creationTime + 1; - } else { - eventTime = creationTime; - } + private Stamp(Stamp old) { + baseLength = old.length(); + evidentialBase = old.getBase(); + creationTime = old.getCreationTime(); } /** - * Generate a new stamp from an existing one, with the same trail but different creation time + * Generate a new stamp from an existing one, with the same evidentialBase but different creation time *

    * For single-premise rules * @param old The stamp of the single premise */ - private Stamp(Stamp old) { - length = old.length(); - trail = old.getList(); - creationTime = Center.getTime(); - eventTime = old.getEventTime(); + private Stamp(Stamp old, long time) { + baseLength = old.length(); + evidentialBase = old.getBase(); + creationTime = time; } /** @@ -119,27 +86,22 @@ private Stamp(Stamp old) { private Stamp(Stamp first, Stamp second, long time) { int i1, i2, j; i1 = i2 = j = 0; - length = Math.min(first.length() + second.length(), Parameters.MAXMUM_STAMP_LENGTH); - trail = new long[length]; - while (i2 < second.length() && j < length) { - trail[j] = first.get(i1); + baseLength = Math.min(first.length() + second.length(), Parameters.MAXMUM_STAMP_LENGTH); + evidentialBase = new long[baseLength]; + while (i2 < second.length() && j < baseLength) { + evidentialBase[j] = first.get(i1); i1++; j++; - trail[j] = second.get(i2); + evidentialBase[j] = second.get(i2); i2++; j++; } - while (i1 < first.length() && j < length) { - trail[j] = first.get(i1); + while (i1 < first.length() && j < baseLength) { + evidentialBase[j] = first.get(i1); i1++; j++; } - creationTime = Center.getTime(); - if (Memory.currentTask.getSentence() instanceof Goal) { - eventTime = ALWAYS; - } else { - eventTime = time; - } + creationTime = time; } /** @@ -150,7 +112,7 @@ private Stamp(Stamp first, Stamp second, long time) { * @param second The second Stamp * @return The merged Stamp, or null */ - public static Stamp make(Stamp first, Stamp second) { + public static Stamp make(Stamp first, Stamp second, long time) { for (int i = 0; i < first.length(); i++) { for (int j = 0; j < second.length(); j++) { if (first.get(i) == second.get(j)) { @@ -159,55 +121,61 @@ public static Stamp make(Stamp first, Stamp second) { } } if (first.length() > second.length()) { - return new Stamp(first, second, first.getEventTime()); + return new Stamp(first, second, time); } else { - return new Stamp(second, first, first.getEventTime()); + return new Stamp(second, first, time); } } + /** + * Clone a stamp + * @return The cloned stamp + */ + @Override public Object clone() { return new Stamp(this); } /** - * Initialize the stamp machenism of the system, called in Center + * Initialize the stamp machenism of the system, called in Reasoner */ public static void init() { - current = 0; + currentSerial = 0; } /** - * Return the length of the trail + * Return the baseLength of the evidentialBase * @return Length of the Stamp */ public int length() { - return length; + return baseLength; } /** - * Get a number from the trail by index, called in this class only + * Get a number from the evidentialBase by index, called in this class only * @param i The index * @return The number at the index */ long get(int i) { - return trail[i]; + return evidentialBase[i]; } /** - * Get the trail, called in this class only - * @return The trail of numbers + * Get the evidentialBase, called in this class only + * @return The evidentialBase of numbers */ - long[] getList() { - return trail; + private long[] getBase() { + return evidentialBase; } /** - * Convert the trail into a set + * Convert the evidentialBase into a set + * @return The TreeSet representation of the evidential base */ - TreeSet toSet() { + private TreeSet toSet() { TreeSet set = new TreeSet(); - for (int i = 0; i < length; i++) { - set.add(trail[i]); + for (int i = 0; i < baseLength; i++) { + set.add(evidentialBase[i]); } return set; } @@ -222,9 +190,6 @@ public boolean equals(Object that) { if (!(that instanceof Stamp)) { return false; } - if (eventTime != ((Stamp) that).getEventTime()) { - return false; // creation time does not matter - } TreeSet set1 = toSet(); TreeSet set2 = ((Stamp) that).toSet(); return (set1.containsAll(set2) && set2.containsAll(set1)); @@ -236,8 +201,7 @@ public boolean equals(Object that) { */ @Override public int hashCode() { - int hash = 7; - return hash; + return toString().hashCode(); } /** @@ -248,49 +212,18 @@ public long getCreationTime() { return creationTime; } - /** - * Get the eventTime of the truth-value - * @return The event time - */ - public long getEventTime() { - return eventTime; - } - - /** - * Adjust the eventTime of the truth-value - * @param d The direction and extent of the change - */ -// public void adjustEventTime(int d) { -// if (eventTime != ALWAYS) { -// eventTime += d; -// } else { -// eventTime = d + Center.getTime(); -// } -// } - - /** - * Set the eventTime of the truth-value - * @param t The new event time - */ - public void setEventTime(long t) { - eventTime = t; - } - /** * Get a String form of the Stamp for display - * Format: {creationTime [: eventTime] : trail} + * Format: {creationTime [: eventTime] : evidentialBase} * @return The Stamp as a String */ @Override public String toString() { StringBuffer buffer = new StringBuffer(" " + Symbols.STAMP_OPENER + creationTime); - if (eventTime != ALWAYS) { - buffer.append(" " + Symbols.STAMP_STARTER + " " + eventTime); - } buffer.append(" " + Symbols.STAMP_STARTER + " "); - for (int i = 0; i < length; i++) { - buffer.append(Long.toString(trail[i])); - if (i < (length - 1)) { + for (int i = 0; i < baseLength; i++) { + buffer.append(Long.toString(evidentialBase[i])); + if (i < (baseLength - 1)) { buffer.append(Symbols.STAMP_SEPARATOR); } else { buffer.append(Symbols.STAMP_CLOSER + " "); diff --git a/nars/entity/Task.java b/nars/entity/Task.java index 22cdfce7..ca67b0cc 100644 --- a/nars/entity/Task.java +++ b/nars/entity/Task.java @@ -20,31 +20,57 @@ */ package nars.entity; -import nars.language.Term; -import nars.main.NARS; +import nars.term.Term; /** * A task to be processed, consists of a Sentence and a BudgetValue */ -public class Task extends Item implements Cloneable { +public class Task extends Item { + /** The sentence of the Task */ private Sentence sentence; - /** Whether it is derived by a structural rule */ - protected boolean structural = false; // + /** Task from which the Task is derived, or null if input */ + private Task parentTask; + /** Belief from which the Task is derived, or null if derived from a theorem */ + private Sentence parentBelief; + /** For Question and Goal: best solution found so far */ + private Sentence bestSolution; /** - * Constructor + * Constructor for input task * @param s The sentence * @param b The budget */ public Task(Sentence s, BudgetValue b) { - super(b); + super(s.toStringBrief(), b); // change to toKey() sentence = s; - key = sentence.forTaskKey(); + key = sentence.toStringBrief(); } - public Object clone() { - return new Task(sentence, (BudgetValue) this); + /** + * Constructor for a derived task + * @param s The sentence + * @param b The budget + * @param parentTask The task from which this new task is derived + * @param parentBelief The belief from which this new task is derived + */ + public Task(Sentence s, BudgetValue b, Task parentTask, Sentence parentBelief) { + this(s, b); + this.parentTask = parentTask; + this.parentBelief = parentBelief; + } + + /** + * Constructor for an activated task + * @param s The sentence + * @param b The budget + * @param parentTask The task from which this new task is derived + * @param parentBelief The belief from which this new task is derived + * @param solution The belief to be used in future inference + */ + public Task(Sentence s, BudgetValue b, Task parentTask, Sentence parentBelief, Sentence solution) { + this(s, b, parentTask, parentBelief); + this.bestSolution = solution; } /** @@ -64,57 +90,69 @@ public Term getContent() { } /** - * Check if a Task is derived by a StructuralRule - * @return Whether the Task is derived by a StructuralRule + * Check if a Task is a direct input + * @return Whether the Task is derived from another task */ - public boolean isStructural() { - return structural; + public boolean isInput() { + return parentTask == null; } /** - * Record if a Task is derived by a StructuralRule + * Check if a Task is derived by a StructuralRule + * @return Whether the Task is derived by a StructuralRule */ - public void setStructural() { - structural = true; + public boolean isStructural() { + return (parentBelief == null) && (parentTask != null); } /** * Merge one Task into another * @param that The other Task */ - public void merge(Item that) { + public void merge(Task that) { super.merge(that); - structural = (structural || ((Task) that).isStructural()); } /** - * Get a String representation of the Task - * @return The Task as a String + * Get the best-so-far solution for a Question or Goal + * @return The stored Sentence or null */ - @Override - public String toString() { - StringBuffer s = new StringBuffer(); - if (NARS.isStandAlone()) { - s.append(super.toString() + " "); - } - s.append(sentence); - return s.toString(); + public Sentence getBestSolution() { + return bestSolution; } /** - * Get a String representation of the Task, with reduced accuracy - * @return The Task as a String, with 2-digit accuracy for the values + * Set the best-so-far solution for a Question or Goal, and report answer for input question + * @param judg The solution to be remembered + */ + public void setBestSolution(Sentence judg) { + bestSolution = judg; + } + + /** + * Get the parent belief of a task + * @return The belief from which the task is derived + */ + public Sentence getParentBelief() { + return parentBelief; + } + + /** + * Get a String representation of the Task + * @return The Task as a String */ @Override - public String toString2() { + public String toString() { StringBuffer s = new StringBuffer(); - if (NARS.isStandAlone()) { - s.append(super.toString2() + " "); + s.append(super.toString() + " "); + if (parentTask != null) { + s.append(" \n from task: " + parentTask.toStringBrief()); + if (parentBelief != null) { + s.append(" \n from belief: " + parentBelief.toStringBrief()); + } } - if (sentence instanceof Question) { - s.append(sentence); - } else { - s.append(((Judgment) sentence).toString2()); + if (bestSolution != null) { + s.append(" \n solution: " + bestSolution.toStringBrief()); } return s.toString(); } diff --git a/nars/entity/TaskLink.java b/nars/entity/TaskLink.java index 0e01b3ea..839b40bf 100644 --- a/nars/entity/TaskLink.java +++ b/nars/entity/TaskLink.java @@ -20,9 +20,7 @@ */ package nars.entity; -import java.util.*; - -import nars.language.Term; +import nars.term.Term; import nars.main.*; /** @@ -37,8 +35,10 @@ public class TaskLink extends TermLink { private Task targetTask; /** Remember the TermLinks that has been used recently with this TaskLink */ private String recordedLinks[]; + /** Remember the time when each TermLink is used with this TaskLink */ private long recordingTime[]; - int counter, first; + /** The number of TermLinks remembered */ + int counter; /** * Constructor @@ -49,7 +49,7 @@ public class TaskLink extends TermLink { * @param v The budget */ public TaskLink(Task t, TermLink template, BudgetValue v) { - super(v); + super("", v); targetTask = t; if (template == null) { type = TermLink.SELF; @@ -61,7 +61,6 @@ public TaskLink(Task t, TermLink template, BudgetValue v) { recordedLinks = new String[Parameters.TERM_LINK_RECORD_LENGTH]; recordingTime = new long[Parameters.TERM_LINK_RECORD_LENGTH]; counter = 0; - first = 0; setKey(); // as defined in TermLink key += t.getKey(); } @@ -74,35 +73,16 @@ public Task getTargetTask() { return targetTask; } - /** - * Get the TermLink recordedLinks - * @return The list of TermLinks recently used - */ - String[] getRecordedLinks() { - return recordedLinks; - } - - long[] getRecordingTime() { - return recordingTime; - } - - int getCounter() { - return counter; - } - - int getFirst() { - return first; - } - /** * To check whether a TaskLink should use a TermLink, return false if they * interacted recently *

    * called in TermLinkBag only * @param termLink The TermLink to be checked + * @param currentTime The current time * @return Whether they are novel to each other */ - public boolean novel(TermLink termLink) { + public boolean novel(TermLink termLink, long currentTime) { Term bTerm = termLink.getTarget(); if (bTerm.equals(targetTask.getSentence().getContent())) { return false; @@ -111,19 +91,19 @@ public boolean novel(TermLink termLink) { int next = 0; int i; for (i = 0; i < counter; i++) { - next = (i + first) % Parameters.TERM_LINK_RECORD_LENGTH; + next = i % Parameters.TERM_LINK_RECORD_LENGTH; if (linkKey.equals(recordedLinks[next])) { - if (Center.getTime() < recordingTime[next] + Parameters.TERM_LINK_RECORD_LENGTH) { + if (currentTime < recordingTime[next] + Parameters.TERM_LINK_RECORD_LENGTH) { return false; } else { - recordingTime[next] = Center.getTime(); + recordingTime[next] = currentTime; return true; } } } - next = (i + first) % Parameters.TERM_LINK_RECORD_LENGTH; + next = i % Parameters.TERM_LINK_RECORD_LENGTH; recordedLinks[next] = linkKey; // add knowledge reference to recordedLinks - recordingTime[next] = Center.getTime(); + recordingTime[next] = currentTime; if (counter < Parameters.TERM_LINK_RECORD_LENGTH) { // keep a constant length counter++; } diff --git a/nars/entity/TermLink.java b/nars/entity/TermLink.java index 50aec366..1099b0ee 100644 --- a/nars/entity/TermLink.java +++ b/nars/entity/TermLink.java @@ -21,7 +21,7 @@ package nars.entity; import nars.io.Symbols; -import nars.language.Term; +import nars.term.Term; /** * A link between a compound term and a component term @@ -59,12 +59,6 @@ public class TermLink extends Item { /** The index of the component in the component list of the compound, may have up to 4 levels */ protected short[] index; - /** - * Default constructor - */ - public TermLink() { - } - /** * Constructor for TermLink template *

    @@ -91,12 +85,12 @@ public TermLink(Term t, short p, int... indices) { } } - /** - * Default Constructor need in TaskLink - * @param v Budget value of the link + /** called from TaskLink + * @param s The key of the TaskLink + * @param v The budget value of the TaskLink */ - protected TermLink(BudgetValue v) { - super(v); + protected TermLink(String s, BudgetValue v) { + super(s, v); } /** @@ -108,7 +102,7 @@ protected TermLink(BudgetValue v) { * @param v Budget value of the link */ public TermLink(Term t, TermLink template, BudgetValue v) { - super(v); + super(t.getName(), v); target = t; type = template.getType(); if (template.getTarget().equals(t)) { @@ -178,22 +172,4 @@ public short getIndex(int i) { return -1; } } - - /** - * Get a String representation of the link, with full accuracy - * @return The String - */ - @Override - public String toString() { - return (super.toString() + " " + key); - } - - /** - * Get a String representation of the link, with 2-digit accuracy - * @return The String - */ - @Override - public String toString2() { - return (super.toString2() + " " + key); - } } diff --git a/nars/entity/TruthValue.java b/nars/entity/TruthValue.java index 30452d18..43ffaaae 100644 --- a/nars/entity/TruthValue.java +++ b/nars/entity/TruthValue.java @@ -21,12 +21,11 @@ package nars.entity; import nars.io.Symbols; -import nars.main.Parameters; /** * Frequency and confidence. */ -public class TruthValue { // implements Cloneable { +public class TruthValue implements Cloneable { // implements Cloneable { /** The charactor that marks the two ends of a truth value */ private static final char DELIMITER = Symbols.TRUTH_VALUE_MARK; /** The charactor that separates the factors in a truth value */ @@ -55,16 +54,6 @@ public TruthValue(TruthValue v) { confidence = new ShortFloat(v.getConfidence()); } - public static TruthValue make(String str) { - if (str.equals("TRUE")) { - return new TruthValue(1.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); - } else if (str.equals("FALSE")) { - return new TruthValue(0.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); - } else { - return null; - } - } - /** * Get the frequency value * @return The frequency value @@ -98,6 +87,14 @@ public float getExpDifAbs(TruthValue t) { return Math.abs(getExpectation() - t.getExpectation()); } + /** + * Check if the truth value is negative + * @return True if the frequence is less than 1/2 + */ + public boolean isNegative() { + return getFrequency() < 0.5; + } + /** * Compare two truth values * @param that The other TruthValue @@ -116,22 +113,14 @@ public boolean equals(Object that) { */ @Override public int hashCode() { - int hash = 5; - return hash; + return (int) (getExpectation() * 37); } - public String toWord() { - float e = getExpectation(); - float t = Parameters.EXPECTATION_THRESHOLD; - if (e > t) { - return "TRUE"; - } - if (e < 1 - t) { - return "FALSE"; - } - return "UNSURE"; + @Override + public Object clone() { + return new TruthValue(getFrequency(), getConfidence()); } - + /** * The String representation of a TruthValue * @return The String @@ -145,9 +134,9 @@ public String toString() { * A simplified String representation of a TruthValue, where each factor is accruate to 1% * @return The String */ - public String toString2() { - String s1 = DELIMITER + frequency.toString2() + SEPARATOR; - String s2 = confidence.toString2(); + public String toStringBrief() { + String s1 = DELIMITER + frequency.toStringBrief() + SEPARATOR; + String s2 = confidence.toStringBrief(); if (s2.equals("1.00")) { return s1 + "0.99" + DELIMITER; } else { diff --git a/nars/entity/package.html b/nars/entity/package.html index cad3e206..dec3a9dd 100644 --- a/nars/entity/package.html +++ b/nars/entity/package.html @@ -8,14 +8,13 @@

    Package Specification

    • ShortFloats: BudgetValue (priority/durability/quality) and TruthValue (frequency/confidence)
    • -
    • Stamp: serial numbers associated to TruthVallue
    • +
    • Stamp: serial numbers and creation time associated to a TruthValue
    • Sentence: a Term, a TruthValue, and a Stamp. A Sentence can be a Judgment, a Goal, or a Question.
    • Task: a Sentence to be processed.
    • TermLink: built in pair between a compound term and a component term.
    • TaskLink: special TermLink refering to a Task, whose Term equals or contains the current Term.
    • Concept: labeled by a Term, contains a TaskLink bag and a TermLink bag for indirect tasks/beliefs, as well as beliefs/questions/goals directly on the Term.
    • Item: Concept, Task, or TermLink
    • -
    • TemporalValue: A relative time used in Sentence (for tense), Conjunction (for order), and Implication/Equivalence (for time interval)
    in NARS, each task is processed in two stages: @@ -23,9 +22,6 @@

    Package Specification

  • Direct processing by matching, in the concept corresponding to the content, in one step. It happens when the task is inserted into memory.
  • Indirect processing by reasoning, in related concepts and unlimited steps. It happens in each inference cycle.
  • -The transmission from (1) to (2) corresponds to "decision making". -

    -Inference between premises with no shared term can only happen among new events, as temporal induction/comparison. diff --git a/nars/gui/BagWindow.java b/nars/gui/BagWindow.java index 84ae4754..9008e397 100644 --- a/nars/gui/BagWindow.java +++ b/nars/gui/BagWindow.java @@ -24,7 +24,7 @@ import java.awt.event.*; import nars.main.Parameters; -import nars.storage.Bag; +import nars.container.Bag; /** * Window display the priority distribution of items within a given bag @@ -36,7 +36,7 @@ public class BagWindow extends NarsFrame implements ActionListener, AdjustmentLi /** The lowest level displayed */ private int showLevel; /** Control buttons */ - private Button playButton, stopButton, closeButton; + private Button playButton, stopButton, closeButton; /** Display area */ private TextArea text; /** Display label */ @@ -131,20 +131,23 @@ public void actionPerformed(ActionEvent e) { } else if (source == stopButton) { bag.stop(); } else if (source == closeButton) { - close(); + close(); } } + /** + * Close the window + */ private void close() { bag.stop(); dispose(); counter--; } - - @Override - public void windowClosing(WindowEvent arg0) { - close(); - } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } /** * Handling scrollbar movement diff --git a/nars/gui/ConceptWindow.java b/nars/gui/ConceptWindow.java index 3fafbcde..e5cd4e14 100644 --- a/nars/gui/ConceptWindow.java +++ b/nars/gui/ConceptWindow.java @@ -30,11 +30,10 @@ /** * Window displaying the content of a Concept, such as beliefs, goals, and questions */ -public class ConceptWindow extends NarsFrame implements ActionListener, ItemListener { +public class ConceptWindow extends NarsFrame implements ActionListener { /** Control buttons */ private Button playButton, stopButton, playInNewWindowButton, closeButton; - private Checkbox showDerivationCheckbox; /** Display area */ private TextArea text; /** The concept to be displayed */ @@ -79,11 +78,6 @@ public ConceptWindow(Concept concept) { stopButton.addActionListener(this); add(stopButton); - showDerivationCheckbox = new Checkbox("Derivation", true); - gridbag.setConstraints(showDerivationCheckbox, c); - showDerivationCheckbox.addItemListener(this); - add(showDerivationCheckbox); - playInNewWindowButton = new Button("Play in New Window"); gridbag.setConstraints(playInNewWindowButton, c); playInNewWindowButton.addActionListener(this); @@ -115,7 +109,6 @@ public void detachFromConcept() { // The Play and Stop buttons and Derivation checkbox no longer do anything, so disable. playButton.setEnabled(false); stopButton.setEnabled(false); - showDerivationCheckbox.setEnabled(false); } /** @@ -145,16 +138,4 @@ private void close() { public void windowClosing(WindowEvent e) { close(); } - - public boolean getShowDerivation() { - return showDerivationCheckbox.getState(); - } - - @Override - public void itemStateChanged(ItemEvent e) { - if (e.getSource() == showDerivationCheckbox) { - // Redisplay. displayContent will check getShowDerivation(). - post(concept.displayContent()); - } - } } diff --git a/nars/gui/InferenceWindow.java b/nars/gui/InferenceWindow.java index c2c185e7..b698f8b4 100644 --- a/nars/gui/InferenceWindow.java +++ b/nars/gui/InferenceWindow.java @@ -24,7 +24,7 @@ import java.awt.event.*; import nars.io.*; -import nars.language.Term; +//import nars.term.Term; /** * Window displying inference log @@ -32,7 +32,7 @@ public class InferenceWindow extends NarsFrame implements ActionListener, ItemListener { /** Control buttons */ - private Button playButton, stopButton, hideButton; + private Button playButton, stopButton, hideButton; /** Display area */ private TextArea text; /** String to be catched */ @@ -41,12 +41,17 @@ public class InferenceWindow extends NarsFrame implements ActionListener, ItemLi private Choice watchType; /** Type of catched text */ private String watched = ""; + /** Inference recorder */ + private InferenceRecorder recorder; /** * Constructor + * @param recorder The inference recorder */ - public InferenceWindow() { + public InferenceWindow(InferenceRecorder recorder) { super("Inference log"); + this.recorder = recorder; + setBackground(SINGLE_WINDOW_COLOR); GridBagLayout gridbag = new GridBagLayout(); GridBagConstraints c = new GridBagConstraints(); @@ -112,7 +117,7 @@ public void clear() { public void append(String str) { text.append(str); if (!watched.equals("") && (str.indexOf(watched) != -1)) { - Record.stop(); + recorder.stop(); } } @@ -123,31 +128,24 @@ public void append(String str) { public void actionPerformed(ActionEvent e) { Object s = e.getSource(); if (s == playButton) { - Record.play(); + recorder.play(); } else if (s == stopButton) { - Record.stop(); + recorder.stop(); } else if (s == hideButton) { close(); } } + // to rebuild the distinction between Term and String public void itemStateChanged(ItemEvent event) { String request = watchText.getText().trim(); if (!request.equals("")) { - int i = watchType.getSelectedIndex(); - if (i == 1) { - Term term = StringParser.parseTerm(request); - if (term != null) { - watched = term.getName(); - } - } else if (i == 2) { - watched = request; - } + watched = request; } } private void close() { - Record.stop(); + recorder.stop(); dispose(); } diff --git a/nars/gui/InputWindow.java b/nars/gui/InputWindow.java index 953e8445..7f466486 100644 --- a/nars/gui/InputWindow.java +++ b/nars/gui/InputWindow.java @@ -23,25 +23,31 @@ import java.awt.*; import java.awt.event.*; -import nars.io.StringParser; +import nars.container.Memory; +import nars.main.*; +import nars.io.*; /** * Input window, accepting user tasks */ -public class InputWindow extends NarsFrame implements ActionListener { - +public class InputWindow extends NarsFrame implements ActionListener, InputChannel { + private Reasoner reasoner; /** Control buttons */ - private Button okButton, holdButton, clearButton, closeButton; + private Button okButton, holdButton, clearButton, closeButton; /** Input area */ private TextArea inputText; /** Whether the window is ready to accept new input */ private boolean ready; + /** number of cycles between experience lines */ + private int timer; /** * Constructor + * @param reasoner The reseasoner + * @param title The title of the window */ - public InputWindow() { - super("Input Window"); + public InputWindow(Reasoner reasoner, String title) { + super(title + " - Input Window"); setBackground(SINGLE_WINDOW_COLOR); GridBagLayout gridbag = new GridBagLayout(); GridBagConstraints c = new GridBagConstraints(); @@ -76,6 +82,8 @@ public InputWindow() { add(closeButton); setBounds(0, 40, 400, 210); setVisible(true); + + this.reasoner = reasoner; } /** @@ -99,73 +107,55 @@ public void actionPerformed(ActionEvent e) { } else if (b == clearButton) { inputText.setText(""); } else if (b == closeButton) { - close(); - } + close(); + } } private void close() { setVisible(false); } - - @Override - public void windowClosing(WindowEvent arg0) { - close(); - } - /** - * Get one input lines - * @return The top line in the input window - */ - public String getLine() { - if (ready) { - String input = inputText.getText().trim(); - int cutPoint; - while (input.length() > 0) { - cutPoint = input.indexOf('\n'); - if (cutPoint < 0) { - inputText.setText(""); - return input; - } else if (cutPoint > 0) { - inputText.setText(input.substring(cutPoint + 1)); - return input.substring(0, cutPoint).trim(); - } else { // (cutPoint == 0) - input = input.substring(1, cutPoint).trim(); - } - } - ready = false; - inputText.setText(""); - } - return null; + @Override + public void windowClosing(WindowEvent arg0) { + close(); } /** - * Get input lines, and send them to Memory - * @return Nember of running steps, if any + * Accept text input in a tick, which can be multiple lines + * @return Whether to check this channel again */ - public long getInput() { - while (ready) { - String input = inputText.getText(); - int EOL = input.indexOf('\n'); - if (EOL < 0) { - EOL = input.length(); - } - String line = input.substring(0, EOL).trim(); - if (input.length() > EOL) { - inputText.setText(input.substring(EOL + 1)); + public boolean nextInput() { + if (timer > 0) { // wait until the timer + timer--; + return true; + } + if (!ready) { + return false; + } + String text = inputText.getText().trim(); + String line; // The next line of text + int endOfLine; + // The process steps at a number or no more text + while ((text.length() > 0) && (timer == 0)) { + endOfLine = text.indexOf('\n'); + if (endOfLine < 0) { + line = text; + text = ""; } else { - inputText.setText(""); + line = text.substring(0, endOfLine).trim(); + text = text.substring(endOfLine + 1); + } + try { + timer = Integer.parseInt(line); + reasoner.walk(timer); + } catch (NumberFormatException e) { + reasoner.textInputLine(line); } - if (line.length() == 0) { + inputText.setText(text); + if (text.isEmpty()) { ready = false; - } else { - try { - Long i = new Long(line); - return i.longValue(); - } catch (NumberFormatException e) { - StringParser.parseTask(line); - } } } - return 0; + return ((text.length() > 0) || (timer > 0)); } } diff --git a/nars/gui/MainWindow.java b/nars/gui/MainWindow.java index b9fe0cec..e6a6d520 100644 --- a/nars/gui/MainWindow.java +++ b/nars/gui/MainWindow.java @@ -22,19 +22,31 @@ import java.awt.*; import java.awt.event.*; +import java.util.ArrayList; import nars.io.*; import nars.main.*; +import nars.container.Memory; /** * Main window of NARS GUI */ -public class MainWindow extends NarsFrame implements ActionListener { +public class MainWindow extends NarsFrame implements ActionListener, OutputChannel { + /** Reference to the reasoner */ + private Reasoner reasoner; + /** Reference to the memory */ + private Memory memory; + /** Reference to the inference recorder */ + private InferenceRecorder record; + /** Reference to the experience reader */ + private ExperienceReader experienceReader; + /** Reference to the experience writer */ + private ExperienceWriter experienceWriter; /** Experience display area */ private TextArea ioText; /** Control buttons */ - private Button stopButton, walkButton, runButton, exitButton; + private Button stopButton, walkButton, runButton, exitButton; /** Clock display field */ private TextField timerText; /** Label of the clock */ @@ -44,17 +56,30 @@ public class MainWindow extends NarsFrame implements ActionListener { /** Whether the experience is saving into a file */ private boolean savingExp = false; /** Input experience window */ - public static InputWindow inputWindow; + public InputWindow inputWindow; /** Window to accept a Term to be looked into */ - public static TermWindow conceptWin; + public TermWindow conceptWin; /** Windows for run-time parameter adjustment */ - public static ParameterWindow forgetTW, forgetBW, forgetCW, silentW; + public ParameterWindow forgetTW, forgetBW, forgetCW, silentW; /** * Constructor + * @param reasoner + * @param title */ - public MainWindow() { - super("NARS"); + public MainWindow(Reasoner reasoner, String title) { + super(title); + this.reasoner = reasoner; + memory = reasoner.getMemory(); + record = memory.getRecorder(); + experienceWriter = new ExperienceWriter(reasoner); + inputWindow = reasoner.getInputWindow(); + conceptWin = new TermWindow(memory); + forgetTW = new ParameterWindow("Task Forgetting Rate", Parameters.TASK_LINK_FORGETTING_CYCLE); + forgetBW = new ParameterWindow("Belief Forgetting Rate", Parameters.TERM_LINK_FORGETTING_CYCLE); + forgetCW = new ParameterWindow("Concept Forgetting Rate", Parameters.CONCEPT_FORGETTING_CYCLE); + silentW = new ParameterWindow("Report Silence Level", Parameters.SILENT_LEVEL); + setBackground(MAIN_WINDOW_COLOR); MenuBar menuBar = new MenuBar(); @@ -68,17 +93,14 @@ public MainWindow() { m = new Menu("Memory"); m.add(new MenuItem("Initialize")); - m.addSeparator(); - m.add(new MenuItem("Load Memory")); - m.add(new MenuItem("Save Memory")); m.addActionListener(this); menuBar.add(m); m = new Menu("View"); m.add(new MenuItem("Concepts")); - m.add(new MenuItem("Task Buffer")); - m.add(new MenuItem("Inference Log")); + m.add(new MenuItem("Buffered Tasks")); m.add(new MenuItem("Concept Content")); + m.add(new MenuItem("Inference Log")); m.add(new MenuItem("Input Window")); m.addActionListener(this); menuBar.add(m); @@ -153,13 +175,6 @@ public MainWindow() { setBounds(0, 250, 400, 350); setVisible(true); - inputWindow = new InputWindow(); - conceptWin = new TermWindow(); - forgetTW = new ParameterWindow("Task Forgetting Rate", Parameters.TASK_LINK_FORGETTING_CYCLE); - forgetBW = new ParameterWindow("Belief Forgetting Rate", Parameters.TERM_LINK_FORGETTING_CYCLE); - forgetCW = new ParameterWindow("Concept Forgetting Rate", Parameters.CONCEPT_FORGETTING_CYCLE); - silentW = new ParameterWindow("Report Silence Level", Parameters.SILENT_LEVEL); - initTimer(); } @@ -167,19 +182,16 @@ public MainWindow() { * Initialize the system for a new run */ public void init() { - if (timer != 0) { - Center.experienceIO.saveLine(timer + ""); - initTimer(); - } + initTimer(); ioText.setText(""); } /** * Reset timer and its display */ - private void initTimer() { + public void initTimer() { timer = 0; - timerText.setText(timer + ""); + timerText.setText(memory.getTime() + " :: " + timer); } /** @@ -187,24 +199,7 @@ private void initTimer() { */ public void tickTimer() { timer++; - timerText.setText(timer + ""); - } - - /** - * Add new line to the display, plus the time interval - * @param line The text to be displayed - */ - public void post(String line) { - if (timer > 0) { - String timeLine = new String(timer + "\n"); - ioText.append(timeLine); - Center.experienceIO.saveLine(timeLine); - } - if (line != null) { - ioText.append(line); - Center.experienceIO.saveLine(line); - } - initTimer(); + timerText.setText(memory.getTime() + " :: " + timer); } /** @@ -215,45 +210,46 @@ public void actionPerformed(ActionEvent e) { Object obj = e.getSource(); if (obj instanceof Button) { if (obj == runButton) { - Center.setStoper(-1); + reasoner.run(); } else if (obj == stopButton) { - Center.setStoper(0); + reasoner.stop(); } else if (obj == walkButton) { - Center.setStoper(1); + reasoner.walk(1); } else if (obj == exitButton) { - close(); + close(); } } else if (obj instanceof MenuItem) { String label = e.getActionCommand(); if (label.equals("Load Experience")) { - Center.experienceIO.openLoadFile(); + experienceReader = new ExperienceReader(reasoner); + experienceReader.openLoadFile(); } else if (label.equals("Save Experience")) { - savingExp = !savingExp; if (savingExp) { - ioText.setBackground(SAVING_BACKGROUND_COLOR); - Center.experienceIO.openSaveFile(); - } else { - post(null); ioText.setBackground(DISPLAY_BACKGROUND_COLOR); - Center.experienceIO.closeSaveFile(); + experienceWriter.closeSaveFile(); + } else { + ioText.setBackground(SAVING_BACKGROUND_COLOR); + experienceWriter.openSaveFile(); } + savingExp = !savingExp; } else if (label.equals("Record Inference")) { - if (Record.isLogging()) { - Record.closeLogFile(); + if (record.isLogging()) { + record.closeLogFile(); } else { - Record.openLogFile(); + record.openLogFile(); } } else if (label.equals("Initialize")) { - Center.reset(); + reasoner.reset(); + memory.getExportStrings().add("*****RESET*****"); } else if (label.equals("Concepts")) { - Memory.conceptsStartPlay("Active Concepts"); - } else if (label.equals("Task Buffer")) { - Memory.newTasksStartPlay("Task Buffer"); - } else if (label.equals("Inference Log")) { - Record.show(); - Record.play(); + memory.conceptsStartPlay("Active Concepts"); + } else if (label.equals("Buffered Tasks")) { + memory.taskBuffersStartPlay("Buffered Tasks"); } else if (label.equals("Concept Content")) { conceptWin.setVisible(true); + } else if (label.equals("Inference Log")) { + record.show(); + record.play(); } else if (label.equals("Input Window")) { inputWindow.setVisible(true); } else if (label.equals("Task Forgetting Rate")) { @@ -274,13 +270,40 @@ public void actionPerformed(ActionEvent e) { } } + /** + * Close the whole system + */ private void close() { setVisible(false); System.exit(0); } - - @Override - public void windowClosing(WindowEvent arg0) { - close(); - } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } + + /** + * To process the next chunk of output data + * @param lines The text lines to be displayed + */ + public void nextOutput(ArrayList lines) { + if (!lines.isEmpty()) { + String text = ""; + for (Object line : lines) { + text += line + "\n"; + } + ioText.append(text); + } + } + + /** + * To get the timer value and then to reset it + * @return The previous timer value + */ + public long updateTimer() { + long i = timer; + initTimer(); + return i; + } } diff --git a/nars/gui/MessageDialog.java b/nars/gui/MessageDialog.java index 7cf44a02..5fe81ffd 100644 --- a/nars/gui/MessageDialog.java +++ b/nars/gui/MessageDialog.java @@ -18,7 +18,6 @@ * You should have received a copy of the GNU General Public License * along with Open-NARS. If not, see . */ - package nars.gui; import java.awt.*; @@ -28,14 +27,15 @@ * Pop-up message for the user to accept */ public class MessageDialog extends Dialog implements ActionListener, WindowListener { + protected Button button; protected TextArea text; - + /** * Constructor * @param parent The parent Frame * @param message The text to be displayed - */ + */ public MessageDialog(Frame parent, String message) { super(parent, "Message", false); setLayout(new BorderLayout(5, 5)); @@ -55,48 +55,48 @@ public MessageDialog(Frame parent, String message) { addWindowListener(this); setVisible(true); } - + /** * Handling button click * @param e The ActionEvent - */ + */ public void actionPerformed(ActionEvent e) { if (e.getSource() == button) { - close(); + close(); } } - + private void close() { this.setVisible(false); this.dispose(); } - @Override - public void windowActivated(WindowEvent arg0) { - } + @Override + public void windowActivated(WindowEvent arg0) { + } - @Override - public void windowClosed(WindowEvent arg0) { - } + @Override + public void windowClosed(WindowEvent arg0) { + } - @Override - public void windowClosing(WindowEvent arg0) { - close(); - } + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } - @Override - public void windowDeactivated(WindowEvent arg0) { - } + @Override + public void windowDeactivated(WindowEvent arg0) { + } - @Override - public void windowDeiconified(WindowEvent arg0) { - } + @Override + public void windowDeiconified(WindowEvent arg0) { + } - @Override - public void windowIconified(WindowEvent arg0) { - } + @Override + public void windowIconified(WindowEvent arg0) { + } - @Override - public void windowOpened(WindowEvent arg0) { - } -} \ No newline at end of file + @Override + public void windowOpened(WindowEvent arg0) { + } +} diff --git a/nars/gui/NarsFrame.java b/nars/gui/NarsFrame.java index 9da6bd62..afccc7ea 100644 --- a/nars/gui/NarsFrame.java +++ b/nars/gui/NarsFrame.java @@ -18,7 +18,6 @@ * You should have received a copy of the GNU General Public License * along with Open-NARS. If not, see . */ - package nars.gui; import java.awt.*; @@ -28,6 +27,7 @@ * Specify shared properties of NARS windows */ public abstract class NarsFrame extends Frame implements WindowListener { + /** Color for the background of the main window */ static final Color MAIN_WINDOW_COLOR = new Color(120, 120, 255); /** Color for the background of the windows with unique instantiation */ @@ -42,48 +42,48 @@ public abstract class NarsFrame extends Frame implements WindowListener { static final Font NarsFont = new Font("Helvetica", Font.PLAIN, 11); /** Message for unimplemented functions */ static final String UNAVAILABLE = "\n Not implemented in this demo applet."; - + /** Default constructor */ NarsFrame() { super(); addWindowListener(this); } - + /** * Constructor with title and font setting * @param title The title displayed by the window - */ + */ NarsFrame(String title) { super(" " + title); setFont(NarsFont); addWindowListener(this); } - @Override - public void windowActivated(WindowEvent arg0) { - } + @Override + public void windowActivated(WindowEvent arg0) { + } - @Override - public void windowClosed(WindowEvent arg0) { - } + @Override + public void windowClosed(WindowEvent arg0) { + } - @Override - public void windowClosing(WindowEvent arg0) { - } + @Override + public void windowClosing(WindowEvent arg0) { + } - @Override - public void windowDeactivated(WindowEvent arg0) { - } + @Override + public void windowDeactivated(WindowEvent arg0) { + } - @Override - public void windowDeiconified(WindowEvent arg0) { - } + @Override + public void windowDeiconified(WindowEvent arg0) { + } - @Override - public void windowIconified(WindowEvent arg0) { - } + @Override + public void windowIconified(WindowEvent arg0) { + } - @Override - public void windowOpened(WindowEvent arg0) { - } + @Override + public void windowOpened(WindowEvent arg0) { + } } diff --git a/nars/gui/ParameterWindow.java b/nars/gui/ParameterWindow.java index 909a9a58..50c7ce33 100644 --- a/nars/gui/ParameterWindow.java +++ b/nars/gui/ParameterWindow.java @@ -31,11 +31,11 @@ public class ParameterWindow extends NarsFrame implements ActionListener, Adjust /** Display label */ private Label valueLabel; /** Control buttons */ - private Button hideButton, undoButton, defaultButton; + private Button hideButton, undoButton, defaultButton; /** Adjusting bar */ private Scrollbar valueBar; /** parameter values */ - private int defaultValue, previousValue, currentValue; + private int defaultValue, previousValue, currentValue; /** * Constructor @@ -98,7 +98,7 @@ public void actionPerformed(ActionEvent e) { valueBar.setValue(currentValue); valueLabel.setText(String.valueOf(currentValue)); } else if (s == hideButton) { - close(); + close(); } } @@ -106,11 +106,11 @@ private void close() { previousValue = currentValue; setVisible(false); } - - @Override - public void windowClosing(WindowEvent arg0) { - close(); - } + + @Override + public void windowClosing(WindowEvent arg0) { + close(); + } /** * Handling scrollbar movement diff --git a/nars/gui/TermWindow.java b/nars/gui/TermWindow.java index cf71e234..3c7a176d 100644 --- a/nars/gui/TermWindow.java +++ b/nars/gui/TermWindow.java @@ -24,8 +24,8 @@ import java.awt.event.*; import nars.entity.Concept; -import nars.io.StringParser; -import nars.main.Memory; +//import nars.io.StringParser; +import nars.container.Memory; /** * Window accept a Term, then display the content of the corresponding Concept @@ -37,13 +37,17 @@ public class TermWindow extends NarsFrame implements ActionListener { /** Input field for term name */ private TextField termField; /** Control buttons */ - private Button playButton, hideButton; + private Button playButton, hideButton; + /** Reference to the memory */ + private Memory memory; /** * Constructor */ - TermWindow() { + TermWindow(Memory memory) { super("Term Window"); + this.memory = memory; + setBackground(SINGLE_WINDOW_COLOR); GridBagLayout gridbag = new GridBagLayout(); GridBagConstraints c = new GridBagConstraints(); @@ -87,7 +91,7 @@ public class TermWindow extends NarsFrame implements ActionListener { public void actionPerformed(ActionEvent e) { Button b = (Button) e.getSource(); if (b == playButton) { - Concept concept = Memory.nameToConcept(StringParser.parseTerm(termField.getText()).getName()); + Concept concept = memory.nameToConcept(termField.getText().trim()); if (concept != null) { concept.startPlay(true); } diff --git a/nars/inference/BudgetFunctions.java b/nars/inference/BudgetFunctions.java index fca13c0d..d8d1b12f 100644 --- a/nars/inference/BudgetFunctions.java +++ b/nars/inference/BudgetFunctions.java @@ -21,8 +21,8 @@ package nars.inference; import nars.entity.*; -import nars.language.*; -import nars.main.Memory; +import nars.term.*; +import nars.container.Memory; /** * Budget functions for resources allocation @@ -48,7 +48,7 @@ public static float truthToQuality(TruthValue t) { * @param judg The judgment to be ranked * @return The rank of the judgment, according to truth value only */ - public static float rankBelief(Judgment judg) { + public static float rankBelief(Sentence judg) { float confidence = judg.getTruth().getConfidence(); float originality = 1.0f / (judg.getStamp().length() + 1); return or(confidence, originality); @@ -63,21 +63,15 @@ public static float rankBelief(Judgment judg) { * @param task The task to be immediatedly processed, or null for continued process * @return The budget for the new task which is the belief activated, if necessary */ - static BudgetValue solutionEval(Sentence problem, Judgment solution, Task task) { + static BudgetValue solutionEval(Sentence problem, Sentence solution, Task task, Memory memory) { BudgetValue budget = null; boolean feedbackToLinks = false; if (task == null) { // called in continued processing - task = Memory.currentTask; + task = memory.currentTask; feedbackToLinks = true; } boolean judgmentTask = task.getSentence().isJudgment(); - float quality; - if (problem instanceof Question) { - quality = MatchingRules.solutionQuality((Question) problem, solution); - } else { - assert (problem instanceof Goal); - quality = solution.getTruth().getExpectation(); - } + float quality = LocalRules.solutionQuality(problem, solution); if (judgmentTask) { task.incPriority(quality); } else { @@ -85,9 +79,9 @@ static BudgetValue solutionEval(Sentence problem, Judgment solution, Task task) budget = new BudgetValue(quality, task.getDurability(), truthToQuality(solution.getTruth())); } if (feedbackToLinks) { - TaskLink tLink = Memory.currentTaskLink; + TaskLink tLink = memory.currentTaskLink; tLink.setPriority(Math.min(1 - quality, tLink.getPriority())); - TermLink bLink = Memory.currentBeliefLink; + TermLink bLink = memory.currentBeliefLink; bLink.incPriority(quality); } return budget; @@ -100,16 +94,16 @@ static BudgetValue solutionEval(Sentence problem, Judgment solution, Task task) * @param truth The truth value of the conclusion of revision * @return The budget for the new task */ - static BudgetValue revise(TruthValue tTruth, TruthValue bTruth, TruthValue truth, boolean feedbackToLinks) { + static BudgetValue revise(TruthValue tTruth, TruthValue bTruth, TruthValue truth, boolean feedbackToLinks, Memory memory) { float difT = truth.getExpDifAbs(tTruth); - Task task = Memory.currentTask; + Task task = memory.currentTask; task.decPriority(1 - difT); task.decDurability(1 - difT); if (feedbackToLinks) { - TaskLink tLink = Memory.currentTaskLink; + TaskLink tLink = memory.currentTaskLink; tLink.decPriority(1 - difT); tLink.decDurability(1 - difT); - TermLink bLink = Memory.currentBeliefLink; + TermLink bLink = memory.currentBeliefLink; float difB = truth.getExpDifAbs(bTruth); bLink.decPriority(1 - difB); bLink.decDurability(1 - difB); @@ -197,32 +191,34 @@ public static void merge(BudgetValue baseValue, BudgetValue adjustValue) { baseValue.setQuality(Math.max(baseValue.getQuality(), adjustValue.getQuality())); } - /* ----- Task derivation in MatchingRules and SyllogisticRules ----- */ + /* ----- Task derivation in LocalRules and SyllogisticRules ----- */ /** * Forward inference result and adjustment * @param truth The truth value of the conclusion * @return The budget value of the conclusion */ - static BudgetValue forward(TruthValue truth) { - return budgetInference(truthToQuality(truth), 1); + static BudgetValue forward(TruthValue truth, Memory memory) { + return budgetInference(truthToQuality(truth), 1, memory); } /** * Backward inference result and adjustment, stronger case * @param truth The truth value of the belief deriving the conclusion + * @param memory Reference to the memory * @return The budget value of the conclusion */ - public static BudgetValue backward(TruthValue truth) { - return budgetInference(truthToQuality(truth), 1); + public static BudgetValue backward(TruthValue truth, Memory memory) { + return budgetInference(truthToQuality(truth), 1, memory); } /** * Backward inference result and adjustment, weaker case * @param truth The truth value of the belief deriving the conclusion + * @param memory Reference to the memory * @return The budget value of the conclusion */ - public static BudgetValue backwardWeak(TruthValue truth) { - return budgetInference(w2c(1) * truthToQuality(truth), 1); + public static BudgetValue backwardWeak(TruthValue truth, Memory memory) { + return budgetInference(w2c(1) * truthToQuality(truth), 1, memory); } /* ----- Task derivation in CompositionalRules and StructuralRules ----- */ @@ -230,44 +226,48 @@ public static BudgetValue backwardWeak(TruthValue truth) { * Forward inference with CompoundTerm conclusion * @param truth The truth value of the conclusion * @param content The content of the conclusion + * @param memory Reference to the memory * @return The budget of the conclusion */ - public static BudgetValue compoundForward(TruthValue truth, Term content) { - return budgetInference(truthToQuality(truth), content.getComplexity()); + public static BudgetValue compoundForward(TruthValue truth, Term content, Memory memory) { + return budgetInference(truthToQuality(truth), content.getComplexity(), memory); } /** * Backward inference with CompoundTerm conclusion, stronger case * @param content The content of the conclusion + * @param memory Reference to the memory * @return The budget of the conclusion */ - public static BudgetValue compoundBackward(Term content) { - return budgetInference(1, content.getComplexity()); + public static BudgetValue compoundBackward(Term content, Memory memory) { + return budgetInference(1, content.getComplexity(), memory); } /** * Backward inference with CompoundTerm conclusion, weaker case * @param content The content of the conclusion + * @param memory Reference to the memory * @return The budget of the conclusion */ - public static BudgetValue compoundBackwardWeak(Term content) { - return budgetInference(w2c(1), content.getComplexity()); + public static BudgetValue compoundBackwardWeak(Term content, Memory memory) { + return budgetInference(w2c(1), content.getComplexity(), memory); } /** * Common processing for all inference step * @param qual Quality of the inference * @param complexity Syntactic complexity of the conclusion + * @param memory Reference to the memory * @return Budget of the conclusion task */ - private static BudgetValue budgetInference(float qual, int complexity) { - Item t = Memory.currentTaskLink; + private static BudgetValue budgetInference(float qual, int complexity, Memory memory) { + Item t = memory.currentTaskLink; if (t == null) - t = Memory.currentTask; + t = memory.currentTask; float priority = t.getPriority(); float durability = t.getDurability(); float quality = (float) (qual / Math.sqrt(complexity)); - TermLink bLink = Memory.currentBeliefLink; + TermLink bLink = memory.currentBeliefLink; if (bLink != null) { priority = aveAri(priority, bLink.getPriority()); durability = aveAri(durability, bLink.getDurability()); @@ -275,18 +275,4 @@ private static BudgetValue budgetInference(float qual, int complexity) { } return new BudgetValue(and(priority, quality), and(durability, quality), quality); } - - /** - * Special treatment for temporal induction and comparison among recent event, no feedback - * @param b1 Budget value of the first premise - * @param b2 Budget value of the second premise - * @param t Truth value of the conclusion - * @return Budget value of the conclusion task - */ - public static BudgetValue temporalIndCom(BudgetValue b1, BudgetValue b2, TruthValue t) { - float priority = and(b1.getPriority(), b2.getPriority()); - float durability = and(b1.getDurability(), b2.getDurability()); - float quality = t.getConfidence(); - return new BudgetValue(priority, durability, quality); - } } diff --git a/nars/inference/CompositionalRules.java b/nars/inference/CompositionalRules.java index da532103..fa26663b 100644 --- a/nars/inference/CompositionalRules.java +++ b/nars/inference/CompositionalRules.java @@ -20,10 +20,11 @@ */ package nars.inference; +import java.util.*; + import nars.entity.*; -import nars.language.*; -import nars.io.Symbols; -import nars.main.Memory; +import nars.term.*; +import nars.container.Memory; /** * Compound term composition and decomposition rules, with two premises. @@ -40,125 +41,128 @@ public final class CompositionalRules { * @param taskSentence The first premise * @param belief The second premise * @param index The location of the shared term + * @param memory Reference to the memory */ - static void composeCompound(Sentence taskSentence, Judgment belief, int index) { - if (!taskSentence.isJudgment()) { - return; - } // forward only - Statement content1 = (Statement) taskSentence.getContent(); - Statement content2 = (Statement) belief.getContent(); - if (content1.getClass() != content2.getClass()) { + static void composeCompound(Statement taskContent, Statement beliefContent, int index, Memory memory) { + if ((!memory.currentTask.getSentence().isJudgment()) || (taskContent.getClass() != beliefContent.getClass())) { return; } - Term component1, component2; - component1 = content1.componentAt(1 - index); - component2 = content2.componentAt(1 - index); - Term component = content1.componentAt(index); - if ((component1 instanceof CompoundTerm) && ((CompoundTerm) component1).containAllComponents(component2)) { - decomposeCompound((CompoundTerm) component1, component2, component, index, true); + Term componentT = taskContent.componentAt(1 - index); + Term componentB = beliefContent.componentAt(1 - index); + Term componentCommon = taskContent.componentAt(index); + if ((componentT instanceof CompoundTerm) && ((CompoundTerm) componentT).containAllComponents(componentB)) { + decomposeCompound((CompoundTerm) componentT, componentB, componentCommon, index, true, memory); return; - } else if ((component2 instanceof CompoundTerm) && ((CompoundTerm) component2).containAllComponents(component1)) { - decomposeCompound((CompoundTerm) component2, component1, component, index, false); + } else if ((componentB instanceof CompoundTerm) && ((CompoundTerm) componentB).containAllComponents(componentT)) { + decomposeCompound((CompoundTerm) componentB, componentT, componentCommon, index, false, memory); return; } - Term t1 = null; - Term t2 = null; - Term t3 = null; - Term t4 = null; - TruthValue v1 = taskSentence.getTruth(); - TruthValue v2 = belief.getTruth(); + TruthValue truthT = memory.currentTask.getSentence().getTruth(); + TruthValue truthB = memory.currentBelief.getTruth(); + TruthValue truthOr = TruthFunctions.union(truthT, truthB); + TruthValue truthAnd = TruthFunctions.intersection(truthT, truthB); + Term termOr = null; + Term termAnd = null; if (index == 0) { - if (content1 instanceof Inheritance) { - t1 = IntersectionInt.make(component1, component2); - t2 = IntersectionExt.make(component1, component2); - t3 = DifferenceExt.make(component1, component2); - t4 = DifferenceExt.make(component2, component1); - } else if (content1 instanceof Implication) { - t1 = Disjunction.make(component1, component2); - t2 = Conjunction.make(component1, component2, -1); - t3 = Conjunction.make(component1, Negation.make(component2), -1); - t4 = Conjunction.make(component2, Negation.make(component1), -1); + if (taskContent instanceof Inheritance) { + termOr = IntersectionInt.make(componentT, componentB, memory); + if (truthB.isNegative()) { + if (!truthT.isNegative()) { + termAnd = DifferenceExt.make(componentT, componentB, memory); + truthAnd = TruthFunctions.intersection(truthT, TruthFunctions.negation(truthB)); + } + } else if (truthT.isNegative()) { + termAnd = DifferenceExt.make(componentB, componentT, memory); + truthAnd = TruthFunctions.intersection(truthB, TruthFunctions.negation(truthT)); + } else { + termAnd = IntersectionExt.make(componentT, componentB, memory); + } + } else if (taskContent instanceof Implication) { + termOr = Disjunction.make(componentT, componentB, memory); + termAnd = Conjunction.make(componentT, componentB, memory); } - processComposed(content1, component, t1, TruthFunctions.union(v1, v2)); - processComposed(content1, component, t2, TruthFunctions.intersection(v1, v2)); - processComposed(content1, component, t3, TruthFunctions.difference(v1, v2)); - processComposed(content1, component, t4, TruthFunctions.difference(v2, v1)); - } else { - if (content1 instanceof Inheritance) { - t1 = IntersectionExt.make(component1, component2); - t2 = IntersectionInt.make(component1, component2); - t3 = DifferenceInt.make(component1, component2); - t4 = DifferenceInt.make(component2, component1); - } else if (content1 instanceof Implication) { - t1 = Conjunction.make(component1, component2, -1); - t2 = Disjunction.make(component1, component2); - t3 = Disjunction.make(component1, Negation.make(component2)); - t4 = Disjunction.make(component2, Negation.make(component1)); + processComposed(taskContent, componentCommon, termOr, truthOr, memory); + processComposed(taskContent, componentCommon, termAnd, truthAnd, memory); + } else { // index == 1 + if (taskContent instanceof Inheritance) { + termOr = IntersectionExt.make(componentT, componentB, memory); + if (truthB.isNegative()) { + if (!truthT.isNegative()) { + termAnd = DifferenceInt.make(componentT, componentB, memory); + truthAnd = TruthFunctions.intersection(truthT, TruthFunctions.negation(truthB)); + } + } else if (truthT.isNegative()) { + termAnd = DifferenceInt.make(componentB, componentT, memory); + truthAnd = TruthFunctions.intersection(truthB, TruthFunctions.negation(truthT)); + } else { + termAnd = IntersectionInt.make(componentT, componentB, memory); + } + } else if (taskContent instanceof Implication) { + termOr = Conjunction.make(componentT, componentB, memory); + termAnd = Disjunction.make(componentT, componentB, memory); } - processComposed(content1, t1, component, TruthFunctions.union(v1, v2)); - processComposed(content1, t2, component, TruthFunctions.intersection(v1, v2)); - processComposed(content1, t3, component, TruthFunctions.difference(v1, v2)); - processComposed(content1, t4, component, TruthFunctions.difference(v2, v1)); + processComposed(taskContent, termOr, componentCommon, truthOr, memory); + processComposed(taskContent, termAnd, componentCommon, truthAnd, memory); } - if (content1.containNoVariable()) { // even closed veraibles are not allowed - introVarDepOuter(content1, content2, index); + if (taskContent instanceof Inheritance) { + introVarOuter(taskContent, beliefContent, index, memory);// introVarImage(taskContent, beliefContent, index, memory); } } /** - * Finish composing compound term - * @param statement Type of the content - * @param subject Subject of content - * @param predicate Predicate of content - * @param truth TruthValue of the content + * Finish composing implication term + * @param premise1 Type of the contentInd + * @param subject Subject of contentInd + * @param predicate Predicate of contentInd + * @param truth TruthValue of the contentInd + * @param memory Reference to the memory */ - private static void processComposed(Statement statement, Term subject, Term predicate, TruthValue truth) { + private static void processComposed(Statement statement, Term subject, Term predicate, TruthValue truth, Memory memory) { if ((subject == null) || (predicate == null)) { return; } - Term content = Statement.make(statement, subject, predicate); - if ((content == null) || content.equals(statement) || content.equals(Memory.currentBelief.getContent())) { + Term content = Statement.make(statement, subject, predicate, memory); + if ((content == null) || content.equals(statement) || content.equals(memory.currentBelief.getContent())) { return; } - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth, Memory.currentTask.getSentence(), Memory.currentBelief); + BudgetValue budget = BudgetFunctions.compoundForward(truth, content, memory); + memory.doublePremiseTask(content, truth, budget); } /** * {<(S|P) ==> M>,

    M>} |- M> - * @param compound The compound term to be decomposed - * @param component The part of the compound to be removed - * @param term1 The other term in the content + * @param implication The implication term to be decomposed + * @param componentCommon The part of the implication to be removed + * @param term1 The other term in the contentInd * @param index The location of the shared term: 0 for subject, 1 for predicate - * @param compoundTask Whether the compound comes from the task + * @param compoundTask Whether the implication comes from the task + * @param memory Reference to the memory */ - private static void decomposeCompound(CompoundTerm compound, Term component, Term term1, int index, boolean compoundTask) { + private static void decomposeCompound(CompoundTerm compound, Term component, Term term1, int index, boolean compoundTask, Memory memory) { if (compound instanceof Statement) { return; } - Term term2 = CompoundTerm.reduceComponents(compound, component); + Term term2 = CompoundTerm.reduceComponents(compound, component, memory); if (term2 == null) { return; } - Task task = Memory.currentTask; + Task task = memory.currentTask; Sentence sentence = task.getSentence(); - Judgment belief = Memory.currentBelief; + Sentence belief = memory.currentBelief; Statement oldContent = (Statement) task.getContent(); TruthValue v1, v2; if (compoundTask) { v1 = sentence.getTruth(); - v2 = - belief.getTruth(); + v2 = belief.getTruth(); } else { v1 = belief.getTruth(); - v2 = - sentence.getTruth(); + v2 = sentence.getTruth(); } TruthValue truth = null; Term content; if (index == 0) { - content = Statement.make(oldContent, term1, term2); + content = Statement.make(oldContent, term1, term2, memory); if (content == null) { return; } @@ -186,7 +190,7 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } } } else { - content = Statement.make(oldContent, term2, term1); + content = Statement.make(oldContent, term2, term1, memory); if (content == null) { return; } @@ -215,26 +219,27 @@ private static void decomposeCompound(CompoundTerm compound, Term component, Ter } } if (truth != null) { - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth, sentence, belief); + BudgetValue budget = BudgetFunctions.compoundForward(truth, content, memory); + memory.doublePremiseTask(content, truth, budget); } } /** * {(||, S, P), P} |- S * {(&&, S, P), P} |- S - * @param compound The compound term to be decomposed - * @param component The part of the compound to be removed - * @param compoundTask Whether the compound comes from the task + * @param implication The implication term to be decomposed + * @param componentCommon The part of the implication to be removed + * @param compoundTask Whether the implication comes from the task + * @param memory Reference to the memory */ - static void decomposeStatement(CompoundTerm compound, Term component, boolean compoundTask) { - Task task = Memory.currentTask; + static void decomposeStatement(CompoundTerm compound, Term component, boolean compoundTask, Memory memory) { + Task task = memory.currentTask; Sentence sentence = task.getSentence(); - if (sentence instanceof Question) { + if (sentence.isQuestion()) { return; } - Judgment belief = Memory.currentBelief; - Term content = CompoundTerm.reduceComponents(compound, component); + Sentence belief = memory.currentBelief; + Term content = CompoundTerm.reduceComponents(compound, component, memory); if (content == null) { return; } @@ -248,160 +253,224 @@ static void decomposeStatement(CompoundTerm compound, Term component, boolean co } TruthValue truth = null; if (compound instanceof Conjunction) { - if (sentence instanceof Goal) { - if (compoundTask) { - truth = TruthFunctions.intersection(v1, v2); - } else { - return; - } - } else if (sentence instanceof Judgment) { + if (sentence instanceof Sentence) { truth = TruthFunctions.reduceConjunction(v1, v2); } } else if (compound instanceof Disjunction) { - if (sentence instanceof Goal) { - if (compoundTask) { - truth = TruthFunctions.reduceConjunction(v2, v1); - } else { - return; - } - } else if (sentence instanceof Judgment) { + if (sentence instanceof Sentence) { truth = TruthFunctions.reduceDisjunction(v1, v2); } } else { return; } - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth, sentence, belief); + BudgetValue budget = BudgetFunctions.compoundForward(truth, content, memory); + memory.doublePremiseTask(content, truth, budget); } - /* ---------------- dependent variable and conjunction ---------------- */ + /* --------------- rules used for variable introduction --------------- */ /** - * { S>, P>} |- (&&, <#x() --> S>, <#x() --> P>> - * @param premise1 The first premise P> - * @param premise2 The second premise P> + * Introduce a dependent variable in an outer-layer conjunction + * @param taskContent The first premise S> + * @param beliefContent The second premise P> * @param index The location of the shared term: 0 for subject, 1 for predicate + * @param memory Reference to the memory */ - private static Conjunction introVarDep(Statement premise1, Statement premise2, int index) { - if (premise1.equals(premise2)) { - return null; - } - Statement state1, state2; - Variable var1 = new Variable(Symbols.VARIABLE_TAG + "0()"); - Variable var2 = new Variable(Symbols.VARIABLE_TAG + "0()"); + private static void introVarOuter(Statement taskContent, Statement beliefContent, int index, Memory memory) { + TruthValue truthT = memory.currentTask.getSentence().getTruth(); + TruthValue truthB = memory.currentBelief.getTruth(); + Variable varInd = new Variable("$varInd1"); + Variable varInd2 = new Variable("$varInd2"); + Term term11, term12, term21, term22, commonTerm; + HashMap subs = new HashMap(); if (index == 0) { - state1 = Statement.make(premise1, var1, premise1.getPredicate()); - state2 = Statement.make(premise2, var2, premise2.getPredicate()); + term11 = varInd; + term21 = varInd; + term12 = taskContent.getPredicate(); + term22 = beliefContent.getPredicate(); + if ((term12 instanceof ImageExt) && (term22 instanceof ImageExt)) { + commonTerm = ((ImageExt) term12).getTheOtherComponent(); + if ((commonTerm == null) || !((ImageExt) term22).containTerm(commonTerm)) { + commonTerm = ((ImageExt) term22).getTheOtherComponent(); + if ((commonTerm == null) || !((ImageExt) term12).containTerm(commonTerm)) { + commonTerm = null; + } + } + if (commonTerm != null) { + subs.put(commonTerm, varInd2); + ((ImageExt) term12).applySubstitute(subs); + ((ImageExt) term22).applySubstitute(subs); + } + } } else { - state1 = Statement.make(premise1, premise1.getSubject(), var1); - state2 = Statement.make(premise2, premise2.getSubject(), var2); + term11 = taskContent.getSubject(); + term21 = beliefContent.getSubject(); + term12 = varInd; + term22 = varInd; + if ((term11 instanceof ImageInt) && (term21 instanceof ImageInt)) { + commonTerm = ((ImageInt) term11).getTheOtherComponent(); + if ((commonTerm == null) || !((ImageInt) term21).containTerm(commonTerm)) { + commonTerm = ((ImageInt) term21).getTheOtherComponent(); + if ((commonTerm == null) || !((ImageExt) term11).containTerm(commonTerm)) { + commonTerm = null; + } + } + if (commonTerm != null) { + subs.put(commonTerm, varInd2); + ((ImageInt) term11).applySubstitute(subs); + ((ImageInt) term21).applySubstitute(subs); + } + } } - long time1 = Memory.currentTask.getSentence().getEventTime(); // which is which??? - long time2 = Memory.currentBelief.getEventTime(); - Term c; - if ((time1 == Stamp.ALWAYS) || (time2 == Stamp.ALWAYS)) { - c = Conjunction.make(state1, state2, -1); + Statement state1 = Inheritance.make(term11, term12, memory); + Statement state2 = Inheritance.make(term21, term22, memory); + Term content = Implication.make(state1, state2, memory); + TruthValue truth = TruthFunctions.induction(truthT, truthB); + BudgetValue budget = BudgetFunctions.compoundForward(truth, content, memory); + memory.doublePremiseTask(content, truth, budget); + content = Implication.make(state2, state1, memory); + truth = TruthFunctions.induction(truthB, truthT); + budget = BudgetFunctions.compoundForward(truth, content, memory); + memory.doublePremiseTask(content, truth, budget); + content = Equivalence.make(state1, state2, memory); + truth = TruthFunctions.comparison(truthT, truthB); + budget = BudgetFunctions.compoundForward(truth, content, memory); + memory.doublePremiseTask(content, truth, budget); + Variable varDep = new Variable("#varDep"); + if (index == 0) { + state1 = Inheritance.make(varDep, taskContent.getPredicate(), memory); + state2 = Inheritance.make(varDep, beliefContent.getPredicate(), memory); } else { - int dif = (int) (time2 - time1); - if (dif == 0) { - c = Conjunction.make(state1, state2, 0); - } else if (dif > 0) { - c = Conjunction.make(state1, state2, 1); - } else { - c = Conjunction.make(state2, state1, 1); - } + state1 = Inheritance.make(taskContent.getSubject(), varDep, memory); + state2 = Inheritance.make(beliefContent.getSubject(), varDep, memory); } - return (Conjunction) c; + content = Conjunction.make(state1, state2, memory); + truth = TruthFunctions.intersection(truthT, truthB); + budget = BudgetFunctions.compoundForward(truth, content, memory); + memory.doublePremiseTask(content, truth, budget); } /** - * Introduce a dependent variable in an outer-layer conjunction - * @param premise1 The first premise S> - * @param premise2 The second premise P> - * @param index The location of the shared term: 0 for subject, 1 for predicate + * Introduce a second independent variable into two terms with a common component + * @param term1 The first term + * @param term2 The second term + * @param index The index of the terms in their statement */ - private static void introVarDepOuter(Statement premise1, Statement premise2, int index) { - Term content = introVarDep(premise1, premise2, index); - if (content != null) { - TruthValue v1 = Memory.currentTask.getSentence().getTruth(); - TruthValue v2 = Memory.currentBelief.getTruth(); - TruthValue truth = TruthFunctions.intersection(v1, v2); - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth, - Memory.currentTask.getSentence(), Memory.currentBelief); + private static void introVarSecond(Term term1, Term term2, int index) { + Variable varInd2 = new Variable("$varIndSec"); + Term commonTerm; + HashMap subs = new HashMap(); + if (index == 0) { + if ((term1 instanceof ImageExt) && (term2 instanceof ImageExt)) { + commonTerm = ((ImageExt) term1).getTheOtherComponent(); + if ((commonTerm == null) || !((ImageExt) term2).containTerm(commonTerm)) { + commonTerm = ((ImageExt) term2).getTheOtherComponent(); + if ((commonTerm == null) || !((ImageExt) term1).containTerm(commonTerm)) { + commonTerm = null; + } + } + if (commonTerm != null) { + subs.put(commonTerm, varInd2); + ((ImageExt) term1).applySubstitute(subs); + ((ImageExt) term2).applySubstitute(subs); + } + } + } else { + if ((term1 instanceof ImageInt) && (term2 instanceof ImageInt)) { + commonTerm = ((ImageInt) term1).getTheOtherComponent(); + if ((commonTerm == null) || !((ImageInt) term2).containTerm(commonTerm)) { + commonTerm = ((ImageInt) term2).getTheOtherComponent(); + if ((commonTerm == null) || !((ImageExt) term1).containTerm(commonTerm)) { + commonTerm = null; + } + } + if (commonTerm != null) { + subs.put(commonTerm, varInd2); + ((ImageInt) term1).applySubstitute(subs); + ((ImageInt) term2).applySubstitute(subs); + } + } } } /** - * Introduce a dependent variable in an inner-layer conjunction - * @param compound The compound containing the first premise - * @param component The first premise S> - * @param premise The second premise P> + * { S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> + * { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>) + * @param taskContent The first premise directly used in internal induction, S> + * @param beliefContent The componentCommon to be used as a premise in internal induction, P> + * @param oldCompound The whole contentInd of the first premise, Implication or Conjunction + * @param memory Reference to the memory */ - static void introVarDepInner(CompoundTerm compound, Term component, Term premise) { - if (!(component instanceof Statement) || !(component.getClass() == premise.getClass())) { + // also handle the intensional situation + static void introVarInner(Statement premise1, Statement premise2, CompoundTerm oldCompound, Memory memory) { + Task task = memory.currentTask; + Sentence taskSentence = task.getSentence(); + if (!taskSentence.isJudgment() || (premise1.getClass() != premise2.getClass())) { return; } - Statement premise1 = (Statement) premise; - Statement premise2 = (Statement) component; - int index; - if (premise1.getSubject().equals(premise2.getSubject())) { - index = 0; - } else if (premise1.getPredicate().equals(premise2.getPredicate())) { - index = 1; + Variable varInd = new Variable("$varInd2"); + Variable varDep = new Variable("#varDep2"); + Term subject1 = premise1.getSubject(); + Term subject2 = premise2.getSubject(); + Term predicate1 = premise1.getPredicate(); + Term predicate2 = premise2.getPredicate(); + Statement stateInd1, stateInd2, stateDep1, stateDep2; + if (subject1.equals(subject2)) { + stateDep1 = Statement.make(premise1, varDep, predicate1, memory); + stateDep2 = Statement.make(premise2, varDep, predicate2, memory); + Term predicate1C = (Term) predicate1.clone(); + Term predicate2C = (Term) predicate2.clone(); + introVarSecond(predicate1C, predicate2C, 0); + stateInd1 = Statement.make(premise1, varInd, predicate1C, memory); + stateInd2 = Statement.make(premise2, varInd, predicate2C, memory); + } else if (predicate1.equals(predicate2)) { + stateDep1 = Statement.make(premise1, subject1, varDep, memory); + stateDep2 = Statement.make(premise2, subject2, varDep, memory); + Term subject1C = (Term) subject1.clone(); + Term subject2C = (Term) subject2.clone(); + introVarSecond(subject1C, subject2C, 1); + stateInd1 = Statement.make(premise1, subject1C, varInd, memory); + stateInd2 = Statement.make(premise2, subject2C, varInd, memory); } else { return; } - Term innerContent = introVarDep(premise1, premise2, index); - if (innerContent == null) { - return; - } - Task task = Memory.currentTask; - Sentence sentence = task.getSentence(); - Judgment belief = Memory.currentBelief; - Term content = task.getContent(); - if (compound instanceof Implication) { - content = Statement.make((Statement) content, compound.componentAt(0), innerContent); - } else if (compound instanceof Conjunction) { - content = CompoundTerm.replaceComponent(compound, component, innerContent); - } - TruthValue truth = null; - if (sentence instanceof Goal) { - truth = TruthFunctions.intersection(belief.getTruth(), sentence.getTruth()); // [To be refined] - } else if (sentence instanceof Judgment) { - truth = TruthFunctions.intersection(belief.getTruth(), sentence.getTruth()); + Sentence belief = memory.currentBelief; + Term implication, contentInd, contentDep = null; + if (oldCompound instanceof Implication) { + implication = Statement.make((Statement) oldCompound, oldCompound.componentAt(0), stateInd2, memory); + contentInd = Statement.make((Statement) oldCompound, stateInd1, implication, memory); + if (oldCompound.equals(premise1)) { + return; + } + contentDep = Conjunction.make(oldCompound, premise1, memory); + if (contentDep == null || !(contentDep instanceof CompoundTerm)) { + return; + } + HashMap substitute = new HashMap(); + substitute.put(memory.currentTerm, new Variable("#varDep")); + ((CompoundTerm) contentDep).applySubstitute(substitute); + } else if (oldCompound instanceof Conjunction) { + implication = Implication.make(stateInd1, stateInd2, memory); + HashMap subs = new HashMap(); + subs.put(premise2, implication); + contentInd = (Term) oldCompound.clone(); + ((CompoundTerm) contentInd).applySubstitute(subs); + contentDep = Conjunction.make(stateDep1, oldCompound, memory); + subs.clear(); + subs.put(premise2, stateDep2); + ((CompoundTerm) contentDep).applySubstitute(subs); } else { - assert (sentence instanceof Question); return; } - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.doublePremiseTask(budget, content, truth, sentence, belief); - } - - /** - * {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S> - * @param compound The compound term to be decomposed - * @param component The part of the compound to be removed - * @param compoundTask Whether the compound comes from the task - */ - static void anaVarDepOuter(CompoundTerm compound, Term component, boolean compoundTask) { - Term content = CompoundTerm.reduceComponents(compound, component); - Task task = Memory.currentTask; - Sentence sentence = task.getSentence(); - Judgment belief = Memory.currentBelief; - TruthValue v1 = sentence.getTruth(); - TruthValue v2 = belief.getTruth(); - TruthValue truth = null; - BudgetValue budget; - if (sentence instanceof Question) { - budget = (compoundTask ? BudgetFunctions.backward(v2) : BudgetFunctions.backwardWeak(v2)); + TruthValue truth; + if (premise1.equals(taskSentence.getContent())) { + truth = TruthFunctions.induction(belief.getTruth(), taskSentence.getTruth()); } else { - if (sentence instanceof Goal) { - truth = (compoundTask ? TruthFunctions.desireStrong(v1, v2) : TruthFunctions.desireWeak(v1, v2)); - } else { - truth = (compoundTask ? TruthFunctions.anonymousAnalogy(v1, v2) : TruthFunctions.anonymousAnalogy(v2, v1)); - } - budget = BudgetFunctions.compoundForward(truth, content); + truth = TruthFunctions.induction(taskSentence.getTruth(), belief.getTruth()); } - Memory.doublePremiseTask(budget, content, truth, sentence, belief); + BudgetValue budget = BudgetFunctions.forward(truth, memory); + memory.doublePremiseTask(contentInd, truth, budget); + truth = TruthFunctions.intersection(taskSentence.getTruth(), belief.getTruth()); + budget = BudgetFunctions.forward(truth, memory); + memory.doublePremiseTask(contentDep, truth, budget); } } diff --git a/nars/inference/MatchingRules.java b/nars/inference/LocalRules.java similarity index 54% rename from nars/inference/MatchingRules.java rename to nars/inference/LocalRules.java index 10d94847..52640ddc 100644 --- a/nars/inference/MatchingRules.java +++ b/nars/inference/LocalRules.java @@ -1,5 +1,5 @@ /* - * MatchingRules.java + * LocalRules.java * * Copyright (C) 2008 Pei Wang * @@ -20,9 +20,10 @@ */ package nars.inference; +import nars.container.Memory; import nars.entity.*; -import nars.language.*; -import nars.main.*; +import nars.term.*; +import nars.io.Symbols; /** * Directly process a task by a oldBelief, with only two Terms in both. @@ -30,11 +31,11 @@ *

    * revision: between judgments on non-overlapping evidence; * revision: between judgments; - * satisfy: between a Judgment and a Question/Goal; + * satisfy: between a Sentence and a Question/Goal; * merge: between items of the same type and stamp; * conversion: between different inheritance relations. */ -public final class MatchingRules { +public class LocalRules { /* -------------------- same contents -------------------- */ /** @@ -43,13 +44,16 @@ public final class MatchingRules { * called in RuleTables.reason * @param task The task * @param belief The belief + * @param memory Reference to the memory */ - public static void match(Task task, Judgment belief) { - Sentence sentence = task.getSentence(); + public static void match(Task task, Sentence belief, Memory memory) { + Sentence sentence = (Sentence) task.getSentence().clone(); if (sentence.isJudgment()) { - revision((Judgment) sentence, belief, true); - } else { - trySolution(sentence, belief, task); + if (Variable.unify(Symbols.VAR_INDEPENDENT, sentence.getContent(), (Term) belief.getContent().clone())) { + revision(sentence, belief, true, memory); + } + } else if (Variable.unify(Symbols.VAR_QUERY, sentence.getContent(), (Term) belief.getContent().clone())) { + trySolution(sentence, belief, task, memory); } } @@ -60,63 +64,40 @@ public static void match(Task task, Judgment belief) { * @param newBelief The new belief in task * @param oldBelief The previous belief with the same content * @param feedbackToLinks Whether to send feedback to the links + * @param memory Reference to the memory */ - public static void revision(Judgment newBelief, Judgment oldBelief, boolean feedbackToLinks) { - long time1 = newBelief.getEventTime(); - long time2 = oldBelief.getEventTime(); + public static void revision(Sentence newBelief, Sentence oldBelief, boolean feedbackToLinks, Memory memory) { TruthValue newTruth = newBelief.getTruth(); TruthValue oldTruth = oldBelief.getTruth(); - if (time1 != time2) { - oldTruth = TruthFunctions.temporalCasting(oldTruth, time2, time1, Memory.currentTask.getSentence().getCreationTime()); - Term term1 = newBelief.getContent(); - Term term2 = oldBelief.getContent(); - if (term2.isTemporal() && (!term1.isTemporal() || (term2.getOrder() != term1.getOrder()))) { - oldTruth = TruthFunctions.temporalCasting(oldTruth, term2.getOrder(), term1.getOrder(), 0); // to be refined - } - } TruthValue truth = TruthFunctions.revision(newTruth, oldTruth); - BudgetValue budget = BudgetFunctions.revise(newTruth, oldTruth, truth, feedbackToLinks); + BudgetValue budget = BudgetFunctions.revise(newTruth, oldTruth, truth, feedbackToLinks, memory); Term content = newBelief.getContent(); - Memory.revisionTask(budget, content, truth, oldBelief, newBelief); + memory.doublePremiseTask(content, truth, budget); } /** - * Check if a Judgment provide a better answer to a Question or Goal + * Check if a Sentence provide a better answer to a Question or Goal * @param problem The Goal or Question to be answered * @param belief The proposed answer * @param task The task to be processed + * @param memory Reference to the memory */ - public static void trySolution(Sentence problem, Judgment belief, Task task) { - if (problem instanceof Question) { - long taskTime = problem.getEventTime(); - long beliefTime = belief.getEventTime(); - if (taskTime != beliefTime) { - belief = (Judgment) belief.clone(); - TruthValue castedTruth = TruthFunctions.temporalCasting(belief.getTruth(), beliefTime, taskTime, problem.getCreationTime()); - belief.setTruth(castedTruth); - belief.getStamp().setEventTime(taskTime); - } - } - Judgment oldBest = problem.getBestSolution(); + public static void trySolution(Sentence problem, Sentence belief, Task task, Memory memory) { + Sentence oldBest = task.getBestSolution(); float newQ = solutionQuality(problem, belief); if (oldBest != null) { float oldQ = solutionQuality(problem, oldBest); if (oldQ >= newQ) { - if (problem instanceof Goal) { - Memory.adjustHappy(oldQ, task.getPriority()); - } return; } } - problem.setBestSolution(belief); - if (problem instanceof Goal) { - Memory.adjustHappy(newQ, task.getPriority()); - } else if (problem.isQuestion()) { - ((Question) problem).checkFeedback(); + task.setBestSolution(belief); + if (task.isInput()) { // moved from Sentence + memory.report(belief, false); } - BudgetValue budget = BudgetFunctions.solutionEval(problem, belief, task); + BudgetValue budget = BudgetFunctions.solutionEval(problem, belief, task, memory); if ((budget != null) && budget.aboveThreshold()) { - Memory.activatedTask(budget, belief, problem.isInput()); + memory.activatedTask(budget, belief, task.getParentBelief()); } } @@ -126,19 +107,12 @@ public static void trySolution(Sentence problem, Judgment belief, Task task) { * @param solution The solution to be evaluated * @return The quality of the judgment as the solution */ - public static float solutionQuality(Sentence problem, Judgment solution) { + public static float solutionQuality(Sentence problem, Sentence solution) { if (problem == null) { return solution.getTruth().getExpectation(); } - long taskTime = problem.getEventTime(); - long beliefTime = solution.getEventTime(); TruthValue truth = solution.getTruth(); - if ((taskTime != beliefTime) && (beliefTime != Stamp.ALWAYS)) { - truth = TruthFunctions.temporalCasting(truth, beliefTime, taskTime, problem.getCreationTime()); - } - if ((problem instanceof Goal) || (problem instanceof Quest)) { - return truth.getExpectation(); - } else if (problem.getContent().isConstant()) { // "yes/no" question + if (problem.getContent().isConstant()) { // "yes/no" question return truth.getConfidence(); } else { // "what" question or goal return truth.getExpectation() / solution.getContent().getComplexity(); @@ -148,15 +122,16 @@ public static float solutionQuality(Sentence problem, Judgment solution) { /* -------------------- same terms, difference relations -------------------- */ /** * The task and belief match reversely + * @param memory Reference to the memory */ - public static void matchReverse() { - Task task = Memory.currentTask; - Judgment belief = Memory.currentBelief; + public static void matchReverse(Memory memory) { + Task task = memory.currentTask; + Sentence belief = memory.currentBelief; Sentence sentence = task.getSentence(); if (sentence.isJudgment()) { - inferToSym((Judgment) sentence, belief); + inferToSym((Sentence) sentence, belief, memory); } else { - conversion(); + conversion(memory); } } @@ -165,18 +140,13 @@ public static void matchReverse() { * @param asym A Inheritance/Implication sentence * @param sym A Similarity/Equivalence sentence * @param figure location of the shared term + * @param memory Reference to the memory */ - public static void matchAsymSym(Sentence asym, Sentence sym, int figure) { - int order1 = asym.getContent().getOrder(); - int order2 = sym.getContent().getOrder(); - int order = SyllogisticRules.temporalSyllogism(order1, order2, figure); - if ((order1 != order2) && (order == 0)) { - return; - } - if (Memory.currentTask.getSentence().isJudgment()) { - inferToAsym((Judgment) asym, (Judgment) sym, order); + public static void matchAsymSym(Sentence asym, Sentence sym, int figure, Memory memory) { + if (memory.currentTask.getSentence().isJudgment()) { + inferToAsym((Sentence) asym, (Sentence) sym, memory); } else { - convertRelation(); + convertRelation(memory); } } @@ -186,27 +156,23 @@ public static void matchAsymSym(Sentence asym, Sentence sym, int figure) { * Produce Similarity/Equivalence from a pair of reversed Inheritance/Implication * @param judgment1 The first premise * @param judgment2 The second premise + * @param memory Reference to the memory */ - private static void inferToSym(Judgment judgment1, Judgment judgment2) { + private static void inferToSym(Sentence judgment1, Sentence judgment2, Memory memory) { Statement s1 = (Statement) judgment1.getContent(); Term t1 = s1.getSubject(); Term t2 = s1.getPredicate(); Term content; if (s1 instanceof Inheritance) { - content = Similarity.make(t1, t2); + content = Similarity.make(t1, t2, memory); } else { - int order = s1.getOrder(); - if (order < 0) { - content = Equivalence.make(t1, t2, true, -order); - } else { - content = Equivalence.make(t1, t2, judgment1.isEvent(), order); - } + content = Equivalence.make(t1, t2, memory); } TruthValue value1 = judgment1.getTruth(); TruthValue value2 = judgment2.getTruth(); TruthValue truth = TruthFunctions.intersection(value1, value2); - BudgetValue budget = BudgetFunctions.forward(truth); - Memory.doublePremiseTask(budget, content, truth, judgment1, judgment2); + BudgetValue budget = BudgetFunctions.forward(truth, memory); + memory.doublePremiseTask(content, truth, budget); } /** @@ -214,41 +180,71 @@ private static void inferToSym(Judgment judgment1, Judgment judgment2) { * Produce an Inheritance/Implication from a Similarity/Equivalence and a reversed Inheritance/Implication * @param asym The asymmetric premise * @param sym The symmetric premise + * @param memory Reference to the memory */ - private static void inferToAsym(Judgment asym, Judgment sym, int order) { + private static void inferToAsym(Sentence asym, Sentence sym, Memory memory) { Statement statement = (Statement) asym.getContent(); Term sub = statement.getPredicate(); Term pre = statement.getSubject(); - Statement content = Statement.make(statement, sub, pre, sym.isEvent(), order); + Statement content = Statement.make(statement, sub, pre, memory); TruthValue truth = TruthFunctions.reduceConjunction(sym.getTruth(), asym.getTruth()); - BudgetValue budget = BudgetFunctions.forward(truth); - Memory.doublePremiseTask(budget, content, truth, sym, asym); + BudgetValue budget = BudgetFunctions.forward(truth, memory); + memory.doublePremiseTask(content, truth, budget); } /* -------------------- one-premise inference rules -------------------- */ /** * {

    S>} |- P> * Produce an Inheritance/Implication from a reversed Inheritance/Implication + * @param memory Reference to the memory */ - private static void conversion() { - TruthValue truth = TruthFunctions.conversion(Memory.currentBelief.getTruth()); - BudgetValue budget = BudgetFunctions.forward(truth); - Memory.convertedJudgment(truth, budget); + private static void conversion(Memory memory) { + TruthValue truth = TruthFunctions.conversion(memory.currentBelief.getTruth()); + BudgetValue budget = BudgetFunctions.forward(truth, memory); + convertedJudgment(truth, budget, memory); } /** * { P>} |- P> * { P>} |- P> * Switch between Inheritance/Implication and Similarity/Equivalence + * @param memory Reference to the memory */ - private static void convertRelation() { - TruthValue truth = Memory.currentBelief.getTruth(); - if (((Statement) Memory.currentTask.getContent()).isCommutative()) { + private static void convertRelation(Memory memory) { + TruthValue truth = memory.currentBelief.getTruth(); + if (((Statement) memory.currentTask.getContent()).isCommutative()) { truth = TruthFunctions.abduction(truth, 1.0f); } else { truth = TruthFunctions.deduction(truth, 1.0f); } - BudgetValue budget = BudgetFunctions.forward(truth); - Memory.convertedJudgment(truth, budget); + BudgetValue budget = BudgetFunctions.forward(truth, memory); + convertedJudgment(truth, budget, memory); + } + + /** + * Convert jusgment into different relation + *

    + * called in MatchingRules + * @param budget The budget value of the new task + * @param truth The truth value of the new task + * @param memory Reference to the memory + */ + private static void convertedJudgment(TruthValue newTruth, BudgetValue newBudget, Memory memory) { + Statement content = (Statement) memory.currentTask.getContent(); + Statement beliefContent = (Statement) memory.currentBelief.getContent(); + Term subj = content.getSubject(); + Term pred = content.getPredicate(); + Term subjB = beliefContent.getSubject(); + Term predB = beliefContent.getPredicate(); + Term otherTerm; + if (Variable.containVarQuery(subj.getName())) { + otherTerm = (pred.equals(subjB)) ? predB : subjB; + content = Statement.make(content, otherTerm, pred, memory); + } + if (Variable.containVarQuery(pred.getName())) { + otherTerm = (subj.equals(subjB)) ? predB : subjB; + content = Statement.make(content, subj, otherTerm, memory); + } + memory.singlePremiseTask(content, Symbols.JUDGMENT_MARK, newTruth, newBudget); } } diff --git a/nars/inference/RuleTables.java b/nars/inference/RuleTables.java index 84be9232..6adc3d12 100644 --- a/nars/inference/RuleTables.java +++ b/nars/inference/RuleTables.java @@ -21,143 +21,126 @@ package nars.inference; import nars.entity.*; -import nars.language.*; -import nars.main.Memory; +import nars.term.*; +import nars.container.Memory; +import nars.io.Symbols; /** * Table of inference rules, indexed by the TermLinks for the task and the belief. * Used in indirective processing of a task, to dispatch inference cases to the * relevant inference rules. */ -public final class RuleTables { +public class RuleTables { /** * Entry point of the inference engine * @param tLink The selected TaskLink, which will provide a task * @param bLink The selected TermLink, which may provide a belief + * @param memory Reference to the memory */ - public static void reason(TaskLink tLink, TermLink bLink) { - Task task = Memory.currentTask; + public static void reason(TaskLink tLink, TermLink bLink, Memory memory) { + Task task = memory.currentTask; Sentence taskSentence = task.getSentence(); Term taskTerm = (Term) taskSentence.getContent().clone(); // cloning for substitution Term beliefTerm = (Term) bLink.getTarget().clone(); // cloning for substitution - Concept beliefConcept = Memory.termToConcept(beliefTerm); - Judgment belief = null; + Concept beliefConcept = memory.termToConcept(beliefTerm); + Sentence belief = null; if (beliefConcept != null) { belief = beliefConcept.getBelief(task); } - Memory.currentBelief = belief; // may be null - if ((belief != null) && (Variable.findSubstitute(Variable.VarType.QUERY, taskTerm, beliefTerm) != null)) { - MatchingRules.match(task, belief); + memory.currentBelief = belief; // may be null + if (belief != null) { + LocalRules.match(task, belief, memory); + } + if (!memory.noResult()) { + return; } short tIndex = tLink.getIndex(0); short bIndex = bLink.getIndex(0); - short[] ind; switch (tLink.getType()) { // dispatch first by TaskLink type case TermLink.SELF: switch (bLink.getType()) { case TermLink.COMPONENT: - if ((task.getSentence() instanceof Goal) && Conjunction.isSequence(taskTerm) && (bIndex > 0)) { // more general solution? - return; - } - - compoundAndSelf((CompoundTerm) taskTerm, beliefTerm, true); + compoundAndSelf((CompoundTerm) taskTerm, beliefTerm, true, memory); break; - case TermLink.COMPOUND: - compoundAndSelf((CompoundTerm) beliefTerm, taskTerm, false); + compoundAndSelf((CompoundTerm) beliefTerm, taskTerm, false, memory); break; - case TermLink.COMPONENT_STATEMENT: if (belief != null) { - SyllogisticRules.detachment(task.getSentence(), belief, bIndex); + SyllogisticRules.detachment(task.getSentence(), belief, bIndex, memory); } break; case TermLink.COMPOUND_STATEMENT: if (belief != null) { - SyllogisticRules.detachment(belief, task.getSentence(), bIndex); + SyllogisticRules.detachment(belief, task.getSentence(), bIndex, memory); } break; case TermLink.COMPONENT_CONDITION: if (belief != null) { bIndex = bLink.getIndex(1); - SyllogisticRules.conditionalDedInd((Implication) taskTerm, bIndex, beliefTerm, tIndex); + SyllogisticRules.conditionalDedInd((Implication) taskTerm, bIndex, beliefTerm, tIndex, memory); } - break; case TermLink.COMPOUND_CONDITION: if (belief != null) { bIndex = bLink.getIndex(1); - SyllogisticRules.conditionalDedInd((Implication) beliefTerm, bIndex, taskTerm, tIndex); + SyllogisticRules.conditionalDedInd((Implication) beliefTerm, bIndex, taskTerm, tIndex, memory); } - break; } - break; case TermLink.COMPOUND: switch (bLink.getType()) { case TermLink.COMPOUND: - compoundAndCompound((CompoundTerm) taskTerm, (CompoundTerm) beliefTerm); + compoundAndCompound((CompoundTerm) taskTerm, (CompoundTerm) beliefTerm, memory); break; - case TermLink.COMPOUND_STATEMENT: - compoundAndStatement((CompoundTerm) taskTerm, tIndex, (Statement) beliefTerm, bIndex, beliefTerm); + compoundAndStatement((CompoundTerm) taskTerm, tIndex, (Statement) beliefTerm, bIndex, beliefTerm, memory); break; - case TermLink.COMPOUND_CONDITION: if (belief != null) { if (beliefTerm instanceof Implication) { - SyllogisticRules.conditionalDedInd((Implication) beliefTerm, bIndex, taskTerm, -1); + SyllogisticRules.conditionalDedInd((Implication) beliefTerm, bIndex, taskTerm, -1, memory); } else if (beliefTerm instanceof Equivalence) { - SyllogisticRules.conditionalAna((Equivalence) beliefTerm, bIndex, taskTerm, -1); + SyllogisticRules.conditionalAna((Equivalence) beliefTerm, bIndex, taskTerm, -1, memory); } } - break; } - break; case TermLink.COMPOUND_STATEMENT: switch (bLink.getType()) { case TermLink.COMPONENT: - componentAndStatement((CompoundTerm) Memory.currentTerm, bIndex, (Statement) taskTerm, tIndex); + componentAndStatement((CompoundTerm) memory.currentTerm, bIndex, (Statement) taskTerm, tIndex, memory); break; - case TermLink.COMPOUND: - compoundAndStatement((CompoundTerm) beliefTerm, bIndex, (Statement) taskTerm, tIndex, beliefTerm); + compoundAndStatement((CompoundTerm) beliefTerm, bIndex, (Statement) taskTerm, tIndex, beliefTerm, memory); break; - case TermLink.COMPOUND_STATEMENT: if (belief != null) { bIndex = bLink.getIndex(1); - syllogisms(tLink, bLink, taskTerm, beliefTerm); + syllogisms(tLink, bLink, taskTerm, beliefTerm, memory); } - break; case TermLink.COMPOUND_CONDITION: if (belief != null) { bIndex = bLink.getIndex(1); - conditionalDedIndWithVar((Implication) beliefTerm, bIndex, (Statement) taskTerm, tIndex); + conditionalDedIndWithVar((Implication) beliefTerm, bIndex, (Statement) taskTerm, tIndex, memory); } - break; } - break; case TermLink.COMPOUND_CONDITION: switch (bLink.getType()) { case TermLink.COMPOUND_STATEMENT: if (belief != null) { - conditionalDedIndWithVar((Implication) taskTerm, tIndex, (Statement) beliefTerm, bIndex); + conditionalDedIndWithVar((Implication) taskTerm, tIndex, (Statement) beliefTerm, bIndex, memory); } - break; } - break; } - } /* ----- syllogistic inferences ----- */ @@ -168,53 +151,50 @@ public static void reason(TaskLink tLink, TermLink bLink) { * @param bLink The link to belief * @param taskTerm The content of task * @param beliefTerm The content of belief + * @param memory Reference to the memory */ - private static void syllogisms(TaskLink tLink, TermLink bLink, Term taskTerm, Term beliefTerm) { - Sentence taskSentence = Memory.currentTask.getSentence(); - Judgment belief = Memory.currentBelief; + private static void syllogisms(TaskLink tLink, TermLink bLink, Term taskTerm, Term beliefTerm, Memory memory) { + Sentence taskSentence = memory.currentTask.getSentence(); + Sentence belief = memory.currentBelief; int figure; if (taskTerm instanceof Inheritance) { if (beliefTerm instanceof Inheritance) { figure = indexToFigure(tLink, bLink); - asymmetricAsymmetric(taskSentence, belief, figure); + asymmetricAsymmetric(taskSentence, belief, figure, memory); } else if (beliefTerm instanceof Similarity) { figure = indexToFigure(tLink, bLink); - asymmetricSymmetric(taskSentence, belief, figure); + asymmetricSymmetric(taskSentence, belief, figure, memory); } else { - detachmentWithVar(belief, taskSentence, bLink.getIndex(0)); + detachmentWithVar(belief, taskSentence, bLink.getIndex(0), memory); } - } else if (taskTerm instanceof Similarity) { if (beliefTerm instanceof Inheritance) { figure = indexToFigure(bLink, tLink); - asymmetricSymmetric(belief, taskSentence, figure); + asymmetricSymmetric(belief, taskSentence, figure, memory); } else if (beliefTerm instanceof Similarity) { figure = indexToFigure(bLink, tLink); - symmetricSymmetric(belief, taskSentence, figure); + symmetricSymmetric(belief, taskSentence, figure, memory); } - } else if (taskTerm instanceof Implication) { if (beliefTerm instanceof Implication) { figure = indexToFigure(tLink, bLink); - asymmetricAsymmetric(taskSentence, belief, figure); + asymmetricAsymmetric(taskSentence, belief, figure, memory); } else if (beliefTerm instanceof Equivalence) { figure = indexToFigure(tLink, bLink); - asymmetricSymmetric(taskSentence, belief, figure); + asymmetricSymmetric(taskSentence, belief, figure, memory); } else if (beliefTerm instanceof Inheritance) { - detachmentWithVar(taskSentence, belief, tLink.getIndex(0)); + detachmentWithVar(taskSentence, belief, tLink.getIndex(0), memory); } - } else if (taskTerm instanceof Equivalence) { if (beliefTerm instanceof Implication) { figure = indexToFigure(bLink, tLink); - asymmetricSymmetric(belief, taskSentence, figure); + asymmetricSymmetric(belief, taskSentence, figure, memory); } else if (beliefTerm instanceof Equivalence) { figure = indexToFigure(bLink, tLink); - symmetricSymmetric(belief, taskSentence, figure); + symmetricSymmetric(belief, taskSentence, figure, memory); } else if (beliefTerm instanceof Inheritance) { - detachmentWithVar(taskSentence, belief, tLink.getIndex(0)); + detachmentWithVar(taskSentence, belief, tLink.getIndex(0), memory); } - } } @@ -234,59 +214,64 @@ private static int indexToFigure(TermLink link1, TermLink link2) { * @param sentence The taskSentence in the task * @param belief The judgment in the belief * @param figure The location of the shared term + * @param memory Reference to the memory */ - private static void asymmetricAsymmetric(Sentence sentence, Judgment belief, int figure) { + private static void asymmetricAsymmetric(Sentence sentence, Sentence belief, int figure, Memory memory) { Statement s1 = (Statement) sentence.cloneContent(); Statement s2 = (Statement) belief.cloneContent(); - Term t1, - t2; + Term t1, t2; switch (figure) { case 11: // induction - if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getSubject(), s2.getSubject(), s1, s2)) { + if (Variable.unify(Symbols.VAR_INDEPENDENT, s1.getSubject(), s2.getSubject(), s1, s2)) { + if (s1.equals(s2)) { + return; + } t1 = s2.getPredicate(); - t2 = - s1.getPredicate(); - SyllogisticRules.abdIndCom(t1, t2, sentence, belief, figure); - CompositionalRules.composeCompound(sentence, belief, 0); + t2 = s1.getPredicate(); + SyllogisticRules.abdIndCom(t1, t2, sentence, belief, figure, memory); + CompositionalRules.composeCompound(s1, s2, 0, memory); } break; case 12: // deduction - if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getSubject(), s2.getPredicate(), s1, s2)) { + if (Variable.unify(Symbols.VAR_INDEPENDENT, s1.getSubject(), s2.getPredicate(), s1, s2)) { + if (s1.equals(s2)) { + return; + } t1 = s2.getSubject(); - t2 = - s1.getPredicate(); - if (Variable.unify(Variable.VarType.QUERY, t1, t2, s1, s2)) { - MatchingRules.matchReverse(); + t2 = s1.getPredicate(); + if (Variable.unify(Symbols.VAR_QUERY, t1, t2, s1, s2)) { + LocalRules.matchReverse(memory); } else { - SyllogisticRules.dedExe(t1, t2, sentence, belief); + SyllogisticRules.dedExe(t1, t2, sentence, belief, memory); } - } break; case 21: // exemplification - if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getPredicate(), s2.getSubject(), s1, s2)) { + if (Variable.unify(Symbols.VAR_INDEPENDENT, s1.getPredicate(), s2.getSubject(), s1, s2)) { + if (s1.equals(s2)) { + return; + } t1 = s1.getSubject(); - t2 = - s2.getPredicate(); - if (Variable.unify(Variable.VarType.QUERY, t1, t2, s1, s2)) { - MatchingRules.matchReverse(); + t2 = s2.getPredicate(); + if (Variable.unify(Symbols.VAR_QUERY, t1, t2, s1, s2)) { + LocalRules.matchReverse(memory); } else { - SyllogisticRules.dedExe(t1, t2, sentence, belief); + SyllogisticRules.dedExe(t1, t2, sentence, belief, memory); } - } break; case 22: // abduction - if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getPredicate(), s2.getPredicate(), s1, s2)) { + if (Variable.unify(Symbols.VAR_INDEPENDENT, s1.getPredicate(), s2.getPredicate(), s1, s2)) { + if (s1.equals(s2)) { + return; + } t1 = s1.getSubject(); - t2 = - s2.getSubject(); - if (!SyllogisticRules.conditionalAbd(t1, t2, s1, s2)) { // if conditional abduction, skip the following - SyllogisticRules.abdIndCom(t1, t2, sentence, belief, figure); - CompositionalRules.composeCompound(sentence, belief, 1); + t2 = s2.getSubject(); + if (!SyllogisticRules.conditionalAbd(t1, t2, s1, s2, memory)) { // if conditional abduction, skip the following + SyllogisticRules.abdIndCom(t1, t2, sentence, belief, figure, memory); + CompositionalRules.composeCompound(s1, s2, 1, memory); } - } break; default: @@ -299,67 +284,58 @@ private static void asymmetricAsymmetric(Sentence sentence, Judgment belief, int * @param asym The asymmetric premise * @param sym The symmetric premise * @param figure The location of the shared term + * @param memory Reference to the memory */ - private static void asymmetricSymmetric(Sentence asym, Sentence sym, int figure) { + private static void asymmetricSymmetric(Sentence asym, Sentence sym, int figure, Memory memory) { Statement asymSt = (Statement) asym.cloneContent(); Statement symSt = (Statement) sym.cloneContent(); - Term t1, - t2; + Term t1, t2; switch (figure) { case 11: - if (Variable.unify(Variable.VarType.INDEPENDENT, asymSt.getSubject(), symSt.getSubject(), asymSt, symSt)) { + if (Variable.unify(Symbols.VAR_INDEPENDENT, asymSt.getSubject(), symSt.getSubject(), asymSt, symSt)) { t1 = asymSt.getPredicate(); - t2 = - symSt.getPredicate(); - if (Variable.unify(Variable.VarType.QUERY, t1, t2, asymSt, symSt)) { - MatchingRules.matchAsymSym(asym, sym, figure); + t2 = symSt.getPredicate(); + if (Variable.unify(Symbols.VAR_QUERY, t1, t2, asymSt, symSt)) { + LocalRules.matchAsymSym(asym, sym, figure, memory); } else { - SyllogisticRules.analogy(t2, t1, asym, sym, figure); + SyllogisticRules.analogy(t2, t1, asym, sym, figure, memory); } - } break; case 12: - if (Variable.unify(Variable.VarType.INDEPENDENT, asymSt.getSubject(), symSt.getPredicate(), asymSt, symSt)) { + if (Variable.unify(Symbols.VAR_INDEPENDENT, asymSt.getSubject(), symSt.getPredicate(), asymSt, symSt)) { t1 = asymSt.getPredicate(); - t2 = - symSt.getSubject(); - if (Variable.unify(Variable.VarType.QUERY, t1, t2, asymSt, symSt)) { - MatchingRules.matchAsymSym(asym, sym, figure); + t2 = symSt.getSubject(); + if (Variable.unify(Symbols.VAR_QUERY, t1, t2, asymSt, symSt)) { + LocalRules.matchAsymSym(asym, sym, figure, memory); } else { - SyllogisticRules.analogy(t2, t1, asym, sym, figure); + SyllogisticRules.analogy(t2, t1, asym, sym, figure, memory); } - } break; case 21: - if (Variable.unify(Variable.VarType.INDEPENDENT, asymSt.getPredicate(), symSt.getSubject(), asymSt, symSt)) { + if (Variable.unify(Symbols.VAR_INDEPENDENT, asymSt.getPredicate(), symSt.getSubject(), asymSt, symSt)) { t1 = asymSt.getSubject(); - t2 = - symSt.getPredicate(); - if (Variable.unify(Variable.VarType.QUERY, t1, t2, asymSt, symSt)) { - MatchingRules.matchAsymSym(asym, sym, figure); + t2 = symSt.getPredicate(); + if (Variable.unify(Symbols.VAR_QUERY, t1, t2, asymSt, symSt)) { + LocalRules.matchAsymSym(asym, sym, figure, memory); } else { - SyllogisticRules.analogy(t1, t2, asym, sym, figure); + SyllogisticRules.analogy(t1, t2, asym, sym, figure, memory); } - } break; case 22: - if (Variable.unify(Variable.VarType.INDEPENDENT, asymSt.getPredicate(), symSt.getPredicate(), asymSt, symSt)) { + if (Variable.unify(Symbols.VAR_INDEPENDENT, asymSt.getPredicate(), symSt.getPredicate(), asymSt, symSt)) { t1 = asymSt.getSubject(); - t2 = - symSt.getSubject(); - if (Variable.unify(Variable.VarType.QUERY, t1, t2, asymSt, symSt)) { - MatchingRules.matchAsymSym(asym, sym, figure); + t2 = symSt.getSubject(); + if (Variable.unify(Symbols.VAR_QUERY, t1, t2, asymSt, symSt)) { + LocalRules.matchAsymSym(asym, sym, figure, memory); } else { - SyllogisticRules.analogy(t1, t2, asym, sym, figure); + SyllogisticRules.analogy(t1, t2, asym, sym, figure, memory); } - } break; } - } /** @@ -367,37 +343,33 @@ private static void asymmetricSymmetric(Sentence asym, Sentence sym, int figure) * @param belief The premise that comes from a belief * @param taskSentence The premise that comes from a task * @param figure The location of the shared term + * @param memory Reference to the memory */ - private static void symmetricSymmetric(Judgment belief, Sentence taskSentence, int figure) { + private static void symmetricSymmetric(Sentence belief, Sentence taskSentence, int figure, Memory memory) { Statement s1 = (Statement) belief.cloneContent(); Statement s2 = (Statement) taskSentence.cloneContent(); switch (figure) { case 11: - if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getSubject(), s2.getSubject(), s1, s2)) { - SyllogisticRules.resemblance(s1.getPredicate(), s2.getPredicate(), belief, taskSentence, figure); + if (Variable.unify(Symbols.VAR_INDEPENDENT, s1.getSubject(), s2.getSubject(), s1, s2)) { + SyllogisticRules.resemblance(s1.getPredicate(), s2.getPredicate(), belief, taskSentence, figure, memory); } - break; case 12: - if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getSubject(), s2.getPredicate(), s1, s2)) { - SyllogisticRules.resemblance(s1.getPredicate(), s2.getSubject(), belief, taskSentence, figure); + if (Variable.unify(Symbols.VAR_INDEPENDENT, s1.getSubject(), s2.getPredicate(), s1, s2)) { + SyllogisticRules.resemblance(s1.getPredicate(), s2.getSubject(), belief, taskSentence, figure, memory); } - break; case 21: - if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getPredicate(), s2.getSubject(), s1, s2)) { - SyllogisticRules.resemblance(s1.getSubject(), s2.getPredicate(), belief, taskSentence, figure); + if (Variable.unify(Symbols.VAR_INDEPENDENT, s1.getPredicate(), s2.getSubject(), s1, s2)) { + SyllogisticRules.resemblance(s1.getSubject(), s2.getPredicate(), belief, taskSentence, figure, memory); } - break; case 22: - if (Variable.unify(Variable.VarType.INDEPENDENT, s1.getPredicate(), s2.getPredicate(), s1, s2)) { - SyllogisticRules.resemblance(s1.getSubject(), s2.getSubject(), belief, taskSentence, figure); + if (Variable.unify(Symbols.VAR_INDEPENDENT, s1.getPredicate(), s2.getPredicate(), s1, s2)) { + SyllogisticRules.resemblance(s1.getSubject(), s2.getSubject(), belief, taskSentence, figure, memory); } - break; } - } /* ----- conditional inferences ----- */ @@ -406,24 +378,23 @@ private static void symmetricSymmetric(Judgment belief, Sentence taskSentence, i * @param originalMainSentence The premise that is an Implication or Equivalence * @param subSentence The premise that is the subject or predicate of the first one * @param index The location of the second premise in the first + * @param memory Reference to the memory */ - private static void detachmentWithVar(Sentence originalMainSentence, Sentence subSentence, int index) { + private static void detachmentWithVar(Sentence originalMainSentence, Sentence subSentence, int index, Memory memory) { Sentence mainSentence = (Sentence) originalMainSentence.clone(); // for substitution Statement statement = (Statement) mainSentence.getContent(); Term component = statement.componentAt(index); Term content = subSentence.getContent(); - if ((component instanceof Inheritance) && (Memory.currentBelief != null)) { + if ((component instanceof Inheritance) && (memory.currentBelief != null)) { if (component.isConstant()) { - SyllogisticRules.detachment(mainSentence, subSentence, index); - } else if (Variable.unify(Variable.VarType.INDEPENDENT, component, content, statement, content)) { - SyllogisticRules.detachment(mainSentence, subSentence, index); - } else if ((statement instanceof Implication) && (statement.getPredicate() instanceof Statement) && (Memory.currentTask.getSentence().isJudgment())) { + SyllogisticRules.detachment(mainSentence, subSentence, index, memory); + } else if (Variable.unify(Symbols.VAR_INDEPENDENT, component, content, statement, content)) { + SyllogisticRules.detachment(mainSentence, subSentence, index, memory); + } else if ((statement instanceof Implication) && (statement.getPredicate() instanceof Statement) && (memory.currentTask.getSentence().isJudgment())) { Statement s2 = (Statement) statement.getPredicate(); if (s2.getSubject().equals(((Statement) content).getSubject())) { - SyllogisticRules.introVarIndInner((Statement) content, s2, statement); // tense??? - CompositionalRules.introVarDepInner(statement, s2, content); // tense??? + CompositionalRules.introVarInner((Statement) content, s2, statement, memory); } - } } } @@ -434,23 +405,21 @@ private static void detachmentWithVar(Sentence originalMainSentence, Sentence su * @param index The location of the shared term in the condition * @param statement The second premise that is a statement * @param side The location of the shared term in the statement + * @param memory Reference to the memory */ - private static void conditionalDedIndWithVar(Implication conditional, short index, Statement statement, short side) { + private static void conditionalDedIndWithVar(Implication conditional, short index, Statement statement, short side, Memory memory) { CompoundTerm condition = (CompoundTerm) conditional.getSubject(); Term component = condition.componentAt(index); Term component2 = null; if (statement instanceof Inheritance) { component2 = statement; - side = - -1; + side = -1; } else if (statement instanceof Implication) { component2 = statement.componentAt(side); } - - if ((component2 != null) && Variable.unify(Variable.VarType.ALL, component, component2, conditional, statement)) { - SyllogisticRules.conditionalDedInd(conditional, index, statement, side); + if ((component2 != null) && Variable.unify(Symbols.VAR_INDEPENDENT, component, component2, conditional, statement)) { + SyllogisticRules.conditionalDedInd(conditional, index, statement, side, memory); } - } /* ----- structural inferences ----- */ @@ -459,22 +428,21 @@ private static void conditionalDedIndWithVar(Implication conditional, short inde * @param compound The compound term * @param component The component term * @param compoundTask Whether the compound comes from the task + * @param memory Reference to the memory */ - private static void compoundAndSelf(CompoundTerm compound, Term component, boolean compoundTask) { + private static void compoundAndSelf(CompoundTerm compound, Term component, boolean compoundTask, Memory memory) { if ((compound instanceof Conjunction) || (compound instanceof Disjunction)) { - if (Memory.currentBelief != null) { - CompositionalRules.decomposeStatement(compound, component, compoundTask); + if (memory.currentBelief != null) { + CompositionalRules.decomposeStatement(compound, component, compoundTask, memory); } else if (compound.containComponent(component)) { - StructuralRules.structuralCompound(compound, component, compoundTask); + StructuralRules.structuralCompound(compound, component, compoundTask, memory); } - - } else if ((compound instanceof Negation) && !Memory.currentTask.isStructural()) { + } else if ((compound instanceof Negation) && !memory.currentTask.isStructural()) { if (compoundTask) { - StructuralRules.transformNegation(((Negation) compound).componentAt(0)); + StructuralRules.transformNegation(((Negation) compound).componentAt(0), memory); } else { - StructuralRules.transformNegation(compound); + StructuralRules.transformNegation(compound, memory); } - } } @@ -482,15 +450,15 @@ private static void compoundAndSelf(CompoundTerm compound, Term component, boole * Inference between two compound terms * @param taskTerm The compound from the task * @param beliefTerm The compound from the belief + * @param memory Reference to the memory */ - private static void compoundAndCompound(CompoundTerm taskTerm, CompoundTerm beliefTerm) { + private static void compoundAndCompound(CompoundTerm taskTerm, CompoundTerm beliefTerm, Memory memory) { if (taskTerm.getClass() == beliefTerm.getClass()) { if (taskTerm.size() > beliefTerm.size()) { - compoundAndSelf(taskTerm, beliefTerm, true); + compoundAndSelf(taskTerm, beliefTerm, true, memory); } else if (taskTerm.size() < beliefTerm.size()) { - compoundAndSelf(beliefTerm, taskTerm, false); + compoundAndSelf(beliefTerm, taskTerm, false, memory); } - } } @@ -501,32 +469,29 @@ private static void compoundAndCompound(CompoundTerm taskTerm, CompoundTerm beli * @param statement The statement * @param side The location of the current term in the statement * @param beliefTerm The content of the belief + * @param memory Reference to the memory */ - private static void compoundAndStatement(CompoundTerm compound, short index, Statement statement, short side, Term beliefTerm) { + private static void compoundAndStatement(CompoundTerm compound, short index, Statement statement, short side, Term beliefTerm, Memory memory) { Term component = compound.componentAt(index); - Task task = Memory.currentTask; + Task task = memory.currentTask; if (component.getClass() == statement.getClass()) { - if ((compound instanceof Conjunction) && (Memory.currentBelief != null)) { - if (Variable.unify(Variable.VarType.DEPENDENT, component, statement, compound, statement)) { - CompositionalRules.anaVarDepOuter(compound, component, statement.equals(beliefTerm)); + if ((compound instanceof Conjunction) && (memory.currentBelief != null)) { + if (Variable.unify(Symbols.VAR_DEPENDENT, component, statement, compound, statement)) { + SyllogisticRules.elimiVarDep(compound, component, statement.equals(beliefTerm), memory); } else if (task.getSentence().isJudgment()) { - SyllogisticRules.introVarIndInner(statement, (Statement) component, compound); - CompositionalRules.introVarDepInner(compound, component, statement); + CompositionalRules.introVarInner(statement, (Statement) component, compound, memory); } - } } else { if (!task.isStructural() && task.getSentence().isJudgment()) { if (statement instanceof Inheritance) { - StructuralRules.structuralCompose1(compound, index, statement); + StructuralRules.structuralCompose1(compound, index, statement, memory); if (!(compound instanceof SetExt) && !(compound instanceof SetInt)) { - StructuralRules.structuralCompose2(compound, index, statement, side); + StructuralRules.structuralCompose2(compound, index, statement, side, memory); } // {A --> B, A @ (A&C)} |- (A&C) --> (B&C) - } else if ((statement instanceof Similarity) && !(compound instanceof Conjunction)) { - StructuralRules.structuralCompose2(compound, index, statement, side); + StructuralRules.structuralCompose2(compound, index, statement, side, memory); } // {A <-> B, A @ (A&C)} |- (A&C) <-> (B&C) - } } } @@ -537,56 +502,52 @@ private static void compoundAndStatement(CompoundTerm compound, short index, Sta * @param index The location of the current term in the compound * @param statement The statement * @param side The location of the current term in the statement + * @param memory Reference to the memory */ - private static void componentAndStatement(CompoundTerm compound, short index, Statement statement, short side) { - if (!Memory.currentTask.isStructural()) { + private static void componentAndStatement(CompoundTerm compound, short index, Statement statement, short side, Memory memory) { + if (!memory.currentTask.isStructural()) { if (statement instanceof Inheritance) { - StructuralRules.structuralDecompose1(compound, index, statement); + StructuralRules.structuralDecompose1(compound, index, statement, memory); if (!(compound instanceof SetExt) && !(compound instanceof SetInt)) { - StructuralRules.structuralDecompose2(statement); // {(C-B) --> (C-A), A @ (C-A)} |- A --> B + StructuralRules.structuralDecompose2(statement, memory); // {(C-B) --> (C-A), A @ (C-A)} |- A --> B } else { - StructuralRules.transformSetRelation(compound, statement, side); + StructuralRules.transformSetRelation(compound, statement, side, memory); } - } else if (statement instanceof Similarity) { - StructuralRules.structuralDecompose2(statement); // {(C-B) --> (C-A), A @ (C-A)} |- A --> B + StructuralRules.structuralDecompose2(statement, memory); // {(C-B) --> (C-A), A @ (C-A)} |- A --> B if ((compound instanceof SetExt) || (compound instanceof SetInt)) { - StructuralRules.transformSetRelation(compound, statement, side); + StructuralRules.transformSetRelation(compound, statement, side, memory); } - } else if ((statement instanceof Implication) && (compound instanceof Negation)) { - StructuralRules.contraposition(statement); + StructuralRules.contraposition(statement, memory); } - } } /* ----- inference with one TaskLink only ----- */ /** * The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation - * @param task The task * @param tLink The task link + * @param memory Reference to the memory */ - public static void transformTask(Task task, TaskLink tLink) { - CompoundTerm content = (CompoundTerm) task.getContent().clone(); + public static void transformTask(TaskLink tLink, Memory memory) { + CompoundTerm content = (CompoundTerm) memory.currentTask.getContent().clone(); short[] indices = tLink.getIndices(); Term inh = null; - if (indices.length == 2) { // <(*, term, #) --> #> + if ((indices.length == 2) || (content instanceof Inheritance)) { // <(*, term, #) --> #> inh = content; } else if (indices.length == 3) { // <<(*, term, #) --> #> ==> #> inh = content.componentAt(indices[0]); } else if (indices.length == 4) { // <(&&, <(*, term, #) --> #>, #) ==> #> Term component = content.componentAt(indices[0]); if ((component instanceof Conjunction) && (((content instanceof Implication) && (indices[0] == 0)) || (content instanceof Equivalence))) { -// if ((indices[0] == 0) && (content instanceof Implication) && (content.componentAt(0) instanceof Conjunction)) { -// inh = ((CompoundTerm) content.componentAt(0)).componentAt(indices[1]); inh = ((CompoundTerm) component).componentAt(indices[1]); } else { return; } } if (inh instanceof Inheritance) { - StructuralRules.transformProductImage((Inheritance) inh, content, indices, task); + StructuralRules.transformProductImage((Inheritance) inh, content, indices, memory); } } } diff --git a/nars/inference/StructuralRules.java b/nars/inference/StructuralRules.java index 44e97a53..8c03e5d4 100644 --- a/nars/inference/StructuralRules.java +++ b/nars/inference/StructuralRules.java @@ -20,10 +20,11 @@ */ package nars.inference; +import nars.container.Memory; import java.util.ArrayList; import nars.entity.*; -import nars.language.*; +import nars.term.*; import nars.main.*; /** @@ -42,8 +43,9 @@ public final class StructuralRules { * @param index The location of the indicated term in the compound * @param statement The premise * @param side The location of the indicated term in the premise + * @param memory Reference to the memory */ - static void structuralCompose2(CompoundTerm compound, short index, Statement statement, short side) { + static void structuralCompose2(CompoundTerm compound, short index, Statement statement, short side, Memory memory) { if (compound.equals(statement.componentAt(side))) { return; } @@ -60,7 +62,7 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta } sub = compound; components.set(index, pred); - pred = CompoundTerm.make(compound, components); + pred = CompoundTerm.make(compound, components, memory); } } else { if (components.contains(pred)) { @@ -68,7 +70,7 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta return; } components.set(index, sub); - sub = CompoundTerm.make(compound, components); + sub = CompoundTerm.make(compound, components, memory); pred = compound; } } @@ -77,19 +79,19 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta } Term content; if (switchOrder(compound, index)) { - content = Statement.make(statement, pred, sub); + content = Statement.make(statement, pred, sub, memory); } else { - content = Statement.make(statement, sub, pred); + content = Statement.make(statement, sub, pred, memory); } if (content == null) { return; } - Task task = Memory.currentTask; + Task task = memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); BudgetValue budget; - if (sentence instanceof Question) { - budget = BudgetFunctions.compoundBackwardWeak(content); + if (sentence.isQuestion()) { + budget = BudgetFunctions.compoundBackwardWeak(content, memory); } else { if (compound.size() > 1) { if (sentence.isJudgment()) { @@ -98,16 +100,17 @@ static void structuralCompose2(CompoundTerm compound, short index, Statement sta return; } } - budget = BudgetFunctions.compoundForward(truth, content); + budget = BudgetFunctions.compoundForward(truth, content, memory); } - Memory.singlePremiseTask(budget, content, truth, sentence); + memory.singlePremiseTask(content, truth, budget); } /** * {<(S&T) --> (P&T)>, S@(S&T)} |- P> * @param statement The premise + * @param memory Reference to the memory */ - static void structuralDecompose2(Statement statement) { + static void structuralDecompose2(Statement statement, Memory memory) { Term subj = statement.getSubject(); Term pred = statement.getPredicate(); if (subj.getClass() != pred.getClass()) { @@ -135,31 +138,27 @@ static void structuralDecompose2(Statement statement) { t2 = pre.componentAt(index); Term content; if (switchOrder(sub, (short) index)) { - content = Statement.make(statement, t2, t1); + content = Statement.make(statement, t2, t1, memory); } else { - content = Statement.make(statement, t1, t2); + content = Statement.make(statement, t1, t2, memory); } if (content == null) { return; } - Task task = Memory.currentTask; + Task task = memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); BudgetValue budget; - if (sentence instanceof Question) { - budget = BudgetFunctions.compoundBackward(content); + if (sentence.isQuestion()) { + budget = BudgetFunctions.compoundBackward(content, memory); } else { - if (sub.size() > 1) { - if (sentence.isJudgment()) { - return; - } else { - assert (sentence instanceof Goal); - truth = TruthFunctions.deduction(truth, RELIANCE); - } + if ((sub.size() > 1) && (sentence.isJudgment())) { + return; + } - budget = BudgetFunctions.compoundForward(truth, content); + budget = BudgetFunctions.compoundForward(truth, content, memory); } - Memory.singlePremiseTask(budget, content, truth, sentence); + memory.singlePremiseTask(content, truth, budget); } /** @@ -179,13 +178,14 @@ private static boolean switchOrder(CompoundTerm compound, short index) { * @param compound The compound term * @param index The location of the indicated term in the compound * @param statement The premise + * @param memory Reference to the memory */ - static void structuralCompose1(CompoundTerm compound, short index, Statement statement) { - if (!Memory.currentTask.getSentence().isJudgment()) { + static void structuralCompose1(CompoundTerm compound, short index, Statement statement, Memory memory) { + if (!memory.currentTask.getSentence().isJudgment()) { return; } Term component = compound.componentAt(index); - Task task = Memory.currentTask; + Task task = memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); TruthValue truthDed = TruthFunctions.deduction(truth, RELIANCE); @@ -194,31 +194,31 @@ static void structuralCompose1(CompoundTerm compound, short index, Statement sta Term pred = statement.getPredicate(); if (component.equals(subj)) { if (compound instanceof IntersectionExt) { - structuralStatement(compound, pred, truthDed); + structuralStatement(compound, pred, truthDed, memory); } else if (compound instanceof IntersectionInt) { return; } else if ((compound instanceof DifferenceExt) && (index == 0)) { - structuralStatement(compound, pred, truthDed); + structuralStatement(compound, pred, truthDed, memory); } else if (compound instanceof DifferenceInt) { if (index == 0) { return; } else { - structuralStatement(compound, pred, truthNDed); + structuralStatement(compound, pred, truthNDed, memory); } } } else if (component.equals(pred)) { if (compound instanceof IntersectionExt) { return; } else if (compound instanceof IntersectionInt) { - structuralStatement(subj, compound, truthDed); + structuralStatement(subj, compound, truthDed, memory); } else if (compound instanceof DifferenceExt) { if (index == 0) { return; } else { - structuralStatement(subj, compound, truthNDed); + structuralStatement(subj, compound, truthNDed, memory); } } else if ((compound instanceof DifferenceInt) && (index == 0)) { - structuralStatement(subj, compound, truthDed); + structuralStatement(subj, compound, truthDed, memory); } } } @@ -228,13 +228,14 @@ static void structuralCompose1(CompoundTerm compound, short index, Statement sta * @param compound The compound term * @param index The location of the indicated term in the compound * @param statement The premise + * @param memory Reference to the memory */ - static void structuralDecompose1(CompoundTerm compound, short index, Statement statement) { - if (!Memory.currentTask.getSentence().isJudgment()) { + static void structuralDecompose1(CompoundTerm compound, short index, Statement statement, Memory memory) { + if (!memory.currentTask.getSentence().isJudgment()) { return; } Term component = compound.componentAt(index); - Task task = Memory.currentTask; + Task task = memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); TruthValue truthDed = TruthFunctions.deduction(truth, RELIANCE); @@ -245,26 +246,26 @@ static void structuralDecompose1(CompoundTerm compound, short index, Statement s if (compound instanceof IntersectionExt) { return; } else if (compound instanceof IntersectionInt) { - structuralStatement(component, pred, truthDed); + structuralStatement(component, pred, truthDed, memory); } else if ((compound instanceof DifferenceExt) && (index == 0)) { return; } else if (compound instanceof DifferenceInt) { if (index == 0) { - structuralStatement(component, pred, truthDed); + structuralStatement(component, pred, truthDed, memory); } else { - structuralStatement(component, pred, truthNDed); + structuralStatement(component, pred, truthNDed, memory); } } } else if (compound.equals(pred)) { if (compound instanceof IntersectionExt) { - structuralStatement(subj, component, truthDed); + structuralStatement(subj, component, truthDed, memory); } else if (compound instanceof IntersectionInt) { return; } else if (compound instanceof DifferenceExt) { if (index == 0) { - structuralStatement(subj, component, truthDed); + structuralStatement(subj, component, truthDed, memory); } else { - structuralStatement(subj, component, truthNDed); + structuralStatement(subj, component, truthNDed, memory); } } else if ((compound instanceof DifferenceInt) && (index == 0)) { return; @@ -277,15 +278,16 @@ static void structuralDecompose1(CompoundTerm compound, short index, Statement s * @param subject The subject of the new task * @param predicate The predicate of the new task * @param truth The truth value of the new task + * @param memory Reference to the memory */ - private static void structuralStatement(Term subject, Term predicate, TruthValue truth) { - Task task = Memory.currentTask; + private static void structuralStatement(Term subject, Term predicate, TruthValue truth, Memory memory) { + Task task = memory.currentTask; Term oldContent = task.getContent(); if (oldContent instanceof Statement) { - Term content = Statement.make((Statement) oldContent, subject, predicate); + Term content = Statement.make((Statement) oldContent, subject, predicate, memory); if (content != null) { - BudgetValue budget = BudgetFunctions.compoundForward(truth, content); - Memory.singlePremiseTask(budget, content, truth, Memory.currentTask.getSentence()); + BudgetValue budget = BudgetFunctions.compoundForward(truth, content, memory); + memory.singlePremiseTask(content, truth, budget); } } } @@ -296,8 +298,9 @@ private static void structuralStatement(Term subject, Term predicate, TruthValue * @param compound The set compound * @param statement The premise * @param side The location of the indicated term in the premise + * @param memory Reference to the memory */ - static void transformSetRelation(CompoundTerm compound, Statement statement, short side) { + static void transformSetRelation(CompoundTerm compound, Statement statement, short side, Memory memory) { if (compound.size() > 1) { return; } @@ -310,24 +313,24 @@ static void transformSetRelation(CompoundTerm compound, Statement statement, sho Term pre = statement.getPredicate(); Term content; if (statement instanceof Inheritance) { - content = Similarity.make(sub, pre); + content = Similarity.make(sub, pre, memory); } else { if (((compound instanceof SetExt) && (side == 0)) || ((compound instanceof SetInt) && (side == 1))) { - content = Inheritance.make(pre, sub); + content = Inheritance.make(pre, sub, memory); } else { - content = Inheritance.make(sub, pre); + content = Inheritance.make(sub, pre, memory); } } - Task task = Memory.currentTask; + Task task = memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); BudgetValue budget; - if (sentence instanceof Question) { - budget = BudgetFunctions.compoundBackward(content); + if (sentence.isQuestion()) { + budget = BudgetFunctions.compoundBackward(content, memory); } else { - budget = BudgetFunctions.compoundForward(truth, content); + budget = BudgetFunctions.compoundForward(truth, content, memory); } - Memory.singlePremiseTask(budget, content, truth, sentence); + memory.singlePremiseTask(content, truth, budget); } /* -------------------- products and images transform -------------------- */ @@ -340,79 +343,187 @@ static void transformSetRelation(CompoundTerm compound, Statement statement, sho * @param oldContent The whole content * @param indices The indices of the TaskLink * @param task The task + * @param memory Reference to the memory */ - static void transformProductImage(Inheritance inh, CompoundTerm oldContent, short[] indices, Task task) { - Term subject = null; - Term predicate = null; + static void transformProductImage(Inheritance inh, CompoundTerm oldContent, short[] indices, Memory memory) { + Term subject = inh.getSubject(); + Term predicate = inh.getPredicate(); + if (inh.equals(oldContent)) { + if (subject instanceof CompoundTerm) { + transformSubjectPI((CompoundTerm) subject, predicate, memory); + } + if (predicate instanceof CompoundTerm) { + transformPredicatePI(subject, (CompoundTerm) predicate, memory); + } + return; + } short index = indices[indices.length - 1]; short side = indices[indices.length - 2]; CompoundTerm comp = (CompoundTerm) inh.componentAt(side); if (comp instanceof Product) { if (side == 0) { subject = comp.componentAt(index); - predicate = ImageExt.make((Product) comp, inh.getPredicate(), index); + predicate = ImageExt.make((Product) comp, inh.getPredicate(), index, memory); } else { - subject = ImageInt.make((Product) comp, inh.getSubject(), index); + subject = ImageInt.make((Product) comp, inh.getSubject(), index, memory); predicate = comp.componentAt(index); } } else if ((comp instanceof ImageExt) && (side == 1)) { if (index == ((ImageExt) comp).getRelationIndex()) { - subject = Product.make(comp, inh.getSubject(), index); + subject = Product.make(comp, inh.getSubject(), index, memory); predicate = comp.componentAt(index); } else { subject = comp.componentAt(index); - predicate = ImageExt.make((ImageExt) comp, inh.getSubject(), index); + predicate = ImageExt.make((ImageExt) comp, inh.getSubject(), index, memory); } } else if ((comp instanceof ImageInt) && (side == 0)) { if (index == ((ImageInt) comp).getRelationIndex()) { subject = comp.componentAt(index); - predicate = Product.make(comp, inh.getPredicate(), index); + predicate = Product.make(comp, inh.getPredicate(), index, memory); } else { - subject = ImageInt.make((ImageInt) comp, inh.getPredicate(), index); + subject = ImageInt.make((ImageInt) comp, inh.getPredicate(), index, memory); predicate = comp.componentAt(index); } } else { return; } - Inheritance newInh = Inheritance.make(subject, predicate); + Inheritance newInh = Inheritance.make(subject, predicate, memory); Term content = null; if (indices.length == 2) { content = newInh; } else if ((oldContent instanceof Statement) && (indices[0] == 1)) { - content = Statement.make((Statement) oldContent, oldContent.componentAt(0), newInh); + content = Statement.make((Statement) oldContent, oldContent.componentAt(0), newInh, memory); } else { ArrayList componentList; Term condition = oldContent.componentAt(0); if (((oldContent instanceof Implication) || (oldContent instanceof Equivalence)) && (condition instanceof Conjunction)) { componentList = ((CompoundTerm) condition).cloneComponents(); componentList.set(indices[1], newInh); - Term newCond = CompoundTerm.make((CompoundTerm) condition, componentList); - content = Statement.make((Statement) oldContent, newCond, ((Statement) oldContent).getPredicate(), - ((Statement) oldContent).isTemporal(), oldContent.getOrder()); + Term newCond = CompoundTerm.make((CompoundTerm) condition, componentList, memory); + content = Statement.make((Statement) oldContent, newCond, ((Statement) oldContent).getPredicate(), memory); } else { componentList = oldContent.cloneComponents(); componentList.set(indices[0], newInh); if (oldContent instanceof Conjunction) { - content = CompoundTerm.make(oldContent, componentList); + content = CompoundTerm.make(oldContent, componentList, memory); } else if ((oldContent instanceof Implication) || (oldContent instanceof Equivalence)) { - content = Statement.make((Statement) oldContent, componentList.get(0), componentList.get(1)); + content = Statement.make((Statement) oldContent, componentList.get(0), componentList.get(1), memory); } } } if (content == null) { return; } - Sentence sentence = task.getSentence(); + Sentence sentence = memory.currentTask.getSentence(); TruthValue truth = sentence.getTruth(); BudgetValue budget; - if (sentence instanceof Question) { - budget = BudgetFunctions.compoundBackward(content); + if (sentence.isQuestion()) { + budget = BudgetFunctions.compoundBackward(content, memory); } else { - budget = BudgetFunctions.compoundForward(truth, content); + budget = BudgetFunctions.compoundForward(truth, content, memory); + } + memory.singlePremiseTask(content, truth, budget); + } + + /** + * Equivalent transformation between products and images when the subject is a compound + * {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> + * { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> + * { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)> + * @param subject The subject term + * @param predicate The predicate term + * @param memory Reference to the memory + */ + private static void transformSubjectPI(CompoundTerm subject, Term predicate, Memory memory) { + TruthValue truth = memory.currentTask.getSentence().getTruth(); + BudgetValue budget; + Inheritance inheritance; + Term newSubj, newPred; + if (subject instanceof Product) { + Product product = (Product) subject; + for (short i = 0; i < product.size(); i++) { + newSubj = product.componentAt(i); + newPred = ImageExt.make(product, predicate, i, memory); + inheritance = Inheritance.make(newSubj, newPred, memory); + if (truth == null) { + budget = BudgetFunctions.compoundBackward(inheritance, memory); + } else { + budget = BudgetFunctions.compoundForward(truth, inheritance, memory); + } + memory.singlePremiseTask(inheritance, truth, budget); + } + } else if (subject instanceof ImageInt) { + ImageInt image = (ImageInt) subject; + int relationIndex = image.getRelationIndex(); + for (short i = 0; i < image.size(); i++) { + if (i == relationIndex) { + newSubj = image.componentAt(relationIndex); + newPred = Product.make(image, predicate, relationIndex, memory); + } else { + newSubj = ImageInt.make((ImageInt) image, predicate, i, memory); + newPred = image.componentAt(i); + } + inheritance = Inheritance.make(newSubj, newPred, memory); + if (truth == null) { + budget = BudgetFunctions.compoundBackward(inheritance, memory); + } else { + budget = BudgetFunctions.compoundForward(truth, inheritance, memory); + } + memory.singlePremiseTask(inheritance, truth, budget); + } } - Memory.singlePremiseTask(budget, content, truth, sentence); } + /** + * Equivalent transformation between products and images when the predicate is a compound + * {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> + * { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> + * { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)> + * @param subject The subject term + * @param predicate The predicate term + * @param memory Reference to the memory + */ + private static void transformPredicatePI(Term subject, CompoundTerm predicate, Memory memory) { + TruthValue truth = memory.currentTask.getSentence().getTruth(); + BudgetValue budget; + Inheritance inheritance; + Term newSubj, newPred; + if (predicate instanceof Product) { + Product product = (Product) predicate; + for (short i = 0; i < product.size(); i++) { + newSubj = ImageInt.make(product, subject, i, memory); + newPred = product.componentAt(i); + inheritance = Inheritance.make(newSubj, newPred, memory); + if (truth == null) { + budget = BudgetFunctions.compoundBackward(inheritance, memory); + } else { + budget = BudgetFunctions.compoundForward(truth, inheritance, memory); + } + memory.singlePremiseTask(inheritance, truth, budget); + } + } else if (predicate instanceof ImageExt) { + ImageExt image = (ImageExt) predicate; + int relationIndex = image.getRelationIndex(); + for (short i = 0; i < image.size(); i++) { + if (i == relationIndex) { + newSubj = Product.make(image, subject, relationIndex, memory); + newPred = image.componentAt(relationIndex); + } else { + newSubj = image.componentAt(i); + newPred = ImageExt.make((ImageExt) image, subject, i, memory); + } + inheritance = Inheritance.make(newSubj, newPred, memory); + if (truth == null) { + budget = BudgetFunctions.compoundBackward(inheritance, memory); + } else { + budget = BudgetFunctions.compoundForward(truth, inheritance, memory); + } + memory.singlePremiseTask(inheritance, truth, budget); + } + } + } + + /* --------------- Disjunction and Conjunction transform --------------- */ /** * {(&&, A, B), A@(&&, A, B)} |- A @@ -420,83 +531,80 @@ static void transformProductImage(Inheritance inh, CompoundTerm oldContent, shor * @param compound The premise * @param component The recognized component in the premise * @param compoundTask Whether the compound comes from the task + * @param memory Reference to the memory */ - static void structuralCompound(CompoundTerm compound, Term component, boolean compoundTask) { + static void structuralCompound(CompoundTerm compound, Term component, boolean compoundTask, Memory memory) { if (!component.isConstant()) { return; } Term content = (compoundTask ? component : compound); - Task task = Memory.currentTask; + Task task = memory.currentTask; if (task.isStructural()) { return; } Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); BudgetValue budget; - if (sentence instanceof Question) { - budget = BudgetFunctions.compoundBackward(content); + if (sentence.isQuestion()) { + budget = BudgetFunctions.compoundBackward(content, memory); } else { if ((sentence.isJudgment()) == (compoundTask == (compound instanceof Conjunction))) { truth = TruthFunctions.deduction(truth, RELIANCE); - } else if (sentence instanceof Goal) { - if (compound.getOrder() > 0) { - truth = TruthFunctions.deduction(truth, RELIANCE); - } else { - truth = TruthFunctions.abduction(truth, RELIANCE); - } } else { return; } - budget = BudgetFunctions.forward(truth); + budget = BudgetFunctions.forward(truth, memory); } - Memory.singlePremiseTask(budget, content, truth, sentence); + memory.singlePremiseTask(content, truth, budget); } /* --------------- Negation related rules --------------- */ /** * {A, A@(--, A)} |- (--, A) * @param content The premise + * @param memory Reference to the memory */ - public static void transformNegation(Term content) { - Task task = Memory.currentTask; + public static void transformNegation(Term content, Memory memory) { + Task task = memory.currentTask; Sentence sentence = task.getSentence(); TruthValue truth = sentence.getTruth(); - if (sentence instanceof Judgment) { + if (sentence.isJudgment()) { truth = TruthFunctions.negation(truth); } BudgetValue budget; - if (sentence instanceof Question) { - budget = BudgetFunctions.compoundBackward(content); + if (sentence.isQuestion()) { + budget = BudgetFunctions.compoundBackward(content, memory); } else { - budget = BudgetFunctions.compoundForward(truth, content); + budget = BudgetFunctions.compoundForward(truth, content, memory); } - Memory.singlePremiseTask(budget, content, truth, sentence); + memory.singlePremiseTask(content, truth, budget); } /** * { B>, A@(--, A)} |- <(--, B) ==> (--, A)> * @param statement The premise + * @param memory Reference to the memory */ - static void contraposition(Statement statement) { + static void contraposition(Statement statement, Memory memory) { Term subj = statement.getSubject(); Term pred = statement.getPredicate(); - Task task = Memory.currentTask; + Task task = memory.currentTask; Sentence sentence = task.getSentence(); - Term content = Statement.make(statement, Negation.make(pred), Negation.make(subj), sentence.isEvent(), -statement.getOrder()); + Term content = Statement.make(statement, Negation.make(pred, memory), Negation.make(subj, memory), memory); TruthValue truth = sentence.getTruth(); BudgetValue budget; - if (sentence instanceof Question) { + if (sentence.isQuestion()) { if (content instanceof Implication) { - budget = BudgetFunctions.compoundBackwardWeak(content); + budget = BudgetFunctions.compoundBackwardWeak(content, memory); } else { - budget = BudgetFunctions.compoundBackward(content); + budget = BudgetFunctions.compoundBackward(content, memory); } } else { if (content instanceof Implication) { truth = TruthFunctions.contraposition(truth); } - budget = BudgetFunctions.compoundForward(truth, content); + budget = BudgetFunctions.compoundForward(truth, content, memory); } - Memory.singlePremiseTask(budget, content, truth, sentence); + memory.singlePremiseTask(content, truth, budget); } } diff --git a/nars/inference/SyllogisticRules.java b/nars/inference/SyllogisticRules.java index 3d0a3c70..e84638b4 100644 --- a/nars/inference/SyllogisticRules.java +++ b/nars/inference/SyllogisticRules.java @@ -20,13 +20,10 @@ */ package nars.inference; -import java.util.*; - import nars.entity.*; -import nars.language.*; +import nars.term.*; import nars.io.Symbols; -import nars.main.Memory; -import nars.operation.*; +import nars.container.Memory; /** * Syllogisms: Inference rules based on the transitivity of the relation. @@ -40,8 +37,9 @@ public final class SyllogisticRules { * @param term2 Predicate of the first new task * @param sentence The first premise * @param belief The second premise + * @param memory Reference to the memory */ - static void dedExe(Term term1, Term term2, Sentence sentence, Judgment belief) { + static void dedExe(Term term1, Term term2, Sentence sentence, Sentence belief, Memory memory) { if (Statement.invalidStatement(term1, term2)) { return; } @@ -50,34 +48,20 @@ static void dedExe(Term term1, Term term2, Sentence sentence, Judgment belief) { TruthValue truth1 = null; TruthValue truth2 = null; BudgetValue budget1, budget2; - if (sentence instanceof Question) { - if (sentence instanceof Quest) { - budget1 = BudgetFunctions.backward(value2); - budget2 = BudgetFunctions.backward(value2); - } else { - budget1 = BudgetFunctions.backwardWeak(value2); - budget2 = BudgetFunctions.backwardWeak(value2); - } + if (sentence.isQuestion()) { + budget1 = BudgetFunctions.backwardWeak(value2, memory); + budget2 = BudgetFunctions.backwardWeak(value2, memory); } else { - if (sentence instanceof Goal) { - truth1 = TruthFunctions.desireWeak(value1, value2); - truth2 = TruthFunctions.desireWeak(value1, value2); - } else { - truth1 = TruthFunctions.deduction(value1, value2); - truth2 = TruthFunctions.exemplification(value1, value2); - } - budget1 = BudgetFunctions.forward(truth1); - budget2 = BudgetFunctions.forward(truth2); + truth1 = TruthFunctions.deduction(value1, value2); + truth2 = TruthFunctions.exemplification(value1, value2); + budget1 = BudgetFunctions.forward(truth1, memory); + budget2 = BudgetFunctions.forward(truth2, memory); } - int order1 = sentence.getContent().getOrder(); - int order2 = belief.getContent().getOrder(); - int order = temporalSyllogism(order1, order2, 21); - boolean temporal = (sentence.isEvent() || belief.isEvent()); Statement content = (Statement) sentence.getContent(); - Statement content1 = Statement.make(content, term1, term2, temporal, order); - Statement content2 = Statement.make(content, term2, term1, temporal, -order); - Memory.doublePremiseTask(budget1, content1, truth1, sentence, belief); - Memory.doublePremiseTask(budget2, content2, truth2, belief, sentence); + Statement content1 = Statement.make(content, term1, term2, memory); + Statement content2 = Statement.make(content, term2, term1, memory); + memory.doublePremiseTask(content1, truth1, budget1); + memory.doublePremiseTask(content2, truth2, budget2); } /** @@ -87,59 +71,37 @@ static void dedExe(Term term1, Term term2, Sentence sentence, Judgment belief) { * @param taskSentence The first premise * @param belief The second premise * @param figure Locations of the shared term in premises + * @param memory Reference to the memory */ - static void abdIndCom(Term term1, Term term2, Sentence taskSentence, Judgment belief, int figure) { + static void abdIndCom(Term term1, Term term2, Sentence taskSentence, Sentence belief, int figure, Memory memory) { if (Statement.invalidStatement(term1, term2)) { return; } - Statement st1 = (Statement) taskSentence.getContent(); - Statement st2 = (Statement) belief.getContent(); + Statement taskContent = (Statement) taskSentence.getContent(); TruthValue truth1 = null; TruthValue truth2 = null; TruthValue truth3 = null; BudgetValue budget1, budget2, budget3; TruthValue value1 = taskSentence.getTruth(); TruthValue value2 = belief.getTruth(); - if (taskSentence instanceof Question) { - if (taskSentence instanceof Quest) { - budget1 = BudgetFunctions.backwardWeak(value2); - budget2 = BudgetFunctions.backward(value2); - budget3 = BudgetFunctions.backwardWeak(value2); - } else { - budget1 = BudgetFunctions.backward(value2); - budget2 = BudgetFunctions.backwardWeak(value2); - budget3 = BudgetFunctions.backward(value2); - } + if (taskSentence.isQuestion()) { + budget1 = BudgetFunctions.backward(value2, memory); + budget2 = BudgetFunctions.backwardWeak(value2, memory); + budget3 = BudgetFunctions.backward(value2, memory); } else { - if (taskSentence instanceof Goal) { - truth1 = TruthFunctions.desireStrong(value1, value2); - truth2 = TruthFunctions.desireWeak(value2, value1); - truth3 = TruthFunctions.desireStrong(value1, value2); - } else { - truth1 = TruthFunctions.abduction(value1, value2); - truth2 = TruthFunctions.abduction(value2, value1); - truth3 = TruthFunctions.comparison(value1, value2); - } - budget1 = BudgetFunctions.forward(truth1); - budget2 = BudgetFunctions.forward(truth2); - budget3 = BudgetFunctions.forward(truth3); - } - int order1 = st1.getOrder(); - int order2 = st2.getOrder(); - int order = temporalSyllogism(order1, order2, figure); - boolean temporal = (taskSentence.isEvent() || belief.isEvent()); - Statement statement1, statement2, statement3; - statement1 = Statement.make(st1, term1, term2, temporal, order); - statement2 = Statement.make(st1, term2, term1, temporal, -order); - statement3 = Statement.makeSym(st1, term1, term2, temporal, order); - Memory.doublePremiseTask(budget1, statement1, truth1, taskSentence, belief); - Memory.doublePremiseTask(budget2, statement2, truth2, belief, taskSentence); - Memory.doublePremiseTask(budget3, statement3, truth3, taskSentence, belief); - if (statement1.isConstant()) { - Memory.doublePremiseTask(budget1, introVarInd(belief, taskSentence, figure, true), truth1, belief, taskSentence); - Memory.doublePremiseTask(budget2, introVarInd(taskSentence, belief, figure, true), truth2, taskSentence, belief); - Memory.doublePremiseTask(budget3, introVarInd(taskSentence, belief, figure, false), truth3, taskSentence, belief); - } + truth1 = TruthFunctions.abduction(value1, value2); + truth2 = TruthFunctions.abduction(value2, value1); + truth3 = TruthFunctions.comparison(value1, value2); + budget1 = BudgetFunctions.forward(truth1, memory); + budget2 = BudgetFunctions.forward(truth2, memory); + budget3 = BudgetFunctions.forward(truth3, memory); + } + Statement statement1 = Statement.make(taskContent, term1, term2, memory); + Statement statement2 = Statement.make(taskContent, term2, term1, memory); + Statement statement3 = Statement.makeSym(taskContent, term1, term2, memory); + memory.doublePremiseTask(statement1, truth1, budget1); + memory.doublePremiseTask(statement2, truth2, budget2); + memory.doublePremiseTask(statement3, truth3, budget3); } /** @@ -149,53 +111,30 @@ static void abdIndCom(Term term1, Term term2, Sentence taskSentence, Judgment be * @param asym The asymmetric premise * @param sym The symmetric premise * @param figure Locations of the shared term in premises + * @param memory Reference to the memory */ - static void analogy(Term term1, Term term2, Sentence asym, Sentence sym, int figure) { + static void analogy(Term term1, Term term2, Sentence asym, Sentence sym, int figure, Memory memory) { if (Statement.invalidStatement(term1, term2)) { return; } Statement asymSt = (Statement) asym.getContent(); - Statement symSt = (Statement) sym.getContent(); +// Statement symSt = (Statement) sym.getContent(); TruthValue truth = null; BudgetValue budget; - Sentence sentence = Memory.currentTask.getSentence(); + Sentence sentence = memory.currentTask.getSentence(); CompoundTerm taskTerm = (CompoundTerm) sentence.getContent(); - if (sentence instanceof Question) { + if (sentence.isQuestion()) { if (taskTerm.isCommutative()) { - budget = BudgetFunctions.backwardWeak(asym.getTruth()); + budget = BudgetFunctions.backwardWeak(asym.getTruth(), memory); } else { - budget = BudgetFunctions.backward(sym.getTruth()); + budget = BudgetFunctions.backward(sym.getTruth(), memory); } } else { - if (sentence instanceof Goal) { - if (taskTerm.isCommutative()) { - truth = TruthFunctions.desireWeak(asym.getTruth(), sym.getTruth()); - } else { - truth = TruthFunctions.desireStrong(asym.getTruth(), sym.getTruth()); - } - } else { - truth = TruthFunctions.analogy(asym.getTruth(), sym.getTruth()); - } - budget = BudgetFunctions.forward(truth); - } - int order1 = asymSt.getOrder(); - int order2 = symSt.getOrder(); - int order; - switch (figure) { - case 11: - case 12: - order = temporalSyllogism(order2, order1, figure); - break; - case 21: - case 22: - order = temporalSyllogism(order1, order2, figure); - break; - default: - return; + truth = TruthFunctions.analogy(asym.getTruth(), sym.getTruth()); + budget = BudgetFunctions.forward(truth, memory); } - boolean temporal = (asym.isEvent() || sym.isEvent()); - Term content = Statement.make(asymSt, term1, term2, temporal, order); - Memory.doublePremiseTask(budget, content, truth, asym, sym); + Term content = Statement.make(asymSt, term1, term2, memory); + memory.doublePremiseTask(content, truth, budget); } /** @@ -205,8 +144,9 @@ static void analogy(Term term1, Term term2, Sentence asym, Sentence sym, int fig * @param belief The first premise * @param sentence The second premise * @param figure Locations of the shared term in premises + * @param memory Reference to the memory */ - static void resemblance(Term term1, Term term2, Judgment belief, Sentence sentence, int figure) { + static void resemblance(Term term1, Term term2, Sentence belief, Sentence sentence, int figure, Memory memory) { if (Statement.invalidStatement(term1, term2)) { return; } @@ -214,22 +154,14 @@ static void resemblance(Term term1, Term term2, Judgment belief, Sentence senten Statement st2 = (Statement) sentence.getContent(); TruthValue truth = null; BudgetValue budget; - if (sentence instanceof Question) { - budget = BudgetFunctions.backward(belief.getTruth()); + if (sentence.isQuestion()) { + budget = BudgetFunctions.backward(belief.getTruth(), memory); } else { - if (sentence instanceof Goal) { - truth = TruthFunctions.desireStrong(sentence.getTruth(), belief.getTruth()); - } else { - truth = TruthFunctions.resemblance(belief.getTruth(), sentence.getTruth()); - } - budget = BudgetFunctions.forward(truth); - } - int order1 = st1.getOrder(); - int order2 = st2.getOrder(); - int order = temporalSyllogism(order1, order2, figure); - boolean temporal = (sentence.isEvent() || belief.isEvent()); - Term statement = Statement.make(st1, term1, term2, temporal, order); - Memory.doublePremiseTask(budget, statement, truth, belief, sentence); + truth = TruthFunctions.resemblance(belief.getTruth(), sentence.getTruth()); + budget = BudgetFunctions.forward(truth, memory); + } + Term statement = Statement.make(st1, term1, term2, memory); + memory.doublePremiseTask(statement, truth, budget); } /* --------------- rules used only in conditional inference --------------- */ @@ -241,8 +173,9 @@ static void resemblance(Term term1, Term term2, Judgment belief, Sentence senten * @param mainSentence The implication/equivalence premise * @param subSentence The premise on part of s1 * @param side The location of s2 in s1 + * @param memory Reference to the memory */ - static void detachment(Sentence mainSentence, Sentence subSentence, int side) { + static void detachment(Sentence mainSentence, Sentence subSentence, int side, Memory memory) { Statement statement = (Statement) mainSentence.getContent(); if (!(statement instanceof Implication) && !(statement instanceof Equivalence)) { return; @@ -250,23 +183,6 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int side) { Term subject = statement.getSubject(); Term predicate = statement.getPredicate(); Term content; - if ((mainSentence.getContent().getOrder() != 0) && (subSentence.isEvent() || (subSentence instanceof Goal))) { - long time1 = subSentence.getEventTime(); - int dif = mainSentence.getContent().getOrder(); - long eventTime; - if (side == 0) { - eventTime = time1 + dif; - } else { - int t = Wait.getWaitingTime(subject, false); - eventTime = time1 - dif * t; - if (t != 0) { - subject = CompoundTerm.replaceComponent((CompoundTerm) subject, ((CompoundTerm) subject).size() - 1, null); - } - } - if (!(subSentence instanceof Goal)) { - Memory.newStamp.setEventTime(eventTime); - } - } if (side == 0) { // term.equals(subject)) { content = predicate; } else if (side == 1) { // term.equals(predicate)) { @@ -277,52 +193,32 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int side) { if ((content instanceof Statement) && ((Statement) content).invalid()) { return; } - Sentence taskSentence = Memory.currentTask.getSentence(); - Sentence beliefSentence = Memory.currentBelief; + Sentence taskSentence = memory.currentTask.getSentence(); + Sentence beliefSentence = memory.currentBelief; TruthValue beliefTruth = beliefSentence.getTruth(); TruthValue truth1 = mainSentence.getTruth(); TruthValue truth2 = subSentence.getTruth(); TruthValue truth = null; BudgetValue budget; - if (taskSentence instanceof Question) { - if (taskSentence instanceof Quest) { - if (statement instanceof Equivalence) { - budget = BudgetFunctions.backwardWeak(beliefTruth); - } else if (side == 0) { - budget = BudgetFunctions.backward(beliefTruth); - } else { - budget = BudgetFunctions.backwardWeak(beliefTruth); - } + if (taskSentence.isQuestion()) { + if (statement instanceof Equivalence) { + budget = BudgetFunctions.backward(beliefTruth, memory); + } else if (side == 0) { + budget = BudgetFunctions.backwardWeak(beliefTruth, memory); } else { - if (statement instanceof Equivalence) { - budget = BudgetFunctions.backward(beliefTruth); - } else if (side == 0) { - budget = BudgetFunctions.backwardWeak(beliefTruth); - } else { - budget = BudgetFunctions.backward(beliefTruth); - } + budget = BudgetFunctions.backward(beliefTruth, memory); } } else { - if (taskSentence instanceof Goal) { - if (statement instanceof Equivalence) { - truth = TruthFunctions.desireStrong(truth1, truth2); - } else if (side == 0) { - truth = TruthFunctions.desireInd(truth1, truth2); - } else { - truth = TruthFunctions.desireDed(truth1, truth2); - } + if (statement instanceof Equivalence) { + truth = TruthFunctions.analogy(truth2, truth1); + } else if (side == 0) { + truth = TruthFunctions.deduction(truth1, truth2); } else { - if (statement instanceof Equivalence) { - truth = TruthFunctions.analogy(truth2, truth1); - } else if (side == 0) { - truth = TruthFunctions.deduction(truth1, truth2); - } else { - truth = TruthFunctions.abduction(truth2, truth1); - } + truth = TruthFunctions.abduction(truth2, truth1); } - budget = BudgetFunctions.forward(truth); + budget = BudgetFunctions.forward(truth, memory); } - Memory.doublePremiseTask(budget, content, truth, mainSentence, subSentence); + memory.doublePremiseTask(content, truth, budget); } /** @@ -333,14 +229,14 @@ static void detachment(Sentence mainSentence, Sentence subSentence, int side) { * @param index The location of the shared term in the condition of premise1 * @param premise2 The premise which, or part of which, appears in the condition of premise1 * @param side The location of the shared term in premise2: 0 for subject, 1 for predicate, -1 for the whole term + * @param memory Reference to the memory */ - static void conditionalDedInd(Implication premise1, short index, Term premise2, int side) { - Task task = Memory.currentTask; + static void conditionalDedInd(Implication premise1, short index, Term premise2, int side, Memory memory) { + Task task = memory.currentTask; Sentence taskSentence = task.getSentence(); - Judgment belief = Memory.currentBelief; + Sentence belief = memory.currentBelief; boolean deduction = (side != 0); - HashMap substitute = Variable.findSubstitute(Variable.VarType.ALL, premise2, belief.getContent()); - boolean conditionalTask = (substitute != null); + boolean conditionalTask = Variable.hasSubstitute(Symbols.VAR_INDEPENDENT, premise2, belief.getContent()); Term commonComponent; Term newComponent = null; if (side == 0) { @@ -353,43 +249,27 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, commonComponent = premise2; } Conjunction oldCondition = (Conjunction) premise1.getSubject(); - boolean match = Variable.unify(Variable.VarType.INDEPENDENT, oldCondition.componentAt(index), commonComponent, premise1, premise2); - if (!match && (commonComponent.getClass() == oldCondition.getClass())) { - match = Variable.unify(Variable.VarType.INDEPENDENT, oldCondition.componentAt(index), ((CompoundTerm) commonComponent).componentAt(index), premise1, premise2); - } - if (!match) { - return; + int index2 = oldCondition.getComponents().indexOf(commonComponent); + if (index2 >= 0) { + index = (short) index2; + } else { + boolean match = Variable.unify(Symbols.VAR_INDEPENDENT, oldCondition.componentAt(index), commonComponent, premise1, premise2); + if (!match && (commonComponent.getClass() == oldCondition.getClass())) { + match = Variable.unify(Symbols.VAR_INDEPENDENT, oldCondition.componentAt(index), ((CompoundTerm) commonComponent).componentAt(index), premise1, premise2); + } + if (!match) { + return; + } } Term newCondition; if (oldCondition.equals(commonComponent)) { newCondition = null; } else { - newCondition = CompoundTerm.replaceComponent(oldCondition, index, newComponent); -// if ((newCondition instanceof Conjunction) && ((CompoundTerm) newCondition).size() == 1) { -// newCondition = ((CompoundTerm) newCondition).componentAt(0); -// } - if (premise1.isTemporal()) { - int t = Wait.getWaitingTime(newCondition, true); - if (t > 0) { - if (newCondition instanceof Inheritance) { - newCondition = null; - } else { - newCondition = CompoundTerm.replaceComponent((CompoundTerm) newCondition, 0, null); - } - - long conditionTime = (belief.getContent().equals(premise2)) ? belief.getEventTime() : taskSentence.getEventTime(); - if (conditionTime != Stamp.ALWAYS) { - Memory.newStamp.setEventTime(conditionTime + t); - } - - } - } + newCondition = CompoundTerm.setComponent(oldCondition, index, newComponent, memory); } Term content; - boolean temporal = (taskSentence.isEvent() || belief.isEvent()); - int order = premise1.getOrder() + premise2.getOrder(); if (newCondition != null) { - content = Statement.make(premise1, newCondition, premise1.getPredicate(), temporal, order); + content = Statement.make(premise1, newCondition, premise1.getPredicate(), memory); } else { content = premise1.getPredicate(); } @@ -400,34 +280,19 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, TruthValue truth2 = belief.getTruth(); TruthValue truth = null; BudgetValue budget; - if (taskSentence instanceof Question) { - budget = BudgetFunctions.backwardWeak(truth2); + if (taskSentence.isQuestion()) { + budget = BudgetFunctions.backwardWeak(truth2, memory); } else { - if (taskSentence instanceof Goal) { - if (conditionalTask) { - truth = TruthFunctions.desireWeak(truth1, truth2); - } else if (deduction) { - truth = TruthFunctions.desireInd(truth1, truth2); - } else { - truth = TruthFunctions.desireDed(truth1, truth2); - } - budget = BudgetFunctions.forward(truth); + if (deduction) { + truth = TruthFunctions.deduction(truth1, truth2); + } else if (conditionalTask) { + truth = TruthFunctions.induction(truth2, truth1); } else { - if (deduction) { - truth = TruthFunctions.deduction(truth1, truth2); - } else if (conditionalTask) { - truth = TruthFunctions.induction(truth2, truth1); - } else { - truth = TruthFunctions.induction(truth1, truth2); - } + truth = TruthFunctions.induction(truth1, truth2); } - budget = BudgetFunctions.forward(truth); - } - if (deduction && taskSentence.isJudgment() && premise1.isTemporal() && (Memory.newStamp.getEventTime() != Stamp.ALWAYS)) { - Memory.predictionWithConfirmation(budget, content, truth, taskSentence, belief); - } else { - Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); + budget = BudgetFunctions.forward(truth, memory); } + memory.doublePremiseTask(content, truth, budget); } /** @@ -436,13 +301,13 @@ static void conditionalDedInd(Implication premise1, short index, Term premise2, * @param index The location of the shared term in the condition of premise1 * @param premise2 The premise which, or part of which, appears in the condition of premise1 * @param side The location of the shared term in premise2: 0 for subject, 1 for predicate, -1 for the whole term + * @param memory Reference to the memory */ - static void conditionalAna(Equivalence premise1, short index, Term premise2, int side) { - Task task = Memory.currentTask; + static void conditionalAna(Equivalence premise1, short index, Term premise2, int side, Memory memory) { + Task task = memory.currentTask; Sentence taskSentence = task.getSentence(); - Judgment belief = Memory.currentBelief; - HashMap substitute = Variable.findSubstitute(Variable.VarType.ALL, premise2, belief.getContent()); - boolean conditionalTask = (substitute != null); + Sentence belief = memory.currentBelief; + boolean conditionalTask = Variable.hasSubstitute(Symbols.VAR_INDEPENDENT, premise2, belief.getContent()); Term commonComponent; Term newComponent = null; if (side == 0) { @@ -455,9 +320,9 @@ static void conditionalAna(Equivalence premise1, short index, Term premise2, int commonComponent = premise2; } Conjunction oldCondition = (Conjunction) premise1.getSubject(); - boolean match = Variable.unify(Variable.VarType.DEPENDENT, oldCondition.componentAt(index), commonComponent, premise1, premise2); + boolean match = Variable.unify(Symbols.VAR_DEPENDENT, oldCondition.componentAt(index), commonComponent, premise1, premise2); if (!match && (commonComponent.getClass() == oldCondition.getClass())) { - match = Variable.unify(Variable.VarType.DEPENDENT, oldCondition.componentAt(index), ((CompoundTerm) commonComponent).componentAt(index), premise1, premise2); + match = Variable.unify(Symbols.VAR_DEPENDENT, oldCondition.componentAt(index), ((CompoundTerm) commonComponent).componentAt(index), premise1, premise2); } if (!match) { return; @@ -466,32 +331,11 @@ static void conditionalAna(Equivalence premise1, short index, Term premise2, int if (oldCondition.equals(commonComponent)) { newCondition = null; } else { - newCondition = CompoundTerm.replaceComponent(oldCondition, index, newComponent); -// if ((newCondition instanceof Conjunction) && ((CompoundTerm) newCondition).size() == 1) { -// newCondition = ((CompoundTerm) newCondition).componentAt(0); -// } - if (premise1.isTemporal()) { - int t = Wait.getWaitingTime(newCondition, true); - if (t > 0) { - if (newCondition instanceof Inheritance) { - newCondition = null; - } else { - newCondition = CompoundTerm.replaceComponent((CompoundTerm) newCondition, 0, null); - } - - long conditionTime = (belief.getContent().equals(premise2)) ? belief.getEventTime() : taskSentence.getEventTime(); - if (conditionTime != Stamp.ALWAYS) { - Memory.newStamp.setEventTime(conditionTime + t); - } - - } - } + newCondition = CompoundTerm.setComponent(oldCondition, index, newComponent, memory); } Term content; - boolean temporal = (taskSentence.isEvent() || belief.isEvent()); - int order = premise1.getOrder() + premise2.getOrder(); if (newCondition != null) { - content = Statement.make(premise1, newCondition, premise1.getPredicate(), temporal, order); + content = Statement.make(premise1, newCondition, premise1.getPredicate(), memory); } else { content = premise1.getPredicate(); } @@ -502,308 +346,107 @@ static void conditionalAna(Equivalence premise1, short index, Term premise2, int TruthValue truth2 = belief.getTruth(); TruthValue truth = null; BudgetValue budget; - if (taskSentence instanceof Question) { - budget = BudgetFunctions.backwardWeak(truth2); + if (taskSentence.isQuestion()) { + budget = BudgetFunctions.backwardWeak(truth2, memory); } else { - if (taskSentence instanceof Goal) { - if (conditionalTask) { - truth = TruthFunctions.desireWeak(truth1, truth2); - } else { - truth = TruthFunctions.desireDed(truth1, truth2); - } - budget = BudgetFunctions.forward(truth); + if (conditionalTask) { + truth = TruthFunctions.comparison(truth1, truth2); } else { - if (conditionalTask) { - truth = TruthFunctions.comparison(truth1, truth2); - } else { - truth = TruthFunctions.analogy(truth1, truth2); - } + truth = TruthFunctions.analogy(truth1, truth2); } - budget = BudgetFunctions.forward(truth); - } - if (taskSentence.isJudgment() && premise1.isTemporal() && (Memory.newStamp.getEventTime() != Stamp.ALWAYS)) { - Memory.predictionWithConfirmation(budget, content, truth, taskSentence, belief); - } else { - Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); + budget = BudgetFunctions.forward(truth, memory); } + memory.doublePremiseTask(content, truth, budget); } /** * {<(&&, S2, S3) ==> P>, <(&&, S1, S3) ==> P>} |- S2> * @param cond1 The condition of the first premise * @param cond2 The condition of the second premise - * @param st1 The first premise + * @param taskContent The first premise * @param st2 The second premise + * @param memory Reference to the memory * @return Whether there are derived tasks */ - static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement st2) { + static boolean conditionalAbd(Term cond1, Term cond2, Statement st1, Statement st2, Memory memory) { if (!(st1 instanceof Implication) || !(st2 instanceof Implication)) { return false; } if (!(cond1 instanceof Conjunction) && !(cond2 instanceof Conjunction)) { return false; } - int order1 = st1.getOrder(); - int order2 = st2.getOrder(); - if (order1 != order2) { - return false; - } Term term1 = null; Term term2 = null; if (cond1 instanceof Conjunction) { - term1 = CompoundTerm.reduceComponents((Conjunction) cond1, cond2); + term1 = CompoundTerm.reduceComponents((Conjunction) cond1, cond2, memory); } if (cond2 instanceof Conjunction) { - term2 = CompoundTerm.reduceComponents((Conjunction) cond2, cond1); + term2 = CompoundTerm.reduceComponents((Conjunction) cond2, cond1, memory); } if ((term1 == null) && (term2 == null)) { return false; } - Task task = Memory.currentTask; + Task task = memory.currentTask; Sentence sentence = task.getSentence(); - Judgment belief = Memory.currentBelief; - boolean temporal = (sentence.isEvent() || belief.isEvent()); + Sentence belief = memory.currentBelief; TruthValue value1 = sentence.getTruth(); TruthValue value2 = belief.getTruth(); - boolean keepOrder = (Variable.findSubstitute(Variable.VarType.INDEPENDENT, st1, task.getContent()) != null); Term content; TruthValue truth = null; BudgetValue budget; if (term1 != null) { if (term2 != null) { - content = Statement.make(st2, term2, term1, temporal, order2); + content = Statement.make(st2, term2, term1, memory); } else { content = term1; } - if (sentence instanceof Question) { - budget = BudgetFunctions.backwardWeak(value2); + if (sentence.isQuestion()) { + budget = BudgetFunctions.backwardWeak(value2, memory); } else { - if (sentence instanceof Goal) { - if (keepOrder) { - truth = TruthFunctions.desireDed(value1, value2); - } else { - truth = TruthFunctions.desireInd(value1, value2); - } - } else { - truth = TruthFunctions.abduction(value2, value1); - } - budget = BudgetFunctions.forward(truth); + truth = TruthFunctions.abduction(value2, value1); + budget = BudgetFunctions.forward(truth, memory); } - Memory.doublePremiseTask(budget, content, truth, sentence, belief); + memory.doublePremiseTask(content, truth, budget); } if (term2 != null) { if (term1 != null) { - content = Statement.make(st1, term1, term2, temporal, order1); + content = Statement.make(st1, term1, term2, memory); } else { content = term2; } - if (sentence instanceof Question) { - budget = BudgetFunctions.backwardWeak(value2); + if (sentence.isQuestion()) { + budget = BudgetFunctions.backwardWeak(value2, memory); } else { - if (sentence instanceof Goal) { - if (keepOrder) { - truth = TruthFunctions.desireDed(value1, value2); - } else { - truth = TruthFunctions.desireInd(value1, value2); - } - } else { - truth = TruthFunctions.abduction(value1, value2); - } - budget = BudgetFunctions.forward(truth); + truth = TruthFunctions.abduction(value1, value2); + budget = BudgetFunctions.forward(truth, memory); } - Memory.doublePremiseTask(budget, content, truth, sentence, belief); + memory.doublePremiseTask(content, truth, budget); } return true; } - /* --------------- rules used for independent variable introduction --------------- */ /** - * { S>, P>} |- <<#x --> S> ==> <#x --> P>> - * { S>, P>} |- <<#x --> S> <=> <#x --> P>> - * @param sentence1 The first premise S> - * @param sentence2 The second premise P> - * @param figure The figure indicating the location of the shared term - * @param isImplication The conclusion is Implication, not Equivalence + * {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S> + * @param compound The compound term to be decomposed + * @param component The part of the compound to be removed + * @param compoundTask Whether the compound comes from the task + * @param memory Reference to the memory */ - private static Statement introVarInd(Sentence sentence1, Sentence sentence2, int figure, boolean isImplication) { - Statement premise1 = (Statement) sentence1.getContent(); - Statement premise2 = (Statement) sentence2.getContent(); - Statement state1, - state2; - Variable v1 = new Variable(Symbols.VARIABLE_TAG + "0"); - Variable v2 = new Variable(Symbols.VARIABLE_TAG + "0"); - if (figure == 11) { - state1 = Statement.make(premise1, v1, premise1.getPredicate()); - state2 = - Statement.make(premise2, v2, premise2.getPredicate()); - } else { - state1 = Statement.make(premise1, premise1.getSubject(), v1); - state2 = - Statement.make(premise2, premise2.getSubject(), v2); - } - - long time1 = sentence1.getEventTime(); // override Concept.getBelief? - long time2 = sentence2.getEventTime(); - int dif = (int) (time2 - time1); - boolean temporal = (sentence1.isEvent() && sentence2.isEvent()); - Statement content; - - if (isImplication) { - content = Implication.make(state1, state2, temporal, dif); - } else { - content = Equivalence.make(state1, state2, temporal, dif); - } - - return content; - } - - /** - * { S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> - * { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>) - * @param premise1 The first premise directly used in internal induction, S> - * @param premise2 The component to be used as a premise in internal induction, P> - * @param oldCompound The whole content of the first premise, Implication or Conjunction - */ - static void introVarIndInner(Statement premise1, Statement premise2, CompoundTerm oldCompound) { - Task task = Memory.currentTask; - Sentence taskSentence = task.getSentence(); - if (!taskSentence.isJudgment()) { - return; - } - if (premise1.getClass() != premise2.getClass()) { - return; - } - Variable var1 = new Variable(Symbols.VARIABLE_TAG + "0"); - Variable var2 = new Variable(Symbols.VARIABLE_TAG + "0"); - Statement state1, state2; - if (premise1.getSubject().equals(premise2.getSubject())) { - state1 = Statement.make(premise1, var1, premise1.getPredicate()); - state2 = Statement.make(premise2, var2, premise2.getPredicate()); - } else if (premise1.getPredicate().equals(premise2.getPredicate())) { - state1 = Statement.make(premise1, premise1.getSubject(), var1); - state2 = Statement.make(premise2, premise2.getSubject(), var2); - } else { - return; - } - Sentence belief = Memory.currentBelief; - Term compound, content; - TruthValue truth; - if (premise1.equals(taskSentence.getContent())) { - truth = TruthFunctions.induction(belief.getTruth(), taskSentence.getTruth()); - } else { - truth = TruthFunctions.induction(taskSentence.getTruth(), belief.getTruth()); - } - if (oldCompound instanceof Implication) { - compound = Statement.make((Statement) oldCompound, oldCompound.componentAt(0), state2); - content = Statement.make((Statement) oldCompound, state1, compound); - } else if (oldCompound instanceof Conjunction) { - compound = Implication.make(state1, state2, false, 0); - content = CompoundTerm.replaceComponent(oldCompound, premise2, compound); + static void elimiVarDep(CompoundTerm compound, Term component, boolean compoundTask, Memory memory) { + Term content = CompoundTerm.reduceComponents(compound, component, memory); + Task task = memory.currentTask; + Sentence sentence = task.getSentence(); + Sentence belief = memory.currentBelief; + TruthValue v1 = sentence.getTruth(); + TruthValue v2 = belief.getTruth(); + TruthValue truth = null; + BudgetValue budget; + if (sentence.isQuestion()) { + budget = (compoundTask ? BudgetFunctions.backward(v2, memory) : BudgetFunctions.backwardWeak(v2, memory)); } else { - return; - } - BudgetValue budget = BudgetFunctions.forward(truth); - Memory.doublePremiseTask(budget, content, truth, taskSentence, belief); - } - - /** - * {(E1, E2)} |- { E2>, E1>, E2>} - * @param task1 The first premise - * @param task2 The second premise - */ - public static void temporalIndCom(Task task1, Task task2) { - Judgment judg1 = (Judgment) task1.getSentence(); - Judgment judg2 = (Judgment) task2.getSentence(); - Term term1 = judg1.getContent(); - Term term2 = judg2.getContent(); - if ((term1 instanceof CompoundTerm) && ((CompoundTerm) term1).containComponent(term2)) { - return; - } - if ((term2 instanceof CompoundTerm) && ((CompoundTerm) term2).containComponent(term1)) { - return; - } - if ((term1 instanceof Inheritance) && (term2 instanceof Inheritance)) { - Statement s1 = (Statement) term1; - Statement s2 = (Statement) term2; - Variable var1 = new Variable(Symbols.VARIABLE_TAG + "0"); - Variable var2 = new Variable(Symbols.VARIABLE_TAG + "0"); - if (s1.getSubject().equals(s2.getSubject())) { - term1 = Statement.make(s1, var1, s1.getPredicate()); - term2 = Statement.make(s2, var2, s2.getPredicate()); - } else if (s1.getPredicate().equals(s2.getPredicate())) { - term1 = Statement.make(s1, s1.getSubject(), var1); - term2 = Statement.make(s2, s2.getSubject(), var2); - } - } else { // to generalize - Term condition; - if (term1 instanceof Implication) { - condition = ((Implication) term1).getSubject(); - if (condition.equals(term2)) { - return; - } - if ((condition instanceof Conjunction) && ((Conjunction) condition).containComponent(term2)) { - return; - } - } else if (term2 instanceof Implication) { - condition = ((Implication) term2).getSubject(); - if (condition.equals(term1)) { - return; - } - if ((condition instanceof Conjunction) && ((Conjunction) condition).containComponent(term1)) { - return; - } - } - } - long time1 = judg1.getEventTime(); - long time2 = judg2.getEventTime(); - int distance = (int) (time2 - time1); - if (Math.abs(distance) > 1) { - Wait oper = (Wait) Memory.nameToOperator("^wait"); - Term delta = oper.createOperation(Math.abs(distance)); - ArrayList argument = new ArrayList(); - argument.add(term2); - argument.add(delta); - term2 = Conjunction.make(argument, 1); - } - Statement statement1 = Implication.make(term1, term2, true, distance); - Statement statement2 = Implication.make(term2, term1, true, -distance); - Statement statement3 = Equivalence.make(term1, term2, true, distance); - TruthValue value1 = judg1.getTruth(); - TruthValue value2 = judg2.getTruth(); - TruthValue truth1 = TruthFunctions.induction(value1, value2); - TruthValue truth2 = TruthFunctions.induction(value2, value1); - TruthValue truth3 = TruthFunctions.comparison(value1, value2); - BudgetValue budget1 = BudgetFunctions.temporalIndCom(task1.getBudget(), task2.getBudget(), truth1); - BudgetValue budget2 = BudgetFunctions.temporalIndCom(task1.getBudget(), task2.getBudget(), truth2); - BudgetValue budget3 = BudgetFunctions.temporalIndCom(task1.getBudget(), task2.getBudget(), truth3); - Memory.doublePremiseTask(budget1, statement1, truth1, judg1, judg2); - Memory.doublePremiseTask(budget2, statement2, truth2, judg2, judg1); - Memory.doublePremiseTask(budget3, statement3, truth3, judg1, judg2); - Memory.newStamp.setEventTime(Stamp.ALWAYS); - Memory.doublePremiseTask(budget1, statement1, truth1, judg1, judg2); - Memory.doublePremiseTask(budget2, statement2, truth2, judg2, judg1); - Memory.doublePremiseTask(budget3, statement3, truth3, judg1, judg2); - } - - /** - * Temporal inference in syllogism, with figure - * @param r1 The first premise, containing the subject of the conclusion - * @param r2 The second premise, containing the predicate of the conclusion - * @param figure The location of the shared term - * @return The temporal order in the conclusion - */ - public static int temporalSyllogism(int r1, int r2, int figure) { - switch (figure) { - case 11: - return -r1 + r2; - case 12: - return -r1 - r2; - case 21: - return r1 + r2; - case 22: - return r1 - r2; - default: - return 0; + truth = (compoundTask ? TruthFunctions.anonymousAnalogy(v1, v2) : TruthFunctions.anonymousAnalogy(v2, v1)); + budget = BudgetFunctions.compoundForward(truth, content, memory); } + memory.doublePremiseTask(content, truth, budget); } } diff --git a/nars/inference/TruthFunctions.java b/nars/inference/TruthFunctions.java index 5738415c..c1879fc2 100644 --- a/nars/inference/TruthFunctions.java +++ b/nars/inference/TruthFunctions.java @@ -86,27 +86,6 @@ static TruthValue revision(TruthValue v1, TruthValue v2) { return new TruthValue(f, c); } - /** - * Casting truth-value v1 from moment t1 to moment t2, with respect to time t - * @param v1 Truth value of the premise to be casted - * @param t1 Source time - * @param t2 Target time - * @param t Reference time - * @return Truth value after temporal discount - */ - public static TruthValue temporalCasting(TruthValue v1, long t1, long t2, long t) { - float f1 = v1.getFrequency(); - float c1 = v1.getConfidence(); - float c = w2c(c1); // minimum has nothing to do with distance - if (t2 != Stamp.ALWAYS) { - float c2 = c1 * (1 - Math.abs(t1 - t2) / (float) (Math.abs(t - t1) + Math.abs(t - t2))); - if (c2 > c) { - c = c2; - } - } - return new TruthValue(f1, c); - } - /* ----- double argument functions, called in SyllogisticRules ----- */ /** * { M>, P>} |- P> @@ -321,7 +300,8 @@ static TruthValue union(TruthValue v1, TruthValue v2) { float c1 = v1.getConfidence(); float c2 = v2.getConfidence(); float f = or(f1, f2); - float c = or(and(f1, c1), and(f2, c2)) + and(1 - f1, 1 - f2, c1, c2); +// float c = or(and(f1, c1), and(f2, c2)) + and(1 - f1, 1 - f2, c1, c2); + float c = and(c1, c2); return new TruthValue(f, c); } @@ -337,21 +317,10 @@ static TruthValue intersection(TruthValue v1, TruthValue v2) { float c1 = v1.getConfidence(); float c2 = v2.getConfidence(); float f = and(f1, f2); - float c = or(and(1 - f1, c1), and(1 - f2, c2)) + and(f1, f2, c1, c2); + float c = and(c1, c2); return new TruthValue(f, c); } - /** - * { S>, P>} |- (S-P)> - * @param v1 Truth value of the first premise - * @param v2 Truth value of the second premise - * @return Truth value of the conclusion - */ - static TruthValue difference(TruthValue v1, TruthValue v2) { - TruthValue v0 = negation(v2); - return intersection(v1, v0); - } - /** * {(||, A, B), (--, B)} |- A * @param v1 Truth value of the first premise diff --git a/nars/inference/package.html b/nars/inference/package.html index e87a081d..564cf870 100644 --- a/nars/inference/package.html +++ b/nars/inference/package.html @@ -11,7 +11,7 @@

    Package Specification

    There are four major groups of inference rules:

      -
    1. MatchingRules, where the task and belief contains the same pair +
    2. LocalRules, where the task and belief contains the same pair of terms, and the rules provide direct solutions to problems, revise beliefs, and derive some conclusions;
    3. SyllogisticRules, where the task and belief share one common term, @@ -21,12 +21,8 @@

      Package Specification

    4. StructuralRules, where the task derives conclusions all by itself, while the other "premise" serves by indicating a certain syntactic structure in a compound term.
    -In addition to the above rules, which handles the semantic and syntactic information -in the premises, the TemporalRules handle the temporal information, and decides the -temporal aspect of the conclusions. -

    In the system, forward inference (the task is a Judgment) and backward inference -(the task is a Question or Goal) are mostly isomorphic to each other, so that the +(the task is a Question) are mostly isomorphic to each other, so that the inference rules produce clonclusions with the same content for different types of tasks. However, there are exceptions. For example, backward inference does not generate compound terms.

    @@ -42,8 +38,7 @@

    Package Specification

    In each case, there may be multiple applicable rules, which will be applied in parallel. For each rule, each conclusion is formed in three stages, to determine (1) the content -(as a Term) and tense, (2) the truth-value or desire-value, and (3) the budget-value, -roughly in that order. +(as a Term), (2) the truth-value, and (3) the budget-value, roughly in that order.

    diff --git a/nars/io/ExperienceIO.java b/nars/io/ExperienceReader.java similarity index 54% rename from nars/io/ExperienceIO.java rename to nars/io/ExperienceReader.java index 8b5f13c9..aa88b6e5 100644 --- a/nars/io/ExperienceIO.java +++ b/nars/io/ExperienceReader.java @@ -1,5 +1,5 @@ /* - * ExperienceIO.java + * ExperienceReader.java * * Copyright (C) 2008 Pei Wang * @@ -23,31 +23,29 @@ import java.awt.FileDialog; import java.io.*; -import nars.gui.*; import nars.main.*; /** * To read and write experience as Task streams */ -public class ExperienceIO { - - /** Input experience from a window */ - private InputWindow inputWindow; +public class ExperienceReader implements InputChannel { + /** Reference to the reasoner */ + private Reasoner reasoner; /** Input experience from a file */ private BufferedReader inExp; - /** Output experience into a file */ - private PrintWriter outExp; + /** Remaining working cycles before reading the next line */ + private int timer; - /** + /** * Default constructor + * @param reasoner Backward link to the reasoner */ - public ExperienceIO() { - inputWindow = MainWindow.inputWindow; + public ExperienceReader(Reasoner reasoner) { + this.reasoner = reasoner; inExp = null; - outExp = null; } - /** + /** * Open an input experience file */ public void openLoadFile() { @@ -60,88 +58,55 @@ public void openLoadFile() { } catch (IOException ex) { System.out.println("i/o error: " + ex.getMessage()); } + reasoner.addInputChannel(this); } - /** - * Open an output experience file + /** + * Close an input experience file */ - public void openSaveFile() { - FileDialog dialog = new FileDialog((FileDialog) null, "Save experience", FileDialog.SAVE); - dialog.setVisible(true); - String directoryName = dialog.getDirectory(); - String fileName = dialog.getFile(); + public void closeLoadFile() { try { - outExp = new PrintWriter(new FileWriter(directoryName + fileName)); + inExp.close(); } catch (IOException ex) { System.out.println("i/o error: " + ex.getMessage()); } + reasoner.removeInputChannel(this); } /** - * Read a line from input, and send running instruction to Memory - * @return Nember of running steps, if any + * Process the next chunk of input data + * @return Whether the input channel should be chacked again */ - public long loadLine() { + public boolean nextInput() { + if (timer > 0) { + timer--; + return true; + } + if (inExp == null) { + return false; + } String line = null; - long cycle = 0; - if (inExp != null) { + while (timer == 0) { try { line = inExp.readLine(); if (line == null) { inExp.close(); inExp = null; + return false; } } catch (IOException ex) { System.out.println("i/o error: " + ex.getMessage()); } - } else { - line = inputWindow.getLine(); - } - if (line != null) { line = line.trim(); if (line.length() > 0) { try { - cycle = new Long(line); + timer = Integer.parseInt(line); + reasoner.walk(timer); } catch (NumberFormatException e) { - if (line.charAt(0) == Symbols.RESET_MARK) { - Center.reset(); - saveLine(line); - } else if (line.charAt(0) == Symbols.COMMENT_MARK) { - saveLine(line); - } else { - StringParser.parseExperience(new StringBuffer(line)); - } + reasoner.textInputLine(line); } } } - return cycle; - } - - /** - * Write a line into the output experience file - * @param line The output line - */ - public void saveLine(String line) { - if (outExp != null) { - outExp.println(line); - } - } - - /** - * Close an input experience file - */ - public void closeLoadFile() { - try { - inExp.close(); - } catch (IOException ex) { - System.out.println("i/o error: " + ex.getMessage()); - } - } - - /** - * Close an output experience file - */ - public void closeSaveFile() { - outExp.close(); + return true; } } diff --git a/nars/io/ExperienceWriter.java b/nars/io/ExperienceWriter.java new file mode 100644 index 00000000..9b6a0bab --- /dev/null +++ b/nars/io/ExperienceWriter.java @@ -0,0 +1,82 @@ + +/* + * ExperienceReader.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ +package nars.io; + +import java.awt.FileDialog; +import java.io.*; +import java.util.*; + +import nars.main.*; + +/** + * To read and write experience as Task streams + */ +public class ExperienceWriter implements OutputChannel { + + private Reasoner reasoner; + /** Input experience from a file */ + private PrintWriter outExp; + + /** + * Default constructor + * @param reasoner + */ + public ExperienceWriter(Reasoner reasoner) { + this.reasoner = reasoner; + } + + /** + * Open an output experience file + */ + public void openSaveFile() { + FileDialog dialog = new FileDialog((FileDialog) null, "Save experience", FileDialog.SAVE); + dialog.setVisible(true); + String directoryName = dialog.getDirectory(); + String fileName = dialog.getFile(); + try { + outExp = new PrintWriter(new FileWriter(directoryName + fileName)); + } catch (IOException ex) { + System.out.println("i/o error: " + ex.getMessage()); + } + reasoner.addOutputChannel(this); + } + + /** + * Close an output experience file + */ + public void closeSaveFile() { + outExp.close(); + reasoner.removeOutputChannel(this); + } + + /** + * Process the next chunk of output data + * @param lines The text to be displayed + */ + public void nextOutput(ArrayList lines) { + if (outExp != null) { + for (Object line : lines) { + outExp.println(line.toString()); + } + } + } +} diff --git a/nars/io/Record.java b/nars/io/InferenceRecorder.java similarity index 79% rename from nars/io/Record.java rename to nars/io/InferenceRecorder.java index 6a29aeba..4cb22626 100644 --- a/nars/io/Record.java +++ b/nars/io/InferenceRecorder.java @@ -1,5 +1,5 @@ /* - * Record.java + * InferenceRecorder.java * * Copyright (C) 2008 Pei Wang * @@ -28,43 +28,40 @@ /** * Inference log, which record input/output of each inference step */ -public class Record { +public class InferenceRecorder { /** the display window */ - private static InferenceWindow window = new InferenceWindow(); + private InferenceWindow window = new InferenceWindow(this); /** whether to display */ - private static boolean isReporting = false; + private boolean isReporting = false; /** the log file */ - private static PrintWriter logFile = null; + private PrintWriter logFile = null; /** * Initialize the window and the file */ - public static void init() { + public void init() { window.clear(); - if (logFile != null) { - closeLogFile(); - } } /** * Show the window */ - public static void show() { + public void show() { window.setVisible(true); } /** * Begin the display */ - public static void play() { + public void play() { isReporting = true; } /** * Stop the display */ - public static void stop() { + public void stop() { isReporting = false; } @@ -72,7 +69,7 @@ public static void stop() { * Add new text to display * @param s The line to be displayed */ - public static void append(String s) { + public void append(String s) { if (isReporting) { window.append(s); } @@ -81,10 +78,10 @@ public static void append(String s) { } } - /** + /** * Open the log file */ - public static void openLogFile() { + public void openLogFile() { FileDialog dialog = new FileDialog((FileDialog) null, "Inference Log", FileDialog.SAVE); dialog.setVisible(true); String directoryName = dialog.getDirectory(); @@ -98,20 +95,20 @@ public static void openLogFile() { window.setVisible(true); } - /** + /** * Close the log file */ - public static void closeLogFile() { + public void closeLogFile() { logFile.close(); logFile = null; window.resetBackground(); } - /** + /** * Check file logging * @return If the file logging is going on */ - public static boolean isLogging() { + public boolean isLogging() { return (logFile != null); } } diff --git a/nars/io/InputChannel.java b/nars/io/InputChannel.java new file mode 100644 index 00000000..36779ade --- /dev/null +++ b/nars/io/InputChannel.java @@ -0,0 +1,15 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +package nars.io; + +/** + * An interface to be implemented in all input channels + * To get the input for the next moment from an input channel + * The return value indicating whether the reasoner should run + */ +public interface InputChannel { + public boolean nextInput(); +} diff --git a/nars/io/OutputChannel.java b/nars/io/OutputChannel.java new file mode 100644 index 00000000..771563b6 --- /dev/null +++ b/nars/io/OutputChannel.java @@ -0,0 +1,14 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +package nars.io; +import java.util.ArrayList; + +/** + * An interface to be implemented in all output channel + */ +public interface OutputChannel { + public void nextOutput(ArrayList output); +} diff --git a/nars/io/StringParser.java b/nars/io/StringParser.java index 50f38400..27c1bc93 100644 --- a/nars/io/StringParser.java +++ b/nars/io/StringParser.java @@ -20,15 +20,17 @@ */ package nars.io; -import java.util.ArrayList; +import java.util.*; import nars.entity.*; import nars.inference.*; -import nars.language.*; +import nars.term.*; import nars.main.*; +import nars.container.Memory; /** - * Parse input String into Task. + * Parse input String into Task or Term. + * Abstract class with static methods only. */ public abstract class StringParser extends Symbols { @@ -52,12 +54,12 @@ private static class InvalidInputException extends Exception { * called from ExperienceIO.loadLine * @param buffer The line to be parsed */ - public static void parseExperience(StringBuffer buffer) { + public static Task parseExperience(StringBuffer buffer, Memory memory, long time) { int i = buffer.indexOf(PREFIX_MARK + ""); if (i > 0) { String prefix = buffer.substring(0, i).trim(); if (prefix.equals(OUTPUT_LINE)) { - return; + return null; } else if (prefix.equals(INPUT_LINE)) { buffer.delete(0, i + 1); } @@ -67,43 +69,40 @@ public static void parseExperience(StringBuffer buffer) { int j = buffer.lastIndexOf(STAMP_OPENER + ""); buffer.delete(j - 1, buffer.length()); } - parseTask(buffer.toString().trim()); + return parseTask(buffer.toString().trim(), memory, time); } /** * Enter a new Task in String into the memory, called from InputWindow or locally. * @param s the single-line input String */ - public static void parseTask(String s) { + public static Task parseTask(String s, Memory memory, long time) { StringBuffer buffer = new StringBuffer(s); + Task task = null; try { String budgetString = getBudgetString(buffer); String truthString = getTruthString(buffer); - String tense = parseTense(buffer); String str = buffer.toString().trim(); int last = str.length() - 1; char punc = str.charAt(last); - Stamp stamp; - if (tense.length() > 0) { - stamp = new Stamp(tense); - } else { - stamp = new Stamp(); - } + Stamp stamp = new Stamp(time); TruthValue truth = parseTruth(truthString, punc); - Term content = parseTerm(str.substring(0, last)); - Sentence sentence = Sentence.make(content, punc, truth, stamp, null, null); - if (sentence == null) { - throw new InvalidInputException("invalid sentence"); - } - sentence.setInput(); + Term content = parseTerm(str.substring(0, last), memory); +// if (content instanceof CompoundTerm) { // all top-level compound terms are assumed to be constant +// ((CompoundTerm) content).setConstant(true); +// } +// Sentence sentence = Sentence.make(content, punc, truth, stamp); + Sentence sentence = new Sentence(content, punc, truth, stamp); +// if (sentence == null) { +// throw new InvalidInputException("invalid sentence"); +// } +// sentence.setInput(); BudgetValue budget = parseBudget(budgetString, punc, truth); - Task task = new Task(sentence, budget); - if (task != null) { - Memory.inputTask(task); - } + task = new Task(sentence, budget); } catch (InvalidInputException e) { System.out.println(" !!! INVALID INPUT: " + buffer + " --- " + e.getMessage()); } + return task; } /* ---------- parse values ---------- */ @@ -129,21 +128,6 @@ private static String getBudgetString(StringBuffer s) throws InvalidInputExcepti return budgetString; } - /** - * Recognize the tense of an input sentence - * @param s the input in a StringBuffer - * @return a tense value - */ - private static String parseTense(StringBuffer s) { - int i = s.indexOf(Symbols.TENSE_MARK); - String t = ""; - if (i > 0) { - t = s.substring(i).trim(); - s.delete(i, s.length()); - } - return t; - } - /** * Return the postfix of a task string that contains a TruthValue * @return a String containing a TruthValue @@ -175,7 +159,7 @@ private static String getTruthString(StringBuffer s) throws InvalidInputExceptio * @return the input TruthValue */ private static TruthValue parseTruth(String s, char type) { - if ((type == QUESTION_MARK) || (type == QUEST_MARK)) { + if (type == QUESTION_MARK) { return null; } float frequency = 1.0f; @@ -208,12 +192,7 @@ private static BudgetValue parseBudget(String s, char punctuation, TruthValue tr priority = Parameters.DEFAULT_JUDGMENT_PRIORITY; durability = Parameters.DEFAULT_JUDGMENT_DURABILITY; break; - case GOAL_MARK: - priority = Parameters.DEFAULT_GOAL_PRIORITY; - durability = Parameters.DEFAULT_GOAL_DURABILITY; - break; case QUESTION_MARK: - case QUEST_MARK: priority = Parameters.DEFAULT_QUESTION_PRIORITY; durability = Parameters.DEFAULT_QUESTION_DURABILITY; break; @@ -244,15 +223,16 @@ private static BudgetValue parseBudget(String s, char punctuation, TruthValue tr * 4. is a Statement (including higher-order Statement); * 5. otherwise it is a simple term. * @param s0 the String to be parsed + * @param memory Reference to the memory * @return the Term generated from the String */ - public static Term parseTerm(String s0) { + public static Term parseTerm(String s0, Memory memory) { String s = s0.trim(); try { if (s.length() == 0) { throw new InvalidInputException("missing content"); } - Term t = Memory.nameToListedTerm(s); // existing constant or operator + Term t = memory.nameToListedTerm(s); // existing constant or operator if (t != null) { return t; } // existing Term @@ -262,30 +242,30 @@ public static Term parseTerm(String s0) { switch (first) { case COMPOUND_TERM_OPENER: if (last == COMPOUND_TERM_CLOSER) { - return parseCompoundTerm(s.substring(1, index)); + return parseCompoundTerm(s.substring(1, index), memory); } else { throw new InvalidInputException("missing CompoundTerm closer"); } case SET_EXT_OPENER: if (last == SET_EXT_CLOSER) { - return SetExt.make(parseArguments(s.substring(1, index) + ARGUMENT_SEPARATOR)); + return SetExt.make(parseArguments(s.substring(1, index) + ARGUMENT_SEPARATOR, memory), memory); } else { throw new InvalidInputException("missing ExtensionSet closer"); } case SET_INT_OPENER: if (last == SET_INT_CLOSER) { - return SetInt.make(parseArguments(s.substring(1, index) + ARGUMENT_SEPARATOR)); + return SetInt.make(parseArguments(s.substring(1, index) + ARGUMENT_SEPARATOR, memory), memory); } else { throw new InvalidInputException("missing IntensionSet closer"); } case STATEMENT_OPENER: if (last == STATEMENT_CLOSER) { - return parseStatement(s.substring(1, index)); + return parseStatement(s.substring(1, index), memory); } else { throw new InvalidInputException("missing Statement closer"); } default: - return parseSimpleTerm(s); + return parseAtomicTerm(s); } } catch (InvalidInputException e) { System.out.println(" !!! INVALID INPUT: " + s + " --- " + e.getMessage()); @@ -301,7 +281,7 @@ public static Term parseTerm(String s0) { * @throws nars.io.StringParser.InvalidInputException the String cannot be parsed into a Term * @return the Term generated from the String */ - private static Term parseSimpleTerm(String s0) throws InvalidInputException { + private static Term parseAtomicTerm(String s0) throws InvalidInputException { String s = s0.trim(); if (s.length() == 0) { throw new InvalidInputException("missing term"); @@ -310,14 +290,11 @@ private static Term parseSimpleTerm(String s0) throws InvalidInputException { { throw new InvalidInputException("invalid term"); } - Term term; - char prefix = s.charAt(0); - if ((prefix == VARIABLE_TAG) || (prefix == QUERY_VARIABLE_TAG)) { - term = new Variable(s); // the only place to directly call this constructor + if (Variable.containVar(s)) { + return new Variable(s); } else { - term = new Term(s); // the only place to directly call this constructor - } - return term; + return new Term(s); + } } /** @@ -326,16 +303,16 @@ private static Term parseSimpleTerm(String s0) throws InvalidInputException { * @param s0 The input String to be parsed * @throws nars.io.StringParser.InvalidInputException the String cannot be parsed into a Term */ - private static Statement parseStatement(String s0) throws InvalidInputException { + private static Statement parseStatement(String s0, Memory memory) throws InvalidInputException { String s = s0.trim(); int i = topRelation(s); if (i < 0) { throw new InvalidInputException("invalid statement"); } String relation = s.substring(i, i + 3); - Term subject = parseTerm(s.substring(0, i)); - Term predicate = parseTerm(s.substring(i + 3)); - Statement t = Statement.make(relation, subject, predicate); + Term subject = parseTerm(s.substring(0, i), memory); + Term predicate = parseTerm(s.substring(i + 3), memory); + Statement t = Statement.make(relation, subject, predicate, memory); if (t == null) { throw new InvalidInputException("invalid statement"); } @@ -348,15 +325,15 @@ private static Statement parseStatement(String s0) throws InvalidInputException * @param s0 The String to be parsed * @throws nars.io.StringParser.InvalidInputException the String cannot be parsed into a Term */ - private static Term parseCompoundTerm(String s0) throws InvalidInputException { + private static Term parseCompoundTerm(String s0, Memory memory) throws InvalidInputException { String s = s0.trim(); int firstSeparator = s.indexOf(ARGUMENT_SEPARATOR); String op = s.substring(0, firstSeparator).trim(); if (!CompoundTerm.isOperator(op)) { throw new InvalidInputException("unknown operator: " + op); } - ArrayList arg = parseArguments(s.substring(firstSeparator + 1) + ARGUMENT_SEPARATOR); - Term t = CompoundTerm.make(op, arg); + ArrayList arg = parseArguments(s.substring(firstSeparator + 1) + ARGUMENT_SEPARATOR, memory); + Term t = CompoundTerm.make(op, arg, memory); if (t == null) { throw new InvalidInputException("invalid compound term"); } @@ -369,7 +346,7 @@ private static Term parseCompoundTerm(String s0) throws InvalidInputException { * @param s0 The String to be parsed * @throws nars.io.StringParser.InvalidInputException the String cannot be parsed into an argument get */ - private static ArrayList parseArguments(String s0) throws InvalidInputException { + private static ArrayList parseArguments(String s0, Memory memory) throws InvalidInputException { String s = s0.trim(); ArrayList list = new ArrayList(); int start = 0; @@ -377,7 +354,7 @@ private static ArrayList parseArguments(String s0) throws InvalidInputExce Term t; while (end < s.length() - 1) { end = nextSeparator(s, start); - t = parseTerm(s.substring(start, end)); // recursive call + t = parseTerm(s.substring(start, end), memory); // recursive call list.add(t); start = end + 1; } diff --git a/nars/io/Symbols.java b/nars/io/Symbols.java index 84e08b6b..45c1648c 100644 --- a/nars/io/Symbols.java +++ b/nars/io/Symbols.java @@ -27,15 +27,12 @@ public class Symbols { /* sentence type and delimitors */ public static final char JUDGMENT_MARK = '.'; - public static final char GOAL_MARK = '!'; public static final char QUESTION_MARK = '?'; - public static final char QUEST_MARK = '@'; - /* Tense markers */ - public static final String TENSE_MARK = ":"; - public static final String TENSE_PAST = ":\\:"; - public static final String TENSE_PRESENT = ":|:"; - public static final String TENSE_FUTURE = ":/:"; + /* variable type */ + public static final char VAR_INDEPENDENT = '$'; + public static final char VAR_DEPENDENT = '#'; + public static final char VAR_QUERY = '?'; /* numerical value delimitors, must be different from the Term delimitors */ public static final char BUDGET_VALUE_MARK = '$'; @@ -69,8 +66,6 @@ public class Symbols { public static final String NEGATION_OPERATOR = "--"; public static final String DISJUNCTION_OPERATOR = "||"; public static final String CONJUNCTION_OPERATOR = "&&"; - public static final String SEQUENCE_OPERATOR = "&/"; - public static final String PARALLEL_OPERATOR = "&|"; /* built-in relations, length = 3 */ public static final String INHERITANCE_RELATION = "-->"; @@ -80,16 +75,6 @@ public class Symbols { public static final String INSTANCE_PROPERTY_RELATION = "{-]"; public static final String IMPLICATION_RELATION = "==>"; public static final String EQUIVALENCE_RELATION = "<=>"; - public static final String IMPLICATION_AFTER_RELATION = "=/>"; - public static final String IMPLICATION_BEFORE_RELATION = "=\\>"; - public static final String IMPLICATION_WHEN_RELATION = "=|>"; - public static final String EQUIVALENCE_AFTER_RELATION = ""; - public static final String EQUIVALENCE_WHEN_RELATION = "<|>"; - - /* special Term name prefix, single charactor */ - public static final char VARIABLE_TAG = '#'; - public static final char QUERY_VARIABLE_TAG = '?'; - public static final char OPERATOR_TAG = '^'; /* experience line prefix */ public static final String INPUT_LINE = "IN"; diff --git a/nars/main/Center.java b/nars/main/Center.java deleted file mode 100644 index 2cd17597..00000000 --- a/nars/main/Center.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Center.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ -package nars.main; - -import nars.io.*; -import nars.gui.MainWindow; -import nars.entity.Stamp; - -/** - * The control center of the system. - *

    - * Create static main window and input channel, reset memory, and manage system clock. - */ -public class Center { - /** The unique main window */ - public static MainWindow mainWindow; - /** The unique input channel */ - public static ExperienceIO experienceIO; - /** System clock, relatively defined to guaranttee the repeatability of behaviors */ - private static long clock; - /** Timer for fixed distance walking */ - private static long stoper; - /** Flag for running continously */ - private static boolean running; - - /** - * Start the initial windows and memory. Called from NARS only. - */ - public static void start() { - mainWindow = new MainWindow(); - experienceIO = new ExperienceIO(); - reset(); - } - - /** - * Reset the system with an empty memory and reset clock. Called locally and from MainWindow. - */ - public static void reset() { - stoper = 0; - clock = 0; - running = false; - Stamp.init(); - Record.init(); - Memory.init(); - mainWindow.init(); - } - - /** - * Walk a fixed number of steps or continously. Called from MainWindow only. - * @param i The number of steps of inference, or infinite if negative - */ - public static void setStoper(long i) { - if (i < 0) { - running = true; - stoper = 0; - } else { - running = false; - stoper = i; - } - } - - /** - * A clock tick. Run one working cycle or read input. Called from NARS only. - */ - public static void tick() { - if (stoper == 0) { - stoper = experienceIO.loadLine(); - } - if (running || (stoper > 0)) { - clock++; - Record.append(" --- " + clock + " ---\n"); - mainWindow.tickTimer(); - Memory.cycle(); - if (stoper > 0) { - stoper--; - } - } - } - - /** - * Get the current time from the clock - * Called in nars.entity.Stamp - * @return The current time - */ - public static long getTime() { - return clock; - } -} diff --git a/nars/main/Memory.java b/nars/main/Memory.java deleted file mode 100644 index 3ec81af6..00000000 --- a/nars/main/Memory.java +++ /dev/null @@ -1,627 +0,0 @@ -/* - * Memory.java - * - * Copyright (C) 2008 Pei Wang - * - * This file is part of Open-NARS. - * - * Open-NARS is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * Open-NARS is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Open-NARS. If not, see . - */ -package nars.main; - -import java.util.*; - -import nars.entity.*; -import nars.inference.*; -import nars.io.*; -import nars.language.*; -import nars.operation.Operator; -import nars.storage.*; - -/** - * The memory of the system. - */ -public class Memory { - - /* ---------- all members are static, with limited space ---------- */ - /** Concept bag. Containing all Concepts of the system */ - private static ConceptBag concepts; - /** Operators (built-in terms) table. Accessed by name */ - private static HashMap operators; - /* There is no global Term table, which may ask for unlimited space. */ - /** List of inference newTasks, to be processed in the next working cycle */ - private static ArrayList newTasks; - /** New tasks with novel composed terms, for delayed and selective processing */ - private static TaskBuffer novelTasks; - /** List of recent events, for temporal learning */ - private static TaskBuffer recentEvents; - /* ---------- global variables used to record emotional values ---------- */ - /** average desire-value */ - private static float happy; - /** average priority */ - private static float busy; - /* ---------- global variables used to reduce method arguments ---------- */ - /** Shortcut to the selected Term */ - public static Term currentTerm; - /** Shortcut to the selected TaskLink */ - public static TaskLink currentTaskLink; - /** Shortcut to the selected Task */ - public static Task currentTask; - /** Shortcut to the selected TermLink */ - public static TermLink currentBeliefLink; - /** Shortcut to the selected belief */ - public static Judgment currentBelief; - /** Shortcut to the derived Stamp */ - public static Stamp newStamp; - /* ---------- global variables used to record emotional values ---------- */ - - /* ---------- initialization ---------- */ - /** - * Initialize a new memory by creating all members. - *

    - * Called in Center.reset only - */ - public static void init() { - concepts = new ConceptBag(); // initially empty, with capacity limit - operators = Operator.setOperators(); // with operators created, then remain constant - newTasks = new ArrayList(); // initially empty, without capacity limit - novelTasks = new TaskBuffer(); // initially empty, with capacity limit - recentEvents = new TaskBuffer(); // with a different capacity? - happy = 0.5f; - busy = 0.5f; - } - - /* ---------- access utilities ---------- */ - /** - * Get a Term for a given name of a Concept or Operator - *

    - * called in StringParser and the make methods of compound terms. - * @param name the name of a concept or operator - * @return a Term or null (if no Concept/Operator has this name) - */ - public static Term nameToListedTerm(String name) { - Concept concept = concepts.get(name); - if (concept != null) { - return concept.getTerm(); - } - return operators.get(name); - } - - /** - * Check if a string is an operator name - *

    - * called in StringParser only. - * @param name the name of a possible operator - * @return the corresponding operator or null - */ - public static Operator nameToOperator(String name) { - return operators.get(name); - } - - /** - * Get an existing Concept for a given name - *

    - * called from Term and ConceptWindow. - * @param name the name of a concept - * @return a Concept or null - */ - public static Concept nameToConcept(String name) { - return concepts.get(name); - } - - /** - * Get an existing Concept for a given Term. - * @param term The Term naming a concept - * @return a Concept or null - */ - public static Concept termToConcept(Term term) { - return nameToConcept(term.getName()); - } - - /** - * Get the Concept associated to a Term, or create it. - * @param term indicating the concept - * @return an existing Concept, or a new one - */ - public static Concept getConcept(Term term) { - String n = term.getName(); - Concept concept = concepts.get(n); - if (concept == null) { - concept = new Concept(term); // the only place to make a new Concept - boolean created = concepts.putIn(concept); - if (!created) { - return null; - } - } - return concept; - } - - /** - * Adjust the activation level of a Concept - *

    - * called in Concept.insertTaskLink only - * @param c the concept to be adusted - * @param b the new BudgetValue - */ - public static void activateConcept(Concept c, BudgetValue b) { - concepts.pickOut(c.getKey()); - BudgetFunctions.activate(c, b); - concepts.putBack(c); - } - - /** - * Check if there is already any derived Task in the current cycle - *

    - * called in Concept.fire only - * @return Whether in the current cycle there is already derived Task - */ - public static boolean noResult() { - return (newTasks.size() == 0); - } - - public static Term mostActive() { - return concepts.mostActive(); - } - - /* ---------- new task entries ---------- */ - /* There are several types of new tasks, all added into the - newTasks list, to be processed in the next cycle. - Some of them are reported and/or logged. */ - /** - * Input task processing. Invoked by the outside or inside enviornment. - * Outside: StringParser (input); Inside: Operator (feedback). - * Input tasks with low priority are ignored, and the others are put into task buffer. - * @param task The input task - */ - public static void inputTask(Task task) { - if (task.aboveThreshold()) { - Record.append("!!! Perceived: " + task + "\n"); - report(task.getSentence(), true); // report input - newTasks.add(task); // wait to be processed in the next cycle - } else { - Record.append("!!! Neglected: " + task + "\n"); - } - } - - /** - * Reporting executed task, and rememberAction the event - *

    - * called from Operator.call only - * @param task the executed task - */ - public static void executedTask(Task task) { - Record.append("!!! Executed: " + task.getSentence() + "\n"); -// Goal g = (Goal) task.getSentence(); -// Judgment j = new Judgment(g.cloneContent()); // perceived execution -// Task newTask = new Task(j, task.getBudget()); -// report(newTask.getSentence(), false); -// newTasks.add(newTask); - } - - /** - * To rememberAction an internal action as an operation - *

    - * called from Concept - * @param task The task processed - */ - public static void rememberAction(Task task) { - Term content = task.getContent(); - if (content instanceof Inheritance) { - if (((Inheritance) content).parseOperation(null) != null) - return; // to present infinite recursions - } - Sentence sentence = task.getSentence(); - TruthValue truth = new TruthValue(1.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); - Stamp stamp = (Stamp) task.getSentence().getStamp().clone(); - stamp.setEventTime(Center.getTime()); - Judgment j = new Judgment(sentence.toTerm(), truth, stamp); - Task newTask = new Task(j, task.getBudget()); - Record.append("Remembered: " + j.toString2()); - newTasks.add(newTask); - } - - /** - * Activated task called in MatchingRules.trySolution and Concept.processGoal - * @param budget The budget value of the new Task - * @param sentence The content of the new Task - * @param isInput Whether the question is input - */ - public static void activatedTask(BudgetValue budget, Sentence sentence, boolean isInput) { - Task task = new Task(sentence, budget); - Record.append("!!! Activated: " + task.toString() + "\n"); - if (sentence instanceof Question) { - float s = task.getBudget().summary(); - @SuppressWarnings("static-access") - float minSilent = Center.mainWindow.silentW.value() / 100.0f; - if (s > minSilent) { // only report significient derived Tasks - report(task.getSentence(), false); - } - } - newTasks.add(task); - } - - /** - * Derived task comes from the inference rules. - * @param task the derived task - */ - private static void derivedTask(Task task) { - if (task.aboveThreshold()) { - Record.append("!!! Derived: " + task + "\n"); - float budget = task.getBudget().summary(); - @SuppressWarnings("static-access") - float minSilent = Center.mainWindow.silentW.value() / 100.0f; - if (budget > minSilent) { // only report significient derived Tasks - report(task.getSentence(), false); - } - newTasks.add(task); - rememberInference(task); - } else { - Record.append("!!! Ignored: " + task + "\n"); - } - } - - private static void rememberInference(Task derived) { - Sentence sentence = derived.getSentence(); - TruthValue t1 = sentence.getTruth(); - if ((t1 != null) && t1.toWord().equals("UNSURE")) { - return; - } - Term pred = sentence.getContent(); - if (!((pred instanceof Inheritance) && ((Inheritance) pred).parseOperation(null) != null)) { - pred = sentence.toTerm(); - } - Term subj = currentTask.getSentence().getContent(); - if (!((subj instanceof Inheritance) && ((Inheritance) subj).parseOperation(null) != null)) { - subj = currentTask.getSentence().toTerm(); - } - if (currentBelief != null) { - Term b = currentBelief.toTerm(); - Term c = Conjunction.make(subj, b, -1); - subj = c; - } else { - return; // temporary solution - } - Term imp = Implication.make(subj, pred, false, 0); - if (imp != null) { - TruthValue truth = new TruthValue(1.0f, Parameters.DEFAULT_JUDGMENT_CONFIDENCE); - Judgment j = new Judgment(imp, truth, sentence.getStamp()); - Task newTask = new Task(j, derived.getBudget()); - Record.append("Remembered: " + j.toString2()); - newTasks.add(newTask); - } - } - - /* --------------- new task building --------------- */ - /** - * Shared final operations by all double-premise rules, called from the rules except StructuralRules - * @param budget The budget value of the new task - * @param content The content of the new task - * @param truth The truth value of the new task - * @param premise1 The first premise to record in the new Judgment - * @param premise2 The second premise to record in the new Judgment - */ - public static void doublePremiseTask(BudgetValue budget, Term content, TruthValue truth, - Sentence premise1, Sentence premise2) { - if (content != null) { - Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, (Stamp) newStamp.clone(), premise1, premise2); - Task newTask = new Task(newSentence, budget); - derivedTask(newTask); - } - } - - public static void predictionWithConfirmation(BudgetValue budget, Term content, TruthValue truth, - Sentence premise1, Sentence premise2) { - if (content != null) { - Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, newStamp, premise1, premise2); - Task newTask = new Task(newSentence, budget); - derivedTask(newTask); - Question ques = new Question((Judgment) newSentence); - newTask = new Task(ques, budget); - derivedTask(newTask); - } - } - - public static void lackConfirmation(Term content, long t) { - TruthValue tv = new TruthValue(0f, 2*Parameters.DEFAULT_CONFIRMATION_EXPECTATION - 1); - BudgetValue bv = new BudgetValue(Parameters.DEFAULT_JUDGMENT_PRIORITY, Parameters.DEFAULT_JUDGMENT_DURABILITY, 1); - Stamp st = new Stamp(); - st.setEventTime(t); - Judgment j = new Judgment(content, '.', tv, st, null, null); - Task newTask = new Task(j, bv); - derivedTask(newTask); - } - - /** - * The final operations of the revision rules, called from MatchingRules - * @param budget The budget value of the new task - * @param content The content of the new task - * @param truth The truth value of the new task - * @param premise1 The first premise to record in the new Judgment. May be null. - * @param premise2 The second premise to record in the new Judgment. May be null. - */ - public static void revisionTask(BudgetValue budget, Term content, TruthValue truth, - Sentence premise1, Sentence premise2) { - if (content != null) { - Sentence newSentence = Sentence.make(currentTask.getSentence(), content, truth, newStamp, premise1, premise2); - Task newTask = new Task(newSentence, budget); - if (currentTask.isStructural()) { - newTask.setStructural(); - } - derivedTask(newTask); - } - } - - /** - * Shared final operations by all single-premise rules, called in StructuralRules - * @param budget The budget value of the new task - * @param content The content of the new task - * @param truth The truth value of the new task - * @param premise The premise to record in the new Judgment - */ - public static void singlePremiseTask(BudgetValue budget, Term content, TruthValue truth, Sentence premise) { - Sentence sentence = currentTask.getSentence(); - Sentence newSentence = Sentence.make(sentence, content, truth, (Stamp) sentence.getStamp().clone(), premise, null); - Task newTask = new Task(newSentence, budget); - newTask.setStructural(); - derivedTask(newTask); - } - - /** - * Convert jusgment into different relation - *

    - * called in MatchingRules - * @param budget The budget value of the new task - * @param truth The truth value of the new task - */ - public static void convertedJudgment(TruthValue truth, BudgetValue budget) { - Statement content = (Statement) Memory.currentTask.getContent(); - Statement beliefContent = (Statement) Memory.currentBelief.getContent(); - Term subj = content.getSubject(); - Term pred = content.getPredicate(); - Term subjB = beliefContent.getSubject(); - Term predB = beliefContent.getPredicate(); - Term otherTerm; - if (subj.getName().indexOf(Symbols.QUERY_VARIABLE_TAG) >= 0) { -// if ((subj instanceof Variable) && (((Variable) subj).getType() == Variable.VarType.QUERY)) { - otherTerm = (pred.equals(subjB)) ? predB : subjB; - content = Statement.make(content, otherTerm, pred); - } - if (pred.getName().indexOf(Symbols.QUERY_VARIABLE_TAG) >= 0) { -// if ((pred instanceof Variable) && (((Variable) pred).getType() == Variable.VarType.QUERY)) { - otherTerm = (subj.equals(subjB)) ? predB : subjB; - content = Statement.make(content, subj, otherTerm); - } - Stamp stamp = (Stamp) Memory.currentBelief.getStamp().clone(); - Sentence newJudgment = Sentence.make(content, Symbols.JUDGMENT_MARK, truth, stamp, Memory.currentBelief, null); - Task newTask = new Task(newJudgment, budget); - newTask.setStructural(); - derivedTask(newTask); - } - - /* ---------- system working cycle ---------- */ - /** - * An atomic working cycle of the system: process new Tasks, then fire a concept - *

    - * Called from Center.tick only - *

    - * In the future, it is possible to adjust the occuring ratio of the two actions - */ - public static void cycle() { - processNewTask(); - if (noResult()) { - processNovelTask(); - } - if (noResult()) { - processConcept(); - } - novelTasks.refresh(); - } - - /** - * Process the newTasks accumulated in the previous cycle, accept input ones - * and those that corresponding to existing concepts, plus one from the buffer. - */ - private static void processNewTask() { - Task task; - int counter = newTasks.size(); // don't include new tasks produced in the current cycle - while (counter-- > 0) { - task = newTasks.remove(0); - adjustBusy(task.summary(), task.getPriority()); - if (task.getSentence().isInput() || (termToConcept(task.getContent()) != null)) { // new input or existing concept - immediateProcess(task); - } else { - novelTasks.putIn(task); // delayed processing - } - } - } - - private static void processNovelTask() { - Task task = novelTasks.takeOut(); // select a task from novelTasks - if (task != null) { - immediateProcess(task); - } - } - - /** - * Select a concept to fire. - */ - private static void processConcept() { - resetCurrent(); - Concept currentConcept = concepts.takeOut(); - if (currentConcept != null) { - currentTerm = currentConcept.getTerm(); - Record.append(" * Selected Concept: " + currentTerm + "\n"); - concepts.putBack(currentConcept); // current Concept remains in the bag all the time - currentConcept.fire(); // a working cycle - } - } - - private static void resetCurrent() { - currentTerm = null; - currentTaskLink = null; - currentTask = null; - currentBeliefLink = null; - currentBelief = null; - newStamp = null; - } - - /* ---------- task processing ---------- */ - /** - * Immediate processing of a new task, in constant time - * Local processing, in one concept only - * @param task the task to be accepted - */ - private static void immediateProcess(Task task) { - resetCurrent(); - currentTask = task; // one of the two places where this variable is set - Record.append("!!! Insert: " + task + "\n"); - Term content = task.getContent(); - Concept c = getConcept(content); - if (c != null) { - c.directProcess(task); - } - } - - /** - * Link to a new task from all relevant concepts for continued processing in - * the near future for unspecified time. - *

    - * The only method that calls the TaskLink constructor. - * @param task The task to be linked - * @param content The content of the task - */ - public static void linkToTask(Task task, Term content, Concept contentConcept) { - BudgetValue budget = task.getBudget(); - TaskLink taskLink = new TaskLink(task, null, budget); // link type: SELF - contentConcept.insertTaskLink(taskLink); - if (content instanceof CompoundTerm) { - ArrayList termLinks = (contentConcept != null) - ? contentConcept.getTermLinkTemplates() - : ((CompoundTerm) content).prepareComponentLinks(); // use saved if exist - if (termLinks.size() > 0) { - BudgetValue subBudget = BudgetFunctions.distributeAmongLinks(budget, termLinks.size()); - if (subBudget.aboveThreshold()) { - Term componentTerm; - Concept componentConcept; - for (TermLink termLink : termLinks) { - if (!(task.isStructural() && (termLink.getType() == TermLink.TRANSFORM))) { // avoid circular transform - taskLink = new TaskLink(task, termLink, subBudget); - componentTerm = termLink.getTarget(); - componentConcept = getConcept(componentTerm); - if (componentConcept != null) { - componentConcept.insertTaskLink(taskLink); - } - } - } - contentConcept.buildTermLinks(budget); // recursively insert TermLink - } - } - } - } - - /** - * Simple temporal regularity discovery [To be refined] - *

    - * called in Memory.immediateProcess - * @param event1 A new event - */ - public static void eventProcessing(Task event1) { - Task event2 = recentEvents.takeOut(); - if (event2 != null) { - if (event1.getSentence().noOverlapping(event2.getSentence())) { - SyllogisticRules.temporalIndCom(event1, event2); - } - recentEvents.putBack(event2); - } - Term content = event1.getContent(); - if (!(content instanceof Implication) && !(content instanceof Equivalence)) { - recentEvents.putIn(event1); - } - } - - /* ---------- status evaluation ---------- */ - - public static float happyValue() { - return happy; - } - - public static float busyValue() { - return busy; - } - - public static void adjustHappy(float newValue, float weight) { - float oldV = happy; - happy += newValue * weight; - happy /= 1.0f + weight; - if (Math.abs(oldV - happy) > 0.1) { - Record.append("HAPPY: " + (int) (oldV*10.0) + " to " + (int) (happy*10.0) + "\n"); - } - } - public static void adjustBusy(float newValue, float weight) { - float oldV = busy; - busy += newValue * weight; - busy /= (1.0f + weight); - if (Math.abs(oldV - busy) > 0.1) { - Record.append("BUSY: " + (int) (oldV*10.0) + " to " + (int) (busy*10.0) + "\n"); - } - } - - - /* ---------- display ---------- */ - /** - * Display active concepts, called from MainWindow. - * @param s the window title - */ - public static void conceptsStartPlay(String s) { - concepts.startPlay(s); - } - - /** - * Display newd tasks, called from MainWindow. - * @param s the window title - */ - public static void newTasksStartPlay(String s) { - novelTasks.startPlay(s); - recentEvents.startPlay("Recent Events"); - } - - /** - * Prepare buffered tasks for display, called from TaskBuffer. - * @return the tasks as a String - */ - public static String newTasksToString() { - String s = " New Tasks: \n"; - for (int i = 0; i < newTasks.size(); i++) { - s += newTasks.get(i) + "\n"; - } - s += "\n Task Buffer: \n"; - return s; - } - - /** - * Display input/output sentence in the MainWindow. - * @param sentence the sentence to be displayed - * @param input whether the task is input - */ - public static void report(Sentence sentence, boolean input) { - String s; - if (input) { - s = " IN: "; - } else { - s = " OUT: "; - } - s += sentence.toString2() + "\n"; - Center.mainWindow.post(s); - } -} diff --git a/nars/main/NARS.java b/nars/main/NARS.java index 3d0ead9f..4f1f308c 100644 --- a/nars/main/NARS.java +++ b/nars/main/NARS.java @@ -20,14 +20,14 @@ */ package nars.main; -import java.applet.*; +import java.applet.Applet; /** * The main class of the project. *

    * Define an application with full funcationality and an applet with partial functionality. *

    - * Manage the internal working thread. Communicate with Center only. + * Manage the internal working thread. Communicate with Reasoner only. */ public class NARS extends Applet implements Runnable { @@ -35,7 +35,7 @@ public class NARS extends Applet implements Runnable { * The information about the version and date of the project. */ public static final String INFO = - " Open-NARS Version 1.4.0 August 2010 \n"; + " Open-NARS Version 1.5.0 January 2013 \n"; /** * The project websites. */ @@ -45,12 +45,17 @@ public class NARS extends Applet implements Runnable { /** * Flag to distinguish the two running modes of the project. */ -// private static boolean standAlone = false; // application or applet + private static boolean standAlone = false; /** * The internal working thread of the system. */ Thread narsThread = null; + /** + * The reasoner + */ + Reasoner reasoner; + /* Application-only code */ /** * The entry point of the standalone application. *

    @@ -58,18 +63,20 @@ public class NARS extends Applet implements Runnable { * @param args no arguments are used */ public static void main(String args[]) { -// standAlone = true; + standAlone = true; NARS nars = new NARS(); nars.init(); nars.start(); } + /* Applet/Application code */ /** - * Initialize the system at the control center. + * Initialize the system at the control center.

    + * Can instantiate multiple reasoners */ @Override public void init() { - Center.start(); + reasoner = new Reasoner("NARS Reasoner"); } /** @@ -91,6 +98,7 @@ public void stop() { narsThread = null; } + /* Implementing the Runnable Interface */ /** * Repeatedly execute NARS working cycle. This method is called when the Runnable's thread is started. */ @@ -98,10 +106,10 @@ public void run() { Thread thisThread = Thread.currentThread(); while (narsThread == thisThread) { try { - Thread.sleep(2); + Thread.sleep(1); } catch (InterruptedException e) { } - Center.tick(); + reasoner.tick(); } } @@ -110,8 +118,7 @@ public void run() { * @return true for application; false for applet. */ public static boolean isStandAlone() { - return true; // make the application and the applet identical, for now -// return standAlone; + return standAlone; } /** diff --git a/nars/main/Parameters.java b/nars/main/Parameters.java index 4e687120..8fcb1e31 100644 --- a/nars/main/Parameters.java +++ b/nars/main/Parameters.java @@ -27,9 +27,9 @@ public class Parameters { /* ---------- initial values of run-time adjustable parameters ---------- */ /** Concept decay rate in ConceptBag, in [1, 99]. */ - public static final int CONCEPT_FORGETTING_CYCLE = 3; + public static final int CONCEPT_FORGETTING_CYCLE = 15; /** TaskLink decay rate in TaskLinkBag, in [1, 99]. */ - public static final int TASK_LINK_FORGETTING_CYCLE = 10; + public static final int TASK_LINK_FORGETTING_CYCLE = 20; /** TermLink decay rate in TermLinkBag, in [1, 99]. */ public static final int TERM_LINK_FORGETTING_CYCLE = 50; /** Silent threshold for task reporting, in [0, 100]. */ @@ -48,32 +48,22 @@ public class Parameters { public static final int HORIZON = 1; // or 2, can be float /** Reliance factor, the empirical confidence of analytical truth. */ public static final float RELIANCE = (float) 0.9; // the same as default confidence - /** The desireability threthold for an operation to be executed. */ - public static final float DECISION_THRESHOLD = (float) 0.66; - /** The expectation threthold for "true". */ - public static final float EXPECTATION_THRESHOLD = (float) 0.66; - /** Range of temporal induction in input events. */ - public static final int MAXMUM_EVENTS_LENGTH = 10; /* ---------- budget thresholds ---------- */ /** The budget threthold rate for task to be accepted. */ - public static final float BUDGET_THRESHOLD = (float) 0.2; - /** The priority threthold for operation to be executed. */ - public static final float PRIORITY_THRESHOLD = (float) 0.06; + public static final float BUDGET_THRESHOLD = (float) 0.1; /* ---------- default input values ---------- */ /** Default expectation for conformation. */ public static final float DEFAULT_CONFIRMATION_EXPECTATION = (float) 0.8; + /** Default expectation for conformation. */ + public static final float DEFAULT_CREATION_EXPECTATION = (float) 0.66; /** Default confidence of input judgment. */ public static final float DEFAULT_JUDGMENT_CONFIDENCE = (float) 0.9; /** Default priority of input judgment */ public static final float DEFAULT_JUDGMENT_PRIORITY = (float) 0.8; /** Default durability of input judgment */ public static final float DEFAULT_JUDGMENT_DURABILITY = (float) 0.8; - /** Default priority of input goal */ - public static final float DEFAULT_GOAL_PRIORITY = (float) 0.9; - /** Default durability of input goal */ - public static final float DEFAULT_GOAL_DURABILITY = (float) 0.7; /** Default priority of input question */ public static final float DEFAULT_QUESTION_PRIORITY = (float) 0.9; /** Default durability of input question */ @@ -103,7 +93,5 @@ public class Parameters { /** Maximum number of beliefs kept in a Concept */ public static final int MAXMUM_BELIEF_LENGTH = 7; /** Maximum number of goals kept in a Concept */ - public static final int MAXMUM_GOALS_LENGTH = 7; - /** Maximum number of goals kept in a Concept */ public static final int MAXMUM_QUESTIONS_LENGTH = 5; } diff --git a/nars/main/Reasoner.java b/nars/main/Reasoner.java new file mode 100644 index 00000000..47f8b9a5 --- /dev/null +++ b/nars/main/Reasoner.java @@ -0,0 +1,192 @@ +/* + * Reasoner.java + * + * Copyright (C) 2008 Pei Wang + * + * This file is part of Open-NARS. + * + * Open-NARS is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * Open-NARS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Open-NARS. If not, see . + */ +package nars.main; + +import java.util.ArrayList; + +import nars.container.*; +import nars.io.*; +import nars.gui.*; +import nars.entity.*; + +/** + * A NARS Reasoner has its memory, I/O channels, and internal clock. + *

    + * Create static main window and input channel, reset memory, and manage system clock. + */ +public class Reasoner { + /** The name of the reasoner */ + private String name; + /** The memory of the reasoner */ + private Memory memory; + /** The input channels of the reasoner */ + private ArrayList inputChannels; + /** The output channels of the reasoner */ + private ArrayList outputChannels; + /** The unique main window */ + private MainWindow mainWindow; + /** Input experience from a window */ + private InputWindow inputWindow; + /** System clock, relatively defined to guaranttee the repeatability of behaviors */ + private long clock; + /** Flag for running continously */ + private boolean running; + /** The number of steps to be carried out */ + private int walkingSteps; + + /** + * Start the initial windows and memory. Called from NARS only. + * @param name The name of the reasoner + */ + public Reasoner(String name) { + this.name = name; + memory = new Memory(this); + mainWindow = new MainWindow(this, name); + inputWindow = new InputWindow(this, name); + inputChannels = new ArrayList(); + inputChannels.add(inputWindow); + outputChannels = new ArrayList(); + outputChannels.add(mainWindow); + } + + /** + * Reset the system with an empty memory and reset clock. Called locally and from MainWindow. + */ + public void reset() { + running = false; + walkingSteps = 0; + clock = 0; + memory.init(); + Stamp.init(); + } + + public Memory getMemory() { + return memory; + } + + public MainWindow getMainWindow() { + return mainWindow; + } + + public InputWindow getInputWindow() { + return inputWindow; + } + + public void addInputChannel(InputChannel channel) { + inputChannels.add(channel); + } + + public void removeInputChannel(InputChannel channel) { + inputChannels.remove(channel); + } + + public void addOutputChannel(OutputChannel channel) { + outputChannels.add(channel); + } + + public void removeOutputChannel(OutputChannel channel) { + outputChannels.remove(channel); + } + + /** + * Get the current time from the clock + * Called in nars.entity.Stamp + * @return The current time + */ + public long getTime() { + return clock; + } + + /** + * Start the inference process + */ + public void run() { + running = true; + } + + /** + * Carry the inference process for a certain number of steps + * @param n The number of inference steps to be carried + */ + public void walk(int n) { + walkingSteps = n; + } + + /** + * Stop the inference process + */ + public void stop() { + running = false; + } + + /** + * A clock tick. Run one working workCycle or read input. Called from NARS only. + */ + public void tick() { + if (walkingSteps == 0) { + for (InputChannel channelIn : inputChannels) { + channelIn.nextInput(); + } + } + ArrayList output = memory.getExportStrings(); + if (!output.isEmpty()) { + for (OutputChannel channelOut : outputChannels) { + channelOut.nextOutput(output); + } + output.clear(); + } + if (running || walkingSteps > 0) { + clock++; + mainWindow.tickTimer(); + memory.workCycle(clock); + if (walkingSteps > 0) { + walkingSteps--; + } + } + } + + /** + * To process a line of input text + * @param text + */ + public void textInputLine(String text) { + if (text.isEmpty()) { + return; + } + char c = text.charAt(0); + if (c == Symbols.RESET_MARK) { + reset(); + memory.getExportStrings().add(text); + } else if (c == Symbols.COMMENT_MARK) { + return; + } else { + try { + int i = Integer.parseInt(text); + walk(i); + } catch (NumberFormatException e) { + Task task = StringParser.parseExperience(new StringBuffer(text), memory, clock); + if (task != null) { + memory.inputTask(task); + } + } + } + } +} diff --git a/nars/main/package.html b/nars/main/package.html index c7e64102..c6d5f24f 100644 --- a/nars/main/package.html +++ b/nars/main/package.html @@ -12,10 +12,8 @@

    Package Specification

    Parameters: collects all system parameters, which can be edited before compiling.

    -Center: controls the running of the whole system. +Reasoner: controls the interaction between the memory and the communication channels.

    -Memory: maintains the work space of the system, including static objects that -can be directly accessed from anywhere of the system:

    - diff --git a/nars-dist/javadoc/allclasses-noframe.html b/nars-dist/javadoc/allclasses-noframe.html index 5dffc594..2316fb80 100644 --- a/nars-dist/javadoc/allclasses-noframe.html +++ b/nars-dist/javadoc/allclasses-noframe.html @@ -2,13 +2,13 @@ - + All Classes - + @@ -22,7 +22,7 @@
    Bag +Bag
    BagWindow
    @@ -32,51 +32,51 @@
    CompositionalRules
    -CompoundTerm +CompoundTerm
    Concept
    -ConceptBag +ConceptBag
    ConceptWindow
    -Conjunction +Conjunction
    -DifferenceExt +DifferenceExt
    -DifferenceInt +DifferenceInt
    -Disjunction +Disjunction
    -Equivalence +Equivalence
    ExperienceReader
    ExperienceWriter
    -ImageExt +ImageExt
    -ImageInt +ImageInt
    -Implication +Implication
    InferenceRecorder
    InferenceWindow
    -Inheritance +Inheritance
    InputChannel
    InputWindow
    -Instance +Instance
    -InstanceProperty +InstanceProperty
    -IntersectionExt +IntersectionExt
    -IntersectionInt +IntersectionInt
    Item
    @@ -84,7 +84,7 @@
    MainWindow
    -Memory +Memory
    MessageDialog
    @@ -92,9 +92,9 @@
    NarsFrame
    -Negation +Negation
    -NovelTaskBag +NovelTaskBag
    OutputChannel
    @@ -102,9 +102,9 @@
    ParameterWindow
    -Product +Product
    -Property +Property
    Reasoner
    @@ -112,17 +112,17 @@
    Sentence
    -SetExt +SetExt
    -SetInt +SetInt
    ShortFloat
    -Similarity +Similarity
    Stamp
    -Statement +Statement
    StringParser
    @@ -136,13 +136,13 @@
    TaskLink
    -TaskLinkBag +TaskLinkBag
    -Term +Term
    TermLink
    -TermLinkBag +TermLinkBag
    TermWindow
    @@ -152,7 +152,7 @@
    UtilityFunctions
    -Variable +Variable
    - diff --git a/nars-dist/javadoc/constant-values.html b/nars-dist/javadoc/constant-values.html index 3eb2a12c..8bcfe96a 100644 --- a/nars-dist/javadoc/constant-values.html +++ b/nars-dist/javadoc/constant-values.html @@ -2,13 +2,13 @@ - + Constant Field Values - + @@ -487,7 +487,7 @@

    - + - + - @@ -208,7 +208,7 @@

    + Term +          Start displaying contents and links, called from ConceptWindow, + TermWindow + or Memory.processTask only
    Bag +Bag
    BagWindow
    @@ -32,51 +32,51 @@
    CompositionalRules
    -CompoundTerm +CompoundTerm
    Concept
    -ConceptBag +ConceptBag
    ConceptWindow
    -Conjunction +Conjunction
    -DifferenceExt +DifferenceExt
    -DifferenceInt +DifferenceInt
    -Disjunction +Disjunction
    -Equivalence +Equivalence
    ExperienceReader
    ExperienceWriter
    -ImageExt +ImageExt
    -ImageInt +ImageInt
    -Implication +Implication
    InferenceRecorder
    InferenceWindow
    -Inheritance +Inheritance
    InputChannel
    InputWindow
    -Instance +Instance
    -InstanceProperty +InstanceProperty
    -IntersectionExt +IntersectionExt
    -IntersectionInt +IntersectionInt
    Item
    @@ -84,7 +84,7 @@
    MainWindow
    -Memory +Memory
    MessageDialog
    @@ -92,9 +92,9 @@
    NarsFrame
    -Negation +Negation
    -NovelTaskBag +NovelTaskBag
    OutputChannel
    @@ -102,9 +102,9 @@
    ParameterWindow
    -Product +Product
    -Property +Property
    Reasoner
    @@ -112,17 +112,17 @@
    Sentence
    -SetExt +SetExt
    -SetInt +SetInt
    ShortFloat
    -Similarity +Similarity
    Stamp
    -Statement +Statement
    StringParser
    @@ -136,13 +136,13 @@
    TaskLink
    -TaskLinkBag +TaskLinkBag
    -Term +Term
    TermLink
    -TermLinkBag +TermLinkBag
    TermWindow
    @@ -152,7 +152,7 @@
    UtilityFunctions
    -Variable +Variable
    public static final java.lang.String INFO" Open-NARS Version 1.5.0 January 2013 \n"" Open-NARS Version 1.5.1 February 2013 \n"
    @@ -631,7 +631,7 @@

    public static final float RELIANCE0.8999999761581421f1.0f
    diff --git a/nars-dist/javadoc/deprecated-list.html b/nars-dist/javadoc/deprecated-list.html index c247fc4a..e352a249 100644 --- a/nars-dist/javadoc/deprecated-list.html +++ b/nars-dist/javadoc/deprecated-list.html @@ -2,13 +2,13 @@ - + Deprecated List - + diff --git a/nars-dist/javadoc/help-doc.html b/nars-dist/javadoc/help-doc.html index b8d31aa0..14bffe07 100644 --- a/nars-dist/javadoc/help-doc.html +++ b/nars-dist/javadoc/help-doc.html @@ -2,13 +2,13 @@ - + API Help - + diff --git a/nars-dist/javadoc/index-files/index-1.html b/nars-dist/javadoc/index-files/index-1.html index f4f5fb56..a1303dc5 100644 --- a/nars-dist/javadoc/index-files/index-1.html +++ b/nars-dist/javadoc/index-files/index-1.html @@ -2,13 +2,13 @@ - + A-Index - + @@ -113,14 +113,14 @@
    activate(Concept, BudgetValue) - Static method in class nars.inference.BudgetFunctions
    Activate a concept by an incoming TaskLink -
    activateConcept(Concept, BudgetValue) - -Method in class nars.container.Memory +
    activateConcept(Concept, BudgetValue) - +Method in class nars.storage.Memory
    Adjust the activation level of a Concept -
    activatedTask(BudgetValue, Sentence, Sentence) - -Method in class nars.container.Memory +
    activatedTask(BudgetValue, Sentence, Sentence) - +Method in class nars.storage.Memory
    Activated task called in MatchingRules.trySolution and Concept.processGoal -
    addComponents(CompoundTerm, Term, Memory) - -Static method in class nars.term.CompoundTerm +
    addComponents(CompoundTerm, Term, Memory) - +Static method in class nars.language.CompoundTerm
    Try to add a component into a compound
    addInputChannel(InputChannel) - Method in class nars.main.Reasoner @@ -143,14 +143,14 @@
    append(String) - Method in class nars.io.InferenceRecorder
    Add new text to display -
    applySubstitute(HashMap<Term, Term>) - -Method in class nars.term.CompoundTerm +
    applySubstitute(HashMap<Term, Term>) - +Method in class nars.language.CompoundTerm
    Recersively apply a substitute to the current CompoundTerm
    ARGUMENT_SEPARATOR - Static variable in class nars.io.Symbols
      -
    argumentsToList(Term, Term) - -Static method in class nars.term.CompoundTerm +
    argumentsToList(Term, Term) - +Static method in class nars.language.CompoundTerm
    build a component list from two terms
    aveAri(float...) - Static method in class nars.inference.UtilityFunctions @@ -158,8 +158,8 @@
    aveGeo(float...) - Static method in class nars.inference.UtilityFunctions
    A function where the output is the geometric average the inputs -
    averagePriority() - -Method in class nars.container.Bag +
    averagePriority() - +Method in class nars.storage.Bag
    Get the average priority of Items
    diff --git a/nars-dist/javadoc/index-files/index-10.html b/nars-dist/javadoc/index-files/index-10.html index b83609a3..16ec983e 100644 --- a/nars-dist/javadoc/index-files/index-10.html +++ b/nars-dist/javadoc/index-files/index-10.html @@ -2,13 +2,13 @@ - + J-Index - + diff --git a/nars-dist/javadoc/index-files/index-11.html b/nars-dist/javadoc/index-files/index-11.html index 15af3a3d..2ec6d89f 100644 --- a/nars-dist/javadoc/index-files/index-11.html +++ b/nars-dist/javadoc/index-files/index-11.html @@ -2,13 +2,13 @@ - + K-Index - + diff --git a/nars-dist/javadoc/index-files/index-12.html b/nars-dist/javadoc/index-files/index-12.html index 4d560792..54854ffb 100644 --- a/nars-dist/javadoc/index-files/index-12.html +++ b/nars-dist/javadoc/index-files/index-12.html @@ -2,13 +2,13 @@ - + L-Index - + diff --git a/nars-dist/javadoc/index-files/index-13.html b/nars-dist/javadoc/index-files/index-13.html index b9c002d9..b85fa56b 100644 --- a/nars-dist/javadoc/index-files/index-13.html +++ b/nars-dist/javadoc/index-files/index-13.html @@ -2,13 +2,13 @@ - + M-Index - + @@ -92,178 +92,178 @@
    make(Stamp, Stamp, long) - Static method in class nars.entity.Stamp
    Try to merge two Stamps, return null if have overlap -
    make(CompoundTerm, ArrayList<Term>, Memory) - -Static method in class nars.term.CompoundTerm +
    make(CompoundTerm, ArrayList<Term>, Memory) - +Static method in class nars.language.CompoundTerm
    Try to make a compound term from a template and a list of components -
    make(String, ArrayList<Term>, Memory) - -Static method in class nars.term.CompoundTerm +
    make(String, ArrayList<Term>, Memory) - +Static method in class nars.language.CompoundTerm
    Try to make a compound term from an operator and a list of components -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.Conjunction +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.Conjunction
    Try to make a new compound from a list of components. -
    make(Term, Term, Memory) - -Static method in class nars.term.Conjunction +
    make(Term, Term, Memory) - +Static method in class nars.language.Conjunction
    Try to make a new compound from two components. -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.DifferenceExt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.DifferenceExt
    Try to make a new DifferenceExt. -
    make(Term, Term, Memory) - -Static method in class nars.term.DifferenceExt +
    make(Term, Term, Memory) - +Static method in class nars.language.DifferenceExt
    Try to make a new compound from two components. -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.DifferenceInt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.DifferenceInt
    Try to make a new DifferenceExt. -
    make(Term, Term, Memory) - -Static method in class nars.term.DifferenceInt +
    make(Term, Term, Memory) - +Static method in class nars.language.DifferenceInt
    Try to make a new compound from two components. -
    make(Term, Term, Memory) - -Static method in class nars.term.Disjunction +
    make(Term, Term, Memory) - +Static method in class nars.language.Disjunction
    Try to make a new Disjunction from two components. -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.Disjunction +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.Disjunction
    Try to make a new IntersectionExt. -
    make(TreeSet<Term>, Memory) - -Static method in class nars.term.Disjunction +
    make(TreeSet<Term>, Memory) - +Static method in class nars.language.Disjunction
    Try to make a new Disjunction from a set of components. -
    make(Term, Term, Memory) - -Static method in class nars.term.Equivalence +
    make(Term, Term, Memory) - +Static method in class nars.language.Equivalence
    Try to make a new compound from two components. -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.ImageExt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.ImageExt
    Try to make a new ImageExt. -
    make(Product, Term, short, Memory) - -Static method in class nars.term.ImageExt +
    make(Product, Term, short, Memory) - +Static method in class nars.language.ImageExt
    Try to make an Image from a Product and a relation. -
    make(ImageExt, Term, short, Memory) - -Static method in class nars.term.ImageExt +
    make(ImageExt, Term, short, Memory) - +Static method in class nars.language.ImageExt
    Try to make an Image from an existing Image and a component. -
    make(ArrayList<Term>, short, Memory) - -Static method in class nars.term.ImageExt +
    make(ArrayList<Term>, short, Memory) - +Static method in class nars.language.ImageExt
    Try to make a new compound from a set of components. -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.ImageInt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.ImageInt
    Try to make a new ImageExt. -
    make(Product, Term, short, Memory) - -Static method in class nars.term.ImageInt +
    make(Product, Term, short, Memory) - +Static method in class nars.language.ImageInt
    Try to make an Image from a Product and a relation. -
    make(ImageInt, Term, short, Memory) - -Static method in class nars.term.ImageInt +
    make(ImageInt, Term, short, Memory) - +Static method in class nars.language.ImageInt
    Try to make an Image from an existing Image and a component. -
    make(ArrayList<Term>, short, Memory) - -Static method in class nars.term.ImageInt +
    make(ArrayList<Term>, short, Memory) - +Static method in class nars.language.ImageInt
    Try to make a new compound from a set of components. -
    make(Term, Term, Memory) - -Static method in class nars.term.Implication +
    make(Term, Term, Memory) - +Static method in class nars.language.Implication
    Try to make a new compound from two components. -
    make(Term, Term, Memory) - -Static method in class nars.term.Inheritance +
    make(Term, Term, Memory) - +Static method in class nars.language.Inheritance
    Try to make a new compound from two components. -
    make(Term, Term, Memory) - -Static method in class nars.term.Instance +
    make(Term, Term, Memory) - +Static method in class nars.language.Instance
    Try to make a new compound from two components. -
    make(Term, Term, Memory) - -Static method in class nars.term.InstanceProperty +
    make(Term, Term, Memory) - +Static method in class nars.language.InstanceProperty
    Try to make a new compound from two components. -
    make(Term, Term, Memory) - -Static method in class nars.term.IntersectionExt +
    make(Term, Term, Memory) - +Static method in class nars.language.IntersectionExt
    Try to make a new compound from two components. -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.IntersectionExt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.IntersectionExt
    Try to make a new IntersectionExt. -
    make(TreeSet<Term>, Memory) - -Static method in class nars.term.IntersectionExt +
    make(TreeSet<Term>, Memory) - +Static method in class nars.language.IntersectionExt
    Try to make a new compound from a set of components. -
    make(Term, Term, Memory) - -Static method in class nars.term.IntersectionInt +
    make(Term, Term, Memory) - +Static method in class nars.language.IntersectionInt
    Try to make a new compound from two components. -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.IntersectionInt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.IntersectionInt
    Try to make a new IntersectionExt. -
    make(TreeSet<Term>, Memory) - -Static method in class nars.term.IntersectionInt +
    make(TreeSet<Term>, Memory) - +Static method in class nars.language.IntersectionInt
    Try to make a new compound from a set of components. -
    make(Term, Memory) - -Static method in class nars.term.Negation +
    make(Term, Memory) - +Static method in class nars.language.Negation
    Try to make a Negation of one component. -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.Negation +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.Negation
    Try to make a new SetExt. -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.Product +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.Product
    Try to make a new compound. -
    make(CompoundTerm, Term, int, Memory) - -Static method in class nars.term.Product +
    make(CompoundTerm, Term, int, Memory) - +Static method in class nars.language.Product
    Try to make a Product from an ImageExt/ImageInt and a component. -
    make(Term, Term, Memory) - -Static method in class nars.term.Property +
    make(Term, Term, Memory) - +Static method in class nars.language.Property
    Try to make a new compound from two components. -
    make(Term, Memory) - -Static method in class nars.term.SetExt +
    make(Term, Memory) - +Static method in class nars.language.SetExt
    Try to make a new set from one component. -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.SetExt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.SetExt
    Try to make a new SetExt. -
    make(TreeSet<Term>, Memory) - -Static method in class nars.term.SetExt +
    make(TreeSet<Term>, Memory) - +Static method in class nars.language.SetExt
    Try to make a new compound from a set of components. -
    make(Term, Memory) - -Static method in class nars.term.SetInt +
    make(Term, Memory) - +Static method in class nars.language.SetInt
    Try to make a new set from one component. -
    make(ArrayList<Term>, Memory) - -Static method in class nars.term.SetInt +
    make(ArrayList<Term>, Memory) - +Static method in class nars.language.SetInt
    Try to make a new SetExt. -
    make(TreeSet<Term>, Memory) - -Static method in class nars.term.SetInt +
    make(TreeSet<Term>, Memory) - +Static method in class nars.language.SetInt
    Try to make a new compound from a set of components. -
    make(Term, Term, Memory) - -Static method in class nars.term.Similarity +
    make(Term, Term, Memory) - +Static method in class nars.language.Similarity
    Try to make a new compound from two components. -
    make(String, Term, Term, Memory) - -Static method in class nars.term.Statement +
    make(String, Term, Term, Memory) - +Static method in class nars.language.Statement
    Make a Statement from String, called by StringParser -
    make(Statement, Term, Term, Memory) - -Static method in class nars.term.Statement +
    make(Statement, Term, Term, Memory) - +Static method in class nars.language.Statement
    Make a Statement from given components, called by the rules -
    makeCompoundName(String, ArrayList<Term>) - -Static method in class nars.term.CompoundTerm +
    makeCompoundName(String, ArrayList<Term>) - +Static method in class nars.language.CompoundTerm
    default method to make the oldName of a compound term from given fields -
    makeImageName(String, ArrayList<Term>, int) - -Static method in class nars.term.CompoundTerm +
    makeImageName(String, ArrayList<Term>, int) - +Static method in class nars.language.CompoundTerm
    default method to make the oldName of an image term from given fields -
    makeName() - -Method in class nars.term.CompoundTerm +
    makeName() - +Method in class nars.language.CompoundTerm
    default method to make the oldName of the current term from existing fields -
    makeName() - -Method in class nars.term.ImageExt +
    makeName() - +Method in class nars.language.ImageExt
    override the default in making the name of the current term from existing fields -
    makeName() - -Method in class nars.term.ImageInt +
    makeName() - +Method in class nars.language.ImageInt
    Override the default in making the name of the current term from existing fields -
    makeName() - -Method in class nars.term.SetExt +
    makeName() - +Method in class nars.language.SetExt
    Make a String representation of the set, override the default. -
    makeName() - -Method in class nars.term.SetInt +
    makeName() - +Method in class nars.language.SetInt
    Make a String representation of the set, override the default. -
    makeName() - -Method in class nars.term.Statement +
    makeName() - +Method in class nars.language.Statement
    Override the default in making the nameStr of the current term from existing fields -
    makeSetName(char, ArrayList<Term>, char) - -Static method in class nars.term.CompoundTerm +
    makeSetName(char, ArrayList<Term>, char) - +Static method in class nars.language.CompoundTerm
    make the oldName of an ExtensionSet or IntensionSet -
    makeStatementName(Term, String, Term) - -Static method in class nars.term.Statement +
    makeStatementName(Term, String, Term) - +Static method in class nars.language.Statement
    Default method to make the nameStr of an image term from given fields -
    makeSym(Statement, Term, Term, Memory) - -Static method in class nars.term.Statement +
    makeSym(Statement, Term, Term, Memory) - +Static method in class nars.language.Statement
    Make a symmetric Statement from given components and temporal information, called by the rules -
    match(Task, Sentence, Memory) - +
    match(Task, Sentence, Memory) - Static method in class nars.inference.LocalRules
    The task and belief have the same content -
    matchAsymSym(Sentence, Sentence, int, Memory) - +
    matchAsymSym(Sentence, Sentence, int, Memory) - Static method in class nars.inference.LocalRules
    Inheritance/Implication matches Similarity/Equivalence -
    matchReverse(Memory) - +
    matchReverse(Memory) - Static method in class nars.inference.LocalRules
    The task and belief match reversely
    MAX_MATCHED_TERM_LINK - @@ -281,11 +281,11 @@
    MAXMUM_STAMP_LENGTH - Static variable in class nars.main.Parameters
    Maximum length of Stamp, a power of 2 -
    memory - -Variable in class nars.container.Bag +
    memory - +Variable in class nars.storage.Bag
    reference to memory -
    Memory - Class in nars.container
    The memory of the system.
    Memory(Reasoner) - -Constructor for class nars.container.Memory +
    Memory - Class in nars.storage
    The memory of the system.
    Memory(Reasoner) - +Constructor for class nars.storage.Memory
    Create a new memory
    merge(BudgetValue) - Method in class nars.entity.BudgetValue @@ -293,9 +293,12 @@
    merge(Item) - Method in class nars.entity.Item
    Merge with another Item with identical key -
    merge(Task) - +
    merge(Item) - Method in class nars.entity.Task
    Merge one Task into another +
    merge(Item) - +Method in class nars.entity.TaskLink +
    Merge one TaskLink into another
    merge(BudgetValue, BudgetValue) - Static method in class nars.inference.BudgetFunctions
    Merge an item into another one in a bag, when the two are identical except in budget values diff --git a/nars-dist/javadoc/index-files/index-14.html b/nars-dist/javadoc/index-files/index-14.html index ea39d167..27d593c5 100644 --- a/nars-dist/javadoc/index-files/index-14.html +++ b/nars-dist/javadoc/index-files/index-14.html @@ -2,13 +2,13 @@ - + N-Index - + @@ -83,27 +83,27 @@

    N

    -
    name - -Variable in class nars.term.Term +
    name - +Variable in class nars.language.Term
    A Term is identified uniquely by its name, a sequence of characters in a given alphabet (ASCII or Unicode) -
    nameToConcept(String) - -Method in class nars.container.Memory +
    nameToConcept(String) - +Method in class nars.storage.Memory
    Get an existing Concept for a given name -
    nameToListedTerm(String) - -Method in class nars.container.Memory +
    nameToListedTerm(String) - +Method in class nars.storage.Memory
    Get a Term for a given name of a Concept or Operator
    NARS - Class in nars.main
    The main class of the project.
    NARS() - Constructor for class nars.main.NARS
      -
    nars.container - package nars.container
    Storage management
    nars.entity - package nars.entity
    Data entities that are independently stored
    nars.gui - package nars.gui
    Graphical user interface of the system
    nars.inference - package nars.inference
    The inference rules and control functions
    nars.io - package nars.io
    Input/output management
    nars.main - package nars.main
    Top-level classes of the system
    nars.term - package nars.term
    Term hierarchy in Narsese
    NarsFrame - Class in nars.gui
    Specify shared properties of NARS windows
    Negation - Class in nars.term
    A negation of a Statement.
    NEGATION_OPERATOR - +
    nars.entity - package nars.entity
    Data entities that are independently stored
    nars.gui - package nars.gui
    Graphical user interface of the system
    nars.inference - package nars.inference
    The inference rules and control functions
    nars.io - package nars.io
    Input/output management
    nars.language - package nars.language
    Term hierarchy in Narsese
    nars.main - package nars.main
    Top-level classes of the system
    nars.storage - package nars.storage
    Storage management
    NarsFrame - Class in nars.gui
    Specify shared properties of NARS windows
    Negation - Class in nars.language
    A negation of a Statement.
    NEGATION_OPERATOR - Static variable in class nars.io.Symbols
     
    NEW_TASK_FORGETTING_CYCLE - Static variable in class nars.main.Parameters
    Task decay rate in TaskBuffer, in [1, 99]. -
    newStamp - -Variable in class nars.container.Memory +
    newStamp - +Variable in class nars.storage.Memory
    The new Stamp
    nextInput() - Method in class nars.gui.InputWindow @@ -114,24 +114,24 @@
    nextInput() - Method in interface nars.io.InputChannel
      -
    nextOutput(ArrayList) - +
    nextOutput(ArrayList<String>) - Method in class nars.gui.MainWindow
    To process the next chunk of output data -
    nextOutput(ArrayList) - +
    nextOutput(ArrayList<String>) - Method in class nars.io.ExperienceWriter
    Process the next chunk of output data -
    nextOutput(ArrayList) - +
    nextOutput(ArrayList<String>) - Method in interface nars.io.OutputChannel
      -
    noResult() - -Method in class nars.container.Memory +
    noResult() - +Method in class nars.storage.Memory
     
    novel(TermLink, long) - Method in class nars.entity.TaskLink
    To check whether a TaskLink should use a TermLink, return false if they interacted recently -
    NovelTaskBag - Class in nars.container
    New tasks that contain new Term.
    NovelTaskBag(Memory) - -Constructor for class nars.container.NovelTaskBag +
    NovelTaskBag - Class in nars.storage
    New tasks that contain new Term.
    NovelTaskBag(Memory) - +Constructor for class nars.storage.NovelTaskBag
    Constructor

    diff --git a/nars-dist/javadoc/index-files/index-15.html b/nars-dist/javadoc/index-files/index-15.html index 703664ef..3bac47c3 100644 --- a/nars-dist/javadoc/index-files/index-15.html +++ b/nars-dist/javadoc/index-files/index-15.html @@ -2,13 +2,13 @@ - + O-Index - + @@ -85,69 +85,72 @@
    openLoadFile() - Method in class nars.io.ExperienceReader -
    Open an input experience file +
    Open an input experience file with a FileDialog +
    openLoadFile(String) - +Method in class nars.io.ExperienceReader +
    Open an input experience file from given file Path
    openLogFile() - Method in class nars.io.InferenceRecorder
    Open the log file
    openSaveFile() - Method in class nars.io.ExperienceWriter
    Open an output experience file -
    operator() - -Method in class nars.term.CompoundTerm +
    operator() - +Method in class nars.language.CompoundTerm
    Abstract method to get the operator of the compound -
    operator() - -Method in class nars.term.Conjunction +
    operator() - +Method in class nars.language.Conjunction
    Get the operator of the term. -
    operator() - -Method in class nars.term.DifferenceExt +
    operator() - +Method in class nars.language.DifferenceExt
    Get the operator of the term. -
    operator() - -Method in class nars.term.DifferenceInt +
    operator() - +Method in class nars.language.DifferenceInt
    Get the operator of the term. -
    operator() - -Method in class nars.term.Disjunction +
    operator() - +Method in class nars.language.Disjunction
    Get the operator of the term. -
    operator() - -Method in class nars.term.Equivalence +
    operator() - +Method in class nars.language.Equivalence
    Get the operator of the term. -
    operator() - -Method in class nars.term.ImageExt +
    operator() - +Method in class nars.language.ImageExt
    get the operator of the term. -
    operator() - -Method in class nars.term.ImageInt +
    operator() - +Method in class nars.language.ImageInt
    Get the operator of the term. -
    operator() - -Method in class nars.term.Implication +
    operator() - +Method in class nars.language.Implication
    Get the operator of the term. -
    operator() - -Method in class nars.term.Inheritance +
    operator() - +Method in class nars.language.Inheritance
    Get the operator of the term. -
    operator() - -Method in class nars.term.IntersectionExt +
    operator() - +Method in class nars.language.IntersectionExt
    Get the operator of the term. -
    operator() - -Method in class nars.term.IntersectionInt +
    operator() - +Method in class nars.language.IntersectionInt
    Get the operator of the term. -
    operator() - -Method in class nars.term.Negation +
    operator() - +Method in class nars.language.Negation
    Get the operator of the term. -
    operator() - -Method in class nars.term.Product +
    operator() - +Method in class nars.language.Product
    Get the operator of the term. -
    operator() - -Method in class nars.term.SetExt +
    operator() - +Method in class nars.language.SetExt
    Get the operator of the term. -
    operator() - -Method in class nars.term.SetInt +
    operator() - +Method in class nars.language.SetInt
    Get the operator of the term. -
    operator() - -Method in class nars.term.Similarity +
    operator() - +Method in class nars.language.Similarity
    Get the operator of the term.
    or(float...) - Static method in class nars.inference.UtilityFunctions
    A function where the output is disjunctively determined by the inputs -
    outOfBase(Type) - -Method in class nars.container.Bag +
    outOfBase(Type) - +Method in class nars.storage.Bag
    Remove an item from itemTable, then adjust mass
    OUTPUT_LINE - Static variable in class nars.io.Symbols diff --git a/nars-dist/javadoc/index-files/index-16.html b/nars-dist/javadoc/index-files/index-16.html index ee8d3807..6f0cb709 100644 --- a/nars-dist/javadoc/index-files/index-16.html +++ b/nars-dist/javadoc/index-files/index-16.html @@ -2,13 +2,13 @@ - + P-Index - + @@ -86,27 +86,27 @@
    Parameters - Class in nars.main
    Collected system parameters.
    Parameters() - Constructor for class nars.main.Parameters
      -
    ParameterWindow - Class in nars.gui
    Window displaying a system parameter that can be adjusted in run time
    parseExperience(StringBuffer, Memory, long) - +
    ParameterWindow - Class in nars.gui
    Window displaying a system parameter that can be adjusted in run time
    parseExperience(StringBuffer, Memory, long) - Static method in class nars.io.StringParser
    Parse a line of input experience -
    parseTask(String, Memory, long) - +
    parseTask(String, Memory, long) - Static method in class nars.io.StringParser
    Enter a new Task in String into the memory, called from InputWindow or locally. -
    parseTerm(String, Memory) - +
    parseTerm(String, Memory) - Static method in class nars.io.StringParser
    Top-level method that parse a Term in general, which may recursively call itself. -
    pickOut(String) - -Method in class nars.container.Bag +
    pickOut(String) - +Method in class nars.storage.Bag
    Pick an item by key, then remove it from the bag -
    play() - -Method in class nars.container.Bag -
    Resume display
    play() - Method in class nars.entity.Concept
    Resume display, called from ConceptWindow only
    play() - Method in class nars.io.InferenceRecorder
    Begin the display +
    play() - +Method in class nars.storage.Bag +
    Resume display
    post(String) - Method in class nars.gui.BagWindow
    Post the bag content @@ -116,8 +116,8 @@
    PREFIX_MARK - Static variable in class nars.io.Symbols
      -
    prepareComponentLinks() - -Method in class nars.term.CompoundTerm +
    prepareComponentLinks() - +Method in class nars.language.CompoundTerm
    Build TermLink templates to constant components and subcomponents
    priority - Variable in class nars.entity.BudgetValue @@ -125,21 +125,21 @@
    processQuestion(Task) - Method in class nars.entity.Concept
    To answer a question by existing beliefs -
    Product - Class in nars.term
    A Product is a sequence of terms.
    PRODUCT_OPERATOR - +
    Product - Class in nars.language
    A Product is a sequence of terms.
    PRODUCT_OPERATOR - Static variable in class nars.io.Symbols
      -
    Property - Class in nars.term
    A Statement about a Property relation, which is used only in Narsese for I/O, - and translated into Inheritance for internal use.
    Property() - -Constructor for class nars.term.Property +
    Property - Class in nars.language
    A Statement about a Property relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    Property() - +Constructor for class nars.language.Property
     
    PROPERTY_RELATION - Static variable in class nars.io.Symbols
      -
    putBack(Type) - -Method in class nars.container.Bag +
    putBack(Type) - +Method in class nars.storage.Bag
    Put an item back into the itemTable -
    putIn(Type) - -Method in class nars.container.Bag +
    putIn(Type) - +Method in class nars.storage.Bag
    Add a new Item into the Bag

    diff --git a/nars-dist/javadoc/index-files/index-17.html b/nars-dist/javadoc/index-files/index-17.html index 515f21d5..184d796b 100644 --- a/nars-dist/javadoc/index-files/index-17.html +++ b/nars-dist/javadoc/index-files/index-17.html @@ -2,13 +2,13 @@ - + Q-Index - + diff --git a/nars-dist/javadoc/index-files/index-18.html b/nars-dist/javadoc/index-files/index-18.html index 3c14e640..bc963458 100644 --- a/nars-dist/javadoc/index-files/index-18.html +++ b/nars-dist/javadoc/index-files/index-18.html @@ -2,13 +2,13 @@ - + R-Index - + @@ -86,17 +86,17 @@
    rankBelief(Sentence) - Static method in class nars.inference.BudgetFunctions
    Determine the rank of a judgment by its confidence and originality (stamp length) -
    reason(TaskLink, TermLink, Memory) - +
    reason(TaskLink, TermLink, Memory) - Static method in class nars.inference.RuleTables
    Entry point of the inference engine
    Reasoner - Class in nars.main
    A NARS Reasoner has its memory, I/O channels, and internal clock.
    Reasoner(String) - Constructor for class nars.main.Reasoner
    Start the initial windows and memory. -
    reduceComponents(CompoundTerm, Term, Memory) - -Static method in class nars.term.CompoundTerm +
    reduceComponents(CompoundTerm, Term, Memory) - +Static method in class nars.language.CompoundTerm
    Try to remove a component from a compound -
    refresh() - -Method in class nars.container.Bag +
    refresh() - +Method in class nars.storage.Bag
    Refresh display
    RELIANCE - Static variable in class nars.main.Parameters @@ -107,17 +107,17 @@
    removeOutputChannel(OutputChannel) - Method in class nars.main.Reasoner
      -
    renameVariables() - -Method in class nars.term.CompoundTerm +
    renameVariables() - +Method in class nars.language.CompoundTerm
    Rename the variables in the compound -
    renameVariables(HashMap<Variable, Variable>) - -Method in class nars.term.CompoundTerm +
    renameVariables(HashMap<Variable, Variable>) - +Method in class nars.language.CompoundTerm
    Rename the variables in the compound -
    renameVariables() - -Method in class nars.term.Term +
    renameVariables() - +Method in class nars.language.Term
    Blank method to be override in CompoundTerm -
    report(Sentence, boolean) - -Method in class nars.container.Memory +
    report(Sentence, boolean) - +Method in class nars.storage.Memory
    Display input/output sentence in the output channels.
    reset() - Method in class nars.main.Reasoner @@ -128,7 +128,10 @@
    resetBackground() - Method in class nars.gui.InferenceWindow
    Reset background color after file saving -
    revision(Sentence, Sentence, boolean, Memory) - +
    revisible(Sentence, Sentence) - +Static method in class nars.inference.LocalRules +
    Check whether two sentences can be used in revision +
    revision(Sentence, Sentence, boolean, Memory) - Static method in class nars.inference.LocalRules
    Belief revision
    RuleTables - Class in nars.inference
    Table of inference rules, indexed by the TermLinks for the task and the belief.
    RuleTables() - diff --git a/nars-dist/javadoc/index-files/index-19.html b/nars-dist/javadoc/index-files/index-19.html index 0dca87df..90689d33 100644 --- a/nars-dist/javadoc/index-files/index-19.html +++ b/nars-dist/javadoc/index-files/index-19.html @@ -2,13 +2,13 @@ - + S-Index - + @@ -86,7 +86,10 @@
    SELF - Static variable in class nars.entity.TermLink
    At C, point to C; TaskLink only -
    Sentence - Class in nars.entity
    A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
    Sentence(Term, char, TruthValue, Stamp) - +
    Sentence - Class in nars.entity
    A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
    Sentence(Term, char, TruthValue, Stamp) - +Constructor for class nars.entity.Sentence +
    Create a Sentence with the given fields +
    Sentence(Term, char, TruthValue, Stamp, boolean) - Constructor for class nars.entity.Sentence
    Create a Sentence with the given fields
    SET_EXT_CLOSER - @@ -107,13 +110,13 @@
    setBudget(BudgetValue) - Method in class nars.entity.Item
    Constructor with initial budget -
    setComponent(CompoundTerm, int, Term, Memory) - -Static method in class nars.term.CompoundTerm +
    setComponent(CompoundTerm, int, Term, Memory) - +Static method in class nars.language.CompoundTerm
    Try to replace a component in a compound at a given index by another one -
    setConstant(boolean) - -Method in class nars.term.CompoundTerm +
    setConstant(boolean) - +Method in class nars.language.CompoundTerm
    Set the constant status -
    setContent(Term) - +
    setContent(Term) - Method in class nars.entity.Sentence
    Set the content Term of the Sentence
    setDurability(float) - @@ -122,11 +125,11 @@
    setDurability(float) - Method in class nars.entity.Item
    Set durability value -
    SetExt - Class in nars.term
    An extensionally defined set, which contains one or more instances.
    SetInt - Class in nars.term
    An intensionally defined set, which contains one or more instances defining the Term.
    setKey() - +
    SetExt - Class in nars.language
    An extensionally defined set, which contains one or more instances.
    SetInt - Class in nars.language
    An intensionally defined set, which contains one or more instances defining the Term.
    setKey() - Method in class nars.entity.TermLink
    Set the key of the link -
    setName(String) - -Method in class nars.term.CompoundTerm +
    setName(String) - +Method in class nars.language.CompoundTerm
    Change the oldName of a CompoundTerm, called after variable substitution
    setPriority(float) - Method in class nars.entity.BudgetValue @@ -140,6 +143,9 @@
    setQuality(float) - Method in class nars.entity.Item
    Set quality value +
    setRevisible(boolean) - +Method in class nars.entity.Sentence +
     
    setValue(float) - Method in class nars.entity.ShortFloat
    Set new value, rounded, with validity checking @@ -161,17 +167,17 @@
    silentW - Variable in class nars.gui.MainWindow
    Windows for run-time parameter adjustment -
    Similarity - Class in nars.term
    A Statement about a Similarity relation.
    SIMILARITY_RELATION - +
    Similarity - Class in nars.language
    A Statement about a Similarity relation.
    SIMILARITY_RELATION - Static variable in class nars.io.Symbols
      -
    singlePremiseTask(Term, TruthValue, BudgetValue) - -Method in class nars.container.Memory +
    singlePremiseTask(Term, TruthValue, BudgetValue) - +Method in class nars.storage.Memory
    Shared final operations by all single-premise rules, called in StructuralRules -
    singlePremiseTask(Term, char, TruthValue, BudgetValue) - -Method in class nars.container.Memory +
    singlePremiseTask(Term, char, TruthValue, BudgetValue) - +Method in class nars.storage.Memory
    Shared final operations by all single-premise rules, called in StructuralRules -
    size() - -Method in class nars.term.CompoundTerm +
    size() - +Method in class nars.language.CompoundTerm
    get the number of components
    solutionQuality(Sentence, Sentence) - Static method in class nars.inference.LocalRules @@ -181,6 +187,9 @@ (2) A evidentialBase of serial numbers of sentence, from which the sentence is derived.
    Stamp(long) - Constructor for class nars.entity.Stamp
    Generate a new stamp, with a new serial number, for a new Task +
    Stamp(Stamp, long) - +Constructor for class nars.entity.Stamp +
    Generate a new stamp from an existing one, with the same evidentialBase but different creation time
    STAMP_CLOSER - Static variable in class nars.io.Symbols
      @@ -196,21 +205,23 @@
    start() - Method in class nars.main.NARS
    Start the thread if necessary, called when the page containing the applet first appears on the screen. -
    startPlay(String) - -Method in class nars.container.Bag -
    To start displaying the Bag in a BagWindow
    startPlay(boolean) - Method in class nars.entity.Concept -
    Start displaying contents and links, called from ConceptWindow or Memory.processTask only -
    Statement - Class in nars.term
    A statement is a compound term, consisting of a subject, a predicate, - and a relation symbol in between.
    Statement() - -Constructor for class nars.term.Statement +
    Start displaying contents and links, called from ConceptWindow, + TermWindow + or Memory.processTask only +
    startPlay(String) - +Method in class nars.storage.Bag +
    To start displaying the Bag in a BagWindow +
    Statement - Class in nars.language
    A statement is a compound term, consisting of a subject, a predicate, + and a relation symbol in between.
    Statement() - +Constructor for class nars.language.Statement
    Default constructor -
    Statement(ArrayList<Term>) - -Constructor for class nars.term.Statement +
    Statement(ArrayList<Term>) - +Constructor for class nars.language.Statement
    Constructor with partial values, called by make -
    Statement(String, ArrayList<Term>, boolean, short) - -Constructor for class nars.term.Statement +
    Statement(String, ArrayList<Term>, boolean, short) - +Constructor for class nars.language.Statement
    Constructor with full values, called by clone
    STATEMENT_CLOSER - Static variable in class nars.io.Symbols @@ -218,9 +229,6 @@
    STATEMENT_OPENER - Static variable in class nars.io.Symbols
      -
    stop() - -Method in class nars.container.Bag -
    Stop display
    stop() - Method in class nars.entity.Concept
    Stop display, called from ConceptWindow only @@ -233,14 +241,17 @@
    stop() - Method in class nars.main.Reasoner
    Stop the inference process +
    stop() - +Method in class nars.storage.Bag +
    Stop display
    StringParser - Class in nars.io
    Parse input String into Task or Term.
    StringParser() - Constructor for class nars.io.StringParser
     
    StructuralRules - Class in nars.inference
    Single-premise inference rules involving compound terms.
    StructuralRules() - Constructor for class nars.inference.StructuralRules
      -
    substitute - -Variable in class nars.container.Memory +
    substitute - +Variable in class nars.storage.Memory
    The substitution that unify the common term in the Task and the Belief
    summary() - Method in class nars.entity.BudgetValue diff --git a/nars-dist/javadoc/index-files/index-2.html b/nars-dist/javadoc/index-files/index-2.html index 8b12b594..88ed61ed 100644 --- a/nars-dist/javadoc/index-files/index-2.html +++ b/nars-dist/javadoc/index-files/index-2.html @@ -2,13 +2,13 @@ - + B-Index - + @@ -83,15 +83,15 @@

    B

    -
    backward(TruthValue, Memory) - +
    backward(TruthValue, Memory) - Static method in class nars.inference.BudgetFunctions
    Backward inference result and adjustment, stronger case -
    backwardWeak(TruthValue, Memory) - +
    backwardWeak(TruthValue, Memory) - Static method in class nars.inference.BudgetFunctions
    Backward inference result and adjustment, weaker case -
    Bag<Type extends Item> - Class in nars.container
    A Bag is a storage with a constant capacity and maintains an internal priority - distribution for retrieval.
    Bag(Memory) - -Constructor for class nars.container.Bag +
    Bag<Type extends Item> - Class in nars.storage
    A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
    Bag(Memory) - +Constructor for class nars.storage.Bag
    constructor, called from subclasses
    BAG_LEVEL - Static variable in class nars.main.Parameters @@ -99,7 +99,7 @@
    BAG_THRESHOLD - Static variable in class nars.main.Parameters
    Level separation in Bag, one digit, for display (run-time adjustable) and management (fixed) -
    BagWindow - Class in nars.gui
    Window display the priority distribution of items within a given bag
    BagWindow(Bag, String) - +
    BagWindow - Class in nars.gui
    Window display the priority distribution of items within a given bag
    BagWindow(Bag<?>, String) - Constructor for class nars.gui.BagWindow
    Constructor
    budget - diff --git a/nars-dist/javadoc/index-files/index-20.html b/nars-dist/javadoc/index-files/index-20.html index 7271298f..af7c7b40 100644 --- a/nars-dist/javadoc/index-files/index-20.html +++ b/nars-dist/javadoc/index-files/index-20.html @@ -2,13 +2,13 @@ - + T-Index - + @@ -83,11 +83,11 @@

    T

    -
    takeOut() - -Method in class nars.container.Bag +
    takeOut() - +Method in class nars.storage.Bag
    Choose an Item according to priority distribution and take it out of the Bag -
    takeOut(TaskLink, long) - -Method in class nars.container.TermLinkBag +
    takeOut(TaskLink, long) - +Method in class nars.storage.TermLinkBag
    Replace defualt to prevent repeated inference, by checking TaskLink
    Task - Class in nars.entity
    A task to be processed, consists of a Sentence and a BudgetValue
    Task(Sentence, BudgetValue) - Constructor for class nars.entity.Task @@ -107,20 +107,20 @@
    TASK_LINK_FORGETTING_CYCLE - Static variable in class nars.main.Parameters
    TaskLink decay rate in TaskLinkBag, in [1, 99]. -
    taskBuffersStartPlay(String) - -Method in class nars.container.Memory -
    Display newd tasks, called from MainWindow. +
    taskBuffersStartPlay(String) - +Method in class nars.storage.Memory +
    Display new tasks, called from MainWindow.
    TaskLink - Class in nars.entity
    Reference to a Task.
    TaskLink(Task, TermLink, BudgetValue) - Constructor for class nars.entity.TaskLink
    Constructor -
    TaskLinkBag - Class in nars.container
    TaskLinkBag contains links to tasks.
    TaskLinkBag(Memory) - -Constructor for class nars.container.TaskLinkBag +
    TaskLinkBag - Class in nars.storage
    TaskLinkBag contains links to tasks.
    TaskLinkBag(Memory) - +Constructor for class nars.storage.TaskLinkBag
    Constructor -
    Term - Class in nars.term
    Term is the basic component of Narsese, and the object of processing in NARS.
    Term() - -Constructor for class nars.term.Term +
    Term - Class in nars.language
    Term is the basic component of Narsese, and the object of processing in NARS.
    Term() - +Constructor for class nars.language.Term
    Default constructor that build an internal Term -
    Term(String) - -Constructor for class nars.term.Term +
    Term(String) - +Constructor for class nars.language.Term
    Constructor with a given name
    TERM_LINK_BAG_SIZE - Static variable in class nars.main.Parameters @@ -131,20 +131,20 @@
    TERM_LINK_RECORD_LENGTH - Static variable in class nars.main.Parameters
    Remember recently used TermLink on a Task -
    TermLink - Class in nars.entity
    A link between a compound term and a component term
    TermLink(Term, short, int...) - +
    TermLink - Class in nars.entity
    A link between a compound term and a component term
    TermLink(Term, short, int...) - Constructor for class nars.entity.TermLink
    Constructor for TermLink template
    TermLink(String, BudgetValue) - Constructor for class nars.entity.TermLink
    called from TaskLink -
    TermLink(Term, TermLink, BudgetValue) - +
    TermLink(Term, TermLink, BudgetValue) - Constructor for class nars.entity.TermLink
    Constructor to make actual TermLink from a template -
    TermLinkBag - Class in nars.container
    Contains TermLinks to relevant (compound or component) Terms.
    TermLinkBag(Memory) - -Constructor for class nars.container.TermLinkBag +
    TermLinkBag - Class in nars.storage
    Contains TermLinks to relevant (compound or component) Terms.
    TermLinkBag(Memory) - +Constructor for class nars.storage.TermLinkBag
    Constructor -
    termToConcept(Term) - -Method in class nars.container.Memory +
    termToConcept(Term) - +Method in class nars.storage.Memory
    Get an existing Concept for a given Term.
    TermWindow - Class in nars.gui
    Window accept a Term, then display the content of the corresponding Concept
    text - Variable in class nars.gui.MessageDialog @@ -170,9 +170,9 @@
    TO_COMPOUND_2 - Static variable in class nars.io.Symbols
      -
    toString() - -Method in class nars.container.Bag -
    Collect Bag content into a String for display +
    toKey() - +Method in class nars.entity.Sentence +
    Get a String representation of the sentence for key of Task and TaskLink
    toString() - Method in class nars.entity.BudgetValue
    Fully display the BudgetValue @@ -198,9 +198,12 @@
    toString() - Method in class nars.entity.TruthValue
    The String representation of a TruthValue -
    toString() - -Method in class nars.term.Term +
    toString() - +Method in class nars.language.Term
    The same as getName by default, used in display only. +
    toString() - +Method in class nars.storage.Bag +
    Collect Bag content into a String for display
    toStringBrief() - Method in class nars.entity.BudgetValue
    Briefly display the BudgetValue @@ -219,10 +222,10 @@
    TRANSFORM - Static variable in class nars.entity.TermLink
    At C, point to <(*, C, B) --> A>; TaskLink only -
    transformNegation(Term, Memory) - +
    transformNegation(Term, Memory) - Static method in class nars.inference.StructuralRules
    {A, A@(--, A)} |- (--, A) -
    transformTask(TaskLink, Memory) - +
    transformTask(TaskLink, Memory) - Static method in class nars.inference.RuleTables
    The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation
    TRUTH_VALUE_MARK - @@ -240,7 +243,7 @@
    TruthValue(TruthValue) - Constructor for class nars.entity.TruthValue
    Constructor with a TruthValue to clone -
    trySolution(Sentence, Sentence, Task, Memory) - +
    trySolution(Sentence, Sentence, Task, Memory) - Static method in class nars.inference.LocalRules
    Check if a Sentence provide a better answer to a Question or Goal
    type - diff --git a/nars-dist/javadoc/index-files/index-21.html b/nars-dist/javadoc/index-files/index-21.html index 4a8a4b0b..23309a8b 100644 --- a/nars-dist/javadoc/index-files/index-21.html +++ b/nars-dist/javadoc/index-files/index-21.html @@ -2,13 +2,13 @@ - + U-Index - + @@ -83,11 +83,11 @@

    U

    -
    unify(char, Term, Term) - -Static method in class nars.term.Variable +
    unify(char, Term, Term) - +Static method in class nars.language.Variable
    To unify two terms -
    unify(char, Term, Term, Term, Term) - -Static method in class nars.term.Variable +
    unify(char, Term, Term, Term, Term) - +Static method in class nars.language.Variable
    To unify two terms
    updateTimer() - Method in class nars.gui.MainWindow diff --git a/nars-dist/javadoc/index-files/index-22.html b/nars-dist/javadoc/index-files/index-22.html index f5103887..539468ec 100644 --- a/nars-dist/javadoc/index-files/index-22.html +++ b/nars-dist/javadoc/index-files/index-22.html @@ -2,13 +2,13 @@ - + V-Index - + @@ -98,8 +98,8 @@
    VAR_QUERY - Static variable in class nars.io.Symbols
      -
    Variable - Class in nars.term
    A variable term, which does not correspond to a concept
    Variable(String) - -Constructor for class nars.term.Variable +
    Variable - Class in nars.language
    A variable term, which does not correspond to a concept
    Variable(String) - +Constructor for class nars.language.Variable
    Constructor, from a given variable name

    diff --git a/nars-dist/javadoc/index-files/index-23.html b/nars-dist/javadoc/index-files/index-23.html index a10ed19c..89ff64e3 100644 --- a/nars-dist/javadoc/index-files/index-23.html +++ b/nars-dist/javadoc/index-files/index-23.html @@ -2,13 +2,13 @@ - + W-Index - + @@ -155,8 +155,8 @@
    windowOpened(WindowEvent) - Method in class nars.gui.NarsFrame
      -
    workCycle(long) - -Method in class nars.container.Memory +
    workCycle(long) - +Method in class nars.storage.Memory
    An atomic working workCycle of the system: process new Tasks, then fire a concept

    diff --git a/nars-dist/javadoc/index-files/index-3.html b/nars-dist/javadoc/index-files/index-3.html index 9c73864e..923ae028 100644 --- a/nars-dist/javadoc/index-files/index-3.html +++ b/nars-dist/javadoc/index-files/index-3.html @@ -2,13 +2,13 @@ - + C-Index - + @@ -86,20 +86,20 @@
    c2w(float) - Static method in class nars.inference.UtilityFunctions
    A function to convert confidence to weight -
    capacity() - -Method in class nars.container.Bag +
    capacity() - +Method in class nars.storage.Bag
    To get the capacity of the concrete subclass -
    capacity() - -Method in class nars.container.ConceptBag +
    capacity() - +Method in class nars.storage.ConceptBag
    Get the (constant) capacity of ConceptBag -
    capacity() - -Method in class nars.container.NovelTaskBag +
    capacity() - +Method in class nars.storage.NovelTaskBag
    Get the (constant) capacity of NovelTaskBag -
    capacity() - -Method in class nars.container.TaskLinkBag +
    capacity() - +Method in class nars.storage.TaskLinkBag
    Get the (constant) capacity of TaskLinkBag -
    capacity() - -Method in class nars.container.TermLinkBag +
    capacity() - +Method in class nars.storage.TermLinkBag
    Get the (constant) capacity of TermLinkBag
    clear() - Method in class nars.gui.InferenceWindow @@ -119,71 +119,71 @@
    clone() - Method in class nars.entity.TruthValue
      -
    clone() - -Method in class nars.term.CompoundTerm +
    clone() - +Method in class nars.language.CompoundTerm
    Abstract clone method -
    clone() - -Method in class nars.term.Conjunction +
    clone() - +Method in class nars.language.Conjunction
    Clone an object -
    clone() - -Method in class nars.term.DifferenceExt +
    clone() - +Method in class nars.language.DifferenceExt
    Clone an object -
    clone() - -Method in class nars.term.DifferenceInt +
    clone() - +Method in class nars.language.DifferenceInt
    Clone an object -
    clone() - -Method in class nars.term.Disjunction +
    clone() - +Method in class nars.language.Disjunction
    Clone an object -
    clone() - -Method in class nars.term.Equivalence +
    clone() - +Method in class nars.language.Equivalence
    Clone an object -
    clone() - -Method in class nars.term.ImageExt +
    clone() - +Method in class nars.language.ImageExt
    Clone an object -
    clone() - -Method in class nars.term.ImageInt +
    clone() - +Method in class nars.language.ImageInt
    Clone an object -
    clone() - -Method in class nars.term.Implication +
    clone() - +Method in class nars.language.Implication
    Clone an object -
    clone() - -Method in class nars.term.Inheritance +
    clone() - +Method in class nars.language.Inheritance
    Clone an object -
    clone() - -Method in class nars.term.IntersectionExt +
    clone() - +Method in class nars.language.IntersectionExt
    Clone an object -
    clone() - -Method in class nars.term.IntersectionInt +
    clone() - +Method in class nars.language.IntersectionInt
    Clone an object -
    clone() - -Method in class nars.term.Negation +
    clone() - +Method in class nars.language.Negation
    Clone an object -
    clone() - -Method in class nars.term.Product +
    clone() - +Method in class nars.language.Product
    Clone a Product -
    clone() - -Method in class nars.term.SetExt +
    clone() - +Method in class nars.language.SetExt
    Clone a SetExt -
    clone() - -Method in class nars.term.SetInt +
    clone() - +Method in class nars.language.SetInt
    Clone a SetInt -
    clone() - -Method in class nars.term.Similarity +
    clone() - +Method in class nars.language.Similarity
    Clone an object -
    clone() - -Method in class nars.term.Term +
    clone() - +Method in class nars.language.Term
    Make a new Term with the same name. -
    clone() - -Method in class nars.term.Variable +
    clone() - +Method in class nars.language.Variable
    Clone a Variable -
    cloneComponents() - -Method in class nars.term.CompoundTerm +
    cloneComponents() - +Method in class nars.language.CompoundTerm
    Clone the component list
    cloneContent() - Method in class nars.entity.Sentence
    Clone the content of the sentence -
    cloneList(ArrayList<Term>) - -Static method in class nars.term.CompoundTerm +
    cloneList(ArrayList<Term>) - +Static method in class nars.language.CompoundTerm
    Deep clone an array list of terms
    closeLoadFile() - Method in class nars.io.ExperienceReader @@ -197,11 +197,11 @@
    COMMENT_MARK - Static variable in class nars.io.Symbols
      -
    compareTo(Term) - -Method in class nars.term.Term +
    compareTo(Term) - +Method in class nars.language.Term
    Check the relative order of two Terms. -
    complexity - -Variable in class nars.term.CompoundTerm +
    complexity - +Variable in class nars.language.CompoundTerm
    syntactic complexity of the compound, the sum of those of its components plus 1
    COMPONENT - Static variable in class nars.entity.TermLink @@ -212,11 +212,11 @@
    COMPONENT_STATEMENT - Static variable in class nars.entity.TermLink
    At A>, point to C -
    componentAt(int) - -Method in class nars.term.CompoundTerm +
    componentAt(int) - +Method in class nars.language.CompoundTerm
    get a component by index -
    components - -Variable in class nars.term.CompoundTerm +
    components - +Variable in class nars.language.CompoundTerm
    list of (direct) components
    CompositionalRules - Class in nars.inference
    Compound term composition and decomposition rules, with two premises.
    CompositionalRules() - Constructor for class nars.inference.CompositionalRules @@ -236,29 +236,29 @@
    COMPOUND_TERM_OPENER - Static variable in class nars.io.Symbols
      -
    compoundBackward(Term, Memory) - +
    compoundBackward(Term, Memory) - Static method in class nars.inference.BudgetFunctions
    Backward inference with CompoundTerm conclusion, stronger case -
    compoundBackwardWeak(Term, Memory) - +
    compoundBackwardWeak(Term, Memory) - Static method in class nars.inference.BudgetFunctions
    Backward inference with CompoundTerm conclusion, weaker case -
    compoundForward(TruthValue, Term, Memory) - +
    compoundForward(TruthValue, Term, Memory) - Static method in class nars.inference.BudgetFunctions
    Forward inference with CompoundTerm conclusion -
    CompoundTerm - Class in nars.term
    A CompoundTerm is a Term with internal (syntactic) structure
    CompoundTerm() - -Constructor for class nars.term.CompoundTerm +
    CompoundTerm - Class in nars.language
    A CompoundTerm is a Term with internal (syntactic) structure
    CompoundTerm() - +Constructor for class nars.language.CompoundTerm
    Default constructor -
    CompoundTerm(String, ArrayList<Term>, boolean, short) - -Constructor for class nars.term.CompoundTerm +
    CompoundTerm(String, ArrayList<Term>, boolean, short) - +Constructor for class nars.language.CompoundTerm
    Constructor called from subclasses constructors to clone the fields -
    CompoundTerm(ArrayList<Term>) - -Constructor for class nars.term.CompoundTerm +
    CompoundTerm(ArrayList<Term>) - +Constructor for class nars.language.CompoundTerm
    Constructor called from subclasses constructors to initialize the fields -
    CompoundTerm(String, ArrayList<Term>) - -Constructor for class nars.term.CompoundTerm +
    CompoundTerm(String, ArrayList<Term>) - +Constructor for class nars.language.CompoundTerm
    Constructor called from subclasses constructors to initialize the fields
    Concept - Class in nars.entity
    A concept contains information associated with a term, including directly - and indirectly related tasks and beliefs.
    Concept(Term, Memory) - + and indirectly related tasks and beliefs.
    Concept(Term, Memory) - Constructor for class nars.entity.Concept
    Constructor, called in Memory.getConcept only
    CONCEPT_BAG_SIZE - @@ -267,11 +267,11 @@
    CONCEPT_FORGETTING_CYCLE - Static variable in class nars.main.Parameters
    Concept decay rate in ConceptBag, in [1, 99]. -
    ConceptBag - Class in nars.container
    Contains Concepts.
    ConceptBag(Memory) - -Constructor for class nars.container.ConceptBag +
    ConceptBag - Class in nars.storage
    Contains Concepts.
    ConceptBag(Memory) - +Constructor for class nars.storage.ConceptBag
    Constructor -
    conceptsStartPlay(String) - -Method in class nars.container.Memory +
    conceptsStartPlay(String) - +Method in class nars.storage.Memory
    Display active concepts, called from MainWindow.
    conceptWin - Variable in class nars.gui.MainWindow @@ -279,62 +279,62 @@
    ConceptWindow - Class in nars.gui
    Window displaying the content of a Concept, such as beliefs, goals, and questions
    ConceptWindow(Concept) - Constructor for class nars.gui.ConceptWindow
    Constructor -
    Conjunction - Class in nars.term
    Conjunction of statements
    Conjunction(ArrayList<Term>) - -Constructor for class nars.term.Conjunction +
    Conjunction - Class in nars.language
    Conjunction of statements
    Conjunction(ArrayList<Term>) - +Constructor for class nars.language.Conjunction
    Constructor with partial values, called by make -
    Conjunction(String, ArrayList<Term>, boolean, short) - -Constructor for class nars.term.Conjunction +
    Conjunction(String, ArrayList<Term>, boolean, short) - +Constructor for class nars.language.Conjunction
    Constructor with full values, called by clone
    CONJUNCTION_OPERATOR - Static variable in class nars.io.Symbols
      -
    containAllComponents(Term) - -Method in class nars.term.CompoundTerm +
    containAllComponents(Term) - +Method in class nars.language.CompoundTerm
    Check whether the compound contains all components of another term, or that term as a whole -
    containComponent(Term) - -Method in class nars.term.CompoundTerm +
    containComponent(Term) - +Method in class nars.language.CompoundTerm
    Check whether the compound contains a certain component -
    contains(Type) - -Method in class nars.container.Bag +
    contains(Type) - +Method in class nars.storage.Bag
    Check if an item is in the bag -
    containTerm(Term) - -Method in class nars.term.CompoundTerm +
    containTerm(Term) - +Method in class nars.language.CompoundTerm
    Recursively check if a compound contains a term -
    containTerm(Term) - -Method in class nars.term.Term +
    containTerm(Term) - +Method in class nars.language.Term
    Recursively check if a compound contains a term -
    containVar() - -Method in class nars.term.CompoundTerm +
    containVar() - +Method in class nars.language.CompoundTerm
    Whether this compound term contains any variable term -
    containVar(String) - -Static method in class nars.term.Variable +
    containVar(String) - +Static method in class nars.language.Variable
    Check whether a string represent a name of a term that contains a variable -
    containVarDep(String) - -Static method in class nars.term.Variable +
    containVarDep(String) - +Static method in class nars.language.Variable
    Check whether a string represent a name of a term that contains a dependent variable -
    containVarIndep(String) - -Static method in class nars.term.Variable +
    containVarIndep(String) - +Static method in class nars.language.Variable
    Check whether a string represent a name of a term that contains an independent variable -
    containVarQuery(String) - -Static method in class nars.term.Variable +
    containVarQuery(String) - +Static method in class nars.language.Variable
    Check whether a string represent a name of a term that contains a query variable -
    currentBelief - -Variable in class nars.container.Memory +
    currentBelief - +Variable in class nars.storage.Memory
    The selected belief -
    currentBeliefLink - -Variable in class nars.container.Memory +
    currentBeliefLink - +Variable in class nars.storage.Memory
    The selected TermLink -
    currentConcept - -Variable in class nars.container.Memory +
    currentConcept - +Variable in class nars.storage.Memory
    The selected Concept -
    currentTask - -Variable in class nars.container.Memory +
    currentTask - +Variable in class nars.storage.Memory
    The selected Task -
    currentTaskLink - -Variable in class nars.container.Memory +
    currentTaskLink - +Variable in class nars.storage.Memory
    The selected TaskLink -
    currentTerm - -Variable in class nars.container.Memory +
    currentTerm - +Variable in class nars.storage.Memory
    The selected Term

    diff --git a/nars-dist/javadoc/index-files/index-4.html b/nars-dist/javadoc/index-files/index-4.html index 33bb3670..cc3ada1d 100644 --- a/nars-dist/javadoc/index-files/index-4.html +++ b/nars-dist/javadoc/index-files/index-4.html @@ -2,13 +2,13 @@ - + D-Index - + @@ -128,10 +128,10 @@
    DIFFERENCE_INT_OPERATOR - Static variable in class nars.io.Symbols
      -
    DifferenceExt - Class in nars.term
    A compound term whose extension is the difference of the extensions of its components
    DifferenceInt - Class in nars.term
    A compound term whose extension is the difference of the intensions of its components
    directProcess(Task) - +
    DifferenceExt - Class in nars.language
    A compound term whose extension is the difference of the extensions of its components
    DifferenceInt - Class in nars.language
    A compound term whose extension is the difference of the intensions of its components
    directProcess(Task) - Method in class nars.entity.Concept
    Directly process a new task. -
    Disjunction - Class in nars.term
    A disjunction of Statements.
    DISJUNCTION_OPERATOR - +
    Disjunction - Class in nars.language
    A disjunction of Statements.
    DISJUNCTION_OPERATOR - Static variable in class nars.io.Symbols
     
    displayContent() - @@ -140,8 +140,11 @@
    distributeAmongLinks(BudgetValue, int) - Static method in class nars.inference.BudgetFunctions
    Distribute the budget of a task among the links to it -
    doublePremiseTask(Term, TruthValue, BudgetValue) - -Method in class nars.container.Memory +
    doublePremiseTask(Term, TruthValue, BudgetValue) - +Method in class nars.storage.Memory +
    Shared final operations by all double-premise rules, called from the rules except StructuralRules +
    doublePremiseTask(Term, TruthValue, BudgetValue, boolean) - +Method in class nars.storage.Memory
    Shared final operations by all double-premise rules, called from the rules except StructuralRules
    durability - Variable in class nars.entity.BudgetValue diff --git a/nars-dist/javadoc/index-files/index-5.html b/nars-dist/javadoc/index-files/index-5.html index 68bf0b9a..5ce04228 100644 --- a/nars-dist/javadoc/index-files/index-5.html +++ b/nars-dist/javadoc/index-files/index-5.html @@ -2,13 +2,13 @@ - + E-Index - + @@ -83,8 +83,8 @@

    E

    -
    emptyLevel(int) - -Method in class nars.container.Bag +
    emptyLevel(int) - +Method in class nars.storage.Bag
    Check whether a level is empty
    equals(Object) - Method in class nars.entity.Sentence @@ -98,14 +98,14 @@
    equals(Object) - Method in class nars.entity.TruthValue
    Compare two truth values -
    equals(Object) - -Method in class nars.term.Term +
    equals(Object) - +Method in class nars.language.Term
    Equal terms have identical name, though not necessarily the same reference. -
    Equivalence - Class in nars.term
    A Statement about an Equivalence relation.
    Equivalence(ArrayList<Term>) - -Constructor for class nars.term.Equivalence +
    Equivalence - Class in nars.language
    A Statement about an Equivalence relation.
    Equivalence(ArrayList<Term>) - +Constructor for class nars.language.Equivalence
    Constructor with partial values, called by make -
    Equivalence(String, ArrayList<Term>, boolean, short) - -Constructor for class nars.term.Equivalence +
    Equivalence(String, ArrayList<Term>, boolean, short) - +Constructor for class nars.language.Equivalence
    Constructor with full values, called by clone
    EQUIVALENCE_RELATION - Static variable in class nars.io.Symbols diff --git a/nars-dist/javadoc/index-files/index-6.html b/nars-dist/javadoc/index-files/index-6.html index c958cc74..d74ff222 100644 --- a/nars-dist/javadoc/index-files/index-6.html +++ b/nars-dist/javadoc/index-files/index-6.html @@ -2,13 +2,13 @@ - + F-Index - + @@ -95,21 +95,21 @@
    forgetCW - Variable in class nars.gui.MainWindow
    Windows for run-time parameter adjustment -
    forgetRate() - -Method in class nars.container.Bag +
    forgetRate() - +Method in class nars.storage.Bag
    Get the item decay rate, which differs in difference subclass, and can be changed in run time by the user, so not a constant. -
    forgetRate() - -Method in class nars.container.ConceptBag +
    forgetRate() - +Method in class nars.storage.ConceptBag
    Get the (adjustable) forget rate of ConceptBag -
    forgetRate() - -Method in class nars.container.NovelTaskBag +
    forgetRate() - +Method in class nars.storage.NovelTaskBag
    Get the (constant) forget rate in NovelTaskBag -
    forgetRate() - -Method in class nars.container.TaskLinkBag +
    forgetRate() - +Method in class nars.storage.TaskLinkBag
    Get the (adjustable) forget rate of TaskLinkBag -
    forgetRate() - -Method in class nars.container.TermLinkBag +
    forgetRate() - +Method in class nars.storage.TermLinkBag
    Get the (adjustable) forget rate of TermLinkBag
    forgetTW - Variable in class nars.gui.MainWindow diff --git a/nars-dist/javadoc/index-files/index-7.html b/nars-dist/javadoc/index-files/index-7.html index 382446c5..55317032 100644 --- a/nars-dist/javadoc/index-files/index-7.html +++ b/nars-dist/javadoc/index-files/index-7.html @@ -2,13 +2,13 @@ - + G-Index - + @@ -83,8 +83,8 @@

    G

    -
    get(String) - -Method in class nars.container.Bag +
    get(String) - +Method in class nars.storage.Bag
    Get an Item by key
    getAppletInfo() - Method in class nars.main.NARS @@ -98,17 +98,17 @@
    getBudget() - Method in class nars.entity.Item
    Get BudgetValue -
    getComplexity() - -Method in class nars.term.CompoundTerm +
    getComplexity() - +Method in class nars.language.CompoundTerm
    report the term's syntactic complexity -
    getComplexity() - -Method in class nars.term.Term +
    getComplexity() - +Method in class nars.language.Term
    The syntactic complexity, for constant automic Term, is 1. -
    getComponents() - -Method in class nars.term.CompoundTerm +
    getComponents() - +Method in class nars.language.CompoundTerm
    Get the component list -
    getConcept(Term) - -Method in class nars.container.Memory +
    getConcept(Term) - +Method in class nars.storage.Memory
    Get the Concept associated to a Term, or create it.
    getConfidence() - Method in class nars.entity.TruthValue @@ -122,6 +122,9 @@
    getCreationTime() - Method in class nars.entity.Stamp
    Get the creationTime of the truth-value +
    getCreationTime() - +Method in class nars.entity.Task +
    Directly get the creation time of the sentence
    getDurability() - Method in class nars.entity.BudgetValue
    Get durability value @@ -134,8 +137,8 @@
    getExpectation() - Method in class nars.entity.TruthValue
    Calculate the expectation value of the truth value -
    getExportStrings() - -Method in class nars.container.Memory +
    getExportStrings() - +Method in class nars.storage.Memory
     
    getFrequency() - Method in class nars.entity.TruthValue @@ -152,23 +155,23 @@
    getKey() - Method in class nars.entity.Item
    Get the current key -
    getMainWindow() - -Method in class nars.container.Memory -
     
    getMainWindow() - Method in class nars.main.Reasoner
      +
    getMainWindow() - +Method in class nars.storage.Memory +
     
    getMemory() - Method in class nars.main.Reasoner
      -
    getName() - -Method in class nars.term.Term +
    getName() - +Method in class nars.language.Term
    Reporting the name of the current Term.
    getParentBelief() - Method in class nars.entity.Task
    Get the parent belief of a task -
    getPredicate() - -Method in class nars.term.Statement +
    getPredicate() - +Method in class nars.language.Statement
    Return the second component of the statement
    getPriority() - Method in class nars.entity.BudgetValue @@ -188,29 +191,32 @@
    getQuality() - Method in class nars.entity.Item
    Get quality value -
    getRecorder() - -Method in class nars.container.Memory +
    getRecorder() - +Method in class nars.storage.Memory
      -
    getRelation() - -Method in class nars.term.ImageExt +
    getRelation() - +Method in class nars.language.ImageExt
    Get the relation term in the Image -
    getRelation() - -Method in class nars.term.ImageInt +
    getRelation() - +Method in class nars.language.ImageInt
    Get the relation term in the Image -
    getRelationIndex() - -Method in class nars.term.ImageExt +
    getRelationIndex() - +Method in class nars.language.ImageExt
    get the index of the relation in the component list -
    getRelationIndex() - -Method in class nars.term.ImageInt +
    getRelationIndex() - +Method in class nars.language.ImageInt
    get the index of the relation in the component list +
    getRevisible() - +Method in class nars.entity.Sentence +
     
    getSentence() - Method in class nars.entity.Task
    Get the sentence
    getStamp() - Method in class nars.entity.Sentence
    Get the stamp of the sentence -
    getSubject() - -Method in class nars.term.Statement +
    getSubject() - +Method in class nars.language.Statement
    Return the first component of the statement
    getTarget() - Method in class nars.entity.TermLink @@ -224,27 +230,27 @@
    getTermLinkTemplates() - Method in class nars.entity.Concept
    Return the templates for TermLinks, only called in Memory.continuedProcess -
    getTheOtherComponent() - -Method in class nars.term.ImageExt +
    getTheOtherComponent() - +Method in class nars.language.ImageExt
    Get the other term in the Image -
    getTheOtherComponent() - -Method in class nars.term.ImageInt +
    getTheOtherComponent() - +Method in class nars.language.ImageInt
    Get the other term in the Image -
    getTime() - -Method in class nars.container.Memory -
     
    getTime() - Method in class nars.main.Reasoner
    Get the current time from the clock Called in nars.entity.Stamp +
    getTime() - +Method in class nars.storage.Memory +
     
    getTruth() - Method in class nars.entity.Sentence
    Get the truth value of the sentence
    getType() - Method in class nars.entity.TermLink
    Get the link type -
    getType() - -Method in class nars.term.Variable +
    getType() - +Method in class nars.language.Variable
    Get the type of the variable
    getValue() - Method in class nars.entity.ShortFloat diff --git a/nars-dist/javadoc/index-files/index-8.html b/nars-dist/javadoc/index-files/index-8.html index e2822b1a..be722bda 100644 --- a/nars-dist/javadoc/index-files/index-8.html +++ b/nars-dist/javadoc/index-files/index-8.html @@ -2,13 +2,13 @@ - + H-Index - + @@ -95,11 +95,11 @@
    hashCode() - Method in class nars.entity.TruthValue
    The hash code of a TruthValue -
    hashCode() - -Method in class nars.term.Term +
    hashCode() - +Method in class nars.language.Term
    Produce a hash code for the term -
    hasSubstitute(char, Term, Term) - -Static method in class nars.term.Variable +
    hasSubstitute(char, Term, Term) - +Static method in class nars.language.Variable
    Check if two terms can be unified
    HORIZON - Static variable in class nars.main.Parameters diff --git a/nars-dist/javadoc/index-files/index-9.html b/nars-dist/javadoc/index-files/index-9.html index 142e8a1f..8173597f 100644 --- a/nars-dist/javadoc/index-files/index-9.html +++ b/nars-dist/javadoc/index-files/index-9.html @@ -2,13 +2,13 @@ - + I-Index - + @@ -92,11 +92,11 @@
    IMAGE_PLACE_HOLDER - Static variable in class nars.io.Symbols
      -
    ImageExt - Class in nars.term
    An extension image.
    ImageInt - Class in nars.term
    An intension image.
    Implication - Class in nars.term
    A Statement about an Inheritance relation.
    Implication(ArrayList<Term>) - -Constructor for class nars.term.Implication +
    ImageExt - Class in nars.language
    An extension image.
    ImageInt - Class in nars.language
    An intension image.
    Implication - Class in nars.language
    A Statement about an Inheritance relation.
    Implication(ArrayList<Term>) - +Constructor for class nars.language.Implication
    Constructor with partial values, called by make -
    Implication(String, ArrayList<Term>, boolean, short) - -Constructor for class nars.term.Implication +
    Implication(String, ArrayList<Term>, boolean, short) - +Constructor for class nars.language.Implication
    Constructor with full values, called by clone
    IMPLICATION_RELATION - Static variable in class nars.io.Symbols @@ -119,24 +119,19 @@
    index - Variable in class nars.entity.TermLink
    The index of the component in the component list of the compound, may have up to 4 levels -
    InferenceRecorder - Class in nars.io
    Inference log, which record input/output of each inference step
    InferenceRecorder() - +
    InferenceRecorder - Class in nars.io
    Inference log, which record input/output of each inference step + jmv: make it an interface, with 2 implementations: GUI or batch, or apply MVC design pattern : append() is the event
    InferenceRecorder() - Constructor for class nars.io.InferenceRecorder
      -
    InferenceWindow - Class in nars.gui
    Window displying inference log
    InferenceWindow(InferenceRecorder) - +
    InferenceWindow - Class in nars.gui
    Window displaying inference log
    InferenceWindow(InferenceRecorder) - Constructor for class nars.gui.InferenceWindow
    Constructor
    INFO - Static variable in class nars.main.NARS
    The information about the version and date of the project. -
    Inheritance - Class in nars.term
    A Statement about an Inheritance relation.
    INHERITANCE_RELATION - +
    Inheritance - Class in nars.language
    A Statement about an Inheritance relation.
    INHERITANCE_RELATION - Static variable in class nars.io.Symbols
      -
    init() - -Method in class nars.container.Bag -
      -
    init() - -Method in class nars.container.Memory -
     
    init() - Static method in class nars.entity.Stamp
    Initialize the stamp machenism of the system, called in Reasoner @@ -149,9 +144,18 @@
    init() - Method in class nars.io.InferenceRecorder
    Initialize the window and the file +
    init(String[]) - +Method in class nars.main.NARS +
     
    init() - Method in class nars.main.NARS
    Initialize the system at the control center. +
    init() - +Method in class nars.storage.Bag +
      +
    init() - +Method in class nars.storage.Memory +
     
    initTimer() - Method in class nars.gui.MainWindow
    Reset timer and its display @@ -160,8 +164,8 @@
     
    InputChannel - Interface in nars.io
    An interface to be implemented in all input channels To get the input for the next moment from an input channel - The return value indicating whether the reasoner should run
    inputTask(Task) - -Method in class nars.container.Memory + The return value indicating whether the reasoner should run
    inputTask(Task) - +Method in class nars.storage.Memory
    Input task processing.
    InputWindow - Class in nars.gui
    Input window, accepting user tasks
    InputWindow(Reasoner, String) - Constructor for class nars.gui.InputWindow @@ -175,9 +179,9 @@
    insertTermLink(TermLink) - Method in class nars.entity.Concept
    Insert a TermLink into the TermLink bag -
    Instance - Class in nars.term
    A Statement about an Instance relation, which is used only in Narsese for I/O, - and translated into Inheritance for internal use.
    Instance() - -Constructor for class nars.term.Instance +
    Instance - Class in nars.language
    A Statement about an Instance relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    Instance() - +Constructor for class nars.language.Instance
     
    INSTANCE_PROPERTY_RELATION - Static variable in class nars.io.Symbols @@ -185,9 +189,9 @@
    INSTANCE_RELATION - Static variable in class nars.io.Symbols
      -
    InstanceProperty - Class in nars.term
    A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, - and translated into Inheritance for internal use.
    InstanceProperty() - -Constructor for class nars.term.InstanceProperty +
    InstanceProperty - Class in nars.language
    A Statement about an InstanceProperty relation, which is used only in Narsese for I/O, + and translated into Inheritance for internal use.
    InstanceProperty() - +Constructor for class nars.language.InstanceProperty
     
    INTERSECTION_EXT_OPERATOR - Static variable in class nars.io.Symbols @@ -195,47 +199,50 @@
    INTERSECTION_INT_OPERATOR - Static variable in class nars.io.Symbols
      -
    IntersectionExt - Class in nars.term
    A compound term whose extension is the intersection of the extensions of its components
    IntersectionInt - Class in nars.term
    A compound term whose intension is the intersection of the extensions of its components
    invalid() - -Method in class nars.term.Statement +
    IntersectionExt - Class in nars.language
    A compound term whose extension is the intersection of the extensions of its components
    IntersectionInt - Class in nars.language
    A compound term whose intension is the intersection of the extensions of its components
    invalid() - +Method in class nars.language.Statement
    Check the validity of a potential Statement. -
    invalidStatement(Term, Term) - -Static method in class nars.term.Statement +
    invalidStatement(Term, Term) - +Static method in class nars.language.Statement
    Check the validity of a potential Statement. -
    isCommutative() - -Method in class nars.term.CompoundTerm +
    isCommutative() - +Method in class nars.language.CompoundTerm
    Check if the order of the components matters -
    isCommutative() - -Method in class nars.term.Conjunction +
    isCommutative() - +Method in class nars.language.Conjunction
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.term.Disjunction +
    isCommutative() - +Method in class nars.language.Disjunction
    Disjunction is communitative. -
    isCommutative() - -Method in class nars.term.Equivalence +
    isCommutative() - +Method in class nars.language.Equivalence
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.term.IntersectionExt +
    isCommutative() - +Method in class nars.language.IntersectionExt
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.term.IntersectionInt +
    isCommutative() - +Method in class nars.language.IntersectionInt
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.term.SetExt +
    isCommutative() - +Method in class nars.language.SetExt
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.term.SetInt +
    isCommutative() - +Method in class nars.language.SetInt
    Check if the compound is communitative. -
    isCommutative() - -Method in class nars.term.Similarity +
    isCommutative() - +Method in class nars.language.Similarity
    Check if the compound is communitative. -
    isConstant() - -Method in class nars.term.CompoundTerm +
    isConstant - +Variable in class nars.language.CompoundTerm +
    Whether the term names a concept +
    isConstant() - +Method in class nars.language.CompoundTerm
    check if the term contains free variable -
    isConstant() - -Method in class nars.term.Term +
    isConstant() - +Method in class nars.language.Term
    Check whether the current Term can name a Concept. -
    isConstant() - -Method in class nars.term.Variable +
    isConstant() - +Method in class nars.language.Variable
    A variable is not constant
    isInput() - Method in class nars.entity.Task @@ -249,14 +256,14 @@
    isNegative() - Method in class nars.entity.TruthValue
    Check if the truth value is negative -
    isOperator(String) - -Static method in class nars.term.CompoundTerm +
    isOperator(String) - +Static method in class nars.language.CompoundTerm
    Check CompoundTerm operator symbol
    isQuestion() - Method in class nars.entity.Sentence
    Distinguish Question from Quest ("instanceof Question" doesn't work) -
    isRelation(String) - -Static method in class nars.term.Statement +
    isRelation(String) - +Static method in class nars.language.Statement
    Check Statement relation symbol, called in StringPaser
    isStandAlone() - Static method in class nars.main.NARS diff --git a/nars-dist/javadoc/index.html b/nars-dist/javadoc/index.html index 4129944f..a064d048 100644 --- a/nars-dist/javadoc/index.html +++ b/nars-dist/javadoc/index.html @@ -2,7 +2,7 @@ - + Generated Documentation (Untitled) diff --git a/nars-dist/javadoc/nars/entity/BudgetValue.html b/nars-dist/javadoc/nars/entity/BudgetValue.html index 8579a23c..ec1e89d6 100644 --- a/nars-dist/javadoc/nars/entity/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/BudgetValue.html @@ -2,13 +2,13 @@ <!--NewPage--> <HTML> <HEAD> -<!-- Generated by javadoc (build 1.6.0_17) on Sun Jan 20 18:15:51 EST 2013 --> +<!-- Generated by javadoc (build 1.6.0_17) on Sun Feb 03 21:58:54 EST 2013 --> <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <TITLE> BudgetValue - + diff --git a/nars-dist/javadoc/nars/entity/Concept.html b/nars-dist/javadoc/nars/entity/Concept.html index f731a9fc..dff81d03 100644 --- a/nars-dist/javadoc/nars/entity/Concept.html +++ b/nars-dist/javadoc/nars/entity/Concept.html @@ -2,13 +2,13 @@ - + Concept - + @@ -142,8 +142,8 @@

    Constructor Summary

    Concept(Term tm, - Memory memory) +Concept(Term tm, + Memory memory)
              Constructor, called in Memory.getConcept only
    - TermgetTerm()
    @@ -260,7 +260,9 @@

    startPlay(boolean showLinks)
    -          Start displaying contents and links, called from ConceptWindow or Memory.processTask only
    @@ -310,11 +312,11 @@

    -

    +

    Concept

    -public Concept(Term tm,
    -               Memory memory)
    +public Concept(Term tm, + Memory memory)
    Constructor, called in Memory.getConcept only

    @@ -411,7 +413,7 @@

    getTerm

    -public Term getTerm()
    +public Term getTerm()
    Return the assocated term, called from Memory only

    @@ -506,7 +508,9 @@

     public void startPlay(boolean showLinks)
    -
    Start displaying contents and links, called from ConceptWindow or Memory.processTask only +
    Start displaying contents and links, called from ConceptWindow, + TermWindow + or Memory.processTask only

    Parameters:
    showLinks - Whether to display the task links
    diff --git a/nars-dist/javadoc/nars/entity/Item.html b/nars-dist/javadoc/nars/entity/Item.html index 0a74d0f2..9439a109 100644 --- a/nars-dist/javadoc/nars/entity/Item.html +++ b/nars-dist/javadoc/nars/entity/Item.html @@ -2,13 +2,13 @@ - + Item - + diff --git a/nars-dist/javadoc/nars/entity/Sentence.html b/nars-dist/javadoc/nars/entity/Sentence.html index fbc1377d..689298bd 100644 --- a/nars-dist/javadoc/nars/entity/Sentence.html +++ b/nars-dist/javadoc/nars/entity/Sentence.html @@ -2,13 +2,13 @@ - + Sentence - + @@ -124,11 +124,21 @@

    Constructor Summary -Sentence(Term content, +Sentence(Term content, char punctuation, TruthValue truth, Stamp stamp) +
    +          Create a Sentence with the given fields + + +Sentence(Term content, + char punctuation, + TruthValue truth, + Stamp stamp, + boolean revisible) +
              Create a Sentence with the given fields @@ -152,7 +162,7 @@

    - Term + Term cloneContent()
    @@ -176,7 +186,7 @@

    - Term + Term getContent()
    @@ -192,6 +202,14 @@

    + boolean +getRevisible() + +
    +            + + +  Stamp getStamp() @@ -233,13 +251,29 @@

     void -setContent(Term t) +setContent(Term t)
              Set the content Term of the Sentence + void +setRevisible(boolean b) + +
    +            + + + + java.lang.String +toKey() + +
    +          Get a String representation of the sentence for key of Task and TaskLink + + +  java.lang.String toString() @@ -277,10 +311,10 @@

    -

    +

    Sentence

    -public Sentence(Term content,
    +public Sentence(Term content,
                     char punctuation,
                     TruthValue truth,
                     Stamp stamp)
    @@ -290,6 +324,22 @@

    Parameters:
    content - The Term that forms the content of the sentence
    punctuation - The punctuation indicating the type of the sentence
    truth - The truth value of the sentence, null for question
    stamp - The stamp of the sentence indicating its derivation time and base

    +
    + +

    +Sentence

    +
    +public Sentence(Term content,
    +                char punctuation,
    +                TruthValue truth,
    +                Stamp stamp,
    +                boolean revisible)
    +
    +
    Create a Sentence with the given fields +

    +

    +
    Parameters:
    content - The Term that forms the content of the sentence
    punctuation - The punctuation indicating the type of the sentence
    truth - The truth value of the sentence, null for question
    stamp - The stamp of the sentence indicating its derivation time and base
    revisible - Whether the sentence can be revised
    +
    @@ -374,7 +424,7 @@

    getContent

    -public Term getContent()
    +public Term getContent()
    Get the content of the sentence

    @@ -408,7 +458,7 @@

    cloneContent

    -public Term cloneContent()
    +public Term cloneContent()
    Clone the content of the sentence

    @@ -422,10 +472,10 @@


    -

    +

    setContent

    -public void setContent(Term t)
    +public void setContent(Term t)
    Set the content Term of the Sentence

    @@ -506,6 +556,34 @@


    +

    +getRevisible

    +
    +public boolean getRevisible()
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +

    +setRevisible

    +
    +public void setRevisible(boolean b)
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +

    toString

    @@ -535,6 +613,23 @@ 

    +
    Returns:
    The String
    +
    +
    +
    + +

    +toKey

    +
    +public java.lang.String toKey()
    +
    +
    Get a String representation of the sentence for key of Task and TaskLink +

    +

    +
    +
    +
    +
    Returns:
    The String
    diff --git a/nars-dist/javadoc/nars/entity/ShortFloat.html b/nars-dist/javadoc/nars/entity/ShortFloat.html index f913756e..d781d66a 100644 --- a/nars-dist/javadoc/nars/entity/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/ShortFloat.html @@ -2,13 +2,13 @@ - + ShortFloat - + diff --git a/nars-dist/javadoc/nars/entity/Stamp.html b/nars-dist/javadoc/nars/entity/Stamp.html index c35427e8..b43d4235 100644 --- a/nars-dist/javadoc/nars/entity/Stamp.html +++ b/nars-dist/javadoc/nars/entity/Stamp.html @@ -2,13 +2,13 @@ - + Stamp - + @@ -131,6 +131,13 @@


              Generate a new stamp, with a new serial number, for a new Task + +Stamp(Stamp old, + long time) + +
    +          Generate a new stamp from an existing one, with the same evidentialBase but different creation time +   @@ -241,6 +248,21 @@

    Parameters:
    time - Creation time of the stamp

    +
    + +

    +Stamp

    +
    +public Stamp(Stamp old,
    +             long time)
    +
    +
    Generate a new stamp from an existing one, with the same evidentialBase but different creation time +

    + For single-premise rules +

    +

    +
    Parameters:
    old - The stamp of the single premise
    time - The current time
    +
    @@ -267,7 +289,7 @@

  • -
    Parameters:
    first - The first Stamp
    second - The second Stamp +
    Parameters:
    first - The first Stamp
    second - The second Stamp
    time - The new creation time
    Returns:
    The merged Stamp, or null
    diff --git a/nars-dist/javadoc/nars/entity/Task.html b/nars-dist/javadoc/nars/entity/Task.html index e43f2219..44336326 100644 --- a/nars-dist/javadoc/nars/entity/Task.html +++ b/nars-dist/javadoc/nars/entity/Task.html @@ -2,13 +2,13 @@ - + Task - + @@ -183,7 +183,7 @@

    - Term + Term getContent()
    @@ -191,6 +191,14 @@

    + long +getCreationTime() + +
    +          Directly get the creation time of the sentence + + +  Sentence getParentBelief() @@ -224,7 +232,7 @@

     void -merge(Task that) +merge(Item that)
              Merge one Task into another @@ -252,7 +260,7 @@

    Methods inherited from class nars.entity.Item -decDurability, decPriority, getBudget, getDurability, getKey, getPriority, getQuality, incDurability, incPriority, merge, setBudget, setDurability, setPriority, setQuality, toStringBrief +decDurability, decPriority, getBudget, getDurability, getKey, getPriority, getQuality, incDurability, incPriority, setBudget, setDurability, setPriority, setQuality, toStringBrief   @@ -347,7 +355,7 @@

    getContent

    -public Term getContent()
    +public Term getContent()
    Directly get the content of the sentence

    @@ -358,6 +366,20 @@


    +

    +getCreationTime

    +
    +public long getCreationTime()
    +
    +
    Directly get the creation time of the sentence +

    +

    + +
    Returns:
    The creation time of the sentence
    +
    +
    +
    +

    isInput

    @@ -386,14 +408,17 @@ 


    -

    +

    merge

    -public void merge(Task that)
    +public void merge(Item that)
    Merge one Task into another

    +
    Overrides:
    merge in class Item
    +
    +
    Parameters:
    that - The other Task
    diff --git a/nars-dist/javadoc/nars/entity/TaskLink.html b/nars-dist/javadoc/nars/entity/TaskLink.html index 2ce28173..7406cd65 100644 --- a/nars-dist/javadoc/nars/entity/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/TaskLink.html @@ -2,13 +2,13 @@ - + TaskLink - + @@ -178,6 +178,14 @@

    + void +merge(Item that) + +
    +          Merge one TaskLink into another + + +  boolean novel(TermLink termLink, long currentTime) @@ -202,7 +210,7 @@

    Methods inherited from class nars.entity.Item -decDurability, decPriority, getBudget, getDurability, getKey, getPriority, getQuality, incDurability, incPriority, merge, setBudget, setDurability, setPriority, setQuality, toString, toStringBrief +decDurability, decPriority, getBudget, getDurability, getKey, getPriority, getQuality, incDurability, incPriority, setBudget, setDurability, setPriority, setQuality, toString, toStringBrief   @@ -282,6 +290,22 @@

    Returns:
    Whether they are novel to each other
    +
    + +

    +merge

    +
    +public void merge(Item that)
    +
    +
    Merge one TaskLink into another +

    +

    +
    Overrides:
    merge in class Item
    +
    +
    +
    Parameters:
    that - The other TaskLink
    +
    +

    diff --git a/nars-dist/javadoc/nars/entity/TermLink.html b/nars-dist/javadoc/nars/entity/TermLink.html index 400a6c9d..c916dad3 100644 --- a/nars-dist/javadoc/nars/entity/TermLink.html +++ b/nars-dist/javadoc/nars/entity/TermLink.html @@ -2,13 +2,13 @@ - + TermLink - + @@ -241,7 +241,7 @@

      -TermLink(Term t, +TermLink(Term t, short p, int... indices) @@ -251,7 +251,7 @@

      -TermLink(Term t, +TermLink(Term t, TermLink template, BudgetValue v) @@ -286,7 +286,7 @@

    - Term + Term getTarget()
    @@ -469,10 +469,10 @@

    -

    +

    TermLink

    -public TermLink(Term t,
    +public TermLink(Term t,
                     short p,
                     int... indices)
    @@ -498,10 +498,10 @@


    -

    +

    TermLink

    -public TermLink(Term t,
    +public TermLink(Term t,
                     TermLink template,
                     BudgetValue v)
    @@ -539,7 +539,7 @@

    getTarget

    -public Term getTarget()
    +public Term getTarget()
    Get the target of the link

    diff --git a/nars-dist/javadoc/nars/entity/TruthValue.html b/nars-dist/javadoc/nars/entity/TruthValue.html index 77a0d987..b5b1d727 100644 --- a/nars-dist/javadoc/nars/entity/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/TruthValue.html @@ -2,13 +2,13 @@ - + TruthValue - + diff --git a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html index 76991067..97693ed1 100644 --- a/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/BudgetValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.BudgetValue - + @@ -91,10 +91,6 @@

    Packages that use BudgetValue -nars.container -Storage management  - - nars.entity Data entities that are independently stored  @@ -102,72 +98,9 @@

    nars.inference The inference rules and control functions  - -  -

    - - - - - -
    -Uses of BudgetValue in nars.container
    -  -

    - - - - - - - - - - - - - - - - - - - - - - - + +
    Methods in nars.container with parameters of type BudgetValue
    - voidMemory.activateConcept(Concept c, - BudgetValue b) - -
    -          Adjust the activation level of a Concept
    - voidMemory.activatedTask(BudgetValue budget, - Sentence sentence, - Sentence candidateBelief) - -
    -          Activated task called in MatchingRules.trySolution and Concept.processGoal
    - voidMemory.doublePremiseTask(Term newContent, - TruthValue newTruth, - BudgetValue newBudget) - -
    -          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    - voidMemory.singlePremiseTask(Term newContent, - char punctuation, - TruthValue newTruth, - BudgetValue newBudget) - -
    -          Shared final operations by all single-premise rules, called in StructuralRules
    - voidMemory.singlePremiseTask(Term newContent, - TruthValue newTruth, - BudgetValue newBudget) - -
    -          Shared final operations by all single-premise rules, called in StructuralRules
    nars.storageStorage management 
      @@ -305,7 +238,7 @@

              called from TaskLink -TermLink(Term t, +TermLink(Term t, TermLink template, BudgetValue v) @@ -332,8 +265,8 @@

    static BudgetValue -BudgetFunctions.backward(TruthValue truth, - Memory memory) +BudgetFunctions.backward(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, stronger case @@ -341,8 +274,8 @@

    static BudgetValue -BudgetFunctions.backwardWeak(TruthValue truth, - Memory memory) +BudgetFunctions.backwardWeak(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, weaker case @@ -350,8 +283,8 @@

    static BudgetValue -BudgetFunctions.compoundBackward(Term content, - Memory memory) +BudgetFunctions.compoundBackward(Term content, + Memory memory)
              Backward inference with CompoundTerm conclusion, stronger case @@ -359,8 +292,8 @@

    static BudgetValue -BudgetFunctions.compoundBackwardWeak(Term content, - Memory memory) +BudgetFunctions.compoundBackwardWeak(Term content, + Memory memory)
              Backward inference with CompoundTerm conclusion, weaker case @@ -368,9 +301,9 @@

    static BudgetValue -BudgetFunctions.compoundForward(TruthValue truth, - Term content, - Memory memory) +BudgetFunctions.compoundForward(TruthValue truth, + Term content, + Memory memory)
              Forward inference with CompoundTerm conclusion @@ -432,6 +365,84 @@

     

    + + + + + +
    +Uses of BudgetValue in nars.storage
    +  +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.storage with parameters of type BudgetValue
    + voidMemory.activateConcept(Concept c, + BudgetValue b) + +
    +          Adjust the activation level of a Concept
    + voidMemory.activatedTask(BudgetValue budget, + Sentence sentence, + Sentence candidateBelief) + +
    +          Activated task called in MatchingRules.trySolution and Concept.processGoal
    + voidMemory.doublePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    + voidMemory.doublePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget, + boolean revisible) + +
    +          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    + voidMemory.singlePremiseTask(Term newContent, + char punctuation, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all single-premise rules, called in StructuralRules
    + voidMemory.singlePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all single-premise rules, called in StructuralRules
    +  +


    diff --git a/nars-dist/javadoc/nars/entity/class-use/Concept.html b/nars-dist/javadoc/nars/entity/class-use/Concept.html index a83f8a87..9b90b1f3 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Concept.html +++ b/nars-dist/javadoc/nars/entity/class-use/Concept.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Concept - + @@ -91,10 +91,6 @@

    Packages that use Concept -nars.container -Storage management  - - nars.gui Graphical user interface of the system  @@ -102,14 +98,18 @@

    nars.inference The inference rules and control functions  + +nars.storage +Storage management  +  

    - + +Uses of Concept in nars.gui
    -Uses of Concept in nars.container
      @@ -117,47 +117,22 @@

    - + - - +          Constructor
    Fields in nars.container declared as ConceptConstructors in nars.gui with parameters of type Concept
    - ConceptMemory.currentConcept +ConceptWindow(Concept concept)
    -          The selected Concept
     

    - + - - - - - - - - - - - - - - + +
    Methods in nars.container that return Concept
    - ConceptMemory.getConcept(Term term) - -
    -          Get the Concept associated to a Term, or create it.
    - ConceptMemory.nameToConcept(java.lang.String name) - -
    -          Get an existing Concept for a given name
    - ConceptMemory.termToConcept(Term term) - -
    -          Get an existing Concept for a given Term.
    +Uses of Concept in nars.inference
      @@ -165,25 +140,25 @@

    - + - + +          Activate a concept by an incoming TaskLink
    Methods in nars.container with parameters of type ConceptMethods in nars.inference with parameters of type Concept
    - voidMemory.activateConcept(Concept c, - BudgetValue b) +static voidBudgetFunctions.activate(Concept concept, + BudgetValue budget)
    -          Adjust the activation level of a Concept
     

    - + +Uses of Concept in nars.storage
    -Uses of Concept in nars.gui
      @@ -191,22 +166,47 @@

    - + - + +          The selected Concept
    Constructors in nars.gui with parameters of type ConceptFields in nars.storage declared as Concept
    ConceptWindow(Concept concept) + + ConceptMemory.currentConcept
    -          Constructor
     

    - + - - + + + + + + + + + + + + + +
    -Uses of Concept in nars.inference
    Methods in nars.storage that return Concept
    + ConceptMemory.getConcept(Term term) + +
    +          Get the Concept associated to a Term, or create it.
    + ConceptMemory.nameToConcept(java.lang.String name) + +
    +          Get an existing Concept for a given name
    + ConceptMemory.termToConcept(Term term) + +
    +          Get an existing Concept for a given Term.
      @@ -214,16 +214,16 @@

    - + - + +          Adjust the activation level of a Concept
    Methods in nars.inference with parameters of type ConceptMethods in nars.storage with parameters of type Concept
    -static voidBudgetFunctions.activate(Concept concept, - BudgetValue budget) + voidMemory.activateConcept(Concept c, + BudgetValue b)
    -          Activate a concept by an incoming TaskLink
      diff --git a/nars-dist/javadoc/nars/entity/class-use/Item.html b/nars-dist/javadoc/nars/entity/class-use/Item.html index 2b824b14..05a0d2f2 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Item.html +++ b/nars-dist/javadoc/nars/entity/class-use/Item.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Item - + @@ -91,38 +91,12 @@

    Packages that use Item -nars.container -Storage management  - - nars.entity Data entities that are independently stored  - -  -

    - - - - - -
    -Uses of Item in nars.container
    -  -

    - - - - - - - + +
    Classes in nars.container with type parameters of type Item
    - classBag<Type extends Item> - -
    -          A Bag is a storage with a constant capacity and maintains an internal priority - distribution for retrieval.
    nars.storageStorage management 
      @@ -190,6 +164,48 @@


              Merge with another Item with identical key + + + void +Task.merge(Item that) + +
    +          Merge one Task into another + + + + void +TaskLink.merge(Item that) + +
    +          Merge one TaskLink into another + + +  +

    + + + + + +
    +Uses of Item in nars.storage
    +  +

    + + + + + + + + +
    Classes in nars.storage with type parameters of type Item
    + classBag<Type extends Item> + +
    +          A Bag is a storage with a constant capacity and maintains an internal priority + distribution for retrieval.
     

    diff --git a/nars-dist/javadoc/nars/entity/class-use/Sentence.html b/nars-dist/javadoc/nars/entity/class-use/Sentence.html index 48917e9c..5fee569e 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Sentence.html +++ b/nars-dist/javadoc/nars/entity/class-use/Sentence.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Sentence - + @@ -91,10 +91,6 @@

    Packages that use Sentence -nars.container -Storage management  - - nars.entity Data entities that are independently stored  @@ -102,57 +98,9 @@

    nars.inference The inference rules and control functions  - -  -

    - - - - - -
    -Uses of Sentence in nars.container
    -  -

    - - - - - - - - -
    Fields in nars.container declared as Sentence
    - SentenceMemory.currentBelief - -
    -          The selected belief
    -  -

    - - - - - - - - - - - - + +
    Methods in nars.container with parameters of type Sentence
    - voidMemory.activatedTask(BudgetValue budget, - Sentence sentence, - Sentence candidateBelief) - -
    -          Activated task called in MatchingRules.trySolution and Concept.processGoal
    - voidMemory.report(Sentence sentence, - boolean input) - -
    -          Display input/output sentence in the output channels.
    nars.storageStorage management 
      @@ -281,9 +229,9 @@

    static void -LocalRules.match(Task task, +LocalRules.match(Task task, Sentence belief, - Memory memory) + Memory memory)
              The task and belief have the same content @@ -291,10 +239,10 @@

    static void -LocalRules.matchAsymSym(Sentence asym, +LocalRules.matchAsymSym(Sentence asym, Sentence sym, int figure, - Memory memory) + Memory memory)
              Inheritance/Implication matches Similarity/Equivalence @@ -309,11 +257,20 @@

    +static boolean +LocalRules.revisible(Sentence s1, + Sentence s2) + +
    +          Check whether two sentences can be used in revision + + + static void -LocalRules.revision(Sentence newBelief, +LocalRules.revision(Sentence newBelief, Sentence oldBelief, boolean feedbackToLinks, - Memory memory) + Memory memory)
              Belief revision @@ -330,10 +287,10 @@

    static void -LocalRules.trySolution(Sentence problem, +LocalRules.trySolution(Sentence problem, Sentence belief, Task task, - Memory memory) + Memory memory)
              Check if a Sentence provide a better answer to a Question or Goal @@ -341,6 +298,58 @@

     

    + + + + + +
    +Uses of Sentence in nars.storage
    +  +

    + + + + + + + + + +
    Fields in nars.storage declared as Sentence
    + SentenceMemory.currentBelief + +
    +          The selected belief
    +  +

    + + + + + + + + + + + + + +
    Methods in nars.storage with parameters of type Sentence
    + voidMemory.activatedTask(BudgetValue budget, + Sentence sentence, + Sentence candidateBelief) + +
    +          Activated task called in MatchingRules.trySolution and Concept.processGoal
    + voidMemory.report(Sentence sentence, + boolean input) + +
    +          Display input/output sentence in the output channels.
    +  +


    diff --git a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html index 89952306..1af41241 100644 --- a/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html +++ b/nars-dist/javadoc/nars/entity/class-use/ShortFloat.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.ShortFloat - + diff --git a/nars-dist/javadoc/nars/entity/class-use/Stamp.html b/nars-dist/javadoc/nars/entity/class-use/Stamp.html index f3e056e8..490fdd7e 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Stamp.html +++ b/nars-dist/javadoc/nars/entity/class-use/Stamp.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Stamp - + @@ -91,37 +91,12 @@

    Packages that use Stamp -nars.container -Storage management  - - nars.entity Data entities that are independently stored  - -  -

    - - - - - -
    -Uses of Stamp in nars.container
    -  -

    - - - - - - - + +
    Fields in nars.container declared as Stamp
    - StampMemory.newStamp - -
    -          The new Stamp
    nars.storageStorage management 
      @@ -185,7 +160,7 @@

    Constructors in nars.entity with parameters of type Stamp -Sentence(Term content, +Sentence(Term content, char punctuation, TruthValue truth, Stamp stamp) @@ -193,6 +168,48 @@


              Create a Sentence with the given fields + +Sentence(Term content, + char punctuation, + TruthValue truth, + Stamp stamp, + boolean revisible) + +
    +          Create a Sentence with the given fields + + +Stamp(Stamp old, + long time) + +
    +          Generate a new stamp from an existing one, with the same evidentialBase but different creation time + + +  +

    + + + + + +
    +Uses of Stamp in nars.storage
    +  +

    + + + + + + + + +
    Fields in nars.storage declared as Stamp
    + StampMemory.newStamp + +
    +          The new Stamp
     

    diff --git a/nars-dist/javadoc/nars/entity/class-use/Task.html b/nars-dist/javadoc/nars/entity/class-use/Task.html index b89b28b5..d987520a 100644 --- a/nars-dist/javadoc/nars/entity/class-use/Task.html +++ b/nars-dist/javadoc/nars/entity/class-use/Task.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.Task - + @@ -91,10 +91,6 @@

    Packages that use Task -nars.container -Storage management  - - nars.entity Data entities that are independently stored  @@ -106,46 +102,9 @@

    nars.io Input/output management  - -  -

    - - - - - -
    -Uses of Task in nars.container
    -  -

    - - - - - - - - -
    Fields in nars.container declared as Task
    - TaskMemory.currentTask - -
    -          The selected Task
    -  -

    - - - - - - - - + +
    Methods in nars.container with parameters of type Task
    - voidMemory.inputTask(Task task) - -
    -          Input task processing.
    nars.storageStorage management 
      @@ -198,14 +157,6 @@

    - void -Task.merge(Task that) - -
    -          Merge one Task into another - - -  float Concept.processQuestion(Task task) @@ -267,9 +218,9 @@

    static void -LocalRules.match(Task task, +LocalRules.match(Task task, Sentence belief, - Memory memory) + Memory memory)
              The task and belief have the same content @@ -277,10 +228,10 @@

    static void -LocalRules.trySolution(Sentence problem, +LocalRules.trySolution(Sentence problem, Sentence belief, Task task, - Memory memory) + Memory memory)
              Check if a Sentence provide a better answer to a Question or Goal @@ -305,8 +256,8 @@

    static Task -StringParser.parseExperience(java.lang.StringBuffer buffer, - Memory memory, +StringParser.parseExperience(java.lang.StringBuffer buffer, + Memory memory, long time)
    @@ -315,8 +266,8 @@

    static Task -StringParser.parseTask(java.lang.String s, - Memory memory, +StringParser.parseTask(java.lang.String s, + Memory memory, long time)
    @@ -325,6 +276,47 @@

     

    + + + + + +
    +Uses of Task in nars.storage
    +  +

    + + + + + + + + + +
    Fields in nars.storage declared as Task
    + TaskMemory.currentTask + +
    +          The selected Task
    +  +

    + + + + + + + + + +
    Methods in nars.storage with parameters of type Task
    + voidMemory.inputTask(Task task) + +
    +          Input task processing.
    +  +


    diff --git a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html index 54121f67..2786da70 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TaskLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TaskLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TaskLink - + @@ -91,10 +91,6 @@

    Packages that use TaskLink -nars.container -Storage management  - - nars.entity Data entities that are independently stored  @@ -102,30 +98,18 @@

    nars.inference The inference rules and control functions  + +nars.storage +Storage management  +  

    - + - -
    -Uses of TaskLink in nars.container
    -  -

    - - - - - - - - +Uses of TaskLink in nars.entity
    Fields in nars.container declared as TaskLink
    - TaskLinkMemory.currentTaskLink - -
    -          The selected TaskLink
      @@ -133,25 +117,24 @@

    - + - + +          Insert a TaskLink into the TaskLink bag
    Methods in nars.container with parameters of type TaskLinkMethods in nars.entity with parameters of type TaskLink
    - TermLinkTermLinkBag.takeOut(TaskLink taskLink, - long time) + voidConcept.insertTaskLink(TaskLink taskLink)
    -          Replace defualt to prevent repeated inference, by checking TaskLink
     

    - + +Uses of TaskLink in nars.inference
    -Uses of TaskLink in nars.entity
      @@ -159,24 +142,35 @@

    - + - + +          Entry point of the inference engine + + + +
    Methods in nars.entity with parameters of type TaskLinkMethods in nars.inference with parameters of type TaskLink
    - voidConcept.insertTaskLink(TaskLink taskLink) +static voidRuleTables.reason(TaskLink tLink, + TermLink bLink, + Memory memory)
    -          Insert a TaskLink into the TaskLink bag
    +static voidRuleTables.transformTask(TaskLink tLink, + Memory memory) + +
    +          The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation
     

    - + +Uses of TaskLink in nars.storage
    -Uses of TaskLink in nars.inference
      @@ -184,26 +178,32 @@

    - + - + +          The selected TaskLink + +
    Methods in nars.inference with parameters of type TaskLinkFields in nars.storage declared as TaskLink
    -static voidRuleTables.reason(TaskLink tLink, - TermLink bLink, - Memory memory) + TaskLinkMemory.currentTaskLink
    -          Entry point of the inference engine
    +  +

    + + + + - + +          Replace defualt to prevent repeated inference, by checking TaskLink
    Methods in nars.storage with parameters of type TaskLink
    -static voidRuleTables.transformTask(TaskLink tLink, - Memory memory) + TermLinkTermLinkBag.takeOut(TaskLink taskLink, + long time)
    -          The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation
      diff --git a/nars-dist/javadoc/nars/entity/class-use/TermLink.html b/nars-dist/javadoc/nars/entity/class-use/TermLink.html index 934272c4..219c0f41 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TermLink.html +++ b/nars-dist/javadoc/nars/entity/class-use/TermLink.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TermLink - + @@ -91,10 +91,6 @@

    Packages that use TermLink -nars.container -Storage management  - - nars.entity Data entities that are independently stored  @@ -103,50 +99,12 @@

    The inference rules and control functions  -nars.term +nars.language Term hierarchy in Narsese  - -  -

    - - - - - -
    -Uses of TermLink in nars.container
    -  -

    - - - - - - - - -
    Fields in nars.container declared as TermLink
    - TermLinkMemory.currentBeliefLink - -
    -          The selected TermLink
    -  -

    - - - - - - - - + +
    Methods in nars.container that return TermLink
    - TermLinkTermLinkBag.takeOut(TaskLink taskLink, - long time) - -
    -          Replace defualt to prevent repeated inference, by checking TaskLink
    nars.storageStorage management 
      @@ -232,7 +190,7 @@

              Constructor -TermLink(Term t, +TermLink(Term t, TermLink template, BudgetValue v) @@ -259,9 +217,9 @@

    static void -RuleTables.reason(TaskLink tLink, +RuleTables.reason(TaskLink tLink, TermLink bLink, - Memory memory) + Memory memory)
              Entry point of the inference engine @@ -269,11 +227,11 @@

     

    - + +Uses of TermLink in nars.language
    -Uses of TermLink in nars.term
      @@ -281,12 +239,12 @@

    - + - @@ -294,6 +252,48 @@

    Methods in nars.term that return types with arguments of type TermLinkMethods in nars.language that return types with arguments of type TermLink
     java.util.ArrayList<TermLink>CompoundTerm.prepareComponentLinks() +CompoundTerm.prepareComponentLinks()
              Build TermLink templates to constant components and subcomponents
     

    + + + + + +
    +Uses of TermLink in nars.storage
    +  +

    + + + + + + + + + +
    Fields in nars.storage declared as TermLink
    + TermLinkMemory.currentBeliefLink + +
    +          The selected TermLink
    +  +

    + + + + + + + + + +
    Methods in nars.storage that return TermLink
    + TermLinkTermLinkBag.takeOut(TaskLink taskLink, + long time) + +
    +          Replace defualt to prevent repeated inference, by checking TaskLink
    +  +


    diff --git a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html index 951ca4a3..6a91e8fa 100644 --- a/nars-dist/javadoc/nars/entity/class-use/TruthValue.html +++ b/nars-dist/javadoc/nars/entity/class-use/TruthValue.html @@ -2,13 +2,13 @@ - + Uses of Class nars.entity.TruthValue - + @@ -91,10 +91,6 @@

    Packages that use TruthValue -nars.container -Storage management  - - nars.entity Data entities that are independently stored  @@ -102,53 +98,9 @@

    nars.inference The inference rules and control functions  - -  -

    - - - - - -
    -Uses of TruthValue in nars.container
    -  -

    - - - - - - - - - - - - - - - + +
    Methods in nars.container with parameters of type TruthValue
    - voidMemory.doublePremiseTask(Term newContent, - TruthValue newTruth, - BudgetValue newBudget) - -
    -          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    - voidMemory.singlePremiseTask(Term newContent, - char punctuation, - TruthValue newTruth, - BudgetValue newBudget) - -
    -          Shared final operations by all single-premise rules, called in StructuralRules
    - voidMemory.singlePremiseTask(Term newContent, - TruthValue newTruth, - BudgetValue newBudget) - -
    -          Shared final operations by all single-premise rules, called in StructuralRules
    nars.storageStorage management 
      @@ -200,11 +152,21 @@

    Constructors in nars.entity with parameters of type TruthValue -Sentence(Term content, +Sentence(Term content, char punctuation, TruthValue truth, Stamp stamp) +
    +          Create a Sentence with the given fields + + +Sentence(Term content, + char punctuation, + TruthValue truth, + Stamp stamp, + boolean revisible) +
              Create a Sentence with the given fields @@ -234,8 +196,8 @@

    static BudgetValue -BudgetFunctions.backward(TruthValue truth, - Memory memory) +BudgetFunctions.backward(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, stronger case @@ -243,8 +205,8 @@

    static BudgetValue -BudgetFunctions.backwardWeak(TruthValue truth, - Memory memory) +BudgetFunctions.backwardWeak(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, weaker case @@ -252,9 +214,9 @@

    static BudgetValue -BudgetFunctions.compoundForward(TruthValue truth, - Term content, - Memory memory) +BudgetFunctions.compoundForward(TruthValue truth, + Term content, + Memory memory)
              Forward inference with CompoundTerm conclusion @@ -270,6 +232,65 @@

     

    + + + + + +
    +Uses of TruthValue in nars.storage
    +  +

    + + + + + + + + + + + + + + + + + + + + + +
    Methods in nars.storage with parameters of type TruthValue
    + voidMemory.doublePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    + voidMemory.doublePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget, + boolean revisible) + +
    +          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    + voidMemory.singlePremiseTask(Term newContent, + char punctuation, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all single-premise rules, called in StructuralRules
    + voidMemory.singlePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget) + +
    +          Shared final operations by all single-premise rules, called in StructuralRules
    +  +


    diff --git a/nars-dist/javadoc/nars/entity/package-frame.html b/nars-dist/javadoc/nars/entity/package-frame.html index 0e100612..9c31575c 100644 --- a/nars-dist/javadoc/nars/entity/package-frame.html +++ b/nars-dist/javadoc/nars/entity/package-frame.html @@ -2,13 +2,13 @@ - + nars.entity - + diff --git a/nars-dist/javadoc/nars/entity/package-summary.html b/nars-dist/javadoc/nars/entity/package-summary.html index f0dd2f96..6d5eb886 100644 --- a/nars-dist/javadoc/nars/entity/package-summary.html +++ b/nars-dist/javadoc/nars/entity/package-summary.html @@ -2,13 +2,13 @@ - + nars.entity - + @@ -56,7 +56,7 @@ PREV PACKAGE  + PREV PACKAGE   NEXT PACKAGE FRAMES   @@ -203,7 +203,7 @@

    Package Specification

    PREV PACKAGE  + PREV PACKAGE   NEXT PACKAGE FRAMES   diff --git a/nars-dist/javadoc/nars/entity/package-tree.html b/nars-dist/javadoc/nars/entity/package-tree.html index 0bd99186..38fd486d 100644 --- a/nars-dist/javadoc/nars/entity/package-tree.html +++ b/nars-dist/javadoc/nars/entity/package-tree.html @@ -2,13 +2,13 @@ - + nars.entity Class Hierarchy - + @@ -56,7 +56,7 @@ PREV  + PREV   NEXT FRAMES   @@ -134,7 +134,7 @@

    PREV  + PREV   NEXT FRAMES   diff --git a/nars-dist/javadoc/nars/entity/package-use.html b/nars-dist/javadoc/nars/entity/package-use.html index 090b5710..998c2c1f 100644 --- a/nars-dist/javadoc/nars/entity/package-use.html +++ b/nars-dist/javadoc/nars/entity/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.entity - + @@ -91,10 +91,6 @@

    Packages that use nars.entity -nars.container -Storage management  - - nars.entity Data entities that are independently stored  @@ -111,75 +107,12 @@

    Input/output management  -nars.term +nars.language Term hierarchy in Narsese  - -  -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +
    -Classes in nars.entity used by nars.container
    BudgetValue - -
    -          A triple of priority (current), durability (decay), and quality (long-term average).
    Concept - -
    -          A concept contains information associated with a term, including directly - and indirectly related tasks and beliefs.
    Item - -
    -          An item is an object that can be put into a Bag, - to participate in the resource competation of the system.
    Sentence - -
    -          A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
    Stamp - -
    -          Each Sentence has a time stamp, consisting the following components: - (1) The creation time of the sentence, - (2) A evidentialBase of serial numbers of sentence, from which the sentence is derived.
    Task - -
    -          A task to be processed, consists of a Sentence and a BudgetValue
    TaskLink - -
    -          Reference to a Task.
    TermLink - -
    -          A link between a compound term and a component term
    TruthValue - -
    -          Frequency and confidence.
    nars.storageStorage management 
      @@ -333,14 +266,14 @@

     

    - + +Classes in nars.entity used by nars.language - @@ -348,6 +281,73 @@

    -Classes in nars.entity used by nars.term
    TermLink +TermLink
              A link between a compound term and a component term
     

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +Classes in nars.entity used by nars.storage
    BudgetValue + +
    +          A triple of priority (current), durability (decay), and quality (long-term average).
    Concept + +
    +          A concept contains information associated with a term, including directly + and indirectly related tasks and beliefs.
    Item + +
    +          An item is an object that can be put into a Bag, + to participate in the resource competation of the system.
    Sentence + +
    +          A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp.
    Stamp + +
    +          Each Sentence has a time stamp, consisting the following components: + (1) The creation time of the sentence, + (2) A evidentialBase of serial numbers of sentence, from which the sentence is derived.
    Task + +
    +          A task to be processed, consists of a Sentence and a BudgetValue
    TaskLink + +
    +          Reference to a Task.
    TermLink + +
    +          A link between a compound term and a component term
    TruthValue + +
    +          Frequency and confidence.
    +  +


    diff --git a/nars-dist/javadoc/nars/gui/BagWindow.html b/nars-dist/javadoc/nars/gui/BagWindow.html index 5e8cede3..765d8807 100644 --- a/nars-dist/javadoc/nars/gui/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/BagWindow.html @@ -2,13 +2,13 @@ - + BagWindow - + @@ -214,7 +214,7 @@

    Constructor Summary -BagWindow(Bag b, +BagWindow(Bag<?> b, java.lang.String title)
    @@ -347,10 +347,10 @@

    -

    +

    BagWindow

    -public BagWindow(Bag b,
    +public BagWindow(Bag<?> b,
                      java.lang.String title)
    Constructor diff --git a/nars-dist/javadoc/nars/gui/ConceptWindow.html b/nars-dist/javadoc/nars/gui/ConceptWindow.html index 5a19111e..22255beb 100644 --- a/nars-dist/javadoc/nars/gui/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/ConceptWindow.html @@ -2,13 +2,13 @@ - + ConceptWindow - + diff --git a/nars-dist/javadoc/nars/gui/InferenceWindow.html b/nars-dist/javadoc/nars/gui/InferenceWindow.html index 93090835..a84e5f2c 100644 --- a/nars-dist/javadoc/nars/gui/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/InferenceWindow.html @@ -2,13 +2,13 @@ - + InferenceWindow - + @@ -110,7 +110,7 @@

    -Window displying inference log +Window displaying inference log

    diff --git a/nars-dist/javadoc/nars/gui/InputWindow.html b/nars-dist/javadoc/nars/gui/InputWindow.html index d6a46f21..2000a7bc 100644 --- a/nars-dist/javadoc/nars/gui/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/InputWindow.html @@ -2,13 +2,13 @@ - + InputWindow - + diff --git a/nars-dist/javadoc/nars/gui/MainWindow.html b/nars-dist/javadoc/nars/gui/MainWindow.html index 39323b0d..8005742f 100644 --- a/nars-dist/javadoc/nars/gui/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/MainWindow.html @@ -2,13 +2,13 @@ - + MainWindow - + @@ -305,7 +305,7 @@

     void -nextOutput(java.util.ArrayList lines) +nextOutput(java.util.ArrayList<java.lang.String> lines)
              To process the next chunk of output data @@ -595,7 +595,7 @@

    nextOutput

    -public void nextOutput(java.util.ArrayList lines)
    +public void nextOutput(java.util.ArrayList<java.lang.String> lines)
    To process the next chunk of output data

    diff --git a/nars-dist/javadoc/nars/gui/MessageDialog.html b/nars-dist/javadoc/nars/gui/MessageDialog.html index bdfeae23..ab6c7143 100644 --- a/nars-dist/javadoc/nars/gui/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/MessageDialog.html @@ -2,13 +2,13 @@ - + MessageDialog - + diff --git a/nars-dist/javadoc/nars/gui/NarsFrame.html b/nars-dist/javadoc/nars/gui/NarsFrame.html index 99bb242a..ea164d0a 100644 --- a/nars-dist/javadoc/nars/gui/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/NarsFrame.html @@ -2,13 +2,13 @@ - + NarsFrame - + diff --git a/nars-dist/javadoc/nars/gui/ParameterWindow.html b/nars-dist/javadoc/nars/gui/ParameterWindow.html index b6b5ec87..a8f84a4d 100644 --- a/nars-dist/javadoc/nars/gui/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/ParameterWindow.html @@ -2,13 +2,13 @@ - + ParameterWindow - + diff --git a/nars-dist/javadoc/nars/gui/TermWindow.html b/nars-dist/javadoc/nars/gui/TermWindow.html index 5d8a7ac6..86a0f801 100644 --- a/nars-dist/javadoc/nars/gui/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/TermWindow.html @@ -2,13 +2,13 @@ - + TermWindow - + diff --git a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html index 148dec72..cec8ad8e 100644 --- a/nars-dist/javadoc/nars/gui/class-use/BagWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/BagWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.BagWindow - + diff --git a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html index a9a52b17..d8bc12ad 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ConceptWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ConceptWindow - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html index fb31e9bd..8608da37 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InferenceWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InferenceWindow - + diff --git a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html index 0393823b..1830ef4d 100644 --- a/nars-dist/javadoc/nars/gui/class-use/InputWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/InputWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.InputWindow - + diff --git a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html index ad8cff39..c6af0d3a 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MainWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/MainWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MainWindow - + @@ -91,21 +91,21 @@

    Packages that use MainWindow -nars.container -Storage management  - - nars.main Top-level classes of the system  + +nars.storage +Storage management  +  

    - + +Uses of MainWindow in nars.main
    -Uses of MainWindow in nars.container
      @@ -113,12 +113,12 @@

    - + - @@ -126,11 +126,11 @@

    Methods in nars.container that return MainWindowMethods in nars.main that return MainWindow
     MainWindowMemory.getMainWindow() +Reasoner.getMainWindow()
               
     

    - + +Uses of MainWindow in nars.storage
    -Uses of MainWindow in nars.main
      @@ -138,12 +138,12 @@

    - + - diff --git a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html index 6d52e737..296b1e78 100644 --- a/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html +++ b/nars-dist/javadoc/nars/gui/class-use/MessageDialog.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.MessageDialog - + diff --git a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html index 0b462d04..831c67ca 100644 --- a/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html +++ b/nars-dist/javadoc/nars/gui/class-use/NarsFrame.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.NarsFrame - + @@ -133,7 +133,7 @@

    +          Window displaying inference log - + diff --git a/nars-dist/javadoc/nars/gui/package-tree.html b/nars-dist/javadoc/nars/gui/package-tree.html index cbe2bf33..d1c68b15 100644 --- a/nars-dist/javadoc/nars/gui/package-tree.html +++ b/nars-dist/javadoc/nars/gui/package-tree.html @@ -2,13 +2,13 @@ - + nars.gui Class Hierarchy - + diff --git a/nars-dist/javadoc/nars/gui/package-use.html b/nars-dist/javadoc/nars/gui/package-use.html index c59f30fb..b288751a 100644 --- a/nars-dist/javadoc/nars/gui/package-use.html +++ b/nars-dist/javadoc/nars/gui/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.gui - + @@ -91,10 +91,6 @@

    Packages that use nars.gui

    - - - - @@ -102,20 +98,9 @@

    -
    Methods in nars.main that return MainWindowMethods in nars.storage that return MainWindow
     MainWindowReasoner.getMainWindow() +Memory.getMainWindow()
               
    InferenceWindow
    -          Window displying inference log
    diff --git a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html index 86aea373..3dfca370 100644 --- a/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/ParameterWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.ParameterWindow - + diff --git a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html index 40928a9d..54e892ce 100644 --- a/nars-dist/javadoc/nars/gui/class-use/TermWindow.html +++ b/nars-dist/javadoc/nars/gui/class-use/TermWindow.html @@ -2,13 +2,13 @@ - + Uses of Class nars.gui.TermWindow - + diff --git a/nars-dist/javadoc/nars/gui/package-frame.html b/nars-dist/javadoc/nars/gui/package-frame.html index ad24456d..10e9f641 100644 --- a/nars-dist/javadoc/nars/gui/package-frame.html +++ b/nars-dist/javadoc/nars/gui/package-frame.html @@ -2,13 +2,13 @@ - + nars.gui - + diff --git a/nars-dist/javadoc/nars/gui/package-summary.html b/nars-dist/javadoc/nars/gui/package-summary.html index fa10523b..a9488126 100644 --- a/nars-dist/javadoc/nars/gui/package-summary.html +++ b/nars-dist/javadoc/nars/gui/package-summary.html @@ -2,13 +2,13 @@ - + nars.gui - + @@ -105,7 +105,7 @@

    InferenceWindowWindow displying inference logWindow displaying inference log
    InputWindow
    nars.containerStorage management 
    nars.gui Graphical user interface of the system 
    nars.main Top-level classes of the system 
    -  -

    - - - - - - + +
    -Classes in nars.gui used by nars.container
    MainWindow - -
    -          Main window of NARS GUI
    nars.storageStorage management 
      @@ -168,6 +153,21 @@

    MainWindow +
    +          Main window of NARS GUI + + +  +

    + + + + + + + diff --git a/nars-dist/javadoc/nars/inference/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/BudgetFunctions.html index 2b58f6ee..d7ff33f0 100644 --- a/nars-dist/javadoc/nars/inference/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/BudgetFunctions.html @@ -2,13 +2,13 @@ - + BudgetFunctions - + @@ -147,8 +147,8 @@

    - @@ -156,8 +156,8 @@

    - @@ -165,8 +165,8 @@

    - @@ -174,8 +174,8 @@

    - @@ -183,9 +183,9 @@

    - @@ -376,11 +376,11 @@


    -

    +

    backward

     public static BudgetValue backward(TruthValue truth,
    -                                   Memory memory)
    + Memory memory)
    Backward inference result and adjustment, stronger case

    @@ -391,11 +391,11 @@


    -

    +

    backwardWeak

     public static BudgetValue backwardWeak(TruthValue truth,
    -                                       Memory memory)
    + Memory memory)
    Backward inference result and adjustment, weaker case

    @@ -406,12 +406,12 @@


    -

    +

    compoundForward

     public static BudgetValue compoundForward(TruthValue truth,
    -                                          Term content,
    -                                          Memory memory)
    + Term content, + Memory memory)
    Forward inference with CompoundTerm conclusion

    @@ -422,11 +422,11 @@


    -

    +

    compoundBackward

    -public static BudgetValue compoundBackward(Term content,
    -                                           Memory memory)
    +public static BudgetValuecompoundBackward(Term content, + Memory memory)
    Backward inference with CompoundTerm conclusion, stronger case

    @@ -437,11 +437,11 @@


    -

    +

    compoundBackwardWeak

    -public static BudgetValue compoundBackwardWeak(Term content,
    -                                               Memory memory)
    +public static BudgetValuecompoundBackwardWeak(Term content, + Memory memory)
    Backward inference with CompoundTerm conclusion, weaker case

    diff --git a/nars-dist/javadoc/nars/inference/CompositionalRules.html b/nars-dist/javadoc/nars/inference/CompositionalRules.html index 96b00bc3..2baa95e5 100644 --- a/nars-dist/javadoc/nars/inference/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/CompositionalRules.html @@ -2,13 +2,13 @@ - + CompositionalRules - + diff --git a/nars-dist/javadoc/nars/inference/LocalRules.html b/nars-dist/javadoc/nars/inference/LocalRules.html index 4896ec8a..dc5b57e3 100644 --- a/nars-dist/javadoc/nars/inference/LocalRules.html +++ b/nars-dist/javadoc/nars/inference/LocalRules.html @@ -2,13 +2,13 @@ - + LocalRules - + @@ -144,9 +144,9 @@

    - @@ -154,10 +154,10 @@

    - @@ -165,18 +165,27 @@

    - + + + + - @@ -193,10 +202,10 @@

    - @@ -241,12 +250,12 @@

    +Classes in nars.gui used by nars.storage
    MainWindow +
              Main window of NARS GUI
    static BudgetValuebackward(TruthValue truth, - Memory memory) +backward(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, stronger case
    static BudgetValuebackwardWeak(TruthValue truth, - Memory memory) +backwardWeak(TruthValue truth, + Memory memory)
              Backward inference result and adjustment, weaker case
    static BudgetValuecompoundBackward(Term content, - Memory memory) +compoundBackward(Term content, + Memory memory)
              Backward inference with CompoundTerm conclusion, stronger case
    static BudgetValuecompoundBackwardWeak(Term content, - Memory memory) +compoundBackwardWeak(Term content, + Memory memory)
              Backward inference with CompoundTerm conclusion, weaker case
    static BudgetValuecompoundForward(TruthValue truth, - Term content, - Memory memory) +compoundForward(TruthValue truth, + Term content, + Memory memory)
              Forward inference with CompoundTerm conclusion
    static voidmatch(Task task, +match(Task task, Sentence belief, - Memory memory) + Memory memory)
              The task and belief have the same content
    static voidmatchAsymSym(Sentence asym, +matchAsymSym(Sentence asym, Sentence sym, int figure, - Memory memory) + Memory memory)
              Inheritance/Implication matches Similarity/Equivalence
    static voidmatchReverse(Memory memory) +matchReverse(Memory memory)
              The task and belief match reversely
    +static booleanrevisible(Sentence s1, + Sentence s2) + +
    +          Check whether two sentences can be used in revision
    static voidrevision(Sentence newBelief, +revision(Sentence newBelief, Sentence oldBelief, boolean feedbackToLinks, - Memory memory) + Memory memory)
              Belief revision
    static voidtrySolution(Sentence problem, +trySolution(Sentence problem, Sentence belief, Task task, - Memory memory) + Memory memory)
              Check if a Sentence provide a better answer to a Question or Goal
    -

    +

    match

     public static void match(Task task,
                              Sentence belief,
    -                         Memory memory)
    + Memory memory)
    The task and belief have the same content

    @@ -258,13 +267,28 @@


    -

    +

    +revisible

    +
    +public static boolean revisible(Sentence s1,
    +                                Sentence s2)
    +
    +
    Check whether two sentences can be used in revision +

    +

    +
    Parameters:
    s1 - The first sentence
    s2 - The second sentence +
    Returns:
    If revision is possible between the two sentences
    +
    +
    +
    + +

    revision

     public static void revision(Sentence newBelief,
                                 Sentence oldBelief,
                                 boolean feedbackToLinks,
    -                            Memory memory)
    + Memory memory)
    Belief revision

    @@ -276,13 +300,13 @@


    -

    +

    trySolution

     public static void trySolution(Sentence problem,
                                    Sentence belief,
                                    Task task,
    -                               Memory memory)
    + Memory memory)
    Check if a Sentence provide a better answer to a Question or Goal

    @@ -307,10 +331,10 @@


    -

    +

    matchReverse

    -public static void matchReverse(Memory memory)
    +public static void matchReverse(Memory memory)
    The task and belief match reversely

    @@ -320,13 +344,13 @@


    -

    +

    matchAsymSym

     public static void matchAsymSym(Sentence asym,
                                     Sentence sym,
                                     int figure,
    -                                Memory memory)
    + Memory memory)
    Inheritance/Implication matches Similarity/Equivalence

    diff --git a/nars-dist/javadoc/nars/inference/RuleTables.html b/nars-dist/javadoc/nars/inference/RuleTables.html index 22cdaba7..7ee0a98a 100644 --- a/nars-dist/javadoc/nars/inference/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/RuleTables.html @@ -2,13 +2,13 @@ - + RuleTables - + @@ -139,9 +139,9 @@

    static void -reason(TaskLink tLink, +reason(TaskLink tLink, TermLink bLink, - Memory memory) + Memory memory)
              Entry point of the inference engine @@ -149,8 +149,8 @@

    static void -transformTask(TaskLink tLink, - Memory memory) +transformTask(TaskLink tLink, + Memory memory)
              The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation @@ -195,12 +195,12 @@

    -

    +

    reason

     public static void reason(TaskLink tLink,
                               TermLink bLink,
    -                          Memory memory)
    + Memory memory)
    Entry point of the inference engine

    @@ -210,11 +210,11 @@


    -

    +

    transformTask

     public static void transformTask(TaskLink tLink,
    -                                 Memory memory)
    + Memory memory)
    The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation

    diff --git a/nars-dist/javadoc/nars/inference/StructuralRules.html b/nars-dist/javadoc/nars/inference/StructuralRules.html index c59ecd5d..61bb76d8 100644 --- a/nars-dist/javadoc/nars/inference/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/StructuralRules.html @@ -2,13 +2,13 @@ - + StructuralRules - + @@ -138,8 +138,8 @@

    static void -transformNegation(Term content, - Memory memory) +transformNegation(Term content, + Memory memory)
              {A, A@(--, A)} |- (--, A) @@ -184,11 +184,11 @@

    -

    +

    transformNegation

    -public static void transformNegation(Term content,
    -                                     Memory memory)
    +public static void transformNegation(Term content, + Memory memory)
    {A, A@(--, A)} |- (--, A)

    diff --git a/nars-dist/javadoc/nars/inference/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/SyllogisticRules.html index bf002bc8..de96ee24 100644 --- a/nars-dist/javadoc/nars/inference/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/SyllogisticRules.html @@ -2,13 +2,13 @@ - + SyllogisticRules - + diff --git a/nars-dist/javadoc/nars/inference/TruthFunctions.html b/nars-dist/javadoc/nars/inference/TruthFunctions.html index c7f2f29e..2888104f 100644 --- a/nars-dist/javadoc/nars/inference/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/TruthFunctions.html @@ -2,13 +2,13 @@ - + TruthFunctions - + diff --git a/nars-dist/javadoc/nars/inference/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/UtilityFunctions.html index bba4c050..4c1ecebf 100644 --- a/nars-dist/javadoc/nars/inference/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/UtilityFunctions.html @@ -2,13 +2,13 @@ - + UtilityFunctions - + diff --git a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html index 097231c5..7a1ee430 100644 --- a/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/BudgetFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.BudgetFunctions - + diff --git a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html index 02a8c4c7..389edc95 100644 --- a/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/CompositionalRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.CompositionalRules - + diff --git a/nars-dist/javadoc/nars/inference/class-use/LocalRules.html b/nars-dist/javadoc/nars/inference/class-use/LocalRules.html index d44a103d..e886ba4b 100644 --- a/nars-dist/javadoc/nars/inference/class-use/LocalRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/LocalRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.LocalRules - + diff --git a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html index f95bb376..ce7e9f6f 100644 --- a/nars-dist/javadoc/nars/inference/class-use/RuleTables.html +++ b/nars-dist/javadoc/nars/inference/class-use/RuleTables.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.RuleTables - + diff --git a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html index 966efd59..487eacd4 100644 --- a/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/StructuralRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.StructuralRules - + diff --git a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html index 98b04df0..1cc76793 100644 --- a/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html +++ b/nars-dist/javadoc/nars/inference/class-use/SyllogisticRules.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.SyllogisticRules - + diff --git a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html index f68990da..df0c6ea5 100644 --- a/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/TruthFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.TruthFunctions - + diff --git a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html index bb1e3484..6330a335 100644 --- a/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html +++ b/nars-dist/javadoc/nars/inference/class-use/UtilityFunctions.html @@ -2,13 +2,13 @@ - + Uses of Class nars.inference.UtilityFunctions - + diff --git a/nars-dist/javadoc/nars/inference/package-frame.html b/nars-dist/javadoc/nars/inference/package-frame.html index 183b3003..61d2d359 100644 --- a/nars-dist/javadoc/nars/inference/package-frame.html +++ b/nars-dist/javadoc/nars/inference/package-frame.html @@ -2,13 +2,13 @@ - + nars.inference - + diff --git a/nars-dist/javadoc/nars/inference/package-summary.html b/nars-dist/javadoc/nars/inference/package-summary.html index 728f88fa..1950cfd0 100644 --- a/nars-dist/javadoc/nars/inference/package-summary.html +++ b/nars-dist/javadoc/nars/inference/package-summary.html @@ -2,13 +2,13 @@ - + nars.inference - + diff --git a/nars-dist/javadoc/nars/inference/package-tree.html b/nars-dist/javadoc/nars/inference/package-tree.html index c66b52a0..83ae6909 100644 --- a/nars-dist/javadoc/nars/inference/package-tree.html +++ b/nars-dist/javadoc/nars/inference/package-tree.html @@ -2,13 +2,13 @@ - + nars.inference Class Hierarchy - + diff --git a/nars-dist/javadoc/nars/inference/package-use.html b/nars-dist/javadoc/nars/inference/package-use.html index cbf21c80..a709c3b3 100644 --- a/nars-dist/javadoc/nars/inference/package-use.html +++ b/nars-dist/javadoc/nars/inference/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.inference - + diff --git a/nars-dist/javadoc/nars/io/ExperienceReader.html b/nars-dist/javadoc/nars/io/ExperienceReader.html index 8beb7c5d..96bf55f7 100644 --- a/nars-dist/javadoc/nars/io/ExperienceReader.html +++ b/nars-dist/javadoc/nars/io/ExperienceReader.html @@ -2,13 +2,13 @@ - + ExperienceReader - + @@ -159,7 +159,15 @@

    openLoadFile()
    -          Open an input experience file +          Open an input experience file with a FileDialog + + + + void +openLoadFile(java.lang.String filePath) + +
    +          Open an input experience file from given file Path   @@ -210,7 +218,7 @@

     public void openLoadFile()
    -
    Open an input experience file +
    Open an input experience file with a FileDialog

    @@ -221,6 +229,22 @@


    +

    +openLoadFile

    +
    +public void openLoadFile(java.lang.String filePath)
    +
    +
    Open an input experience file from given file Path +

    +

    +
    +
    +
    +
    Parameters:
    filePath - File to be readed as experience
    +
    +
    +
    +

    closeLoadFile

    @@ -249,7 +273,7 @@ 

    -
    Returns:
    Whether the input channel should be chacked again
    +
    Returns:
    Whether the input channel should be checked again
    diff --git a/nars-dist/javadoc/nars/io/ExperienceWriter.html b/nars-dist/javadoc/nars/io/ExperienceWriter.html index b04ffd50..01624f9f 100644 --- a/nars-dist/javadoc/nars/io/ExperienceWriter.html +++ b/nars-dist/javadoc/nars/io/ExperienceWriter.html @@ -2,13 +2,13 @@ - + ExperienceWriter - + @@ -148,7 +148,7 @@

     void -nextOutput(java.util.ArrayList lines) +nextOutput(java.util.ArrayList<java.lang.String> lines)
              Process the next chunk of output data @@ -240,7 +240,7 @@

    nextOutput

    -public void nextOutput(java.util.ArrayList lines)
    +public void nextOutput(java.util.ArrayList<java.lang.String> lines)
    Process the next chunk of output data

    diff --git a/nars-dist/javadoc/nars/io/InferenceRecorder.html b/nars-dist/javadoc/nars/io/InferenceRecorder.html index b5ac8cc3..f6e53dd1 100644 --- a/nars-dist/javadoc/nars/io/InferenceRecorder.html +++ b/nars-dist/javadoc/nars/io/InferenceRecorder.html @@ -2,13 +2,13 @@ - + InferenceRecorder - + @@ -102,7 +102,8 @@

    -Inference log, which record input/output of each inference step +Inference log, which record input/output of each inference step + jmv: make it an interface, with 2 implementations: GUI or batch, or apply MVC design pattern : append() is the event

    diff --git a/nars-dist/javadoc/nars/io/InputChannel.html b/nars-dist/javadoc/nars/io/InputChannel.html index 2edba414..b8b41932 100644 --- a/nars-dist/javadoc/nars/io/InputChannel.html +++ b/nars-dist/javadoc/nars/io/InputChannel.html @@ -2,13 +2,13 @@ - + InputChannel - + diff --git a/nars-dist/javadoc/nars/io/OutputChannel.html b/nars-dist/javadoc/nars/io/OutputChannel.html index 44182d8f..f7f394d8 100644 --- a/nars-dist/javadoc/nars/io/OutputChannel.html +++ b/nars-dist/javadoc/nars/io/OutputChannel.html @@ -2,13 +2,13 @@ - + OutputChannel - + @@ -120,7 +120,7 @@

     void -nextOutput(java.util.ArrayList output) +nextOutput(java.util.ArrayList<java.lang.String> output)
                @@ -142,7 +142,7 @@

    nextOutput

    -void nextOutput(java.util.ArrayList output)
    +void nextOutput(java.util.ArrayList<java.lang.String> output)
    diff --git a/nars-dist/javadoc/nars/io/StringParser.html b/nars-dist/javadoc/nars/io/StringParser.html index ef6182c1..3444daa3 100644 --- a/nars-dist/javadoc/nars/io/StringParser.html +++ b/nars-dist/javadoc/nars/io/StringParser.html @@ -2,13 +2,13 @@ - + StringParser - + @@ -157,8 +157,8 @@

    static Task -parseExperience(java.lang.StringBuffer buffer, - Memory memory, +parseExperience(java.lang.StringBuffer buffer, + Memory memory, long time)
    @@ -167,8 +167,8 @@

    static Task -parseTask(java.lang.String s, - Memory memory, +parseTask(java.lang.String s, + Memory memory, long time)
    @@ -176,9 +176,9 @@

    -static Term -parseTerm(java.lang.String s0, - Memory memory) +static Term +parseTerm(java.lang.String s0, + Memory memory)
              Top-level method that parse a Term in general, which may recursively call itself. @@ -223,11 +223,11 @@

    -

    +

    parseExperience

     public static Task parseExperience(java.lang.StringBuffer buffer,
    -                                   Memory memory,
    +                                   Memory memory,
                                        long time)
    Parse a line of input experience @@ -235,31 +235,33 @@

    called from ExperienceIO.loadLine

    -
    Parameters:
    buffer - The line to be parsed
    +
    Parameters:
    buffer - The line to be parsed
    memory - Reference to the memory
    time - The current time +
    Returns:
    An experienced task


    -

    +

    parseTask

     public static Task parseTask(java.lang.String s,
    -                             Memory memory,
    +                             Memory memory,
                                  long time)
    Enter a new Task in String into the memory, called from InputWindow or locally.

    -
    Parameters:
    s - the single-line input String
    +
    Parameters:
    s - the single-line input String
    memory - Reference to the memory
    time - The current time +
    Returns:
    An experienced task

    -

    +

    parseTerm

    -public static Term parseTerm(java.lang.String s0,
    -                             Memory memory)
    +public static Term parseTerm(java.lang.String s0, + Memory memory)
    Top-level method that parse a Term in general, which may recursively call itself.

    diff --git a/nars-dist/javadoc/nars/io/Symbols.html b/nars-dist/javadoc/nars/io/Symbols.html index 22d9b5f1..846ea953 100644 --- a/nars-dist/javadoc/nars/io/Symbols.html +++ b/nars-dist/javadoc/nars/io/Symbols.html @@ -2,13 +2,13 @@ - + Symbols - + diff --git a/nars-dist/javadoc/nars/io/class-use/ExperienceReader.html b/nars-dist/javadoc/nars/io/class-use/ExperienceReader.html index 64464115..4d2cdc01 100644 --- a/nars-dist/javadoc/nars/io/class-use/ExperienceReader.html +++ b/nars-dist/javadoc/nars/io/class-use/ExperienceReader.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.ExperienceReader - + diff --git a/nars-dist/javadoc/nars/io/class-use/ExperienceWriter.html b/nars-dist/javadoc/nars/io/class-use/ExperienceWriter.html index 3a6b04f4..f10ce146 100644 --- a/nars-dist/javadoc/nars/io/class-use/ExperienceWriter.html +++ b/nars-dist/javadoc/nars/io/class-use/ExperienceWriter.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.ExperienceWriter - + diff --git a/nars-dist/javadoc/nars/io/class-use/InferenceRecorder.html b/nars-dist/javadoc/nars/io/class-use/InferenceRecorder.html index cc6cadde..36bca70a 100644 --- a/nars-dist/javadoc/nars/io/class-use/InferenceRecorder.html +++ b/nars-dist/javadoc/nars/io/class-use/InferenceRecorder.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.InferenceRecorder - + @@ -91,21 +91,21 @@

    Packages that use InferenceRecorder -nars.container -Storage management  - - nars.gui Graphical user interface of the system  + +nars.storage +Storage management  +  

    - + +Uses of InferenceRecorder in nars.gui
    -Uses of InferenceRecorder in nars.container
      @@ -113,24 +113,22 @@

    - + - - +          Constructor
    Methods in nars.container that return InferenceRecorderConstructors in nars.gui with parameters of type InferenceRecorder
    - InferenceRecorderMemory.getRecorder() +InferenceWindow(InferenceRecorder recorder)
    -           
     

    - + +Uses of InferenceRecorder in nars.storage
    -Uses of InferenceRecorder in nars.gui
      @@ -138,13 +136,15 @@

    - + - + +           
    Constructors in nars.gui with parameters of type InferenceRecorderMethods in nars.storage that return InferenceRecorder
    InferenceWindow(InferenceRecorder recorder) + + InferenceRecorderMemory.getRecorder()
    -          Constructor
      diff --git a/nars-dist/javadoc/nars/io/class-use/InputChannel.html b/nars-dist/javadoc/nars/io/class-use/InputChannel.html index af05f5b9..b341f897 100644 --- a/nars-dist/javadoc/nars/io/class-use/InputChannel.html +++ b/nars-dist/javadoc/nars/io/class-use/InputChannel.html @@ -2,13 +2,13 @@ - + Uses of Interface nars.io.InputChannel - + diff --git a/nars-dist/javadoc/nars/io/class-use/OutputChannel.html b/nars-dist/javadoc/nars/io/class-use/OutputChannel.html index f09ca436..e4954c8e 100644 --- a/nars-dist/javadoc/nars/io/class-use/OutputChannel.html +++ b/nars-dist/javadoc/nars/io/class-use/OutputChannel.html @@ -2,13 +2,13 @@ - + Uses of Interface nars.io.OutputChannel - + diff --git a/nars-dist/javadoc/nars/io/class-use/StringParser.html b/nars-dist/javadoc/nars/io/class-use/StringParser.html index bcba8373..d99b0397 100644 --- a/nars-dist/javadoc/nars/io/class-use/StringParser.html +++ b/nars-dist/javadoc/nars/io/class-use/StringParser.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.StringParser - + diff --git a/nars-dist/javadoc/nars/io/class-use/Symbols.html b/nars-dist/javadoc/nars/io/class-use/Symbols.html index b17f9451..9cf1760e 100644 --- a/nars-dist/javadoc/nars/io/class-use/Symbols.html +++ b/nars-dist/javadoc/nars/io/class-use/Symbols.html @@ -2,13 +2,13 @@ - + Uses of Class nars.io.Symbols - + diff --git a/nars-dist/javadoc/nars/io/package-frame.html b/nars-dist/javadoc/nars/io/package-frame.html index 8dfbaf0f..c6c9992d 100644 --- a/nars-dist/javadoc/nars/io/package-frame.html +++ b/nars-dist/javadoc/nars/io/package-frame.html @@ -2,13 +2,13 @@ - + nars.io - + diff --git a/nars-dist/javadoc/nars/io/package-summary.html b/nars-dist/javadoc/nars/io/package-summary.html index 0b4c6cfe..76e7311e 100644 --- a/nars-dist/javadoc/nars/io/package-summary.html +++ b/nars-dist/javadoc/nars/io/package-summary.html @@ -2,13 +2,13 @@ - + nars.io - + @@ -57,7 +57,7 @@  PREV PACKAGE  - NEXT PACKAGENEXT PACKAGE FRAMES    NO FRAMES   @@ -125,7 +125,8 @@

    InferenceRecorder -Inference log, which record input/output of each inference step +Inference log, which record input/output of each inference step + jmv: make it an interface, with 2 implementations: GUI or batch, or apply MVC design pattern : append() is the event StringParser @@ -185,7 +186,7 @@

    Package Specification

     PREV PACKAGE  - NEXT PACKAGENEXT PACKAGE
    FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/io/package-tree.html b/nars-dist/javadoc/nars/io/package-tree.html index a90659b0..31e6a6e9 100644 --- a/nars-dist/javadoc/nars/io/package-tree.html +++ b/nars-dist/javadoc/nars/io/package-tree.html @@ -2,13 +2,13 @@ - + nars.io Class Hierarchy - + @@ -57,7 +57,7 @@  PREV  - NEXTNEXT FRAMES    NO FRAMES   @@ -135,7 +135,7 @@

     PREV  - NEXTNEXT FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/io/package-use.html b/nars-dist/javadoc/nars/io/package-use.html index b571f747..0f9ba166 100644 --- a/nars-dist/javadoc/nars/io/package-use.html +++ b/nars-dist/javadoc/nars/io/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.io - + @@ -91,10 +91,6 @@

    Packages that use nars.io -nars.container -Storage management  - - nars.gui Graphical user interface of the system  @@ -106,20 +102,9 @@

    nars.main Top-level classes of the system  - -  -

    - - - - - - + +
    -Classes in nars.io used by nars.container
    InferenceRecorder - -
    -          Inference log, which record input/output of each inference step
    nars.storageStorage management 
      @@ -134,7 +119,8 @@

    InferenceRecorder
    -          Inference log, which record input/output of each inference step +          Inference log, which record input/output of each inference step + jmv: make it an interface, with 2 implementations: GUI or batch, or apply MVC design pattern : append() is the event InputChannel @@ -205,6 +191,22 @@

     

    + + + + + + + + +
    +Classes in nars.io used by nars.storage
    InferenceRecorder + +
    +          Inference log, which record input/output of each inference step + jmv: make it an interface, with 2 implementations: GUI or batch, or apply MVC design pattern : append() is the event
    +  +


    diff --git a/nars-dist/javadoc/nars/language/CompoundTerm.html b/nars-dist/javadoc/nars/language/CompoundTerm.html index 4a65e7bd..151c3f60 100644 --- a/nars-dist/javadoc/nars/language/CompoundTerm.html +++ b/nars-dist/javadoc/nars/language/CompoundTerm.html @@ -2,13 +2,13 @@ - + -CompoundTerm (NARS Document) +CompoundTerm - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="CompoundTerm (NARS Document)"; + parent.document.title="CompoundTerm"; } } @@ -146,11 +146,11 @@

    -protected  java.util.ArrayList<Variable> -openVariables +protected  boolean +isConstant
    -          list of open variables in the compound +          Whether the term names a concept   @@ -182,8 +182,7 @@

    protected -CompoundTerm(java.lang.String n, - java.util.ArrayList<Term> arg) +CompoundTerm(java.util.ArrayList<Term> components)
              Constructor called from subclasses constructors to initialize the fields @@ -191,10 +190,19 @@

    protected -CompoundTerm(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) +CompoundTerm(java.lang.String name, + java.util.ArrayList<Term> components) + +
    +          Constructor called from subclasses constructors to initialize the fields + + + +protected +CompoundTerm(java.lang.String name, + java.util.ArrayList<Term> components, + boolean isConstant, + short complexity)
              Constructor called from subclasses constructors to clone the fields @@ -212,28 +220,29 @@

    static Term -addComponents(CompoundTerm t1, - Term t2) +addComponents(CompoundTerm t1, + Term t2, + Memory memory)
              Try to add a component into a compound -protected static java.util.ArrayList<Term> -argumentsToList(Term t1, - Term t2) + void +applySubstitute(java.util.HashMap<Term,Term> subs)
    -          build a component list from two terms +          Recersively apply a substitute to the current CompoundTerm -private  void -calcComplexity() +protected static java.util.ArrayList<Term> +argumentsToList(Term t1, + Term t2)
    -          The complexity of the term is the sum of those of the components plus 1 +          build a component list from two terms @@ -253,8 +262,8 @@

    -static java.util.ArrayList -cloneList(java.util.ArrayList original) +static java.util.ArrayList<Term> +cloneList(java.util.ArrayList<Term> original)
              Deep clone an array list of terms @@ -286,10 +295,18 @@

     boolean -containNoVariable() +containTerm(Term target) + +
    +          Recursively check if a compound contains a term + + + + boolean +containVar()
    -          check if the term contains any variable +          Whether this compound term contains any variable term @@ -309,30 +326,6 @@

    - java.lang.String -getConstantName() - -
    -          skip all variable names to produce stable sorting order among components, not for display - - - - java.util.ArrayList<Variable> -getOpenVariables() - -
    -          get the OpenVariables list - - - -private static boolean -isBuiltInOperator(java.lang.String s) - -
    -          Check built-in operator name - - -  boolean isCommutative() @@ -358,8 +351,9 @@

    static Term -make(CompoundTerm compound, - java.util.ArrayList<Term> components) +make(CompoundTerm compound, + java.util.ArrayList<Term> components, + Memory memory)
              Try to make a compound term from a template and a list of components @@ -367,8 +361,9 @@

    static Term -make(java.lang.String op, - java.util.ArrayList<Term> arg) +make(java.lang.String op, + java.util.ArrayList<Term> arg, + Memory memory)
              Try to make a compound term from an operator and a list of components @@ -380,7 +375,7 @@

    java.util.ArrayList<Term> arg)
    -          default method to make the name of a compound term from given fields +          default method to make the oldName of a compound term from given fields @@ -390,7 +385,7 @@

    int relationIndex)
    -          default method to make the name of an image term from given fields +          default method to make the oldName of an image term from given fields @@ -398,7 +393,7 @@

    makeName()
    -          default method to make the name of the current term from existing fields +          default method to make the oldName of the current term from existing fields @@ -408,24 +403,7 @@

    char closer)
    -          make the name of an ExtensionSet or IntensionSet - - - -private  java.lang.String -makeVarName(int size, - Variable v) - -
    -          Sequentially generate new variable names - - - -private  void -markVariables() - -
    -          Register open and closed variables in a CompoundTerm +          make the oldName of an ExtensionSet or IntensionSet @@ -445,19 +423,10 @@

    -private  void -prepareComponentLinks(java.util.ArrayList<TermLink> componentLinks, - short type, - CompoundTerm term) - -
    -          Collect TermLink templates into a list, go down one level except in special cases - - - static Term -reduceComponents(CompoundTerm t1, - Term t2) +reduceComponents(CompoundTerm t1, + Term t2, + Memory memory)
              Try to remove a component from a compound @@ -468,35 +437,34 @@

    renameVariables()
    -          Rename variables in input sentence +          Rename the variables in the compound -protected  void -renameVariables(java.util.HashMap<java.lang.String,java.lang.String> varMap) + void
    +renameVariables(java.util.HashMap<Variable,Variable> map)
    -          Recursively rename variables by their appearing order in the CompoundTerm +          Rename the variables in the compound static Term -replaceComponent(CompoundTerm compound, - int index, - Term t) +setComponent(CompoundTerm compound, + int index, + Term t, + Memory memory)
              Try to replace a component in a compound at a given index by another one -static Term -replaceComponent(CompoundTerm compound, - Term oldComponent, - Term newComponent) + void
    +setConstant(boolean isConstant)
    -          Try to replace a given component in a compound by another one +          Set the constant status @@ -504,7 +472,7 @@

    setName(java.lang.String s)
    -          Change the name of a CompoundTerm, called after variable substitution +          Change the oldName of a CompoundTerm, called after variable substitution @@ -514,15 +482,6 @@


              get the number of components - - - void -substituteComponent(java.util.HashMap<java.lang.String,Term> subs, - boolean first) - -
    -          Substitute a variable component according to a given substitution -   @@ -530,7 +489,7 @@

    - +
    Methods inherited from class nars.language.Term
    compareTo, equals, getName, getOrder, hashCode, isTemporal, toStringcompareTo, equals, getName, hashCode, toString
      @@ -567,24 +526,24 @@


    -

    -openVariables

    +

    +complexity

    -protected java.util.ArrayList<Variable> openVariables
    +protected short complexity
    -
    list of open variables in the compound +
    syntactic complexity of the compound, the sum of those of its components plus 1


    -

    -complexity

    +

    +isConstant

    -protected short complexity
    +protected boolean isConstant
    -
    syntactic complexity of the compound, the sum of those of its components plus 1 +
    Whether the term names a concept

    @@ -610,31 +569,43 @@


    -

    +

    CompoundTerm

    -protected CompoundTerm(java.lang.String n,
    -                       java.util.ArrayList<Term> cs,
    -                       java.util.ArrayList<Variable> open,
    -                       short i)
    +protected CompoundTerm(java.lang.String name, + java.util.ArrayList<Term> components, + boolean isConstant, + short complexity)
    Constructor called from subclasses constructors to clone the fields

    -
    Parameters:
    n - Name
    cs - Component list
    open - Open variable list
    i - Complexity
    +
    Parameters:
    name - Name
    components - Component list
    isConstant - Whether the term refers to a concept
    complexity - Complexity of the compound term
    +
    +
    + +

    +CompoundTerm

    +
    +protected CompoundTerm(java.util.ArrayList<Term> components)
    +
    +
    Constructor called from subclasses constructors to initialize the fields +

    +

    +
    Parameters:
    components - Component list

    CompoundTerm

    -protected CompoundTerm(java.lang.String n,
    -                       java.util.ArrayList<Term> arg)
    +protected CompoundTerm(java.lang.String name, + java.util.ArrayList<Term> components)
    Constructor called from subclasses constructors to initialize the fields

    -
    Parameters:
    n - Name, to be re-built
    arg - Component list
    +
    Parameters:
    name - Name of the compound
    components - Component list
    @@ -647,23 +618,6 @@

    -

    -clone

    -
    -public abstract java.lang.Object clone()
    -
    -
    Abstract clone method -

    -

    -
    Overrides:
    clone in class Term
    -
    -
    - -
    Returns:
    A clone of the compound term
    -
    -
    -
    -

    operator

    @@ -678,78 +632,70 @@ 


    -

    -setName

    +

    +clone

    -protected void setName(java.lang.String s)
    +public abstract java.lang.Object clone()
    -
    Change the name of a CompoundTerm, called after variable substitution +
    Abstract clone method

    -
    Parameters:
    s - The new name
    +
    Overrides:
    clone in class Term
    +

    +
    + +
    Returns:
    A clone of the compound term

    -

    -calcComplexity

    +

    +setName

    -private void calcComplexity()
    +protected void setName(java.lang.String s)
    -
    The complexity of the term is the sum of those of the components plus 1 +
    Change the oldName of a CompoundTerm, called after variable substitution

    -
    +
    Parameters:
    s - The new oldName

    -

    +

    make

     public static Term make(CompoundTerm compound,
    -                        java.util.ArrayList<Term> components)
    + java.util.ArrayList<Term> components, + Memory memory)
    Try to make a compound term from a template and a list of components

    -
    Parameters:
    compound - The template
    components - The components +
    Parameters:
    compound - The template
    components - The components
    memory - Reference to the memory
    Returns:
    A compound term or null

    -

    +

    make

     public static Term make(java.lang.String op,
    -                        java.util.ArrayList<Term> arg)
    + java.util.ArrayList<Term> arg, + Memory memory)
    Try to make a compound term from an operator and a list of components

    Called from StringParser

    -
    Parameters:
    op - Term operator
    arg - Component list +
    Parameters:
    op - Term operator
    arg - Component list
    memory - Reference to the memory
    Returns:
    A compound term or null

    -

    -isBuiltInOperator

    -
    -private static boolean isBuiltInOperator(java.lang.String s)
    -
    -
    Check built-in operator name -

    -

    -
    Parameters:
    s - The String to be checked -
    Returns:
    if the given String is an operator name
    -
    -
    -
    -

    isOperator

    @@ -784,11 +730,11 @@ 

     protected java.lang.String makeName()
    -
    default method to make the name of the current term from existing fields +
    default method to make the oldName of the current term from existing fields

    -
    Returns:
    the name of the term
    +
    Returns:
    the oldName of the term

    @@ -799,11 +745,11 @@

    protected static java.lang.String makeCompoundName(java.lang.String op, java.util.ArrayList<Term> arg)

    -
    default method to make the name of a compound term from given fields +
    default method to make the oldName of a compound term from given fields

    Parameters:
    op - the term operator
    arg - the list of components -
    Returns:
    the name of the term
    +
    Returns:
    the oldName of the term

    @@ -815,11 +761,11 @@

    java.util.ArrayList<Term> arg, char closer)
    -
    make the name of an ExtensionSet or IntensionSet +
    make the oldName of an ExtensionSet or IntensionSet

    Parameters:
    opener - the set opener
    closer - the set closer
    arg - the list of components -
    Returns:
    the name of the term
    +
    Returns:
    the oldName of the term

    @@ -831,28 +777,11 @@

    java.util.ArrayList<Term> arg, int relationIndex)
    -
    default method to make the name of an image term from given fields +
    default method to make the oldName of an image term from given fields

    Parameters:
    op - the term operator
    arg - the list of components
    relationIndex - the location of the place holder -
    Returns:
    the name of the term
    -
    -
    -
    - -

    -getConstantName

    -
    -public java.lang.String getConstantName()
    -
    -
    skip all variable names to produce stable sorting order among components, not for display -

    -

    -
    Overrides:
    getConstantName in class Term
    -
    -
    - -
    Returns:
    the constant part of the term name
    +
    Returns:
    the oldName of the term

    @@ -891,16 +820,15 @@


    -

    -containNoVariable

    +

    +setConstant

    -public boolean containNoVariable()
    +public void setConstant(boolean isConstant)
    -
    check if the term contains any variable +
    Set the constant status

    - -
    Returns:
    if the name contains no variable
    +
    Parameters:
    isConstant -

    @@ -982,7 +910,7 @@

    cloneList

    -public static java.util.ArrayList cloneList(java.util.ArrayList original)
    +public static java.util.ArrayList<Term> cloneList(java.util.ArrayList<Term> original)
    Deep clone an array list of terms

    @@ -1007,6 +935,23 @@


    +

    +containTerm

    +
    +public boolean containTerm(Term target)
    +
    +
    Recursively check if a compound contains a term +

    +

    +
    Overrides:
    containTerm in class Term
    +
    +
    +
    Parameters:
    target - The term to be searched +
    Returns:
    Whether the terget is in the current term
    +
    +
    +
    +

    containAllComponents

    @@ -1021,96 +966,65 @@ 


    -

    +

    addComponents

     public static Term addComponents(CompoundTerm t1,
    -                                 Term t2)
    + Term t2, + Memory memory)
    Try to add a component into a compound

    -
    Parameters:
    t1 - The compound
    t2 - The component +
    Parameters:
    t1 - The compound
    t2 - The component
    memory - Reference to the memeory
    Returns:
    The new compound

    -

    +

    reduceComponents

     public static Term reduceComponents(CompoundTerm t1,
    -                                    Term t2)
    + Term t2, + Memory memory)
    Try to remove a component from a compound

    -
    Parameters:
    t1 - The compound
    t2 - The component +
    Parameters:
    t1 - The compound
    t2 - The component
    memory - Reference to the memeory
    Returns:
    The new compound

    -

    -replaceComponent

    +

    +setComponent

    -public static Term replaceComponent(CompoundTerm compound,
    -                                    int index,
    -                                    Term t)
    +public static Term setComponent(CompoundTerm compound, + int index, + Term t, + Memory memory)
    Try to replace a component in a compound at a given index by another one

    -
    Parameters:
    compound - The compound
    index - The location of replacement
    t - The new component +
    Parameters:
    compound - The compound
    index - The location of replacement
    t - The new component
    memory - Reference to the memeory
    Returns:
    The new compound

    -

    -replaceComponent

    +

    +containVar

    -public static Term replaceComponent(CompoundTerm compound,
    -                                    Term oldComponent,
    -                                    Term newComponent)
    +public boolean containVar()
    -
    Try to replace a given component in a compound by another one +
    Whether this compound term contains any variable term

    -
    Parameters:
    compound - The compound
    oldComponent - The component to remove
    newComponent - The component to add -
    Returns:
    The new compound
    -
    -
    -
    -

    -getOpenVariables

    -
    -public java.util.ArrayList<Variable> getOpenVariables()
    -
    -
    get the OpenVariables list -

    -

    - -
    Returns:
    the open variables list
    -
    -
    -
    - -

    -markVariables

    -
    -private void markVariables()
    -
    -
    Register open and closed variables in a CompoundTerm -

    - An open variable only appears in one components, while a closed variable - appears in multiple components -

    - May need further testing and revising on various situations -

    -

    -
    +
    Returns:
    Whether the name contains a variable

    @@ -1120,11 +1034,12 @@

     public void renameVariables()
    -
    Rename variables in input sentence -

    - only called from Sentence +

    Rename the variables in the compound

    +
    Overrides:
    renameVariables in class Term
    +
    +
    @@ -1133,46 +1048,25 @@

    renameVariables

    -protected void renameVariables(java.util.HashMap<java.lang.String,java.lang.String> varMap)
    +public void renameVariables(java.util.HashMap<Variable,Variable> map)
    -
    Recursively rename variables by their appearing order in the CompoundTerm -

    - Since each occurance of a variable is processed exactly once, there will - be no confusion between new names and old names. +

    Rename the variables in the compound

    -
    Parameters:
    varMap - the mapping built so far
    +
    Parameters:
    map - The substitution established so far

    -

    -makeVarName

    +

    +applySubstitute

    -private java.lang.String makeVarName(int size,
    -                                     Variable v)
    +public void applySubstitute(java.util.HashMap<Term,Term> subs)
    -
    Sequentially generate new variable names +
    Recersively apply a substitute to the current CompoundTerm

    -
    Parameters:
    size - The current size of the variable list
    v - The variable to be renamed -
    Returns:
    A new variable name
    -
    -
    -
    - -

    -substituteComponent

    -
    -public void substituteComponent(java.util.HashMap<java.lang.String,Term> subs,
    -                                boolean first)
    -
    -
    Substitute a variable component according to a given substitution -

    - This method cannot be changed into a static method retuning a new object with a different reference -

    -

    -
    Parameters:
    subs - The substitution
    first - Whether it is the first term in the mapping
    +
    Parameters:
    subs -

    @@ -1191,22 +1085,6 @@

    Returns:
    A list of TermLink templates
    -
    - -

    -prepareComponentLinks

    -
    -private void prepareComponentLinks(java.util.ArrayList<TermLink> componentLinks,
    -                                   short type,
    -                                   CompoundTerm term)
    -
    -
    Collect TermLink templates into a list, go down one level except in special cases -

    -

    -

    -
    Parameters:
    componentLinks - The list of TermLink templates built so far
    type - The type of TermLink to be built
    term - The CompoundTerm for which the links are built
    -
    -

    diff --git a/nars-dist/javadoc/nars/language/Conjunction.html b/nars-dist/javadoc/nars/language/Conjunction.html index c41b8ea4..9bbc8a73 100644 --- a/nars-dist/javadoc/nars/language/Conjunction.html +++ b/nars-dist/javadoc/nars/language/Conjunction.html @@ -2,13 +2,13 @@ - + -Conjunction (NARS Document) +Conjunction - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Conjunction (NARS Document)"; + parent.document.title="Conjunction"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD
    -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD
    @@ -122,14 +122,6 @@

    Field Summary - - -private  int -temporalOrder - -
    -          Temporal order between the components: 1 for sequential, 0 for parallel, -1 for N/A -   @@ -137,7 +129,7 @@

    - +
    Fields inherited from class nars.language.CompoundTerm
    complexity, components, openVariablescomplexity, components, isConstant
      @@ -161,24 +153,21 @@

    protected -Conjunction(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i, - int order) +Conjunction(java.util.ArrayList<Term> arg)
    -          Constructor with full values, called by clone +          Constructor with partial values, called by make protected -Conjunction(java.lang.String n, - java.util.ArrayList<Term> arg, - int order) +Conjunction(java.lang.String n, + java.util.ArrayList<Term> cs, + boolean con, + short i)
    -          Constructor with partial values, called by make +          Constructor with full values, called by clone   @@ -200,22 +189,6 @@

    -static java.lang.String -getConjunctionSymbol(int t) - -
    -          COnvert a temporal into its String representation - - - - int -getOrder() - -
    -          Return the temporal order. - - -  boolean isCommutative() @@ -224,33 +197,9 @@

    -static boolean -isParallel(Term t) - -
    -          Whether the Term is a parallel conjunction - - - -static boolean -isSequence(Term t) - -
    -          Whether the Term is a sequential conjunction - - - - boolean -isTemporal() - -
    -          Whether there is a temporal order in the term, which is false by default - - - static Term -make(java.util.ArrayList<Term> argList, - int order) +make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new compound from a list of components. @@ -258,24 +207,15 @@

    static Term -make(Term term1, +make(Term term1, Term term2, - int order) + Memory memory)
              Try to make a new compound from two components. -static Term -make(java.util.TreeSet<Term> set, - int order) - -
    -          Try to make a new compound from a set of components. - - -  java.lang.String operator() @@ -289,7 +229,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -313,27 +253,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -temporalOrder

    -
    -private int temporalOrder
    -
    -
    Temporal order between the components: 1 for sequential, 0 for parallel, -1 for N/A -

    -

    -
    -
    - @@ -344,33 +263,30 @@

    -

    +

    Conjunction

    -protected Conjunction(java.lang.String n,
    -                      java.util.ArrayList<Term> arg,
    -                      int order)
    +protected Conjunction(java.util.ArrayList<Term> arg)
    Constructor with partial values, called by make

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    order - The temporal order of the components
    +
    Parameters:
    arg - The component list of the term

    -

    +

    Conjunction

     protected Conjunction(java.lang.String n,
                           java.util.ArrayList<Term> cs,
    -                      java.util.ArrayList<Variable> open,
    -                      short i,
    -                      int order)
    + boolean con, + short i)
    Constructor with full values, called by clone

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    order - The temporal order of the components
    +
    Parameters:
    n - The name of the term
    cs - Component list
    con - Whether the term is a constant
    i - Syntactic complexity of the compound
    @@ -417,20 +333,6 @@


    -

    -getConjunctionSymbol

    -
    -public static java.lang.String getConjunctionSymbol(int t)
    -
    -
    COnvert a temporal into its String representation -

    -

    -
    Parameters:
    t - The given temporal value -
    Returns:
    String representation of the order
    -
    -
    -
    -

    isCommutative

    @@ -448,110 +350,32 @@ 


    -

    -getOrder

    -
    -public int getOrder()
    -
    -
    Return the temporal order. -

    -

    -
    Overrides:
    getOrder in class Term
    -
    -
    - -
    Returns:
    Temporal order of the components
    -
    -
    -
    - -

    -isParallel

    -
    -public static boolean isParallel(Term t)
    -
    -
    Whether the Term is a parallel conjunction -

    -

    -
    Parameters:
    t - A given term -
    Returns:
    If the term is a paralel conjunction
    -
    -
    -
    - -

    -isSequence

    -
    -public static boolean isSequence(Term t)
    -
    -
    Whether the Term is a sequential conjunction -

    -

    -
    Parameters:
    t - A given term -
    Returns:
    If the term is a sequential conjunction
    -
    -
    -
    - -

    -isTemporal

    -
    -public boolean isTemporal()
    -
    -
    Description copied from class: Term
    -
    Whether there is a temporal order in the term, which is false by default -

    -

    -
    Overrides:
    isTemporal in class Term
    -
    -
    - -
    Returns:
    The default value
    -
    -
    -
    - -

    +

    make

     public static Term make(java.util.ArrayList<Term> argList,
    -                        int order)
    + Memory memory)
    Try to make a new compound from a list of components. Called by StringParser.

    -
    Parameters:
    argList - the list of arguments
    order - The temporal order of the components -
    Returns:
    the Term generated from the arguments
    -
    -
    -
    - -

    -make

    -
    -public static Term make(java.util.TreeSet<Term> set,
    -                        int order)
    -
    -
    Try to make a new compound from a set of components. Called by the public make methods. -

    -

    -
    Parameters:
    set - a set of Term as compoments
    order - The temporal order of the components +
    Parameters:
    argList - the list of arguments
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments

    -

    +

    make

     public static Term make(Term term1,
                             Term term2,
    -                        int order)
    + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    term1 - The first compoment
    term2 - The second compoment
    order - The temporal order of the components +
    Parameters:
    term1 - The first compoment
    term2 - The second compoment
    memory - Reference to the memory
    Returns:
    A compound generated or a term it reduced to
    @@ -607,9 +431,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/DifferenceExt.html b/nars-dist/javadoc/nars/language/DifferenceExt.html index f877778e..cbd0e4c1 100644 --- a/nars-dist/javadoc/nars/language/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/DifferenceExt.html @@ -2,13 +2,13 @@ - + -DifferenceExt (NARS Document) +DifferenceExt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DifferenceExt (NARS Document)"; + parent.document.title="DifferenceExt"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -129,7 +129,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -142,36 +142,6 @@

      - - - - - - - - - - - - - - - -
    -Constructor Summary
    -private DifferenceExt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make
    -private DifferenceExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    @@ -191,7 +161,8 @@

    static Term -make(java.util.ArrayList<Term> argList) +make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new DifferenceExt. @@ -199,8 +170,9 @@

    static Term -make(Term t1, - Term t2) +make(Term t1, + Term t2, + Memory memory)
              Try to make a new compound from two components. @@ -220,7 +192,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -229,7 +201,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -244,43 +216,6 @@

     

    - - - - - - - -
    -Constructor Detail
    - -

    -DifferenceExt

    -
    -private DifferenceExt(java.lang.String n,
    -                      java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    -DifferenceExt

    -
    -private DifferenceExt(java.lang.String n,
    -                      java.util.ArrayList<Term> cs,
    -                      java.util.ArrayList<Variable> open,
    -                      short i)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    -
    - @@ -308,30 +243,32 @@


    -

    +

    make

    -public static Term make(java.util.ArrayList<Term> argList)
    +public static Term make(java.util.ArrayList<Term> argList, + Memory memory)
    Try to make a new DifferenceExt. Called by StringParser.

    -
    Parameters:
    argList - The list of components +
    Parameters:
    argList - The list of components
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments

    -

    +

    make

     public static Term make(Term t1,
    -                        Term t2)
    + Term t2, + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    t1 - The first compoment
    t2 - The second compoment +
    Parameters:
    t1 - The first compoment
    t2 - The second compoment
    memory - Reference to the memory
    Returns:
    A compound generated or a term it reduced to
    @@ -404,9 +341,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/DifferenceInt.html b/nars-dist/javadoc/nars/language/DifferenceInt.html index 2d8cde01..9043597a 100644 --- a/nars-dist/javadoc/nars/language/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/DifferenceInt.html @@ -2,13 +2,13 @@ - + -DifferenceInt (NARS Document) +DifferenceInt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="DifferenceInt (NARS Document)"; + parent.document.title="DifferenceInt"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -129,7 +129,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -142,36 +142,6 @@

      - - - - - - - - - - - - - - - -
    -Constructor Summary
    -private DifferenceInt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make
    -private DifferenceInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    @@ -191,7 +161,8 @@

    static Term -make(java.util.ArrayList<Term> argList) +make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new DifferenceExt. @@ -199,8 +170,9 @@

    static Term -make(Term t1, - Term t2) +make(Term t1, + Term t2, + Memory memory)
              Try to make a new compound from two components. @@ -220,7 +192,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -229,7 +201,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -244,43 +216,6 @@

     

    - - - - - - - -
    -Constructor Detail
    - -

    -DifferenceInt

    -
    -private DifferenceInt(java.lang.String n,
    -                      java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    -DifferenceInt

    -
    -private DifferenceInt(java.lang.String n,
    -                      java.util.ArrayList<Term> cs,
    -                      java.util.ArrayList<Variable> open,
    -                      short i)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    -
    - @@ -308,30 +243,32 @@


    -

    +

    make

    -public static Term make(java.util.ArrayList<Term> argList)
    +public static Term make(java.util.ArrayList<Term> argList, + Memory memory)
    Try to make a new DifferenceExt. Called by StringParser.

    -
    Parameters:
    argList - The list of components +
    Parameters:
    argList - The list of components
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments

    -

    +

    make

     public static Term make(Term t1,
    -                        Term t2)
    + Term t2, + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    t1 - The first compoment
    t2 - The second compoment +
    Parameters:
    t1 - The first compoment
    t2 - The second compoment
    memory - Reference to the memory
    Returns:
    A compound generated or a term it reduced to
    @@ -404,9 +341,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/Disjunction.html b/nars-dist/javadoc/nars/language/Disjunction.html index 4c356515..d865f2c4 100644 --- a/nars-dist/javadoc/nars/language/Disjunction.html +++ b/nars-dist/javadoc/nars/language/Disjunction.html @@ -2,13 +2,13 @@ - + -Disjunction (NARS Document) +Disjunction - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Disjunction (NARS Document)"; + parent.document.title="Disjunction"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -129,7 +129,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -142,36 +142,6 @@

      - - - - - - - - - - - - - - - -
    -Constructor Summary
    -private Disjunction(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make
    -private Disjunction(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    @@ -199,7 +169,8 @@

    static Term -make(java.util.ArrayList<Term> argList) +make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new IntersectionExt. @@ -207,8 +178,9 @@

    static Term -make(Term term1, - Term term2) +make(Term term1, + Term term2, + Memory memory)
              Try to make a new Disjunction from two components. @@ -216,7 +188,8 @@

    static Term -make(java.util.TreeSet<Term> set) +make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new Disjunction from a set of components. @@ -236,7 +209,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -245,7 +218,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -260,43 +233,6 @@

     

    - - - - - - - -
    -Constructor Detail
    - -

    -Disjunction

    -
    -private Disjunction(java.lang.String n,
    -                    java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    -Disjunction

    -
    -private Disjunction(java.lang.String n,
    -                    java.util.ArrayList<Term> cs,
    -                    java.util.ArrayList<Variable> open,
    -                    short i)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    -
    - @@ -324,44 +260,47 @@


    -

    +

    make

     public static Term make(Term term1,
    -                        Term term2)
    + Term term2, + Memory memory)
    Try to make a new Disjunction from two components. Called by the inference rules.

    -
    Parameters:
    term1 - The first compoment
    term2 - The first compoment +
    Parameters:
    term1 - The first compoment
    term2 - The first compoment
    memory - Reference to the memory
    Returns:
    A Disjunction generated or a Term it reduced to

    -

    +

    make

    -public static Term make(java.util.ArrayList<Term> argList)
    +public static Term make(java.util.ArrayList<Term> argList, + Memory memory)
    Try to make a new IntersectionExt. Called by StringParser.

    -
    Parameters:
    argList - a list of Term as compoments +
    Parameters:
    argList - a list of Term as compoments
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments

    -

    +

    make

    -public static Term make(java.util.TreeSet<Term> set)
    +public static Term make(java.util.TreeSet<Term> set, + Memory memory)
    Try to make a new Disjunction from a set of components. Called by the public make methods.

    -
    Parameters:
    set - a set of Term as compoments +
    Parameters:
    set - a set of Term as compoments
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments
    @@ -451,9 +390,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/Equivalence.html b/nars-dist/javadoc/nars/language/Equivalence.html index 3d29b0cf..918fbbe0 100644 --- a/nars-dist/javadoc/nars/language/Equivalence.html +++ b/nars-dist/javadoc/nars/language/Equivalence.html @@ -2,13 +2,13 @@ - + -Equivalence (NARS Document) +Equivalence - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Equivalence (NARS Document)"; + parent.document.title="Equivalence"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -123,22 +123,6 @@

    Field Summary - - -private  boolean -isTemporal - -
    -          Whether there is a temporal order between the components - - - -private  int -temporalDistance - -
    -          Temporal distance between the components -   @@ -146,7 +130,7 @@

    - +
    Fields inherited from class nars.language.CompoundTerm
    complexity, components, openVariablescomplexity, components, isConstant
      @@ -170,8 +154,7 @@

    protected -Equivalence(java.lang.String n, - java.util.ArrayList<Term> arg) +Equivalence(java.util.ArrayList<Term> components)
              Constructor with partial values, called by make @@ -179,36 +162,14 @@

    protected -Equivalence(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) +Equivalence(java.lang.String n, + java.util.ArrayList<Term> components, + boolean constant, + short complexity)
              Constructor with full values, called by clone - - -protected -Equivalence(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i, - int order) - -
    -          Constructor with full values, called by clone - - - -protected -Equivalence(java.lang.String n, - java.util.ArrayList<Term> arg, - int order) - -
    -          Constructor with partial values, called by make -   @@ -229,23 +190,6 @@

    -static java.lang.String -getEquivalenceSymbol(boolean temporal, - int distance) - -
    -          Get the symbole of the relation by tense - - - - int -getOrder() - -
    -          Get the temporal order. - - -  boolean isCommutative() @@ -254,19 +198,10 @@

    - boolean -isTemporal() - -
    -          Whether there is a temporal order in the term, which is false by default - - - static Equivalence -make(Term subject, +make(Term subject, Term predicate, - boolean temporal, - int order) + Memory memory)
              Try to make a new compound from two components. @@ -286,7 +221,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym   @@ -295,7 +230,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -319,39 +254,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -isTemporal

    -
    -private boolean isTemporal
    -
    -
    Whether there is a temporal order between the components -

    -

    -
    -
    -
    - -

    -temporalDistance

    -
    -private int temporalDistance
    -
    -
    Temporal distance between the components -

    -

    -
    -
    - @@ -362,61 +264,30 @@

    -

    -Equivalence

    -
    -protected Equivalence(java.lang.String n,
    -                      java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    +

    Equivalence

    -protected Equivalence(java.lang.String n,
    -                      java.util.ArrayList<Term> arg,
    -                      int order)
    +protected Equivalence(java.util.ArrayList<Term> components)
    Constructor with partial values, called by make

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    order - The temporal order of the components
    -
    -
    - -

    -Equivalence

    -
    -protected Equivalence(java.lang.String n,
    -                      java.util.ArrayList<Term> cs,
    -                      java.util.ArrayList<Variable> open,
    -                      short i)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    +
    Parameters:
    components - The component list of the term

    -

    +

    Equivalence

     protected Equivalence(java.lang.String n,
    -                      java.util.ArrayList<Term> cs,
    -                      java.util.ArrayList<Variable> open,
    -                      short i,
    -                      int order)
    + java.util.ArrayList<Term> components, + boolean constant, + short complexity)
    Constructor with full values, called by clone

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    order - The temporal order of the components
    +
    Parameters:
    n - The name of the term
    components - Component list
    constant - Whether the statement contains open variable
    complexity - Syntactic complexity of the compound
    @@ -446,18 +317,17 @@


    -

    +

    make

     public static Equivalence make(Term subject,
                                    Term predicate,
    -                               boolean temporal,
    -                               int order)
    + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    temporal - Whether the components are temporally related
    order - The temporal order of the components +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memory
    Returns:
    A compound generated or null
    @@ -495,56 +365,6 @@

    Returns:
    true for communitative
    -
    - -

    -getOrder

    -
    -public int getOrder()
    -
    -
    Get the temporal order. -

    -

    -
    Overrides:
    getOrder in class Term
    -
    -
    - -
    Returns:
    the temporal order of the components
    -
    -
    -
    - -

    -getEquivalenceSymbol

    -
    -public static java.lang.String getEquivalenceSymbol(boolean temporal,
    -                                                    int distance)
    -
    -
    Get the symbole of the relation by tense -

    -

    -
    Parameters:
    temporal - Whether the components are temprally related
    distance - The temporal distance between the components -
    Returns:
    The String representation of the relation
    -
    -
    -
    - -

    -isTemporal

    -
    -public boolean isTemporal()
    -
    -
    Description copied from class: Term
    -
    Whether there is a temporal order in the term, which is false by default -

    -

    -
    Overrides:
    isTemporal in class Term
    -
    -
    - -
    Returns:
    The default value
    -
    -

    @@ -597,9 +417,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/ImageExt.html b/nars-dist/javadoc/nars/language/ImageExt.html index 0b76d331..665da26a 100644 --- a/nars-dist/javadoc/nars/language/ImageExt.html +++ b/nars-dist/javadoc/nars/language/ImageExt.html @@ -2,13 +2,13 @@ - + -ImageExt (NARS Document) +ImageExt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ImageExt (NARS Document)"; + parent.document.title="ImageExt"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -126,14 +126,6 @@

    Field Summary - - -private  short -relationIndex - -
    -          The index of relation in the component list -   @@ -141,7 +133,7 @@

    - +
    Fields inherited from class nars.language.CompoundTerm
    complexity, components, openVariablescomplexity, components, isConstant
      @@ -154,66 +146,51 @@

      - + - + +Method Summary - + +          Clone an object - + - -
    -Constructor Summary
    -private ImageExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short complexity, - short index) + java.lang.Objectclone()
    -          Constructor with full values, called by clone
    -private ImageExt(java.lang.String n, - java.util.ArrayList<Term> arg, - short index) + TermgetRelation()
    -          Constructor with partial values, called by make
    -  - - - - - - +          Get the relation term in the Image - + +          get the index of the relation in the component list - + +          Get the other term in the Image - @@ -221,8 +198,9 @@

    - @@ -230,9 +208,10 @@

    - @@ -240,9 +219,10 @@

    - @@ -270,7 +250,7 @@

    - +
    -Method Summary
    - java.lang.Objectclone() + shortgetRelationIndex()
    -          Clone an object
    - shortgetRelationIndex() + TermgetTheOtherComponent()
    -          get the index of the relation in the component list
    static Termmake(java.util.ArrayList<Term> argList) +make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new ImageExt.
    static Termmake(java.util.ArrayList<Term> argument, - short index) +make(java.util.ArrayList<Term> argument, + short index, + Memory memory)
              Try to make a new compound from a set of components.
    static Termmake(ImageExt oldImage, +make(ImageExt oldImage, Term component, - short index) + short index, + Memory memory)
              Try to make an Image from an existing Image and a component.
    static Termmake(Product product, +make(Product product, Term relation, - short index) + short index, + Memory memory)
              Try to make an Image from a Product and a relation.
    Methods inherited from class nars.language.CompoundTerm
    addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponentaddComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
      @@ -279,7 +259,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -294,66 +274,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -relationIndex

    -
    -private short relationIndex
    -
    -
    The index of relation in the component list -

    -

    -
    -
    - - - - - - - - -
    -Constructor Detail
    - -

    -ImageExt

    -
    -private ImageExt(java.lang.String n,
    -                 java.util.ArrayList<Term> arg,
    -                 short index)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    index - The index of relation in the component list
    -
    -
    - -

    -ImageExt

    -
    -private ImageExt(java.lang.String n,
    -                 java.util.ArrayList<Term> cs,
    -                 java.util.ArrayList<Variable> open,
    -                 short complexity,
    -                 short index)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    complexity - Syntactic complexity of the compound
    index - The index of relation in the component list
    -
    - @@ -381,26 +301,28 @@


    -

    +

    make

    -public static Term make(java.util.ArrayList<Term> argList)
    +public static Term make(java.util.ArrayList<Term> argList, + Memory memory)
    Try to make a new ImageExt. Called by StringParser.

    -
    Parameters:
    argList - The list of components +
    Parameters:
    argList - The list of components
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments

    -

    +

    make

     public static Term make(Product product,
                             Term relation,
    -                        short index)
    + short index, + Memory memory)
    Try to make an Image from a Product and a relation. Called by the inference rules.

    @@ -411,12 +333,13 @@


    -

    +

    make

     public static Term make(ImageExt oldImage,
                             Term component,
    -                        short index)
    + short index, + Memory memory)
    Try to make an Image from an existing Image and a component. Called by the inference rules.

    @@ -427,11 +350,12 @@


    -

    +

    make

     public static Term make(java.util.ArrayList<Term> argument,
    -                        short index)
    + short index, + Memory memory)
    Try to make a new compound from a set of components. Called by the public make methods.

    @@ -456,6 +380,34 @@


    +

    +getRelation

    +
    +public Term getRelation()
    +
    +
    Get the relation term in the Image +

    +

    + +
    Returns:
    The term representing a relation
    +
    +
    +
    + +

    +getTheOtherComponent

    +
    +public Term getTheOtherComponent()
    +
    +
    Get the other term in the Image +

    +

    + +
    Returns:
    The term related
    +
    +
    +
    +

    makeName

    @@ -540,9 +492,9 @@ 

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/ImageInt.html b/nars-dist/javadoc/nars/language/ImageInt.html index 69fdf5ca..369755eb 100644 --- a/nars-dist/javadoc/nars/language/ImageInt.html +++ b/nars-dist/javadoc/nars/language/ImageInt.html @@ -2,13 +2,13 @@ - + -ImageInt (NARS Document) +ImageInt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="ImageInt (NARS Document)"; + parent.document.title="ImageInt"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -126,14 +126,6 @@

    Field Summary - - -private  short -relationIndex - -
    -          The index of relation in the component list -   @@ -141,7 +133,7 @@

    - +
    Fields inherited from class nars.language.CompoundTerm
    complexity, components, openVariablescomplexity, components, isConstant
      @@ -154,66 +146,51 @@

      - + - + +Method Summary - + +          Clone an object - + - -
    -Constructor Summary
    -private ImageInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short complexity, - short index) + java.lang.Objectclone()
    -          Constructor with full values, called by clone
    -private ImageInt(java.lang.String n, - java.util.ArrayList<Term> arg, - short index) + TermgetRelation()
    -          constructor with partial values, called by make
    -  - - - - - - +          Get the relation term in the Image - + +          get the index of the relation in the component list - + +          Get the other term in the Image - @@ -221,8 +198,9 @@

    - @@ -230,9 +208,10 @@

    - @@ -240,9 +219,10 @@

    - @@ -270,7 +250,7 @@

    - +
    -Method Summary
    - java.lang.Objectclone() + shortgetRelationIndex()
    -          Clone an object
    - shortgetRelationIndex() + TermgetTheOtherComponent()
    -          get the index of the relation in the component list
    static Termmake(java.util.ArrayList<Term> argList) +make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new ImageExt.
    static Termmake(java.util.ArrayList<Term> argument, - short index) +make(java.util.ArrayList<Term> argument, + short index, + Memory memory)
              Try to make a new compound from a set of components.
    static Termmake(ImageInt oldImage, +make(ImageInt oldImage, Term component, - short index) + short index, + Memory memory)
              Try to make an Image from an existing Image and a component.
    static Termmake(Product product, +make(Product product, Term relation, - short index) + short index, + Memory memory)
              Try to make an Image from a Product and a relation.
    Methods inherited from class nars.language.CompoundTerm
    addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponentaddComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size
      @@ -279,7 +259,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -294,66 +274,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -relationIndex

    -
    -private short relationIndex
    -
    -
    The index of relation in the component list -

    -

    -
    -
    - - - - - - - - -
    -Constructor Detail
    - -

    -ImageInt

    -
    -private ImageInt(java.lang.String n,
    -                 java.util.ArrayList<Term> arg,
    -                 short index)
    -
    -
    constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    index - The index of relation in the component list
    -
    -
    - -

    -ImageInt

    -
    -private ImageInt(java.lang.String n,
    -                 java.util.ArrayList<Term> cs,
    -                 java.util.ArrayList<Variable> open,
    -                 short complexity,
    -                 short index)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    complexity - Syntactic complexity of the compound
    index - The index of relation in the component list
    -
    - @@ -381,62 +301,66 @@


    -

    +

    make

    -public static Term make(java.util.ArrayList<Term> argList)
    +public static Term make(java.util.ArrayList<Term> argList, + Memory memory)
    Try to make a new ImageExt. Called by StringParser.

    -
    Parameters:
    argList - The list of components +
    Parameters:
    argList - The list of components
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments

    -

    +

    make

     public static Term make(Product product,
                             Term relation,
    -                        short index)
    + short index, + Memory memory)
    Try to make an Image from a Product and a relation. Called by the inference rules.

    -
    Parameters:
    product - The product
    relation - The relation
    index - The index of the place-holder +
    Parameters:
    product - The product
    relation - The relation
    index - The index of the place-holder
    memory - Reference to the memory
    Returns:
    A compound generated or a term it reduced to

    -

    +

    make

     public static Term make(ImageInt oldImage,
                             Term component,
    -                        short index)
    + short index, + Memory memory)
    Try to make an Image from an existing Image and a component. Called by the inference rules.

    -
    Parameters:
    oldImage - The existing Image
    component - The component to be added into the component list
    index - The index of the place-holder in the new Image +
    Parameters:
    oldImage - The existing Image
    component - The component to be added into the component list
    index - The index of the place-holder in the new Image
    memory - Reference to the memory
    Returns:
    A compound generated or a term it reduced to

    -

    +

    make

     public static Term make(java.util.ArrayList<Term> argument,
    -                        short index)
    + short index, + Memory memory)
    Try to make a new compound from a set of components. Called by the public make methods.

    -
    Parameters:
    argument - The argument list
    index - The index of the place-holder in the new Image +
    Parameters:
    argument - The argument list
    index - The index of the place-holder in the new Image
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments
    @@ -456,6 +380,34 @@


    +

    +getRelation

    +
    +public Term getRelation()
    +
    +
    Get the relation term in the Image +

    +

    + +
    Returns:
    The term representing a relation
    +
    +
    +
    + +

    +getTheOtherComponent

    +
    +public Term getTheOtherComponent()
    +
    +
    Get the other term in the Image +

    +

    + +
    Returns:
    The term related
    +
    +
    +
    +

    makeName

    @@ -540,9 +492,9 @@ 

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/Implication.html b/nars-dist/javadoc/nars/language/Implication.html index ee2cf2a2..9ba7dc12 100644 --- a/nars-dist/javadoc/nars/language/Implication.html +++ b/nars-dist/javadoc/nars/language/Implication.html @@ -2,13 +2,13 @@ - + -Implication (NARS Document) +Implication - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Implication (NARS Document)"; + parent.document.title="Implication"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -123,22 +123,6 @@

    Field Summary - - -private  boolean -isTemporal - -
    -          Whether there is a temporal order between the components - - - -private  int -temporalDistance - -
    -          Temporal distance between the components -   @@ -146,7 +130,7 @@

    - +
    Fields inherited from class nars.language.CompoundTerm
    complexity, components, openVariablescomplexity, components, isConstant
      @@ -170,8 +154,7 @@

    protected -Implication(java.lang.String n, - java.util.ArrayList<Term> arg) +Implication(java.util.ArrayList<Term> arg)
              Constructor with partial values, called by make @@ -179,36 +162,14 @@

    protected -Implication(java.lang.String n, +Implication(java.lang.String n, java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, + boolean con, short i)
              Constructor with full values, called by clone - - -protected -Implication(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i, - int order) - -
    -          Constructor with full values, called by clone - - - -protected -Implication(java.lang.String n, - java.util.ArrayList<Term> arg, - int order) - -
    -          Constructor with partial values, called by make -   @@ -229,35 +190,10 @@

    - int -getOrder() - -
    -          Get the order of the components. - - - -static java.lang.String -getSymbol(int t) - -
    -          Convert a TemporalValue into its String representation - - - - boolean -isTemporal() - -
    -          Whether there is a temporal order in the term, which is false by default - - - static Implication -make(Term subject, +make(Term subject, Term predicate, - boolean temporal, - int order) + Memory memory)
              Try to make a new compound from two components. @@ -277,7 +213,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym   @@ -286,7 +222,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -310,39 +246,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -isTemporal

    -
    -private boolean isTemporal
    -
    -
    Whether there is a temporal order between the components -

    -

    -
    -
    -
    - -

    -temporalDistance

    -
    -private int temporalDistance
    -
    -
    Temporal distance between the components -

    -

    -
    -
    - @@ -353,61 +256,30 @@

    -

    +

    Implication

    -protected Implication(java.lang.String n,
    -                      java.util.ArrayList<Term> arg)
    +protected Implication(java.util.ArrayList<Term> arg)

    Constructor with partial values, called by make

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    +
    Parameters:
    arg - The component list of the term

    -

    -Implication

    -
    -protected Implication(java.lang.String n,
    -                      java.util.ArrayList<Term> arg,
    -                      int order)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    order - The temporal order of the components
    -
    -
    - -

    +

    Implication

     protected Implication(java.lang.String n,
                           java.util.ArrayList<Term> cs,
    -                      java.util.ArrayList<Variable> open,
    +                      boolean con,
                           short i)
    Constructor with full values, called by clone

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    -
    -
    - -

    -Implication

    -
    -protected Implication(java.lang.String n,
    -                      java.util.ArrayList<Term> cs,
    -                      java.util.ArrayList<Variable> open,
    -                      short i,
    -                      int order)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    order - The temporal order of the components
    +
    Parameters:
    n - The name of the term
    cs - Component list
    con - Whether it is a constant term
    i - Syntactic complexity of the compound
    @@ -437,18 +309,17 @@


    -

    +

    make

     public static Implication make(Term subject,
                                    Term predicate,
    -                               boolean temporal,
    -                               int order)
    + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    temporal - Whether there is a temporal relation
    order - The temporal order of the components +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memory
    Returns:
    A compound generated or a term it reduced to
    @@ -469,55 +340,6 @@

    Returns:
    the operator of the term
    -
    - -

    -getOrder

    -
    -public int getOrder()
    -
    -
    Get the order of the components. -

    -

    -
    Overrides:
    getOrder in class Term
    -
    -
    - -
    Returns:
    the order within the term
    -
    -
    -
    - -

    -getSymbol

    -
    -public static java.lang.String getSymbol(int t)
    -
    -
    Convert a TemporalValue into its String representation -

    -

    -
    Parameters:
    t - The temporal value to be represented -
    Returns:
    The the String representation
    -
    -
    -
    - -

    -isTemporal

    -
    -public boolean isTemporal()
    -
    -
    Description copied from class: Term
    -
    Whether there is a temporal order in the term, which is false by default -

    -

    -
    Overrides:
    isTemporal in class Term
    -
    -
    - -
    Returns:
    The default value
    -
    -

    @@ -570,9 +392,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/Inheritance.html b/nars-dist/javadoc/nars/language/Inheritance.html index ad0abd0d..3631613c 100644 --- a/nars-dist/javadoc/nars/language/Inheritance.html +++ b/nars-dist/javadoc/nars/language/Inheritance.html @@ -2,13 +2,13 @@ - + -Inheritance (NARS Document) +Inheritance - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Inheritance (NARS Document)"; + parent.document.title="Inheritance"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -130,7 +130,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -143,36 +143,6 @@

      - - - - - - - - - - - - - - - -
    -Constructor Summary
    -private Inheritance(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make
    -private Inheritance(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    @@ -192,8 +162,9 @@

    static Inheritance -make(Term subject, - Term predicate) +make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. @@ -213,7 +184,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym   @@ -222,7 +193,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -231,7 +202,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -246,43 +217,6 @@

     

    - - - - - - - -
    -Constructor Detail
    - -

    -Inheritance

    -
    -private Inheritance(java.lang.String n,
    -                    java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    -Inheritance

    -
    -private Inheritance(java.lang.String n,
    -                    java.util.ArrayList<Term> cs,
    -                    java.util.ArrayList<Variable> open,
    -                    short i)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    -
    - @@ -310,16 +244,17 @@


    -

    +

    make

     public static Inheritance make(Term subject,
    -                               Term predicate)
    + Term predicate, + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    subject - The first compoment
    predicate - The second compoment +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memory
    Returns:
    A compound generated or null
    @@ -392,9 +327,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/Instance.html b/nars-dist/javadoc/nars/language/Instance.html index 5dfa543c..ecdb0a31 100644 --- a/nars-dist/javadoc/nars/language/Instance.html +++ b/nars-dist/javadoc/nars/language/Instance.html @@ -2,13 +2,13 @@ - + -Instance (NARS Document) +Instance - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Instance (NARS Document)"; + parent.document.title="Instance"; } } @@ -131,7 +131,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -171,8 +171,9 @@

    static Statement -make(Term subject, - Term predicate) +make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. @@ -184,7 +185,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym   @@ -193,7 +194,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -202,7 +203,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -244,18 +245,19 @@

    -

    +

    make

     public static Statement make(Term subject,
    -                             Term predicate)
    + Term predicate, + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    A {-- B becomes {A} --> B

    -
    Parameters:
    subject - The first compoment
    predicate - The second compoment +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memory
    Returns:
    A compound generated or null
    diff --git a/nars-dist/javadoc/nars/language/InstanceProperty.html b/nars-dist/javadoc/nars/language/InstanceProperty.html index afd28a66..52f81875 100644 --- a/nars-dist/javadoc/nars/language/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/InstanceProperty.html @@ -2,13 +2,13 @@ - + -InstanceProperty (NARS Document) +InstanceProperty - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="InstanceProperty (NARS Document)"; + parent.document.title="InstanceProperty"; } } @@ -131,7 +131,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -171,8 +171,9 @@

    static Statement -make(Term subject, - Term predicate) +make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. @@ -184,7 +185,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym   @@ -193,7 +194,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -202,7 +203,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -244,18 +245,19 @@

    -

    +

    make

     public static Statement make(Term subject,
    -                             Term predicate)
    + Term predicate, + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    A {-] B becomes {A} --> [B]

    -
    Parameters:
    subject - The first compoment
    predicate - The second compoment +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memory
    Returns:
    A compound generated or null
    diff --git a/nars-dist/javadoc/nars/language/IntersectionExt.html b/nars-dist/javadoc/nars/language/IntersectionExt.html index 40e17ee4..9b59f2d7 100644 --- a/nars-dist/javadoc/nars/language/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/IntersectionExt.html @@ -2,13 +2,13 @@ - + -IntersectionExt (NARS Document) +IntersectionExt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="IntersectionExt (NARS Document)"; + parent.document.title="IntersectionExt"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -129,7 +129,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -142,36 +142,6 @@

      - - - - - - - - - - - - - - - -
    -Constructor Summary
    -private IntersectionExt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make
    -private IntersectionExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    @@ -199,7 +169,8 @@

    static Term -make(java.util.ArrayList<Term> argList) +make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new IntersectionExt. @@ -207,8 +178,9 @@

    static Term -make(Term term1, - Term term2) +make(Term term1, + Term term2, + Memory memory)
              Try to make a new compound from two components. @@ -216,7 +188,8 @@

    static Term -make(java.util.TreeSet<Term> set) +make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components. @@ -236,7 +209,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -245,7 +218,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -260,43 +233,6 @@

     

    - - - - - - - -
    -Constructor Detail
    - -

    -IntersectionExt

    -
    -private IntersectionExt(java.lang.String n,
    -                        java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    -IntersectionExt

    -
    -private IntersectionExt(java.lang.String n,
    -                        java.util.ArrayList<Term> cs,
    -                        java.util.ArrayList<Variable> open,
    -                        short i)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    -
    - @@ -324,44 +260,47 @@


    -

    +

    make

     public static Term make(Term term1,
    -                        Term term2)
    + Term term2, + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    term1 - The first compoment
    term2 - The first compoment +
    Parameters:
    term1 - The first compoment
    term2 - The first compoment
    memory - Reference to the memory
    Returns:
    A compound generated or a term it reduced to

    -

    +

    make

    -public static Term make(java.util.ArrayList<Term> argList)
    +public static Term make(java.util.ArrayList<Term> argList, + Memory memory)
    Try to make a new IntersectionExt. Called by StringParser.

    -
    Parameters:
    argList - The list of components +
    Parameters:
    argList - The list of components
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments

    -

    +

    make

    -public static Term make(java.util.TreeSet<Term> set)
    +public static Term make(java.util.TreeSet<Term> set, + Memory memory)
    Try to make a new compound from a set of components. Called by the public make methods.

    -
    Parameters:
    set - a set of Term as compoments +
    Parameters:
    set - a set of Term as compoments
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments
    @@ -451,9 +390,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/IntersectionInt.html b/nars-dist/javadoc/nars/language/IntersectionInt.html index 84cc4658..f44e239a 100644 --- a/nars-dist/javadoc/nars/language/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/IntersectionInt.html @@ -2,13 +2,13 @@ - + -IntersectionInt (NARS Document) +IntersectionInt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="IntersectionInt (NARS Document)"; + parent.document.title="IntersectionInt"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -129,7 +129,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -142,36 +142,6 @@

      - - - - - - - - - - - - - - - -
    -Constructor Summary
    -private IntersectionInt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make
    -private IntersectionInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    @@ -199,7 +169,8 @@

    static Term -make(java.util.ArrayList<Term> argList) +make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new IntersectionExt. @@ -207,8 +178,9 @@

    static Term -make(Term term1, - Term term2) +make(Term term1, + Term term2, + Memory memory)
              Try to make a new compound from two components. @@ -216,7 +188,8 @@

    static Term -make(java.util.TreeSet<Term> set) +make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components. @@ -236,7 +209,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -245,7 +218,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -260,43 +233,6 @@

     

    - - - - - - - -
    -Constructor Detail
    - -

    -IntersectionInt

    -
    -private IntersectionInt(java.lang.String n,
    -                        java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    -IntersectionInt

    -
    -private IntersectionInt(java.lang.String n,
    -                        java.util.ArrayList<Term> cs,
    -                        java.util.ArrayList<Variable> open,
    -                        short i)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    -
    - @@ -324,44 +260,47 @@


    -

    +

    make

     public static Term make(Term term1,
    -                        Term term2)
    + Term term2, + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    term1 - The first compoment
    term2 - The first compoment +
    Parameters:
    term1 - The first compoment
    term2 - The first compoment
    memory - Reference to the memory
    Returns:
    A compound generated or a term it reduced to

    -

    +

    make

    -public static Term make(java.util.ArrayList<Term> argList)
    +public static Term make(java.util.ArrayList<Term> argList, + Memory memory)
    Try to make a new IntersectionExt. Called by StringParser.

    -
    Parameters:
    argList - The list of components +
    Parameters:
    argList - The list of components
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments

    -

    +

    make

    -public static Term make(java.util.TreeSet<Term> set)
    +public static Term make(java.util.TreeSet<Term> set, + Memory memory)
    Try to make a new compound from a set of components. Called by the public make methods.

    -
    Parameters:
    set - a set of Term as compoments +
    Parameters:
    set - a set of Term as compoments
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments
    @@ -451,9 +390,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/Negation.html b/nars-dist/javadoc/nars/language/Negation.html index 4bb65ea1..a1829a27 100644 --- a/nars-dist/javadoc/nars/language/Negation.html +++ b/nars-dist/javadoc/nars/language/Negation.html @@ -2,13 +2,13 @@ - + -Negation (NARS Document) +Negation - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Negation (NARS Document)"; + parent.document.title="Negation"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -129,7 +129,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -142,36 +142,6 @@

      - - - - - - - - - - - - - - - -
    -Constructor Summary
    -private Negation(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make
    -private Negation(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    @@ -191,7 +161,8 @@

    static Term -make(java.util.ArrayList<Term> argument) +make(java.util.ArrayList<Term> argument, + Memory memory)
              Try to make a new SetExt. @@ -199,7 +170,8 @@

    static Term -make(Term t) +make(Term t, + Memory memory)
              Try to make a Negation of one component. @@ -219,7 +191,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -228,7 +200,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -243,43 +215,6 @@

     

    - - - - - - - -
    -Constructor Detail
    - -

    -Negation

    -
    -private Negation(java.lang.String n,
    -                 java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    -Negation

    -
    -private Negation(java.lang.String n,
    -                 java.util.ArrayList<Term> cs,
    -                 java.util.ArrayList<Variable> open,
    -                 short i)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    -
    - @@ -307,29 +242,31 @@


    -

    +

    make

    -public static Term make(Term t)
    +public static Term make(Term t, + Memory memory)
    Try to make a Negation of one component. Called by the inference rules.

    -
    Parameters:
    t - The compoment +
    Parameters:
    t - The compoment
    memory - Reference to the memory
    Returns:
    A compound generated or a term it reduced to

    -

    +

    make

    -public static Term make(java.util.ArrayList<Term> argument)
    +public static Term make(java.util.ArrayList<Term> argument, + Memory memory)
    Try to make a new SetExt. Called by StringParser.

    -
    Parameters:
    argument - The list of components +
    Parameters:
    argument - The list of components
    memory - Reference to the memory
    Returns:
    the Term generated from the arguments
    @@ -402,9 +339,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/Product.html b/nars-dist/javadoc/nars/language/Product.html index 7ce3f32e..a073d2fb 100644 --- a/nars-dist/javadoc/nars/language/Product.html +++ b/nars-dist/javadoc/nars/language/Product.html @@ -2,13 +2,13 @@ - + -Product (NARS Document) +Product - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Product (NARS Document)"; + parent.document.title="Product"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -129,7 +129,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -142,36 +142,6 @@

      - - - - - - - - - - - - - - - -
    -Constructor Summary
    -private Product(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make
    -private Product(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short complexity) - -
    -          Constructor with full values, called by clone
    @@ -191,7 +161,8 @@

    static Term -make(java.util.ArrayList<Term> argument) +make(java.util.ArrayList<Term> argument, + Memory memory)
              Try to make a new compound. @@ -199,9 +170,10 @@

    static Term -make(CompoundTerm image, +make(CompoundTerm image, Term component, - int index) + int index, + Memory memory)
              Try to make a Product from an ImageExt/ImageInt and a component. @@ -221,7 +193,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -230,7 +202,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -245,43 +217,6 @@

     

    - - - - - - - -
    -Constructor Detail
    - -

    -Product

    -
    -private Product(java.lang.String n,
    -                java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    -Product

    -
    -private Product(java.lang.String n,
    -                java.util.ArrayList<Term> cs,
    -                java.util.ArrayList<Variable> open,
    -                short complexity)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    complexity - Syntactic complexity of the compound
    -
    - @@ -309,31 +244,33 @@


    -

    +

    make

    -public static Term make(java.util.ArrayList<Term> argument)
    +public static Term make(java.util.ArrayList<Term> argument, + Memory memory)
    Try to make a new compound. Called by StringParser.

    -
    Parameters:
    argument - The list of components +
    Parameters:
    argument - The list of components
    memory - Reference to the memeory
    Returns:
    the Term generated from the arguments

    -

    +

    make

     public static Term make(CompoundTerm image,
                             Term component,
    -                        int index)
    + int index, + Memory memory)
    Try to make a Product from an ImageExt/ImageInt and a component. Called by the inference rules.

    -
    Parameters:
    image - The existing Image
    component - The component to be added into the component list
    index - The index of the place-holder in the new Image -- optional parameter +
    Parameters:
    image - The existing Image
    component - The component to be added into the component list
    index - The index of the place-holder in the new Image -- optional parameter
    memory - Reference to the memeory
    Returns:
    A compound generated or a term it reduced to
    @@ -406,9 +343,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/Property.html b/nars-dist/javadoc/nars/language/Property.html index b4b930a8..3c8a3eac 100644 --- a/nars-dist/javadoc/nars/language/Property.html +++ b/nars-dist/javadoc/nars/language/Property.html @@ -2,13 +2,13 @@ - + -Property (NARS Document) +Property - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Property (NARS Document)"; + parent.document.title="Property"; } } @@ -131,7 +131,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -171,8 +171,9 @@

    static Statement -make(Term subject, - Term predicate) +make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. @@ -184,7 +185,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym   @@ -193,7 +194,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -202,7 +203,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -244,18 +245,19 @@

    -

    +

    make

     public static Statement make(Term subject,
    -                             Term predicate)
    + Term predicate, + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    A --] B becomes A --> [B]

    -
    Parameters:
    subject - The first compoment
    predicate - The second compoment +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memeory
    Returns:
    A compound generated or null
    diff --git a/nars-dist/javadoc/nars/language/SetExt.html b/nars-dist/javadoc/nars/language/SetExt.html index 3e9f6f41..10d633e1 100644 --- a/nars-dist/javadoc/nars/language/SetExt.html +++ b/nars-dist/javadoc/nars/language/SetExt.html @@ -2,13 +2,13 @@ - + -SetExt (NARS Document) +SetExt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="SetExt (NARS Document)"; + parent.document.title="SetExt"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -129,7 +129,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -142,36 +142,6 @@

      - - - - - - - - - - - - - - - -
    -Constructor Summary
    -private SetExt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make
    -private SetExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    @@ -199,7 +169,8 @@

    static Term -make(java.util.ArrayList<Term> argList) +make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new SetExt. @@ -207,7 +178,8 @@

    static Term -make(Term t) +make(Term t, + Memory memory)
              Try to make a new set from one component. @@ -215,7 +187,8 @@

    static Term -make(java.util.TreeSet<Term> set) +make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components. @@ -243,7 +216,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -252,7 +225,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -267,43 +240,6 @@

     

    - - - - - - - -
    -Constructor Detail
    - -

    -SetExt

    -
    -private SetExt(java.lang.String n,
    -               java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    -SetExt

    -
    -private SetExt(java.lang.String n,
    -               java.util.ArrayList<Term> cs,
    -               java.util.ArrayList<Variable> open,
    -               short i)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    -
    - @@ -331,43 +267,46 @@


    -

    +

    make

    -public static Term make(Term t)
    +public static Term make(Term t, + Memory memory)
    Try to make a new set from one component. Called by the inference rules.

    -
    Parameters:
    t - The compoment +
    Parameters:
    t - The compoment
    memory - Reference to the memeory
    Returns:
    A compound generated or a term it reduced to

    -

    +

    make

    -public static Term make(java.util.ArrayList<Term> argList)
    +public static Term make(java.util.ArrayList<Term> argList, + Memory memory)
    Try to make a new SetExt. Called by StringParser.

    -
    Parameters:
    argList - The list of components +
    Parameters:
    argList - The list of components
    memory - Reference to the memeory
    Returns:
    the Term generated from the arguments

    -

    +

    make

    -public static Term make(java.util.TreeSet<Term> set)
    +public static Term make(java.util.TreeSet<Term> set, + Memory memory)
    Try to make a new compound from a set of components. Called by the public make methods.

    -
    Parameters:
    set - a set of Term as compoments +
    Parameters:
    set - a set of Term as compoments
    memory - Reference to the memeory
    Returns:
    the Term generated from the arguments
    @@ -474,9 +413,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/SetInt.html b/nars-dist/javadoc/nars/language/SetInt.html index 5f498cd9..a47c64a6 100644 --- a/nars-dist/javadoc/nars/language/SetInt.html +++ b/nars-dist/javadoc/nars/language/SetInt.html @@ -2,13 +2,13 @@ - + -SetInt (NARS Document) +SetInt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="SetInt (NARS Document)"; + parent.document.title="SetInt"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -129,7 +129,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -142,36 +142,6 @@

      - - - - - - - - - - - - - - - -
    -Constructor Summary
    -private SetInt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make
    -private SetInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          constructor with full values, called by clone
    @@ -199,7 +169,8 @@

    static Term -make(java.util.ArrayList<Term> argList) +make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new SetExt. @@ -207,7 +178,8 @@

    static Term -make(Term t) +make(Term t, + Memory memory)
              Try to make a new set from one component. @@ -215,7 +187,8 @@

    static Term -make(java.util.TreeSet<Term> set) +make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components. @@ -243,7 +216,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -252,7 +225,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -267,43 +240,6 @@

     

    - - - - - - - -
    -Constructor Detail
    - -

    -SetInt

    -
    -private SetInt(java.lang.String n,
    -               java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    -SetInt

    -
    -private SetInt(java.lang.String n,
    -               java.util.ArrayList<Term> cs,
    -               java.util.ArrayList<Variable> open,
    -               short i)
    -
    -
    constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    -
    - @@ -331,43 +267,46 @@


    -

    +

    make

    -public static Term make(Term t)
    +public static Term make(Term t, + Memory memory)
    Try to make a new set from one component. Called by the inference rules.

    -
    Parameters:
    t - The compoment +
    Parameters:
    t - The compoment
    memory - Reference to the memeory
    Returns:
    A compound generated or a term it reduced to

    -

    +

    make

    -public static Term make(java.util.ArrayList<Term> argList)
    +public static Term make(java.util.ArrayList<Term> argList, + Memory memory)
    Try to make a new SetExt. Called by StringParser.

    -
    Parameters:
    argList - The list of components +
    Parameters:
    argList - The list of components
    memory - Reference to the memeory
    Returns:
    the Term generated from the arguments

    -

    +

    make

    -public static Term make(java.util.TreeSet<Term> set)
    +public static Term make(java.util.TreeSet<Term> set, + Memory memory)
    Try to make a new compound from a set of components. Called by the public make methods.

    -
    Parameters:
    set - a set of Term as compoments +
    Parameters:
    set - a set of Term as compoments
    memory - Reference to the memeory
    Returns:
    the Term generated from the arguments
    @@ -474,9 +413,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/Similarity.html b/nars-dist/javadoc/nars/language/Similarity.html index a6318fd4..e499cb25 100644 --- a/nars-dist/javadoc/nars/language/Similarity.html +++ b/nars-dist/javadoc/nars/language/Similarity.html @@ -2,13 +2,13 @@ - + -Similarity (NARS Document) +Similarity - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Similarity (NARS Document)"; + parent.document.title="Similarity"; } } @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -130,7 +130,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -143,36 +143,6 @@

      - - - - - - - - - - - - - - - -
    -Constructor Summary
    -private Similarity(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make
    -private Similarity(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    @@ -200,8 +170,9 @@

    static Similarity -make(Term subject, - Term predicate) +make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. @@ -221,7 +192,7 @@

    Methods inherited from class nars.language.Statement -getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, make, makeName, makeStatementName, makeSym +getPredicate, getSubject, invalid, invalidStatement, isRelation, make, make, makeName, makeStatementName, makeSym   @@ -230,7 +201,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -239,7 +210,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -254,43 +225,6 @@

     

    - - - - - - - -
    -Constructor Detail
    - -

    -Similarity

    -
    -private Similarity(java.lang.String n,
    -                   java.util.ArrayList<Term> arg)
    -
    -
    Constructor with partial values, called by make -

    -

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    -
    -
    - -

    -Similarity

    -
    -private Similarity(java.lang.String n,
    -                   java.util.ArrayList<Term> cs,
    -                   java.util.ArrayList<Variable> open,
    -                   short i)
    -
    -
    Constructor with full values, called by clone -

    -

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    -
    - @@ -318,16 +252,17 @@


    -

    +

    make

     public static Similarity make(Term subject,
    -                              Term predicate)
    + Term predicate, + Memory memory)
    Try to make a new compound from two components. Called by the inference rules.

    -
    Parameters:
    subject - The first compoment
    predicate - The second compoment +
    Parameters:
    subject - The first compoment
    predicate - The second compoment
    memory - Reference to the memeory
    Returns:
    A compound generated or null
    @@ -417,9 +352,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/Statement.html b/nars-dist/javadoc/nars/language/Statement.html index 656b6b18..e11a6a8d 100644 --- a/nars-dist/javadoc/nars/language/Statement.html +++ b/nars-dist/javadoc/nars/language/Statement.html @@ -2,13 +2,13 @@ - + -Statement (NARS Document) +Statement - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Statement (NARS Document)"; + parent.document.title="Statement"; } } @@ -133,7 +133,7 @@

    Fields inherited from class nars.language.CompoundTerm -complexity, components, openVariables +complexity, components, isConstant   @@ -165,8 +165,7 @@

    protected -Statement(java.lang.String n, - java.util.ArrayList<Term> arg) +Statement(java.util.ArrayList<Term> arg)
              Constructor with partial values, called by make @@ -174,9 +173,9 @@

    protected -Statement(java.lang.String n, +Statement(java.lang.String n, java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, + boolean con, short i)
    @@ -236,31 +235,21 @@

    static Statement -make(Statement statement, - Term subj, - Term pred) - -
    -          Make a Statement from given components, called by the rules - - - -static Statement -make(Statement statement, +make(Statement statement, Term subj, Term pred, - boolean temporal, - int distance) + Memory memory)
    -          Make a Statement from given components and temporal information, called by the rules +          Make a Statement from given components, called by the rules static Statement -make(java.lang.String relation, +make(java.lang.String relation, Term subject, - Term predicate) + Term predicate, + Memory memory)
              Make a Statement from String, called by StringParser @@ -271,7 +260,7 @@

    makeName()
    -          Override the default in making the name of the current term from existing fields +          Override the default in making the nameStr of the current term from existing fields @@ -281,16 +270,15 @@

    Term predicate)
    -          Default method to make the name of an image term from given fields +          Default method to make the nameStr of an image term from given fields static Statement -makeSym(Statement statement, +makeSym(Statement statement, Term subj, Term pred, - boolean temporal, - int distance) + Memory memory)
              Make a symmetric Statement from given components and temporal information, called by the rules @@ -302,7 +290,7 @@

    Methods inherited from class nars.language.CompoundTerm -addComponents, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containNoVariable, getComplexity, getComponents, getConstantName, getOpenVariables, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, replaceComponent, replaceComponent, setName, size, substituteComponent +addComponents, applySubstitute, argumentsToList, clone, cloneComponents, cloneList, componentAt, containAllComponents, containComponent, containTerm, containVar, getComplexity, getComponents, isCommutative, isConstant, isOperator, make, make, makeCompoundName, makeImageName, makeSetName, operator, prepareComponentLinks, reduceComponents, renameVariables, renameVariables, setComponent, setConstant, setName, size   @@ -311,7 +299,7 @@

    Methods inherited from class nars.language.Term -compareTo, equals, getName, getOrder, hashCode, isTemporal, toString +compareTo, equals, getName, hashCode, toString   @@ -346,31 +334,30 @@


    -

    +

    Statement

    -protected Statement(java.lang.String n,
    -                    java.util.ArrayList<Term> arg)
    +protected Statement(java.util.ArrayList<Term> arg)
    Constructor with partial values, called by make

    -
    Parameters:
    n - The name of the term
    arg - The component list of the term
    +
    Parameters:
    arg - The component list of the term

    -

    +

    Statement

     protected Statement(java.lang.String n,
                         java.util.ArrayList<Term> cs,
    -                    java.util.ArrayList<Variable> open,
    +                    boolean con,
                         short i)
    Constructor with full values, called by clone

    -
    Parameters:
    n - The name of the term
    cs - Component list
    open - Open variable list
    i - Syntactic complexity of the compound
    +
    Parameters:
    n - The nameStr of the term
    cs - Component list
    con - Constant indicator
    i - Syntactic complexity of the compound
    @@ -383,69 +370,52 @@

    -

    +

    make

     public static Statement make(java.lang.String relation,
                                  Term subject,
    -                             Term predicate)
    + Term predicate, + Memory memory)
    Make a Statement from String, called by StringParser

    -
    Parameters:
    relation - The relation String
    subject - The first component
    predicate - The second component -
    Returns:
    The Statement built
    -
    -
    -
    - -

    -make

    -
    -public static Statement make(Statement statement,
    -                             Term subj,
    -                             Term pred)
    -
    -
    Make a Statement from given components, called by the rules -

    -

    -
    Parameters:
    subj - The first component
    pred - The second component
    statement - A sample statement providing the class type +
    Parameters:
    relation - The relation String
    subject - The first component
    predicate - The second component
    memory - Reference to the memeory
    Returns:
    The Statement built

    -

    +

    make

     public static Statement make(Statement statement,
                                  Term subj,
                                  Term pred,
    -                             boolean temporal,
    -                             int distance)
    + Memory memory)
    -
    Make a Statement from given components and temporal information, called by the rules +
    Make a Statement from given components, called by the rules

    -
    Parameters:
    statement - A sample statement providing the class type
    subj - The first component
    pred - The second component
    temporal - Whether there is a temporal relation between the components
    distance - The temporal distance between the components +
    Parameters:
    subj - The first component
    pred - The second component
    statement - A sample statement providing the class type
    memory - Reference to the memeory
    Returns:
    The Statement built

    -

    +

    makeSym

     public static Statement makeSym(Statement statement,
                                     Term subj,
                                     Term pred,
    -                                boolean temporal,
    -                                int distance)
    + Memory memory)
    Make a symmetric Statement from given components and temporal information, called by the rules

    -
    Parameters:
    statement - A sample asymmetric statement providing the class type
    subj - The first component
    pred - The second component
    temporal - Whether there is a temporal relation between the components
    distance - The temporal distance between the components +
    Parameters:
    statement - A sample asymmetric statement providing the class type
    subj - The first component
    pred - The second component
    memory - Reference to the memeory
    Returns:
    The Statement built
    @@ -470,14 +440,14 @@

     protected java.lang.String makeName()
    -
    Override the default in making the name of the current term from existing fields +
    Override the default in making the nameStr of the current term from existing fields

    Overrides:
    makeName in class CompoundTerm
    -
    Returns:
    the name of the term
    +
    Returns:
    the nameStr of the term

    @@ -489,11 +459,11 @@

    java.lang.String relation, Term predicate)
    -
    Default method to make the name of an image term from given fields +
    Default method to make the nameStr of an image term from given fields

    Parameters:
    subject - The first component
    predicate - The second component
    relation - The relation operator -
    Returns:
    The name of the term
    +
    Returns:
    The nameStr of the term

    diff --git a/nars-dist/javadoc/nars/language/Term.html b/nars-dist/javadoc/nars/language/Term.html index 987d2fa5..a422a9e1 100644 --- a/nars-dist/javadoc/nars/language/Term.html +++ b/nars-dist/javadoc/nars/language/Term.html @@ -2,13 +2,13 @@ - + -Term (NARS Document) +Term - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Term (NARS Document)"; + parent.document.title="Term"; } } @@ -100,7 +100,7 @@

    All Implemented Interfaces:
    java.lang.Cloneable, java.lang.Comparable<Term>
    -
    Direct Known Subclasses:
    CompoundTerm, Operator, Variable
    +
    Direct Known Subclasses:
    CompoundTerm, Variable

    @@ -111,7 +111,8 @@

    Term is the basic component of Narsese, and the object of processing in NARS.

    A Term may have an associated Concept containing relations with other Terms. It - is not linked in the Term, because a Concept may be forgot, while the Term exists. + is not linked in the Term, because a Concept may be forgot while the Term exists. + Multiple objects may represent the same Term.

    @@ -132,7 +133,7 @@

    name
    -          A Term is identified uniquely by its name, a sequence of characters in a +          A Term is identified uniquely by its name, a sequence of characters in a given alphabet (ASCII or Unicode) @@ -151,7 +152,7 @@

    Term()
    -          Default constructor +          Default constructor that build an internal Term @@ -190,26 +191,26 @@

     boolean -equals(java.lang.Object that) +containTerm(Term target)
    -          Equal terms have identical name, though not necessarily the same reference. +          Recursively check if a compound contains a term - int -getComplexity() + boolean
    +equals(java.lang.Object that)
    -          The syntactic complexity, for constant automic Term, is 1. +          Equal terms have identical name, though not necessarily the same reference. - java.lang.String -getConstantName() + int
    +getComplexity()
    -          Default, to be overrided in variable Terms. +          The syntactic complexity, for constant automic Term, is 1. @@ -222,14 +223,6 @@

     int -getOrder() - -
    -          Obtain the temporal order in the term - - - - int hashCode()
    @@ -245,11 +238,11 @@

    - boolean -isTemporal() + void +renameVariables()
    -          Whether there is a temporal order in the term, which is false by default +          Blank method to be override in CompoundTerm @@ -257,7 +250,7 @@

    toString()
    -          The same as getName, used in display. +          The same as getName by default, used in display only.   @@ -287,7 +280,7 @@

     protected java.lang.String name
    -
    A Term is identified uniquely by its name, a sequence of characters in a +
    A Term is identified uniquely by its name, a sequence of characters in a given alphabet (ASCII or Unicode)

    @@ -309,7 +302,7 @@

     protected Term()
    -
    Default constructor +
    Default constructor that build an internal Term


    @@ -335,23 +328,6 @@

    -

    -toString

    -
    -public java.lang.String toString()
    -
    -
    The same as getName, used in display. -

    -

    -
    Overrides:
    toString in class java.lang.Object
    -
    -
    - -
    Returns:
    The name of the term as a String
    -
    -
    -
    -

    getName

    @@ -369,23 +345,6 @@ 


    -

    -getConstantName

    -
    -public java.lang.String getConstantName()
    -
    -
    Default, to be overrided in variable Terms. -

    -

    -
    -
    -
    - -
    Returns:
    The name of the term as a String
    -
    -
    -
    -

    clone

    @@ -437,89 +396,103 @@ 


    -

    -getComplexity

    +

    +isConstant

    -public int getComplexity()
    +public boolean isConstant()
    -
    The syntactic complexity, for constant automic Term, is 1. +
    Check whether the current Term can name a Concept.

    -
    Returns:
    The conplexity of the term, an integer
    +
    Returns:
    A Term is constant by default


    -

    -compareTo

    +

    +renameVariables

    -public final int compareTo(Term that)
    +public void renameVariables()
    -
    Check the relative order of two Terms. -

    - based on the constant part first +

    Blank method to be override in CompoundTerm

    -
    Specified by:
    compareTo in interface java.lang.Comparable<Term>
    +
    -
    Parameters:
    that - The Term to be compared with the current Term -
    Returns:
    The same as compareTo as defined on Strings when the constant parts are compared
    +

    -

    -isConstant

    +

    +getComplexity

    -public boolean isConstant()
    +public int getComplexity()
    -
    Check whether the current Term can name a Concept. +
    The syntactic complexity, for constant automic Term, is 1.

    -
    Returns:
    A Term is constant by default
    +
    Returns:
    The conplexity of the term, an integer

    -

    -isTemporal

    +

    +compareTo

    -public boolean isTemporal()
    +public final int compareTo(Term that)
    -
    Whether there is a temporal order in the term, which is false by default +
    Check the relative order of two Terms.

    -
    +
    Specified by:
    compareTo in interface java.lang.Comparable<Term>
    - -
    Returns:
    The default value
    +
    Parameters:
    that - The Term to be compared with the current Term +
    Returns:
    The same as compareTo as defined on Strings

    -

    -getOrder

    +

    +containTerm

    -public int getOrder()
    +public boolean containTerm(Term target)
    -
    Obtain the temporal order in the term +
    Recursively check if a compound contains a term

    +
    Parameters:
    target - The term to be searched +
    Returns:
    Whether the two have the same content
    +
    +
    +
    + +

    +toString

    +
    +public final java.lang.String toString()
    +
    +
    The same as getName by default, used in display only. +

    +

    +
    Overrides:
    toString in class java.lang.Object
    +
    +
    -
    Returns:
    The default value
    +
    Returns:
    The name of the term as a String
    diff --git a/nars-dist/javadoc/nars/language/Variable.html b/nars-dist/javadoc/nars/language/Variable.html index 6693b837..893b3874 100644 --- a/nars-dist/javadoc/nars/language/Variable.html +++ b/nars-dist/javadoc/nars/language/Variable.html @@ -2,13 +2,13 @@ - + -Variable (NARS Document) +Variable - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Variable (NARS Document)"; + parent.document.title="Variable"; } } @@ -57,7 +57,7 @@  PREV CLASS  - NEXT CLASS + NEXT CLASS
    FRAMES    NO FRAMES   @@ -77,9 +77,9 @@ - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD @@ -113,24 +113,7 @@


    - - - - - - - - - - - -
    -Nested Class Summary
    -static classVariable.VarType - -
    -          Four variable types plus a wild card
    + @@ -138,22 +121,6 @@

    - - - - - - - -
    Field Summary
    -private  CompoundTermscope - -
    -          The minimum CompoundTerm what contains all occurences of this variable
    -private  Variable.VarTypetype - -
    -          Type of the variable
      @@ -174,23 +141,11 @@

    Constructor Summary

    - - - - -
    -  Variable(java.lang.String s)
              Constructor, from a given variable name
    -private Variable(java.lang.String n, - Variable.VarType t, - CompoundTerm s) - -
    -          Constructor, with all fields
      @@ -211,83 +166,39 @@

    - boolean -equals(java.lang.Object that) - -
    -          Whether this variable equals another one - - - -private static java.util.HashMap<java.lang.String,Term> -findSubstitute(Variable.VarType type, - java.util.ArrayList<Term> list1, - java.util.ArrayList<Term> list2, - java.util.HashMap<java.lang.String,Term> subs) - -
    -          To recursively find a substitution that can unify two sets of Term in any order - - - -static java.util.HashMap<java.lang.String,Term> -findSubstitute(Variable.VarType type, - Term term1, - Term term2) - -
    -          To find a substitution that can unify two Terms without changing them - - - -private static java.util.HashMap<java.lang.String,Term> -findSubstitute(Variable.VarType type, - Term term1, - Term term2, - java.util.HashMap<java.lang.String,Term> subs) - -
    -          To recursively find a substitution that can unify two Terms without changing them - - - -private static java.util.HashMap<java.lang.String,Term> -findSubstituteVar(Variable.VarType type, - Variable var, - Term term, - java.util.HashMap<java.lang.String,Term> subs, - boolean first) +static boolean +containVar(java.lang.String n)
    -          To find a substitution that can unify a Vriable and a Term +          Check whether a string represent a name of a term that contains a variable - java.lang.String -getConstantName() +static boolean +containVarDep(java.lang.String n)
    -          Variable name is omitted in sorting +          Check whether a string represent a name of a term that contains a dependent variable - java.lang.String -getName() +static boolean +containVarIndep(java.lang.String n)
    -          Get variable name with dependency list (if any) +          Check whether a string represent a name of a term that contains an independent variable - java.lang.String -getStoredName() +static boolean +containVarQuery(java.lang.String n)
    -          Get variable name without dependency list (if any) +          Check whether a string represent a name of a term that contains a query variable - Variable.VarType + char getType()
    @@ -295,19 +206,13 @@

    - java.lang.String -getVarName(boolean first) - -
    -          Rename a variable temporally to distinguish it from variables in other Terms - - - - int -hashCode() +static boolean +hasSubstitute(char type, + Term term1, + Term term2)
    -          Get a hash code for the variable +          Check if two terms can be unified @@ -315,44 +220,29 @@

    isConstant()
    -          A variable is constant +          A variable is not constant static boolean -match(Variable.VarType type1, - Variable.VarType type2) - -
    -          Whether two variable types can match each other in unification - - - - void -setName(java.lang.String n) - -
    -          Rename the variable - - - - void -setScope(CompoundTerm t) +unify(char type, + Term t1, + Term t2)
    -          Set the scope of the variable +          To unify two terms static boolean -unify(Variable.VarType type, +unify(char type, Term t1, Term t2, Term compound1, Term compound2)
    -          To unify two Terms, then apply the substitution to the two compounds +          To unify two terms   @@ -361,7 +251,7 @@

    Methods inherited from class nars.language.Term -compareTo, getComplexity, getOrder, isTemporal, toString +compareTo, containTerm, equals, getComplexity, getName, hashCode, renameVariables, toString   @@ -376,39 +266,6 @@

     

    - - - - - - - -
    -Field Detail
    - -

    -type

    -
    -private Variable.VarType type
    -
    -
    Type of the variable -

    -

    -
    -
    -
    - -

    -scope

    -
    -private CompoundTerm scope
    -
    -
    The minimum CompoundTerm what contains all occurences of this variable -

    -

    -
    -
    - @@ -429,20 +286,6 @@

    Parameters:
    s - A String read from input
    -
    - -

    -Variable

    -
    -private Variable(java.lang.String n,
    -                 Variable.VarType t,
    -                 CompoundTerm s)
    -
    -
    Constructor, with all fields -

    -

    -
    Parameters:
    n - Variable name
    s - Variable scope
    t - Variable type
    -
    @@ -471,54 +314,10 @@


    -

    -getConstantName

    -
    -public java.lang.String getConstantName()
    -
    -
    Variable name is omitted in sorting -

    -

    -
    Overrides:
    getConstantName in class Term
    -
    -
    - -
    Returns:
    The Variable prefix
    -
    -
    -
    - -

    -getVarName

    -
    -public java.lang.String getVarName(boolean first)
    -
    -
    Rename a variable temporally to distinguish it from variables in other Terms -

    -

    -
    Parameters:
    first - Whether it is the first term -
    Returns:
    The new name
    -
    -
    -
    - -

    -setName

    -
    -public void setName(java.lang.String n)
    -
    -
    Rename the variable -

    -

    -
    Parameters:
    n - The new name
    -
    -
    -
    -

    getType

    -public Variable.VarType getType()
    +public char getType()
    Get the type of the variable

    @@ -529,198 +328,125 @@


    -

    -setScope

    -
    -public void setScope(CompoundTerm t)
    -
    -
    Set the scope of the variable -

    -

    -
    Parameters:
    t - The new scope
    -
    -
    -
    - -

    -equals

    +

    +isConstant

    -public boolean equals(java.lang.Object that)
    +public boolean isConstant()
    -
    Whether this variable equals another one +
    A variable is not constant

    -
    Overrides:
    equals in class Term
    +
    Overrides:
    isConstant in class Term
    -
    Parameters:
    that - The other variable -
    Returns:
    Whether the two are equal
    + +
    Returns:
    false

    -

    -hashCode

    +

    +containVarIndep

    -public int hashCode()
    +public static boolean containVarIndep(java.lang.String n)
    -
    Get a hash code for the variable +
    Check whether a string represent a name of a term that contains an independent variable

    -
    Overrides:
    hashCode in class Term
    -
    -
    - -
    Returns:
    The hash code
    +
    Parameters:
    n - The string name to be checked +
    Returns:
    Whether the name contains an independent variable

    -

    -getStoredName

    +

    +containVarDep

    -public java.lang.String getStoredName()
    +public static boolean containVarDep(java.lang.String n)
    -
    Get variable name without dependency list (if any) +
    Check whether a string represent a name of a term that contains a dependent variable

    - -
    Returns:
    The stored name
    +
    Parameters:
    n - The string name to be checked +
    Returns:
    Whether the name contains a dependent variable

    -

    -getName

    +

    +containVarQuery

    -public java.lang.String getName()
    +public static boolean containVarQuery(java.lang.String n)
    -
    Get variable name with dependency list (if any) +
    Check whether a string represent a name of a term that contains a query variable

    -
    Overrides:
    getName in class Term
    -
    -
    - -
    Returns:
    The generated name
    +
    Parameters:
    n - The string name to be checked +
    Returns:
    Whether the name contains a query variable

    -

    -isConstant

    +

    +containVar

    -public boolean isConstant()
    +public static boolean containVar(java.lang.String n)
    -
    A variable is constant +
    Check whether a string represent a name of a term that contains a variable

    -
    Overrides:
    isConstant in class Term
    -
    -
    - -
    Returns:
    false
    +
    Parameters:
    n - The string name to be checked +
    Returns:
    Whether the name contains a variable

    -

    -match

    +

    +unify

    -public static boolean match(Variable.VarType type1,
    -                            Variable.VarType type2)
    +public static boolean unify(char type, + Term t1, + Term t2)
    -
    Whether two variable types can match each other in unification +
    To unify two terms

    -
    Parameters:
    type1 - Type of the first variable
    type2 - Type of the second variable -
    Returns:
    The matching result
    +
    Parameters:
    type - The type of variable that can be substituted
    t1 - The first term
    t2 - The second term +
    Returns:
    Whether the unification is possible

    -

    +

    unify

    -public static boolean unify(Variable.VarType type,
    +public static boolean unify(char type,
                                 Term t1,
                                 Term t2,
                                 Term compound1,
                                 Term compound2)
    -
    To unify two Terms, then apply the substitution to the two compounds -

    -

    -
    Parameters:
    type - The type of Variable to be unified
    t1 - The first Term to be unified
    t2 - The second Term to be unified
    compound1 - The first compound to be substituted
    compound2 - The second compound to be substituted -
    Returns:
    Whether a unification has been succeeded
    -
    -
    -
    - -

    -findSubstitute

    -
    -public static java.util.HashMap<java.lang.String,Term> findSubstitute(Variable.VarType type,
    -                                                                      Term term1,
    -                                                                      Term term2)
    -
    -
    To find a substitution that can unify two Terms without changing them -

    -

    -
    Parameters:
    type - The type of Variable to be substituted
    term1 - The first Term to be unified
    term2 - The second Term to be unified -
    Returns:
    The substitution that unifies the two Terms
    -
    -
    -
    - -

    -findSubstitute

    -
    -private static java.util.HashMap<java.lang.String,Term> findSubstitute(Variable.VarType type,
    -                                                                       Term term1,
    -                                                                       Term term2,
    -                                                                       java.util.HashMap<java.lang.String,Term> subs)
    -
    -
    To recursively find a substitution that can unify two Terms without changing them -

    -

    -
    Parameters:
    type - The type of Variable to be substituted
    term1 - The first Term to be unified
    term2 - The second Term to be unified
    subs - The substitution formed so far -
    Returns:
    The substitution that unifies the two Terms
    -
    -
    -
    - -

    -findSubstitute

    -
    -private static java.util.HashMap<java.lang.String,Term> findSubstitute(Variable.VarType type,
    -                                                                       java.util.ArrayList<Term> list1,
    -                                                                       java.util.ArrayList<Term> list2,
    -                                                                       java.util.HashMap<java.lang.String,Term> subs)
    -
    -
    To recursively find a substitution that can unify two sets of Term in any order +
    To unify two terms

    -
    Parameters:
    type - The type of Variable to be substituted
    list1 - The first Term set to be unified
    list2 - The second Term set to be unified
    subs - The substitution formed so far -
    Returns:
    The substitution that unifies the two lists
    +
    Parameters:
    type - The type of variable that can be substituted
    t1 - The first term to be unified
    t2 - The second term to be unified
    compound1 - The compound contermaining the first term
    compound2 - The compound contermaining the second term +
    Returns:
    Whether the unification is possible

    -

    -findSubstituteVar

    +

    +hasSubstitute

    -private static java.util.HashMap<java.lang.String,Term> findSubstituteVar(Variable.VarType type,
    -                                                                          Variable var,
    -                                                                          Term term,
    -                                                                          java.util.HashMap<java.lang.String,Term> subs,
    -                                                                          boolean first)
    +public static boolean hasSubstitute(char type, + Term term1, + Term term2)
    -
    To find a substitution that can unify a Vriable and a Term +
    Check if two terms can be unified

    -
    Parameters:
    type - The type of Variable to be substituted
    var - The Variable to be unified
    term - The Term to be unified
    subs - The substitution formed so far
    first - If it is the first Term in unify -
    Returns:
    The substitution that unifies the two Terms, as "name-term" pairs
    +
    Parameters:
    type - The type of variable that can be substituted
    term1 - The first term to be unified
    term2 - The second term to be unified +
    Returns:
    Whether there is a substitution
    @@ -755,7 +481,7 @@

     PREV CLASS  - NEXT CLASS + NEXT CLASS FRAMES    NO FRAMES   @@ -775,9 +501,9 @@

    - SUMMARY: NESTED | FIELD | CONSTR | METHOD + SUMMARY: NESTED | FIELD | CONSTR | METHOD -DETAIL: FIELD | CONSTR | METHOD +DETAIL: FIELD | CONSTR | METHOD diff --git a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html index 865e0b54..950a6100 100644 --- a/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html +++ b/nars-dist/javadoc/nars/language/class-use/CompoundTerm.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.CompoundTerm (NARS Document) +Uses of Class nars.language.CompoundTerm - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.CompoundTerm (NARS Document)"; + parent.document.title="Uses of Class nars.language.CompoundTerm"; } } @@ -91,205 +91,12 @@

    Packages that use CompoundTerm -nars.inference -The inference rules and control functions  - - nars.language Term hierarchy in Narsese   

    - - - - - -
    -Uses of CompoundTerm in nars.inference
    -  -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Methods in nars.inference with parameters of type CompoundTerm
    -(package private) static voidCompositionalRules.anaVarDepOuter(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S>
    -private static voidRuleTables.componentAndStatement(CompoundTerm compound, - short index, - Statement statement, - short side) - -
    -          Inference between a component term (of the current term) and a statement
    -private static voidRuleTables.compoundAndCompound(CompoundTerm taskTerm, - CompoundTerm beliefTerm) - -
    -          Inference between two compound terms
    -private static voidRuleTables.compoundAndSelf(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          Inference between a compound term and a component of it
    -private static voidRuleTables.compoundAndStatement(CompoundTerm compound, - short index, - Statement statement, - short side, - Term beliefTerm) - -
    -          Inference between a compound term and a statement
    -private static voidCompositionalRules.decomposeCompound(CompoundTerm compound, - Term component, - Term term1, - int index, - boolean compoundTask) - -
    -          {<(S|P) ==> M>,

    M>} |- M>

    -(package private) static voidCompositionalRules.decomposeStatement(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          {(||, S, P), P} |- S - {(&&, S, P), P} |- S
    -(package private) static voidCompositionalRules.introVarDepInner(CompoundTerm compound, - Term component, - Term premise) - -
    -          Introduce a dependent variable in an inner-layer conjunction
    -(package private) static voidSyllogisticRules.introVarIndInner(Statement premise1, - Statement premise2, - CompoundTerm oldCompound) - -
    -          { S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> - { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>)
    -(package private) static voidStructuralRules.structuralCompose1(CompoundTerm compound, - short index, - Statement statement) - -
    -          { P>, P@(P&Q)} |- (P&Q)>
    -(package private) static voidStructuralRules.structuralCompose2(CompoundTerm compound, - short index, - Statement statement, - short side) - -
    -          { P>, S@(S&T)} |- <(S&T) --> (P&T)> - { P>, S@(M-S)} |- <(M-P) --> (M-S)>
    -(package private) static voidStructuralRules.structuralCompound(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          {(&&, A, B), A@(&&, A, B)} |- A - {(||, A, B), A@(||, A, B)} |- A
    -(package private) static voidStructuralRules.structuralDecompose1(CompoundTerm compound, - short index, - Statement statement) - -
    -          {<(S&T) --> P>, S@(S&T)} |- P>
    -private static booleanStructuralRules.switchOrder(CompoundTerm compound, - short index) - -
    -          List the cases where the direction of inheritance is revised in conclusion
    -(package private) static voidStructuralRules.transformProductImage(Inheritance inh, - CompoundTerm oldContent, - short[] indices, - Task task) - -
    -          Equivalent transformation between products and images - {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> - { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> - { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)>
    -(package private) static voidStructuralRules.transformSetRelation(CompoundTerm compound, - Statement statement, - short side) - -
    -          { {P}>} |- {P}>
    -  -

    @@ -472,22 +279,6 @@

     

    -

    - - - - - - - -
    Fields in nars.language declared as CompoundTerm
    -private  CompoundTermVariable.scope - -
    -          The minimum CompoundTerm what contains all occurences of this variable
    -  -

    - @@ -495,8 +286,9 @@

    - @@ -504,8 +296,9 @@

    - @@ -513,28 +306,20 @@

    - - - - - - @@ -542,47 +327,14 @@

    - - - - - - - - - -
    Methods in nars.language with parameters of type CompoundTerm
    static TermCompoundTerm.addComponents(CompoundTerm t1, - Term t2) +CompoundTerm.addComponents(CompoundTerm t1, + Term t2, + Memory memory)
              Try to add a component into a compound
    static TermCompoundTerm.make(CompoundTerm compound, - java.util.ArrayList<Term> components) +CompoundTerm.make(CompoundTerm compound, + java.util.ArrayList<Term> components, + Memory memory)
              Try to make a compound term from a template and a list of components
    static TermProduct.make(CompoundTerm image, +Product.make(CompoundTerm image, Term component, - int index) + int index, + Memory memory)
              Try to make a Product from an ImageExt/ImageInt and a component.
    -private  voidCompoundTerm.prepareComponentLinks(java.util.ArrayList<TermLink> componentLinks, - short type, - CompoundTerm term) - -
    -          Collect TermLink templates into a list, go down one level except in special cases
    static TermCompoundTerm.reduceComponents(CompoundTerm t1, - Term t2) +CompoundTerm.reduceComponents(CompoundTerm t1, + Term t2, + Memory memory)
              Try to remove a component from a compound
    static TermCompoundTerm.replaceComponent(CompoundTerm compound, - int index, - Term t) +CompoundTerm.setComponent(CompoundTerm compound, + int index, + Term t, + Memory memory)
              Try to replace a component in a compound at a given index by another one
    -static TermCompoundTerm.replaceComponent(CompoundTerm compound, - Term oldComponent, - Term newComponent) - -
    -          Try to replace a given component in a compound by another one
    - voidVariable.setScope(CompoundTerm t) - -
    -          Set the scope of the variable
    -  -

    - - - - - - - -
    Constructors in nars.language with parameters of type CompoundTerm
    Variable(java.lang.String n, - Variable.VarType t, - CompoundTerm s) - -
    -          Constructor, with all fields
     

    diff --git a/nars-dist/javadoc/nars/language/class-use/Conjunction.html b/nars-dist/javadoc/nars/language/class-use/Conjunction.html index fa9dd14d..b2f4cb7b 100644 --- a/nars-dist/javadoc/nars/language/class-use/Conjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Conjunction.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Conjunction (NARS Document) +Uses of Class nars.language.Conjunction - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Conjunction (NARS Document)"; + parent.document.title="Uses of Class nars.language.Conjunction"; } } @@ -84,45 +84,7 @@

    Uses of Class
    nars.language.Conjunction

    - - - - - - - - - -
    -Packages that use Conjunction
    nars.inferenceThe inference rules and control functions 
    -  -

    - - - - - -
    -Uses of Conjunction in nars.inference
    -  -

    - - - - - - - - - -
    Methods in nars.inference that return Conjunction
    -private static ConjunctionCompositionalRules.introVarDep(Statement premise1, - Statement premise2, - int index) - -
    -          { S>, P>} |- (&&, <#x() --> S>, <#x() --> P>>
    -  +No usage of nars.language.Conjunction


    diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html index 91430496..3ab2b330 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceExt.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.DifferenceExt (NARS Document) +Uses of Class nars.language.DifferenceExt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.DifferenceExt (NARS Document)"; + parent.document.title="Uses of Class nars.language.DifferenceExt"; } } diff --git a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html index 54b7a1ef..c1a276c8 100644 --- a/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html +++ b/nars-dist/javadoc/nars/language/class-use/DifferenceInt.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.DifferenceInt (NARS Document) +Uses of Class nars.language.DifferenceInt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.DifferenceInt (NARS Document)"; + parent.document.title="Uses of Class nars.language.DifferenceInt"; } } diff --git a/nars-dist/javadoc/nars/language/class-use/Disjunction.html b/nars-dist/javadoc/nars/language/class-use/Disjunction.html index 24671876..ae18216d 100644 --- a/nars-dist/javadoc/nars/language/class-use/Disjunction.html +++ b/nars-dist/javadoc/nars/language/class-use/Disjunction.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Disjunction (NARS Document) +Uses of Class nars.language.Disjunction - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Disjunction (NARS Document)"; + parent.document.title="Uses of Class nars.language.Disjunction"; } } diff --git a/nars-dist/javadoc/nars/language/class-use/Equivalence.html b/nars-dist/javadoc/nars/language/class-use/Equivalence.html index e2be0da8..e1802a7c 100644 --- a/nars-dist/javadoc/nars/language/class-use/Equivalence.html +++ b/nars-dist/javadoc/nars/language/class-use/Equivalence.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Equivalence (NARS Document) +Uses of Class nars.language.Equivalence - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Equivalence (NARS Document)"; + parent.document.title="Uses of Class nars.language.Equivalence"; } } @@ -114,10 +114,9 @@

    static Equivalence -Equivalence.make(Term subject, +Equivalence.make(Term subject, Term predicate, - boolean temporal, - int order) + Memory memory)
              Try to make a new compound from two components. diff --git a/nars-dist/javadoc/nars/language/class-use/ImageExt.html b/nars-dist/javadoc/nars/language/class-use/ImageExt.html index 4d0b53b2..30ef3712 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageExt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageExt.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.ImageExt (NARS Document) +Uses of Class nars.language.ImageExt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.ImageExt (NARS Document)"; + parent.document.title="Uses of Class nars.language.ImageExt"; } } @@ -114,9 +114,10 @@

    static Term -ImageExt.make(ImageExt oldImage, +ImageExt.make(ImageExt oldImage, Term component, - short index) + short index, + Memory memory)
              Try to make an Image from an existing Image and a component. diff --git a/nars-dist/javadoc/nars/language/class-use/ImageInt.html b/nars-dist/javadoc/nars/language/class-use/ImageInt.html index c6d05ff3..f2e0f007 100644 --- a/nars-dist/javadoc/nars/language/class-use/ImageInt.html +++ b/nars-dist/javadoc/nars/language/class-use/ImageInt.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.ImageInt (NARS Document) +Uses of Class nars.language.ImageInt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.ImageInt (NARS Document)"; + parent.document.title="Uses of Class nars.language.ImageInt"; } } @@ -114,9 +114,10 @@

    static Term -ImageInt.make(ImageInt oldImage, +ImageInt.make(ImageInt oldImage, Term component, - short index) + short index, + Memory memory)
              Try to make an Image from an existing Image and a component. diff --git a/nars-dist/javadoc/nars/language/class-use/Implication.html b/nars-dist/javadoc/nars/language/class-use/Implication.html index d4c87ffd..35444f69 100644 --- a/nars-dist/javadoc/nars/language/class-use/Implication.html +++ b/nars-dist/javadoc/nars/language/class-use/Implication.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Implication (NARS Document) +Uses of Class nars.language.Implication - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Implication (NARS Document)"; + parent.document.title="Uses of Class nars.language.Implication"; } } @@ -91,57 +91,12 @@

    Packages that use Implication -nars.inference -The inference rules and control functions  - - nars.language Term hierarchy in Narsese   

    - - - - - -
    -Uses of Implication in nars.inference
    -  -

    - - - - - - - - - - - - - -
    Methods in nars.inference with parameters of type Implication
    -(package private) static voidSyllogisticRules.conditionalDedInd(Implication premise1, - short index, - Term premise2, - int side) - -
    -          {<(&&, S1, S2, S3) ==> P>, S1} |- <(&&, S2, S3) ==> P> - {<(&&, S2, S3) ==> P>, S2>} |- <(&&, S1, S3) ==> P> - {<(&&, S1, S3) ==> P>, S2>} |- <(&&, S2, S3) ==> P>
    -private static voidRuleTables.conditionalDedIndWithVar(Implication conditional, - short index, - Statement statement, - short side) - -
    -          Conditional deduction or induction, with variable unification
    -  -

    @@ -159,10 +114,9 @@

    - diff --git a/nars-dist/javadoc/nars/language/class-use/Inheritance.html b/nars-dist/javadoc/nars/language/class-use/Inheritance.html index a1c3adde..cae3d7c0 100644 --- a/nars-dist/javadoc/nars/language/class-use/Inheritance.html +++ b/nars-dist/javadoc/nars/language/class-use/Inheritance.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Inheritance (NARS Document) +Uses of Class nars.language.Inheritance - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Inheritance (NARS Document)"; + parent.document.title="Uses of Class nars.language.Inheritance"; } } @@ -91,47 +91,12 @@

    Packages that use Inheritance

    - - - -
    static ImplicationImplication.make(Term subject, +Implication.make(Term subject, Term predicate, - boolean temporal, - int order) + Memory memory)
              Try to make a new compound from two components.
    nars.inferenceThe inference rules and control functions 
    nars.language Term hierarchy in Narsese 
     

    - - - - - -
    -Uses of Inheritance in nars.inference
    -  -

    - - - - - - - - - -
    Methods in nars.inference with parameters of type Inheritance
    -(package private) static voidStructuralRules.transformProductImage(Inheritance inh, - CompoundTerm oldContent, - short[] indices, - Task task) - -
    -          Equivalent transformation between products and images - {<(*, S, M) --> P>, S@(*, S, M)} |- (/, P, _, M)> - { (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) --> P> - { (/, P, _, M)>, M@(/, P, _, M)} |- (/, P, S, _)>
    -  -

    @@ -149,8 +114,9 @@

    - diff --git a/nars-dist/javadoc/nars/language/class-use/Instance.html b/nars-dist/javadoc/nars/language/class-use/Instance.html index 86639d7b..2ed1b693 100644 --- a/nars-dist/javadoc/nars/language/class-use/Instance.html +++ b/nars-dist/javadoc/nars/language/class-use/Instance.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Instance (NARS Document) +Uses of Class nars.language.Instance - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Instance (NARS Document)"; + parent.document.title="Uses of Class nars.language.Instance"; } } diff --git a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html index c908be47..e244016d 100644 --- a/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html +++ b/nars-dist/javadoc/nars/language/class-use/InstanceProperty.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.InstanceProperty (NARS Document) +Uses of Class nars.language.InstanceProperty - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.InstanceProperty (NARS Document)"; + parent.document.title="Uses of Class nars.language.InstanceProperty"; } } diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html index e1e0a272..83f2f6a5 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionExt.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.IntersectionExt (NARS Document) +Uses of Class nars.language.IntersectionExt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.IntersectionExt (NARS Document)"; + parent.document.title="Uses of Class nars.language.IntersectionExt"; } } diff --git a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html index ce2e2b68..c955cf7a 100644 --- a/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html +++ b/nars-dist/javadoc/nars/language/class-use/IntersectionInt.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.IntersectionInt (NARS Document) +Uses of Class nars.language.IntersectionInt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.IntersectionInt (NARS Document)"; + parent.document.title="Uses of Class nars.language.IntersectionInt"; } } diff --git a/nars-dist/javadoc/nars/language/class-use/Negation.html b/nars-dist/javadoc/nars/language/class-use/Negation.html index eb79c396..be173af1 100644 --- a/nars-dist/javadoc/nars/language/class-use/Negation.html +++ b/nars-dist/javadoc/nars/language/class-use/Negation.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Negation (NARS Document) +Uses of Class nars.language.Negation - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Negation (NARS Document)"; + parent.document.title="Uses of Class nars.language.Negation"; } } diff --git a/nars-dist/javadoc/nars/language/class-use/Product.html b/nars-dist/javadoc/nars/language/class-use/Product.html index 8039bd45..9e2a9317 100644 --- a/nars-dist/javadoc/nars/language/class-use/Product.html +++ b/nars-dist/javadoc/nars/language/class-use/Product.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Product (NARS Document) +Uses of Class nars.language.Product - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Product (NARS Document)"; + parent.document.title="Uses of Class nars.language.Product"; } } @@ -114,9 +114,10 @@

    - @@ -124,9 +125,10 @@

    - diff --git a/nars-dist/javadoc/nars/language/class-use/Property.html b/nars-dist/javadoc/nars/language/class-use/Property.html index 06e68cf0..22b6e5e1 100644 --- a/nars-dist/javadoc/nars/language/class-use/Property.html +++ b/nars-dist/javadoc/nars/language/class-use/Property.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Property (NARS Document) +Uses of Class nars.language.Property - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Property (NARS Document)"; + parent.document.title="Uses of Class nars.language.Property"; } } diff --git a/nars-dist/javadoc/nars/language/class-use/SetExt.html b/nars-dist/javadoc/nars/language/class-use/SetExt.html index eb703e75..8eebb97d 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetExt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetExt.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.SetExt (NARS Document) +Uses of Class nars.language.SetExt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.SetExt (NARS Document)"; + parent.document.title="Uses of Class nars.language.SetExt"; } } diff --git a/nars-dist/javadoc/nars/language/class-use/SetInt.html b/nars-dist/javadoc/nars/language/class-use/SetInt.html index 38fc83eb..ad22cb47 100644 --- a/nars-dist/javadoc/nars/language/class-use/SetInt.html +++ b/nars-dist/javadoc/nars/language/class-use/SetInt.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.SetInt (NARS Document) +Uses of Class nars.language.SetInt - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.SetInt (NARS Document)"; + parent.document.title="Uses of Class nars.language.SetInt"; } } diff --git a/nars-dist/javadoc/nars/language/class-use/Similarity.html b/nars-dist/javadoc/nars/language/class-use/Similarity.html index 7efc2270..61e5f5f1 100644 --- a/nars-dist/javadoc/nars/language/class-use/Similarity.html +++ b/nars-dist/javadoc/nars/language/class-use/Similarity.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Similarity (NARS Document) +Uses of Class nars.language.Similarity - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Similarity (NARS Document)"; + parent.document.title="Uses of Class nars.language.Similarity"; } } @@ -114,8 +114,9 @@

    - diff --git a/nars-dist/javadoc/nars/language/class-use/Statement.html b/nars-dist/javadoc/nars/language/class-use/Statement.html index 304c6ff5..c348e0e3 100644 --- a/nars-dist/javadoc/nars/language/class-use/Statement.html +++ b/nars-dist/javadoc/nars/language/class-use/Statement.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Statement (NARS Document) +Uses of Class nars.language.Statement - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Statement (NARS Document)"; + parent.document.title="Uses of Class nars.language.Statement"; } } @@ -91,228 +91,9 @@

    Packages that use Statement

    - - - - - - - - - - - - -
    static InheritanceInheritance.make(Term subject, - Term predicate) +Inheritance.make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components.
    static TermImageExt.make(Product product, +ImageExt.make(Product product, Term relation, - short index) + short index, + Memory memory)
              Try to make an Image from a Product and a relation.
    static TermImageInt.make(Product product, +ImageInt.make(Product product, Term relation, - short index) + short index, + Memory memory)
              Try to make an Image from a Product and a relation.
    static SimilaritySimilarity.make(Term subject, - Term predicate) +Similarity.make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components.
    nars.inferenceThe inference rules and control functions 
    nars.ioInput/output management 
    nars.language Term hierarchy in Narsese 
    nars.operationBuilt-in operators 
    -  -

    - - - - - -
    -Uses of Statement in nars.inference
    -  -

    - - - - - - - - - -
    Methods in nars.inference that return Statement
    -private static StatementSyllogisticRules.introVarInd(Sentence sentence1, - Sentence sentence2, - int figure, - boolean isImplication) - -
    -          { S>, P>} |- <<#x --> S> ==> <#x --> P>> - { S>, P>} |- <<#x --> S> <=> <#x --> P>>
    -  -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Methods in nars.inference with parameters of type Statement
    -private static voidRuleTables.componentAndStatement(CompoundTerm compound, - short index, - Statement statement, - short side) - -
    -          Inference between a component term (of the current term) and a statement
    -private static voidRuleTables.compoundAndStatement(CompoundTerm compound, - short index, - Statement statement, - short side, - Term beliefTerm) - -
    -          Inference between a compound term and a statement
    -(package private) static booleanSyllogisticRules.conditionalAbd(Term cond1, - Term cond2, - Statement st1, - Statement st2) - -
    -          {<(&&, S2, S3) ==> P>, <(&&, S1, S3) ==> P>} |- S2>
    -private static voidRuleTables.conditionalDedIndWithVar(Implication conditional, - short index, - Statement statement, - short side) - -
    -          Conditional deduction or induction, with variable unification
    -(package private) static voidStructuralRules.contraposition(Statement statement) - -
    -          { B>, A@(--, A)} |- <(--, B) ==> (--, A)>
    -private static ConjunctionCompositionalRules.introVarDep(Statement premise1, - Statement premise2, - int index) - -
    -          { S>, P>} |- (&&, <#x() --> S>, <#x() --> P>>
    -private static voidCompositionalRules.introVarDepOuter(Statement premise1, - Statement premise2, - int index) - -
    -          Introduce a dependent variable in an outer-layer conjunction
    -(package private) static voidSyllogisticRules.introVarIndInner(Statement premise1, - Statement premise2, - CompoundTerm oldCompound) - -
    -          { S>, P>>} |- <(&&, <#x --> S>, C) ==> <#x --> P>> - { S>, (&&, C, P>)} |- (&&, C, <<#x --> S> ==> <#x --> P>>)
    -private static voidCompositionalRules.processComposed(Statement statement, - Term subject, - Term predicate, - TruthValue truth) - -
    -          Finish composing compound term
    -(package private) static voidStructuralRules.structuralCompose1(CompoundTerm compound, - short index, - Statement statement) - -
    -          { P>, P@(P&Q)} |- (P&Q)>
    -(package private) static voidStructuralRules.structuralCompose2(CompoundTerm compound, - short index, - Statement statement, - short side) - -
    -          { P>, S@(S&T)} |- <(S&T) --> (P&T)> - { P>, S@(M-S)} |- <(M-P) --> (M-S)>
    -(package private) static voidStructuralRules.structuralDecompose1(CompoundTerm compound, - short index, - Statement statement) - -
    -          {<(S&T) --> P>, S@(S&T)} |- P>
    -(package private) static voidStructuralRules.structuralDecompose2(Statement statement) - -
    -          {<(S&T) --> (P&T)>, S@(S&T)} |- P>
    -(package private) static voidStructuralRules.transformSetRelation(CompoundTerm compound, - Statement statement, - short side) - -
    -          { {P}>} |- {P}>
    -  -

    - - - - - -
    -Uses of Statement in nars.io
    -  -

    - - - - - - - - -
    Methods in nars.io that return Statement
    -private static StatementStringParser.parseStatement(java.lang.String s0) - -
    -          Parse a String to create a Statement.
     

    @@ -400,31 +181,21 @@

    static Statement -Statement.make(Statement statement, - Term subj, - Term pred) - -
    -          Make a Statement from given components, called by the rules - - - -static Statement -Statement.make(Statement statement, +Statement.make(Statement statement, Term subj, Term pred, - boolean temporal, - int distance) + Memory memory)
    -          Make a Statement from given components and temporal information, called by the rules +          Make a Statement from given components, called by the rules static Statement -Statement.make(java.lang.String relation, +Statement.make(java.lang.String relation, Term subject, - Term predicate) + Term predicate, + Memory memory)
              Make a Statement from String, called by StringParser @@ -432,8 +203,9 @@

    static Statement -Instance.make(Term subject, - Term predicate) +Instance.make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. @@ -441,8 +213,9 @@

    static Statement -InstanceProperty.make(Term subject, - Term predicate) +InstanceProperty.make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. @@ -450,8 +223,9 @@

    static Statement -Property.make(Term subject, - Term predicate) +Property.make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. @@ -459,11 +233,10 @@

    static Statement -Statement.makeSym(Statement statement, +Statement.makeSym(Statement statement, Term subj, Term pred, - boolean temporal, - int distance) + Memory memory)
              Make a symmetric Statement from given components and temporal information, called by the rules @@ -479,33 +252,21 @@

    static Statement -Statement.make(Statement statement, - Term subj, - Term pred) - -
    -          Make a Statement from given components, called by the rules - - - -static Statement -Statement.make(Statement statement, +Statement.make(Statement statement, Term subj, Term pred, - boolean temporal, - int distance) + Memory memory)
    -          Make a Statement from given components and temporal information, called by the rules +          Make a Statement from given components, called by the rules static Statement -Statement.makeSym(Statement statement, +Statement.makeSym(Statement statement, Term subj, Term pred, - boolean temporal, - int distance) + Memory memory)
              Make a symmetric Statement from given components and temporal information, called by the rules @@ -513,31 +274,6 @@

     

    - - - - - -
    -Uses of Statement in nars.operation
    -  -

    - - - - - - - - - -
    Methods in nars.operation with parameters of type Statement
    -private  voidOperator.reportExecution(Statement operation) - -
    -          Display a message in the output stream to indicate the reportExecution of an operation
    -  -


    diff --git a/nars-dist/javadoc/nars/language/class-use/Term.html b/nars-dist/javadoc/nars/language/class-use/Term.html index 17913cf5..f506902c 100644 --- a/nars-dist/javadoc/nars/language/class-use/Term.html +++ b/nars-dist/javadoc/nars/language/class-use/Term.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Term (NARS Document) +Uses of Class nars.language.Term - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Term (NARS Document)"; + parent.document.title="Uses of Class nars.language.Term"; } } @@ -107,12 +107,8 @@

    Term hierarchy in Narsese  -nars.main -Top-level classes of the system  - - -nars.operation -Built-in operators  +nars.storage +Storage management    @@ -127,38 +123,6 @@

     

    - - - - - - - - - - - - - - - - -
    Fields in nars.entity declared as Term
    -protected  TermSentence.content - -
    -          The content of a Sentence is a Term
    -private  TermTermLink.target - -
    -          The linked Term
    -private  TermConcept.term - -
    -          The term is the unique ID of the concept
    -  -

    - @@ -213,32 +177,6 @@

    - - - - - - - - - - - - - +          Create a Sentence with the given fields - +          Create a Sentence with the given fields - - - - - - - - - - - - - - - - - - - - - @@ -387,7 +262,8 @@

    - @@ -395,140 +271,18 @@

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -552,24 +306,9 @@

    - - - - - - - - - @@ -577,22 +316,6 @@

    Methods in nars.entity that return Term
    -static SentenceSentence.make(Sentence oldS, - Term term, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) - -
    -          Make a derived Sentence from a template and some initial values.
    -static SentenceSentence.make(Term term, - char punc, - TruthValue truth, - Stamp stamp, - Sentence premise1, - Sentence premise2) - -
    -          Make a Sentence from an input String.
     void Sentence.setContent(Term t) @@ -254,38 +192,30 @@

    Constructors in nars.entity with parameters of type Term
    Concept(Term tm) +Concept(Term tm, + Memory memory)
              Constructor, called in Memory.getConcept only
    Goal(Term term, - char punc, - TruthValue t, - Stamp s) - -
    -          Constructor
    Judgment(Term term, - char punc, - TruthValue t, - Stamp b, - Sentence premise1, - Sentence premise2) +Sentence(Term content, + char punctuation, + TruthValue truth, + Stamp stamp)
    -          Constructor
    Question(Term term, - char punc, - Stamp s) +Sentence(Term content, + char punctuation, + TruthValue truth, + Stamp stamp, + boolean revisible)
    -          Constructor
    TermLink(Term t, @@ -322,64 +252,9 @@

    -(package private) static voidSyllogisticRules.abdIndCom(Term term1, - Term term2, - Sentence taskSentence, - Judgment belief, - int figure) - -
    -          { S>, P>} |- { P>,

    S>, P>}

    -(package private) static voidSyllogisticRules.analogy(Term term1, - Term term2, - Sentence asym, - Sentence sym, - int figure) - -
    -          { P>, P>} |- P>
    -(package private) static voidCompositionalRules.anaVarDepOuter(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          {(&&, <#x() --> S>, <#x() --> P>>, P>} |- S>
    -private static voidRuleTables.compoundAndSelf(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          Inference between a compound term and a component of it
    -private static voidRuleTables.compoundAndStatement(CompoundTerm compound, - short index, - Statement statement, - short side, - Term beliefTerm) - -
    -          Inference between a compound term and a statement
    static BudgetValueBudgetFunctions.compoundBackward(Term content) +BudgetFunctions.compoundBackward(Term content, + Memory memory)
              Backward inference with CompoundTerm conclusion, stronger case
    static BudgetValueBudgetFunctions.compoundBackwardWeak(Term content) +BudgetFunctions.compoundBackwardWeak(Term content, + Memory memory)
              Backward inference with CompoundTerm conclusion, weaker case
    static BudgetValueBudgetFunctions.compoundForward(TruthValue truth, - Term content) +BudgetFunctions.compoundForward(TruthValue truth, + Term content, + Memory memory)
              Forward inference with CompoundTerm conclusion
    -(package private) static booleanSyllogisticRules.conditionalAbd(Term cond1, - Term cond2, - Statement st1, - Statement st2) - -
    -          {<(&&, S2, S3) ==> P>, <(&&, S1, S3) ==> P>} |- S2>
    -(package private) static voidSyllogisticRules.conditionalDedInd(Implication premise1, - short index, - Term premise2, - int side) - -
    -          {<(&&, S1, S2, S3) ==> P>, S1} |- <(&&, S2, S3) ==> P> - {<(&&, S2, S3) ==> P>, S2>} |- <(&&, S1, S3) ==> P> - {<(&&, S1, S3) ==> P>, S2>} |- <(&&, S2, S3) ==> P>
    -private static voidCompositionalRules.decomposeCompound(CompoundTerm compound, - Term component, - Term term1, - int index, - boolean compoundTask) - -
    -          {<(S|P) ==> M>,

    M>} |- M>

    -(package private) static voidCompositionalRules.decomposeStatement(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          {(||, S, P), P} |- S - {(&&, S, P), P} |- S
    -(package private) static voidSyllogisticRules.dedExe(Term term1, - Term term2, - Sentence sentence, - Judgment belief) - -
    -          { M>, P>} |- { P>,

    S>}

    -(package private) static voidCompositionalRules.introVarDepInner(CompoundTerm compound, - Term component, - Term premise) - -
    -          Introduce a dependent variable in an inner-layer conjunction
    -private static voidCompositionalRules.processComposed(Statement statement, - Term subject, - Term predicate, - TruthValue truth) - -
    -          Finish composing compound term
    -(package private) static voidSyllogisticRules.resemblance(Term term1, - Term term2, - Judgment belief, - Sentence sentence, - int figure) - -
    -          { M>, P>} |- P>
    -(package private) static voidStructuralRules.structuralCompound(CompoundTerm compound, - Term component, - boolean compoundTask) - -
    -          {(&&, A, B), A@(&&, A, B)} |- A - {(||, A, B), A@(||, A, B)} |- A
    -private static voidStructuralRules.structuralStatement(Term subject, - Term predicate, - TruthValue truth) - -
    -          Common final operations of the above two methods
    -private static voidRuleTables.syllogisms(TaskLink tLink, - TermLink bLink, - Term taskTerm, - Term beliefTerm) - -
    -          Meta-table of syllogistic rules, indexed by the content classes of the - taskSentence and the belief
    static voidStructuralRules.transformNegation(Term content) +StructuralRules.transformNegation(Term content, + Memory memory)
              {A, A@(--, A)} |- (--, A)
    -private static TermStringParser.parseCompoundTerm(java.lang.String s0) - -
    -          Parse a String to create a CompoundTerm.
    -private static TermStringParser.parseSimpleTerm(java.lang.String s0) - -
    -          Parse a Term that has no internal structure.
    static TermStringParser.parseTerm(java.lang.String s0) +StringParser.parseTerm(java.lang.String s0, + Memory memory)
              Top-level method that parse a Term in general, which may recursively call itself.
     

    - - - - - - - - - -
    Methods in nars.io that return types with arguments of type Term
    -private static java.util.ArrayList<Term>StringParser.parseArguments(java.lang.String s0) - -
    -          Parse a String into the argument get of a CompoundTerm.
    -  -

    @@ -814,8 +537,9 @@

    - @@ -839,6 +563,22 @@

    + + + + + + + + + + + + + + + + + + + + - @@ -855,7 +621,8 @@

    - @@ -863,7 +630,8 @@

    - @@ -871,7 +639,8 @@

    - @@ -879,7 +648,8 @@

    - @@ -887,7 +657,8 @@

    - @@ -895,7 +666,8 @@

    - @@ -903,7 +675,8 @@

    - @@ -911,7 +684,8 @@

    - @@ -919,7 +693,8 @@

    - @@ -927,7 +702,8 @@

    - @@ -935,17 +711,9 @@

    - - - - - @@ -953,8 +721,9 @@

    - @@ -962,8 +731,9 @@

    - @@ -971,9 +741,10 @@

    - @@ -981,9 +752,10 @@

    - @@ -991,9 +763,10 @@

    - @@ -1001,9 +774,10 @@

    - @@ -1011,9 +785,10 @@

    - @@ -1021,8 +796,9 @@

    - @@ -1030,7 +806,8 @@

    - @@ -1038,7 +815,8 @@

    - @@ -1046,7 +824,8 @@

    - @@ -1054,8 +833,9 @@

    - @@ -1063,8 +843,9 @@

    - @@ -1072,26 +853,29 @@

    - +          Try to make a new compound from two components. - +          Try to make a new Disjunction from two components. - @@ -1099,9 +883,9 @@

    - @@ -1109,7 +893,8 @@

    - @@ -1117,15 +902,8 @@

    - - - - - @@ -1133,7 +911,8 @@

    - @@ -1141,7 +920,8 @@

    - @@ -1149,8 +929,8 @@

    - @@ -1158,8 +938,9 @@

    - @@ -1167,23 +948,14 @@

    - - - - -
    static TermCompoundTerm.addComponents(CompoundTerm t1, - Term t2) +CompoundTerm.addComponents(CompoundTerm t1, + Term t2, + Memory memory)
              Try to add a component into a compound
     TermImageExt.getRelation() + +
    +          Get the relation term in the Image
    + TermImageInt.getRelation() + +
    +          Get the relation term in the Image
    + Term Statement.getSubject()
    @@ -846,8 +586,34 @@

    + TermImageExt.getTheOtherComponent() + +
    +          Get the other term in the Image
    + TermImageInt.getTheOtherComponent() + +
    +          Get the other term in the Image
    +static TermConjunction.make(java.util.ArrayList<Term> argList, + Memory memory) + +
    +          Try to make a new compound from a list of components.
    static TermDifferenceExt.make(java.util.ArrayList<Term> argList) +DifferenceExt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new DifferenceExt.
    static TermDifferenceInt.make(java.util.ArrayList<Term> argList) +DifferenceInt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new DifferenceExt.
    static TermDisjunction.make(java.util.ArrayList<Term> argList) +Disjunction.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new IntersectionExt.
    static TermImageExt.make(java.util.ArrayList<Term> argList) +ImageExt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new ImageExt.
    static TermImageInt.make(java.util.ArrayList<Term> argList) +ImageInt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new ImageExt.
    static TermIntersectionExt.make(java.util.ArrayList<Term> argList) +IntersectionExt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new IntersectionExt.
    static TermIntersectionInt.make(java.util.ArrayList<Term> argList) +IntersectionInt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new IntersectionExt.
    static TermNegation.make(java.util.ArrayList<Term> argument) +Negation.make(java.util.ArrayList<Term> argument, + Memory memory)
              Try to make a new SetExt.
    static TermProduct.make(java.util.ArrayList<Term> argument) +Product.make(java.util.ArrayList<Term> argument, + Memory memory)
              Try to make a new compound.
    static TermSetExt.make(java.util.ArrayList<Term> argList) +SetExt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new SetExt.
    static TermSetInt.make(java.util.ArrayList<Term> argList) +SetInt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new SetExt.
    static TermConjunction.make(java.util.ArrayList<Term> argList, - int order) - -
    -          Try to make a new compound from a list of components.
    -static TermImageExt.make(java.util.ArrayList<Term> argument, - short index) +ImageExt.make(java.util.ArrayList<Term> argument, + short index, + Memory memory)
              Try to make a new compound from a set of components.
    static TermImageInt.make(java.util.ArrayList<Term> argument, - short index) +ImageInt.make(java.util.ArrayList<Term> argument, + short index, + Memory memory)
              Try to make a new compound from a set of components.
    static TermCompoundTerm.make(CompoundTerm compound, - java.util.ArrayList<Term> components) +CompoundTerm.make(CompoundTerm compound, + java.util.ArrayList<Term> components, + Memory memory)
              Try to make a compound term from a template and a list of components
    static TermProduct.make(CompoundTerm image, +Product.make(CompoundTerm image, Term component, - int index) + int index, + Memory memory)
              Try to make a Product from an ImageExt/ImageInt and a component.
    static TermImageExt.make(ImageExt oldImage, +ImageExt.make(ImageExt oldImage, Term component, - short index) + short index, + Memory memory)
              Try to make an Image from an existing Image and a component.
    static TermImageInt.make(ImageInt oldImage, +ImageInt.make(ImageInt oldImage, Term component, - short index) + short index, + Memory memory)
              Try to make an Image from an existing Image and a component.
    static TermImageExt.make(Product product, +ImageExt.make(Product product, Term relation, - short index) + short index, + Memory memory)
              Try to make an Image from a Product and a relation.
    static TermImageInt.make(Product product, +ImageInt.make(Product product, Term relation, - short index) + short index, + Memory memory)
              Try to make an Image from a Product and a relation.
    static TermCompoundTerm.make(java.lang.String op, - java.util.ArrayList<Term> arg) +CompoundTerm.make(java.lang.String op, + java.util.ArrayList<Term> arg, + Memory memory)
              Try to make a compound term from an operator and a list of components
    static TermNegation.make(Term t) +Negation.make(Term t, + Memory memory)
              Try to make a Negation of one component.
    static TermSetExt.make(Term t) +SetExt.make(Term t, + Memory memory)
              Try to make a new set from one component.
    static TermSetInt.make(Term t) +SetInt.make(Term t, + Memory memory)
              Try to make a new set from one component.
    static TermDifferenceExt.make(Term t1, - Term t2) +Conjunction.make(Term term1, + Term term2, + Memory memory)
              Try to make a new compound from two components.
    static TermDifferenceInt.make(Term t1, - Term t2) +DifferenceExt.make(Term t1, + Term t2, + Memory memory)
              Try to make a new compound from two components.
    static TermDisjunction.make(Term term1, - Term term2) +DifferenceInt.make(Term t1, + Term t2, + Memory memory)
    -          Try to make a new Disjunction from two components.
    static TermIntersectionExt.make(Term term1, - Term term2) +Disjunction.make(Term term1, + Term term2, + Memory memory)
    -          Try to make a new compound from two components.
    static TermIntersectionInt.make(Term term1, - Term term2) +IntersectionExt.make(Term term1, + Term term2, + Memory memory)
              Try to make a new compound from two components.
    static TermConjunction.make(Term term1, +IntersectionInt.make(Term term1, Term term2, - int order) + Memory memory)
              Try to make a new compound from two components.
    static TermDisjunction.make(java.util.TreeSet<Term> set) +Disjunction.make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new Disjunction from a set of components.
    static TermIntersectionExt.make(java.util.TreeSet<Term> set) - -
    -          Try to make a new compound from a set of components.
    -static TermIntersectionInt.make(java.util.TreeSet<Term> set) +IntersectionExt.make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components.
    static TermSetExt.make(java.util.TreeSet<Term> set) +IntersectionInt.make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components.
    static TermSetInt.make(java.util.TreeSet<Term> set) +SetExt.make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components.
    static TermConjunction.make(java.util.TreeSet<Term> set, - int order) +SetInt.make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components.
    static TermCompoundTerm.reduceComponents(CompoundTerm t1, - Term t2) +CompoundTerm.reduceComponents(CompoundTerm t1, + Term t2, + Memory memory)
              Try to remove a component from a compound
    static TermCompoundTerm.replaceComponent(CompoundTerm compound, - int index, - Term t) +CompoundTerm.setComponent(CompoundTerm compound, + int index, + Term t, + Memory memory)
              Try to replace a component in a compound at a given index by another one
    -static TermCompoundTerm.replaceComponent(CompoundTerm compound, - Term oldComponent, - Term newComponent) - -
    -          Try to replace a given component in a compound by another one
     

    @@ -1211,47 +983,11 @@

    -private static java.util.HashMap<java.lang.String,Term> -Variable.findSubstitute(Variable.VarType type, - java.util.ArrayList<Term> list1, - java.util.ArrayList<Term> list2, - java.util.HashMap<java.lang.String,Term> subs) - -
    -          To recursively find a substitution that can unify two sets of Term in any order - - - -static java.util.HashMap<java.lang.String,Term> -Variable.findSubstitute(Variable.VarType type, - Term term1, - Term term2) - -
    -          To find a substitution that can unify two Terms without changing them - - - -private static java.util.HashMap<java.lang.String,Term> -Variable.findSubstitute(Variable.VarType type, - Term term1, - Term term2, - java.util.HashMap<java.lang.String,Term> subs) +static java.util.ArrayList<Term> +CompoundTerm.cloneList(java.util.ArrayList<Term> original)
    -          To recursively find a substitution that can unify two Terms without changing them - - - -private static java.util.HashMap<java.lang.String,Term> -Variable.findSubstituteVar(Variable.VarType type, - Variable var, - Term term, - java.util.HashMap<java.lang.String,Term> subs, - boolean first) - -
    -          To find a substitution that can unify a Vriable and a Term +          Deep clone an array list of terms @@ -1272,8 +1008,9 @@

    static Term -CompoundTerm.addComponents(CompoundTerm t1, - Term t2) +CompoundTerm.addComponents(CompoundTerm t1, + Term t2, + Memory memory)
              Try to add a component into a compound @@ -1313,36 +1050,29 @@

    -static java.util.HashMap<java.lang.String,Term> -Variable.findSubstitute(Variable.VarType type, - Term term1, - Term term2) + boolean +CompoundTerm.containTerm(Term target)
    -          To find a substitution that can unify two Terms without changing them +          Recursively check if a compound contains a term -private static java.util.HashMap<java.lang.String,Term> -Variable.findSubstitute(Variable.VarType type, - Term term1, - Term term2, - java.util.HashMap<java.lang.String,Term> subs) + boolean +Term.containTerm(Term target)
    -          To recursively find a substitution that can unify two Terms without changing them +          Recursively check if a compound contains a term -private static java.util.HashMap<java.lang.String,Term> -Variable.findSubstituteVar(Variable.VarType type, - Variable var, - Term term, - java.util.HashMap<java.lang.String,Term> subs, - boolean first) +static boolean +Variable.hasSubstitute(char type, + Term term1, + Term term2)
    -          To find a substitution that can unify a Vriable and a Term +          Check if two terms can be unified @@ -1355,26 +1085,11 @@

    -static boolean -Conjunction.isParallel(Term t) - -
    -          Whether the Term is a parallel conjunction - - - -static boolean -Conjunction.isSequence(Term t) - -
    -          Whether the Term is a sequential conjunction - - - static Term -Product.make(CompoundTerm image, +Product.make(CompoundTerm image, Term component, - int index) + int index, + Memory memory)
              Try to make a Product from an ImageExt/ImageInt and a component. @@ -1382,9 +1097,10 @@

    static Term -ImageExt.make(ImageExt oldImage, +ImageExt.make(ImageExt oldImage, Term component, - short index) + short index, + Memory memory)
              Try to make an Image from an existing Image and a component. @@ -1392,9 +1108,10 @@

    static Term -ImageInt.make(ImageInt oldImage, +ImageInt.make(ImageInt oldImage, Term component, - short index) + short index, + Memory memory)
              Try to make an Image from an existing Image and a component. @@ -1402,9 +1119,10 @@

    static Term -ImageExt.make(Product product, +ImageExt.make(Product product, Term relation, - short index) + short index, + Memory memory)
              Try to make an Image from a Product and a relation. @@ -1412,9 +1130,10 @@

    static Term -ImageInt.make(Product product, +ImageInt.make(Product product, Term relation, - short index) + short index, + Memory memory)
              Try to make an Image from a Product and a relation. @@ -1422,31 +1141,21 @@

    static Statement -Statement.make(Statement statement, - Term subj, - Term pred) - -
    -          Make a Statement from given components, called by the rules - - - -static Statement -Statement.make(Statement statement, +Statement.make(Statement statement, Term subj, Term pred, - boolean temporal, - int distance) + Memory memory)
    -          Make a Statement from given components and temporal information, called by the rules +          Make a Statement from given components, called by the rules static Statement -Statement.make(java.lang.String relation, +Statement.make(java.lang.String relation, Term subject, - Term predicate) + Term predicate, + Memory memory)
              Make a Statement from String, called by StringParser @@ -1454,7 +1163,8 @@

    static Term -Negation.make(Term t) +Negation.make(Term t, + Memory memory)
              Try to make a Negation of one component. @@ -1462,7 +1172,8 @@

    static Term -SetExt.make(Term t) +SetExt.make(Term t, + Memory memory)
              Try to make a new set from one component. @@ -1470,7 +1181,8 @@

    static Term -SetInt.make(Term t) +SetInt.make(Term t, + Memory memory)
              Try to make a new set from one component. @@ -1478,8 +1190,9 @@

    static Term -DifferenceExt.make(Term t1, - Term t2) +Conjunction.make(Term term1, + Term term2, + Memory memory)
              Try to make a new compound from two components. @@ -1487,8 +1200,9 @@

    static Term -DifferenceInt.make(Term t1, - Term t2) +DifferenceExt.make(Term t1, + Term t2, + Memory memory)
              Try to make a new compound from two components. @@ -1496,53 +1210,59 @@

    static Term -Disjunction.make(Term term1, - Term term2) +DifferenceInt.make(Term t1, + Term t2, + Memory memory)
    -          Try to make a new Disjunction from two components. +          Try to make a new compound from two components. -static Inheritance -Inheritance.make(Term subject, - Term predicate) +static Term
    +Disjunction.make(Term term1, + Term term2, + Memory memory)
    -          Try to make a new compound from two components. +          Try to make a new Disjunction from two components. -static Statement -Instance.make(Term subject, - Term predicate) +static Equivalence +Equivalence.make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. -static Statement -InstanceProperty.make(Term subject, - Term predicate) +static Implication +Implication.make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. -static Term -IntersectionExt.make(Term term1, - Term term2) +static Inheritance +Inheritance.make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. -static Term -IntersectionInt.make(Term term1, - Term term2) +static Statement +Instance.make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. @@ -1550,49 +1270,49 @@

    static Statement -Property.make(Term subject, - Term predicate) +InstanceProperty.make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. -static Similarity -Similarity.make(Term subject, - Term predicate) +static Term +IntersectionExt.make(Term term1, + Term term2, + Memory memory)
              Try to make a new compound from two components. -static Equivalence -Equivalence.make(Term subject, - Term predicate, - boolean temporal, - int order) +static Term +IntersectionInt.make(Term term1, + Term term2, + Memory memory)
              Try to make a new compound from two components. -static Implication -Implication.make(Term subject, +static Statement +Property.make(Term subject, Term predicate, - boolean temporal, - int order) + Memory memory)
              Try to make a new compound from two components. -static Term -Conjunction.make(Term term1, - Term term2, - int order) +static Similarity +Similarity.make(Term subject, + Term predicate, + Memory memory)
              Try to make a new compound from two components. @@ -1605,16 +1325,15 @@

    Term predicate)
    -          Default method to make the name of an image term from given fields +          Default method to make the nameStr of an image term from given fields static Statement -Statement.makeSym(Statement statement, +Statement.makeSym(Statement statement, Term subj, Term pred, - boolean temporal, - int distance) + Memory memory)
              Make a symmetric Statement from given components and temporal information, called by the rules @@ -1622,8 +1341,9 @@

    static Term -CompoundTerm.reduceComponents(CompoundTerm t1, - Term t2) +CompoundTerm.reduceComponents(CompoundTerm t1, + Term t2, + Memory memory)
              Try to remove a component from a compound @@ -1631,34 +1351,35 @@

    static Term -CompoundTerm.replaceComponent(CompoundTerm compound, - int index, - Term t) +CompoundTerm.setComponent(CompoundTerm compound, + int index, + Term t, + Memory memory)
              Try to replace a component in a compound at a given index by another one -static Term -CompoundTerm.replaceComponent(CompoundTerm compound, - Term oldComponent, - Term newComponent) +static boolean +Variable.unify(char type, + Term t1, + Term t2)
    -          Try to replace a given component in a compound by another one +          To unify two terms static boolean -Variable.unify(Variable.VarType type, +Variable.unify(char type, Term t1, Term t2, Term compound1, Term compound2)
    -          To unify two Terms, then apply the substitution to the two compounds +          To unify two terms   @@ -1670,64 +1391,42 @@

    -private static java.util.HashMap<java.lang.String,Term> -Variable.findSubstitute(Variable.VarType type, - java.util.ArrayList<Term> list1, - java.util.ArrayList<Term> list2, - java.util.HashMap<java.lang.String,Term> subs) - -
    -          To recursively find a substitution that can unify two sets of Term in any order - - - -private static java.util.HashMap<java.lang.String,Term> -Variable.findSubstitute(Variable.VarType type, - java.util.ArrayList<Term> list1, - java.util.ArrayList<Term> list2, - java.util.HashMap<java.lang.String,Term> subs) + void +CompoundTerm.applySubstitute(java.util.HashMap<Term,Term> subs)
    -          To recursively find a substitution that can unify two sets of Term in any order +          Recersively apply a substitute to the current CompoundTerm -private static java.util.HashMap<java.lang.String,Term> -Variable.findSubstitute(Variable.VarType type, - java.util.ArrayList<Term> list1, - java.util.ArrayList<Term> list2, - java.util.HashMap<java.lang.String,Term> subs) + void +CompoundTerm.applySubstitute(java.util.HashMap<Term,Term> subs)
    -          To recursively find a substitution that can unify two sets of Term in any order +          Recersively apply a substitute to the current CompoundTerm -private static java.util.HashMap<java.lang.String,Term> -Variable.findSubstitute(Variable.VarType type, - Term term1, - Term term2, - java.util.HashMap<java.lang.String,Term> subs) +static java.util.ArrayList<Term> +CompoundTerm.cloneList(java.util.ArrayList<Term> original)
    -          To recursively find a substitution that can unify two Terms without changing them +          Deep clone an array list of terms -private static java.util.HashMap<java.lang.String,Term> -Variable.findSubstituteVar(Variable.VarType type, - Variable var, - Term term, - java.util.HashMap<java.lang.String,Term> subs, - boolean first) +static Term +Conjunction.make(java.util.ArrayList<Term> argList, + Memory memory)
    -          To find a substitution that can unify a Vriable and a Term +          Try to make a new compound from a list of components. static Term -DifferenceExt.make(java.util.ArrayList<Term> argList) +DifferenceExt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new DifferenceExt. @@ -1735,7 +1434,8 @@

    static Term -DifferenceInt.make(java.util.ArrayList<Term> argList) +DifferenceInt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new DifferenceExt. @@ -1743,7 +1443,8 @@

    static Term -Disjunction.make(java.util.ArrayList<Term> argList) +Disjunction.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new IntersectionExt. @@ -1751,7 +1452,8 @@

    static Term -ImageExt.make(java.util.ArrayList<Term> argList) +ImageExt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new ImageExt. @@ -1759,7 +1461,8 @@

    static Term -ImageInt.make(java.util.ArrayList<Term> argList) +ImageInt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new ImageExt. @@ -1767,7 +1470,8 @@

    static Term -IntersectionExt.make(java.util.ArrayList<Term> argList) +IntersectionExt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new IntersectionExt. @@ -1775,7 +1479,8 @@

    static Term -IntersectionInt.make(java.util.ArrayList<Term> argList) +IntersectionInt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new IntersectionExt. @@ -1783,7 +1488,8 @@

    static Term -Negation.make(java.util.ArrayList<Term> argument) +Negation.make(java.util.ArrayList<Term> argument, + Memory memory)
              Try to make a new SetExt. @@ -1791,7 +1497,8 @@

    static Term -Product.make(java.util.ArrayList<Term> argument) +Product.make(java.util.ArrayList<Term> argument, + Memory memory)
              Try to make a new compound. @@ -1799,7 +1506,8 @@

    static Term -SetExt.make(java.util.ArrayList<Term> argList) +SetExt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new SetExt. @@ -1807,7 +1515,8 @@

    static Term -SetInt.make(java.util.ArrayList<Term> argList) +SetInt.make(java.util.ArrayList<Term> argList, + Memory memory)
              Try to make a new SetExt. @@ -1815,17 +1524,9 @@

    static Term -Conjunction.make(java.util.ArrayList<Term> argList, - int order) - -
    -          Try to make a new compound from a list of components. - - - -static Term -ImageExt.make(java.util.ArrayList<Term> argument, - short index) +ImageExt.make(java.util.ArrayList<Term> argument, + short index, + Memory memory)
              Try to make a new compound from a set of components. @@ -1833,8 +1534,9 @@

    static Term -ImageInt.make(java.util.ArrayList<Term> argument, - short index) +ImageInt.make(java.util.ArrayList<Term> argument, + short index, + Memory memory)
              Try to make a new compound from a set of components. @@ -1842,8 +1544,9 @@

    static Term -CompoundTerm.make(CompoundTerm compound, - java.util.ArrayList<Term> components) +CompoundTerm.make(CompoundTerm compound, + java.util.ArrayList<Term> components, + Memory memory)
              Try to make a compound term from a template and a list of components @@ -1851,8 +1554,9 @@

    static Term -CompoundTerm.make(java.lang.String op, - java.util.ArrayList<Term> arg) +CompoundTerm.make(java.lang.String op, + java.util.ArrayList<Term> arg, + Memory memory)
              Try to make a compound term from an operator and a list of components @@ -1860,7 +1564,8 @@

    static Term -Disjunction.make(java.util.TreeSet<Term> set) +Disjunction.make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new Disjunction from a set of components. @@ -1868,7 +1573,8 @@

    static Term -IntersectionExt.make(java.util.TreeSet<Term> set) +IntersectionExt.make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components. @@ -1876,7 +1582,8 @@

    static Term -IntersectionInt.make(java.util.TreeSet<Term> set) +IntersectionInt.make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components. @@ -1884,7 +1591,8 @@

    static Term -SetExt.make(java.util.TreeSet<Term> set) +SetExt.make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components. @@ -1892,16 +1600,8 @@

    static Term -SetInt.make(java.util.TreeSet<Term> set) - -
    -          Try to make a new compound from a set of components. - - - -static Term -Conjunction.make(java.util.TreeSet<Term> set, - int order) +SetInt.make(java.util.TreeSet<Term> set, + Memory memory)
              Try to make a new compound from a set of components. @@ -1913,7 +1613,7 @@

    java.util.ArrayList<Term> arg)
    -          default method to make the name of a compound term from given fields +          default method to make the oldName of a compound term from given fields @@ -1923,7 +1623,7 @@

    int relationIndex)
    -          default method to make the name of an image term from given fields +          default method to make the oldName of an image term from given fields @@ -1933,16 +1633,7 @@

    char closer)
    -          make the name of an ExtensionSet or IntensionSet - - - - void -CompoundTerm.substituteComponent(java.util.HashMap<java.lang.String,Term> subs, - boolean first) - -
    -          Substitute a variable component according to a given substitution +          make the oldName of an ExtensionSet or IntensionSet   @@ -1953,330 +1644,82 @@

    Constructor parameters in nars.language with type arguments of type Term -CompoundTerm(java.lang.String n, - java.util.ArrayList<Term> arg) +CompoundTerm(java.util.ArrayList<Term> components)
              Constructor called from subclasses constructors to initialize the fields -CompoundTerm(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor called from subclasses constructors to clone the fields - - -Conjunction(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i, - int order) - -
    -          Constructor with full values, called by clone - - -Conjunction(java.lang.String n, - java.util.ArrayList<Term> arg, - int order) - -
    -          Constructor with partial values, called by make - - -DifferenceExt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -DifferenceExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -DifferenceInt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -DifferenceInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) +CompoundTerm(java.lang.String name, + java.util.ArrayList<Term> components)
    -          Constructor with full values, called by clone - - -Disjunction(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make +          Constructor called from subclasses constructors to initialize the fields -Disjunction(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) +CompoundTerm(java.lang.String name, + java.util.ArrayList<Term> components, + boolean isConstant, + short complexity)
    -          Constructor with full values, called by clone +          Constructor called from subclasses constructors to clone the fields -Equivalence(java.lang.String n, - java.util.ArrayList<Term> arg) +Conjunction(java.util.ArrayList<Term> arg)
              Constructor with partial values, called by make -Equivalence(java.lang.String n, +Conjunction(java.lang.String n, java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, + boolean con, short i)
              Constructor with full values, called by clone -Equivalence(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i, - int order) - -
    -          Constructor with full values, called by clone - - -Equivalence(java.lang.String n, - java.util.ArrayList<Term> arg, - int order) +Equivalence(java.util.ArrayList<Term> components)
              Constructor with partial values, called by make -ImageExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short complexity, - short index) +Equivalence(java.lang.String n, + java.util.ArrayList<Term> components, + boolean constant, + short complexity)
              Constructor with full values, called by clone -ImageExt(java.lang.String n, - java.util.ArrayList<Term> arg, - short index) +Implication(java.util.ArrayList<Term> arg)
              Constructor with partial values, called by make -ImageInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short complexity, - short index) - -
    -          Constructor with full values, called by clone - - -ImageInt(java.lang.String n, - java.util.ArrayList<Term> arg, - short index) - -
    -          constructor with partial values, called by make - - -Implication(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -Implication(java.lang.String n, +Implication(java.lang.String n, java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, + boolean con, short i)
              Constructor with full values, called by clone -Implication(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i, - int order) - -
    -          Constructor with full values, called by clone - - -Implication(java.lang.String n, - java.util.ArrayList<Term> arg, - int order) +Statement(java.util.ArrayList<Term> arg)
              Constructor with partial values, called by make -Inheritance(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -Inheritance(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -IntersectionExt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -IntersectionExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -IntersectionInt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -IntersectionInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -Negation(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -Negation(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -Product(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -Product(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short complexity) - -
    -          Constructor with full values, called by clone - - -SetExt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -SetExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -SetInt(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -SetInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          constructor with full values, called by clone - - -Similarity(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -Similarity(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone - - -Statement(java.lang.String n, - java.util.ArrayList<Term> arg) - -
    -          Constructor with partial values, called by make - - -Statement(java.lang.String n, +Statement(java.lang.String n, java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, + boolean con, short i)
    @@ -2285,11 +1728,11 @@

     

    - + +Uses of Term in nars.storage
    -Uses of Term in nars.main
      @@ -2297,31 +1740,15 @@

    - + - - -
    Fields in nars.main declared as TermFields in nars.storage declared as Term
    -static TermMemory.currentTerm - -
    -          Shortcut to the selected Term
    -  -

    - - - - - - - - + +          The selected Term
    Methods in nars.main that return Term
    -static TermMemory.nameToListedTerm(java.lang.String name) + TermMemory.currentTerm
    -          Get a Term for a given name of a Concept or Operator
      @@ -2329,77 +1756,23 @@

    - - - - - + - + +          The substitution that unify the common term in the Task and the Belief - + - - - - - - - - - - - - - -
    Methods in nars.main with parameters of type Term
    -private static voidMemory.continuedProcess(Task task, - Term content) - -
    -          Link to a new task from all relevant concepts for continued processing in - the near future for unspecified time.
    Fields in nars.storage with type parameters of type Term
    -static voidMemory.doublePremiseTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise1, - Sentence premise2) +protected  java.util.HashMap<Term,Term>Memory.substitute
    -          Shared final operations by all double-premise rules, called from the rules except StructuralRules
    -static ConceptMemory.getConcept(Term term) +protected  java.util.HashMap<Term,Term>Memory.substitute
    -          Get the Concept associated to a Term, or create it.
    -static voidMemory.revisionTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise1, - Sentence premise2) - -
    -          The final operations of the revision rules, called from MatchingRules
    -static voidMemory.singlePremiseTask(BudgetValue budget, - Term content, - TruthValue truth, - Sentence premise) - -
    -          Shared final operations by all single-premise rules, called in StructuralRules
    -static ConceptMemory.termToConcept(Term term) - -
    -          Get an existing Concept for a given Term.
    -  -

    - - - - +          The substitution that unify the common term in the Task and the Belief
    -Uses of Term in nars.operation
      @@ -2407,72 +1780,81 @@

    - + - + +          Get a Term for a given name of a Concept or Operator - - -
    Subclasses of Term in nars.operationMethods in nars.storage that return Term
    - classBreak + TermMemory.nameToListedTerm(java.lang.String name)
    -          A class used in testing only.
    - classDrop +
    +  +

    -
    -          A class used in testing only. + + + - + +          Shared final operations by all double-premise rules, called from the rules except StructuralRules - + +          Shared final operations by all double-premise rules, called from the rules except StructuralRules - + +          Get the Concept associated to a Term, or create it. - + +          Shared final operations by all single-premise rules, called in StructuralRules - + +          Shared final operations by all single-premise rules, called in StructuralRules - + +          Get an existing Concept for a given Term.
    Methods in nars.storage with parameters of type Term
    - classGoTo + voidMemory.doublePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget)
    -          A class used in testing only.
    - classOpen + voidMemory.doublePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget, + boolean revisible)
    -          A class used in testing only.
    - classOperator + ConceptMemory.getConcept(Term term)
    -          An individual operator that can be execute by the system, though implemented - outside NARS.
    - classPick + voidMemory.singlePremiseTask(Term newContent, + char punctuation, + TruthValue newTruth, + BudgetValue newBudget)
    -          A class used in testing only.
    - classStrike + voidMemory.singlePremiseTask(Term newContent, + TruthValue newTruth, + BudgetValue newBudget)
    -          A class used in testing only.
    - classThrow + ConceptMemory.termToConcept(Term term)
    -          A class used in testing only.
      diff --git a/nars-dist/javadoc/nars/language/class-use/Variable.html b/nars-dist/javadoc/nars/language/class-use/Variable.html index 55227b95..c0304667 100644 --- a/nars-dist/javadoc/nars/language/class-use/Variable.html +++ b/nars-dist/javadoc/nars/language/class-use/Variable.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.language.Variable (NARS Document) +Uses of Class nars.language.Variable - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.language.Variable (NARS Document)"; + parent.document.title="Uses of Class nars.language.Variable"; } } @@ -109,253 +109,23 @@

    - + - + - -
    Fields in nars.language with type parameters of type VariableMethod parameters in nars.language with type arguments of type Variable
    -protected  java.util.ArrayList<Variable>CompoundTerm.openVariables + voidCompoundTerm.renameVariables(java.util.HashMap<Variable,Variable> map)
    -          list of open variables in the compound
    -  -

    - - - - - - - - - -
    Methods in nars.language that return types with arguments of type Variable
    - java.util.ArrayList<Variable>CompoundTerm.getOpenVariables() - -
    -          get the OpenVariables list
    -  -

    - - - - - - - - +          Rename the variables in the compound - - -
    Methods in nars.language with parameters of type Variable
    -private static java.util.HashMap<java.lang.String,Term>Variable.findSubstituteVar(Variable.VarType type, - Variable var, - Term term, - java.util.HashMap<java.lang.String,Term> subs, - boolean first) - -
    -          To find a substitution that can unify a Vriable and a Term
    -private  java.lang.StringCompoundTerm.makeVarName(int size, - Variable v) - -
    -          Sequentially generate new variable names
    -  -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +          Rename the variables in the compound
    Constructor parameters in nars.language with type arguments of type Variable
    CompoundTerm(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor called from subclasses constructors to clone the fields
    Conjunction(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i, - int order) - -
    -          Constructor with full values, called by clone
    DifferenceExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    DifferenceInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    Disjunction(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    Equivalence(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    Equivalence(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i, - int order) - -
    -          Constructor with full values, called by clone
    ImageExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short complexity, - short index) - -
    -          Constructor with full values, called by clone
    ImageInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short complexity, - short index) - -
    -          Constructor with full values, called by clone
    Implication(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    Implication(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i, - int order) - -
    -          Constructor with full values, called by clone
    Inheritance(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    IntersectionExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    IntersectionInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    Negation(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    Product(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short complexity) - -
    -          Constructor with full values, called by clone
    SetExt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    SetInt(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          constructor with full values, called by clone
    Similarity(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) - -
    -          Constructor with full values, called by clone
    Statement(java.lang.String n, - java.util.ArrayList<Term> cs, - java.util.ArrayList<Variable> open, - short i) + voidCompoundTerm.renameVariables(java.util.HashMap<Variable,Variable> map)
    -          Constructor with full values, called by clone
      diff --git a/nars-dist/javadoc/nars/language/package-frame.html b/nars-dist/javadoc/nars/language/package-frame.html index 9579c99b..99fd32fe 100644 --- a/nars-dist/javadoc/nars/language/package-frame.html +++ b/nars-dist/javadoc/nars/language/package-frame.html @@ -2,13 +2,13 @@ - + -nars.language (NARS Document) +nars.language - + @@ -73,16 +73,5 @@ - - - - -
    -Enums  - -
    -Variable.VarType
    - - diff --git a/nars-dist/javadoc/nars/language/package-summary.html b/nars-dist/javadoc/nars/language/package-summary.html index b89e1267..e46f9105 100644 --- a/nars-dist/javadoc/nars/language/package-summary.html +++ b/nars-dist/javadoc/nars/language/package-summary.html @@ -2,13 +2,13 @@ - + -nars.language (NARS Document) +nars.language - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.language (NARS Document)"; + parent.document.title="nars.language"; } } @@ -194,20 +194,6 @@

      -

    - - - - - - - - - -
    -Enum Summary
    Variable.VarTypeFour variable types plus a wild card
    -  -

    Package nars.language Description @@ -222,13 +208,8 @@

    Package Specification

                <sentence> ::= <judgment>
                             | <question>
    -                        | <goal>
    -           <judgment> ::= <statement> <tense> <truth-value>
    -           <question> ::= <statement> <tense> 
    -               <goal> ::= <statement> <desire-value>
    -              <tense> ::= :\:    // past
    -                        | :|:    // present
    -                        | :/:    // future
    +           <judgment> ::= <statement> <truth-value>
    +           <question> ::= <statement> 
               <statement> ::= <<term> <relation> <term>>
                             | <compound-statement>
                             | <term>
    @@ -242,17 +223,10 @@ 

    Package Specification

    | --] // Property | {-] // InstanceProperty | ==> // Implication - | =/> // Implication (After) - | =|> // Implication (When) - | =\> // Implication (Before) | <=> // Equivalence - | </> // Equivalence (After) - | <|> // Equivalence (When) <compound-statement> ::= (-- <statement>) // Negation | (|| <statement> <statement>+) // Disjunction | (&& <statement> <statement>+) // Conjunction - | (&/ <statement> <statement>+) // Conjunction (Sequence) - | (&| <statement> <statement>+) // Conjunction (Parallel) <compound-term> ::= {<term>+} // SetExt | [<term>+] // SetInt | (& <term> <term>+) // IntersectionExt @@ -262,17 +236,14 @@

    Package Specification

    | (* <term> <term>+) // Product | (/ <term>+ _ <term>*) // ImageExt | (\ <term>+ _ <term>*) // ImageInt - <variable> ::= <dependent-var> - | <independent-var> - | <anonymous-var> + <variable> ::= <independent-var> + | <dependent-var> | <query-var> - <dependent-var> ::= #<word>(<independent-var>*) - <independent-var> ::= #<word> - <anonymous-var> ::= # - <query-var> ::= ?<word> + <independent-var> ::= $[<word>] + <dependent-var> ::= #<word> + <query-var> ::= ?[<word>] <word> : string in an alphabet <truth-value> : a pair of real numbers in [0, 1] x (0, 1) - <desire-value> : a pair of real numbers in [0, 1] x (0, 1)
    Major methods in the Term classes: diff --git a/nars-dist/javadoc/nars/language/package-tree.html b/nars-dist/javadoc/nars/language/package-tree.html index 7f07c0f2..05e48a89 100644 --- a/nars-dist/javadoc/nars/language/package-tree.html +++ b/nars-dist/javadoc/nars/language/package-tree.html @@ -2,13 +2,13 @@ - + -nars.language Class Hierarchy (NARS Document) +nars.language Class Hierarchy - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.language Class Hierarchy (NARS Document)"; + parent.document.title="nars.language Class Hierarchy"; } } @@ -102,16 +102,6 @@

  • nars.language.Variable -

    -Enum Hierarchy -

    -
      -
    • java.lang.Object
        -
      • java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable) - -
      -

    diff --git a/nars-dist/javadoc/nars/language/package-use.html b/nars-dist/javadoc/nars/language/package-use.html index d5066d99..bc61851d 100644 --- a/nars-dist/javadoc/nars/language/package-use.html +++ b/nars-dist/javadoc/nars/language/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package nars.language (NARS Document) +Uses of Package nars.language - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package nars.language (NARS Document)"; + parent.document.title="Uses of Package nars.language"; } } @@ -107,12 +107,8 @@

    Term hierarchy in Narsese  -nars.main -Top-level classes of the system  - - -nars.operation -Built-in operators  +nars.storage +Storage management    @@ -139,37 +135,6 @@

    Classes in nars.language used by nars.inference -CompoundTerm - -
    -          A CompoundTerm is a Term with internal (syntactic) structure - - -Conjunction - -
    -          Conjunction of statements - - -Implication - -
    -          A Statement about an Inheritance relation. - - -Inheritance - -
    -          A Statement about an Inheritance relation. - - -Statement - -
    -          A statement is a compound term, consisting of a subject, a predicate, - and a relation symbol in between. - - Term
    @@ -185,13 +150,6 @@

    Classes in nars.language used by nars.io -Statement - -
    -          A statement is a compound term, consisting of a subject, a predicate, - and a relation symbol in between. - - Term
    @@ -273,45 +231,17 @@


              A variable term, which does not correspond to a concept - -Variable.VarType - -
    -          Four variable types plus a wild card -  

    - + - - - - -
    -Classes in nars.language used by nars.main
    Term - -
    -          Term is the basic component of Narsese, and the object of processing in NARS.
    -  -

    - - - - - - - +Classes in nars.language used by nars.storage - diff --git a/nars-dist/javadoc/nars/main/NARS.html b/nars-dist/javadoc/nars/main/NARS.html index e1a1b5a5..ccc6b361 100644 --- a/nars-dist/javadoc/nars/main/NARS.html +++ b/nars-dist/javadoc/nars/main/NARS.html @@ -2,13 +2,13 @@ - + NARS - + @@ -257,6 +257,14 @@

    + + + + + Memory - - - - @@ -102,28 +98,9 @@

    -
    -Classes in nars.language used by nars.operation
    Statement - -
    -          A statement is a compound term, consisting of a subject, a predicate, - and a relation symbol in between.
    Term +Term
              Term is the basic component of Narsese, and the object of processing in NARS.
    + voidinit(java.lang.String[] args) + +
    +           
    static boolean isStandAlone() @@ -417,7 +425,21 @@

    -
    Parameters:
    args - no arguments are used
    +
    Parameters:
    args - optional argument used : one input file +
    + +
    + +

    +init

    +
    +public void init(java.lang.String[] args)
    +
    +
    +
    +
    +
    +

    diff --git a/nars-dist/javadoc/nars/main/Parameters.html b/nars-dist/javadoc/nars/main/Parameters.html index d0ab388f..934a2c0f 100644 --- a/nars-dist/javadoc/nars/main/Parameters.html +++ b/nars-dist/javadoc/nars/main/Parameters.html @@ -2,13 +2,13 @@ - + Parameters - + diff --git a/nars-dist/javadoc/nars/main/Reasoner.html b/nars-dist/javadoc/nars/main/Reasoner.html index 2474cd90..279129ad 100644 --- a/nars-dist/javadoc/nars/main/Reasoner.html +++ b/nars-dist/javadoc/nars/main/Reasoner.html @@ -2,13 +2,13 @@ - + Reasoner - + @@ -170,7 +170,7 @@

    - Memory getMemory()
    @@ -309,7 +309,7 @@

    getMemory

    -public Memory getMemory()
    +public Memory getMemory()
    diff --git a/nars-dist/javadoc/nars/main/class-use/NARS.html b/nars-dist/javadoc/nars/main/class-use/NARS.html index a2e0d7f0..d451b163 100644 --- a/nars-dist/javadoc/nars/main/class-use/NARS.html +++ b/nars-dist/javadoc/nars/main/class-use/NARS.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.NARS - + diff --git a/nars-dist/javadoc/nars/main/class-use/Parameters.html b/nars-dist/javadoc/nars/main/class-use/Parameters.html index 0b916e58..b7cbed12 100644 --- a/nars-dist/javadoc/nars/main/class-use/Parameters.html +++ b/nars-dist/javadoc/nars/main/class-use/Parameters.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Parameters - + diff --git a/nars-dist/javadoc/nars/main/class-use/Reasoner.html b/nars-dist/javadoc/nars/main/class-use/Reasoner.html index 3433d07b..3a650397 100644 --- a/nars-dist/javadoc/nars/main/class-use/Reasoner.html +++ b/nars-dist/javadoc/nars/main/class-use/Reasoner.html @@ -2,13 +2,13 @@ - + Uses of Class nars.main.Reasoner - + @@ -91,10 +91,6 @@

    Packages that use Reasoner

    nars.containerStorage management 
    nars.gui Graphical user interface of the system 
    nars.io Input/output management 
    -  -

    - - - - - -
    -Uses of Reasoner in nars.container
    -  -

    - - - - - - + +
    Constructors in nars.container with parameters of type Reasoner
    Memory(Reasoner reasoner) - -
    -          Create a new memory
    nars.storageStorage management 
      @@ -188,6 +165,29 @@

     

    + + + + + +
    +Uses of Reasoner in nars.storage
    +  +

    + + + + + + + + +
    Constructors in nars.storage with parameters of type Reasoner
    Memory(Reasoner reasoner) + +
    +          Create a new memory
    +  +


    diff --git a/nars-dist/javadoc/nars/main/package-frame.html b/nars-dist/javadoc/nars/main/package-frame.html index f3079854..480afcb9 100644 --- a/nars-dist/javadoc/nars/main/package-frame.html +++ b/nars-dist/javadoc/nars/main/package-frame.html @@ -2,13 +2,13 @@ - + nars.main - + diff --git a/nars-dist/javadoc/nars/main/package-summary.html b/nars-dist/javadoc/nars/main/package-summary.html index afb2d01e..32c70f97 100644 --- a/nars-dist/javadoc/nars/main/package-summary.html +++ b/nars-dist/javadoc/nars/main/package-summary.html @@ -2,13 +2,13 @@ - + nars.main - + @@ -56,8 +56,8 @@ PREV PACKAGE  - NEXT PACKAGEPREV PACKAGE  + NEXT PACKAGE FRAMES    NO FRAMES   @@ -168,8 +168,8 @@

    Package Specification

    PREV PACKAGE  - NEXT PACKAGEPREV PACKAGE  + NEXT PACKAGE
    FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/main/package-tree.html b/nars-dist/javadoc/nars/main/package-tree.html index 886e9340..76e848de 100644 --- a/nars-dist/javadoc/nars/main/package-tree.html +++ b/nars-dist/javadoc/nars/main/package-tree.html @@ -2,13 +2,13 @@ - + nars.main Class Hierarchy - + @@ -56,8 +56,8 @@ PREV  - NEXTPREV  + NEXT FRAMES    NO FRAMES   @@ -136,8 +136,8 @@

    PREV  - NEXTPREV  + NEXT FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/main/package-use.html b/nars-dist/javadoc/nars/main/package-use.html index 77965d96..8ac705ee 100644 --- a/nars-dist/javadoc/nars/main/package-use.html +++ b/nars-dist/javadoc/nars/main/package-use.html @@ -2,13 +2,13 @@ - + Uses of Package nars.main - + @@ -91,10 +91,6 @@

    Packages that use nars.main -nars.container -Storage management  - - nars.gui Graphical user interface of the system  @@ -102,17 +98,21 @@

    nars.io Input/output management  + +nars.storage +Storage management  +  

    - + +Classes in nars.main used by nars.gui - @@ -120,14 +120,14 @@

    -Classes in nars.main used by nars.container
    Reasoner +Reasoner
              A NARS Reasoner has its memory, I/O channels, and internal clock.
     

    - + +Classes in nars.main used by nars.io - @@ -135,14 +135,14 @@

    -Classes in nars.main used by nars.gui
    Reasoner +Reasoner
              A NARS Reasoner has its memory, I/O channels, and internal clock.
     

    - + +Classes in nars.main used by nars.storage - diff --git a/nars-dist/javadoc/nars/storage/Bag.html b/nars-dist/javadoc/nars/storage/Bag.html index b5a01d76..7057d25b 100644 --- a/nars-dist/javadoc/nars/storage/Bag.html +++ b/nars-dist/javadoc/nars/storage/Bag.html @@ -2,13 +2,13 @@ - + -Bag (NARS Document) +Bag - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Bag (NARS Document)"; + parent.document.title="Bag"; } } @@ -97,7 +97,9 @@

    extended by nars.storage.Bag<Type>
    -
    Direct Known Subclasses:
    ConceptBag, TaskBuffer, TaskLinkBag, TermLinkBag
    +
    Type Parameters:
    Type - The type of the Item in the Bag
    +
    +
    Direct Known Subclasses:
    ConceptBag, NovelTaskBag, TaskLinkBag, TermLinkBag

    @@ -113,7 +115,7 @@

    A name table is used to merge duplicate items that have the same key.

    The bag space is divided by a threshold, above which is mainly time management, - and below, space mamagement. + and below, space management. Differences: (1) level selection vs. item selection, (2) decay rate

    @@ -131,115 +133,11 @@

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - +          reference to memory
    -Classes in nars.main used by nars.io
    Reasoner +Reasoner
              A NARS Reasoner has its memory, I/O channels, and internal clock.
    -protected  intcapacity - -
    -          defined in different bags
    -protected  intcurrentCounter - -
    -          maximum number of items to be taken out at current level
    -protected  intcurrentLevel - -
    -          current take out level
    -(package private) static DistributorDISTRIBUTOR - -
    -          shared distributor that produce the probability distribution
    -protected  java.util.ArrayList<Type>[]itemTable - -
    -          array of lists of items, for items on different level
    -protected  intlevelIndex - -
    -          index to get next level, kept in individual objects
    -protected static floatLOAD_FACTOR - -
    -          hashtable load factor
    -protected  intmass - -
    -          current sum of occupied level
    -protected  java.util.HashMap<java.lang.String,Type>nameTable +protected  Memorymemory
    -          mapping from key to item
    -protected static floatRELATIVE_THRESHOLD - -
    -          relative threshold, only calculate once
    -protected  booleanshowing - -
    -          whether this bag has an active window
    -protected static intTHRESHOLD - -
    -          firing threshold
    -protected static intTOTAL_LEVEL - -
    -          priority levels
    -protected  BagWindowwindow - -
    -          display window
      @@ -254,7 +152,7 @@

    protected -Bag() +Bag(Memory memory)
              constructor, called from subclasses @@ -295,7 +193,7 @@

    -private  boolean +protected  boolean emptyLevel(int n)
    @@ -320,19 +218,11 @@

    -private  int -getLevel(Type item) - -
    -          Decide the put-in level according to priority - - - -private  Type -intoBase(Type newItem) + void +init()
    -          Insert an item into the itemTable, and return the overflow +            @@ -408,14 +298,6 @@

    -private  Type -takeOutFirst(int level) - -
    -          Take out the first or last Type in a level from the itemTable - - -  java.lang.String toString() @@ -445,168 +327,12 @@

    -

    -TOTAL_LEVEL

    -
    -protected static final int TOTAL_LEVEL
    -
    -
    priority levels -

    -

    -
    See Also:
    Constant Field Values
    -
    -
    - -

    -THRESHOLD

    -
    -protected static final int THRESHOLD
    -
    -
    firing threshold -

    -

    -
    See Also:
    Constant Field Values
    -
    -
    - -

    -RELATIVE_THRESHOLD

    -
    -protected static final float RELATIVE_THRESHOLD
    -
    -
    relative threshold, only calculate once -

    -

    -
    See Also:
    Constant Field Values
    -
    -
    - -

    -LOAD_FACTOR

    -
    -protected static final float LOAD_FACTOR
    -
    -
    hashtable load factor -

    -

    -
    See Also:
    Constant Field Values
    -
    -
    - -

    -DISTRIBUTOR

    +

    +memory

    -static final Distributor DISTRIBUTOR
    +protected Memory memory
    -
    shared distributor that produce the probability distribution -

    -

    -
    -
    -
    - -

    -nameTable

    -
    -protected java.util.HashMap<java.lang.String,Type extends Item> nameTable
    -
    -
    mapping from key to item -

    -

    -
    -
    -
    - -

    -itemTable

    -
    -protected java.util.ArrayList<Type extends Item>[] itemTable
    -
    -
    array of lists of items, for items on different level -

    -

    -
    -
    -
    - -

    -capacity

    -
    -protected int capacity
    -
    -
    defined in different bags -

    -

    -
    -
    -
    - -

    -mass

    -
    -protected int mass
    -
    -
    current sum of occupied level -

    -

    -
    -
    -
    - -

    -levelIndex

    -
    -protected int levelIndex
    -
    -
    index to get next level, kept in individual objects -

    -

    -
    -
    -
    - -

    -currentLevel

    -
    -protected int currentLevel
    -
    -
    current take out level -

    -

    -
    -
    -
    - -

    -currentCounter

    -
    -protected int currentCounter
    -
    -
    maximum number of items to be taken out at current level -

    -

    -
    -
    -
    - -

    -showing

    -
    -protected boolean showing
    -
    -
    whether this bag has an active window -

    -

    -
    -
    -
    - -

    -window

    -
    -protected BagWindow window
    -
    -
    display window +
    reference to memory

    @@ -622,13 +348,15 @@

    -

    +

    Bag

    -protected Bag()
    +protected Bag(Memory memory)
    constructor, called from subclasses

    +

    +
    Parameters:
    memory - The reference to memory
    @@ -641,6 +369,17 @@

    +

    +init

    +
    +public void init()
    +
    +
    +
    +
    +
    +
    +

    capacity

    @@ -736,7 +475,8 @@ 

    The only place where the forgetting rate is applied

    -
    Parameters:
    oldItem - The Item to put back
    +
    Parameters:
    oldItem - The Item to put back +
    Returns:
    Whether the new Item is added into the Bag


    @@ -772,7 +512,7 @@

    emptyLevel

    -private boolean emptyLevel(int n)
    +protected boolean emptyLevel(int n)
    Check whether a level is empty

    @@ -783,48 +523,6 @@


    -

    -getLevel

    -
    -private int getLevel(Type item)
    -
    -
    Decide the put-in level according to priority -

    -

    -
    Parameters:
    item - The Item to put in -
    Returns:
    The put-in level
    -
    -
    -
    - -

    -intoBase

    -
    -private Type intoBase(Type newItem)
    -
    -
    Insert an item into the itemTable, and return the overflow -

    -

    -
    Parameters:
    newItem - The Item to put in -
    Returns:
    The overflow Item
    -
    -
    -
    - -

    -takeOutFirst

    -
    -private Type takeOutFirst(int level)
    -
    -
    Take out the first or last Type in a level from the itemTable -

    -

    -
    Parameters:
    level - The current level -
    Returns:
    The first Item
    -
    -
    -
    -

    outOfBase

    diff --git a/nars-dist/javadoc/nars/storage/ConceptBag.html b/nars-dist/javadoc/nars/storage/ConceptBag.html
    index 40f32db2..f87bb6e8 100644
    --- a/nars-dist/javadoc/nars/storage/ConceptBag.html
    +++ b/nars-dist/javadoc/nars/storage/ConceptBag.html
    @@ -2,13 +2,13 @@
     
     
     
    -
    +
     
     
    -ConceptBag (NARS Document)
    +ConceptBag
     
     
    -
    +
     
     
     
    @@ -16,7 +16,7 @@
     function windowTitle()
     {
         if (location.href.indexOf('is-external=true') == -1) {
    -        parent.document.title="ConceptBag (NARS Document)";
    +        parent.document.title="ConceptBag";
         }
     }
     
    @@ -57,7 +57,7 @@
     
     
      PREV CLASS 
    - NEXT CLASSNEXT CLASS
     
       FRAMES   
      NO FRAMES   
    @@ -125,7 +125,7 @@ 

    Fields inherited from class nars.storage.Bag -capacity, currentCounter, currentLevel, DISTRIBUTOR, itemTable, levelIndex, LOAD_FACTOR, mass, nameTable, RELATIVE_THRESHOLD, showing, THRESHOLD, TOTAL_LEVEL, window +memory   @@ -138,10 +138,10 @@

    Constructor Summary -ConceptBag() +ConceptBag(Memory memory)
    -            +          Constructor   @@ -176,7 +176,7 @@

    Methods inherited from class nars.storage.Bag -averagePriority, contains, get, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString +averagePriority, contains, emptyLevel, get, init, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString   @@ -201,11 +201,15 @@

    -

    +

    ConceptBag

    -public ConceptBag()
    +public ConceptBag(Memory memory)
    +
    Constructor +

    +

    +
    Parameters:
    memory - The reference of memory
    @@ -282,7 +286,7 @@

     PREV CLASS  - NEXT CLASSNEXT CLASS FRAMES    NO FRAMES   diff --git a/nars-dist/javadoc/nars/storage/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/TaskLinkBag.html index 9ca51e6c..8c2ab4db 100644 --- a/nars-dist/javadoc/nars/storage/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TaskLinkBag.html @@ -2,13 +2,13 @@ - + -TaskLinkBag (NARS Document) +TaskLinkBag - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="TaskLinkBag (NARS Document)"; + parent.document.title="TaskLinkBag"; } } @@ -56,7 +56,7 @@ PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   @@ -125,7 +125,7 @@

    Fields inherited from class nars.storage.Bag -capacity, currentCounter, currentLevel, DISTRIBUTOR, itemTable, levelIndex, LOAD_FACTOR, mass, nameTable, RELATIVE_THRESHOLD, showing, THRESHOLD, TOTAL_LEVEL, window +memory   @@ -138,10 +138,10 @@

    Constructor Summary -TaskLinkBag() +TaskLinkBag(Memory memory)
    -            +          Constructor   @@ -176,7 +176,7 @@

    Methods inherited from class nars.storage.Bag -averagePriority, contains, get, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString +averagePriority, contains, emptyLevel, get, init, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString   @@ -201,11 +201,15 @@

    -

    +

    TaskLinkBag

    -public TaskLinkBag()
    +public TaskLinkBag(Memory memory)
    +
    Constructor +

    +

    +
    Parameters:
    memory - The reference of memory
    @@ -281,7 +285,7 @@

    PREV CLASS  + PREV CLASS   NEXT CLASS FRAMES   diff --git a/nars-dist/javadoc/nars/storage/TermLinkBag.html b/nars-dist/javadoc/nars/storage/TermLinkBag.html index 11c1053f..8c7ef230 100644 --- a/nars-dist/javadoc/nars/storage/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/TermLinkBag.html @@ -2,13 +2,13 @@ - + -TermLinkBag (NARS Document) +TermLinkBag - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="TermLinkBag (NARS Document)"; + parent.document.title="TermLinkBag"; } } @@ -125,7 +125,7 @@

    Fields inherited from class nars.storage.Bag -capacity, currentCounter, currentLevel, DISTRIBUTOR, itemTable, levelIndex, LOAD_FACTOR, mass, nameTable, RELATIVE_THRESHOLD, showing, THRESHOLD, TOTAL_LEVEL, window +memory   @@ -138,10 +138,10 @@

    Constructor Summary -TermLinkBag() +TermLinkBag(Memory memory)
    -            +          Constructor   @@ -172,7 +172,8 @@

     TermLink -takeOut(TaskLink taskLink) +takeOut(TaskLink taskLink, + long time)
              Replace defualt to prevent repeated inference, by checking TaskLink @@ -184,7 +185,7 @@

    Methods inherited from class nars.storage.Bag -averagePriority, contains, get, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString +averagePriority, contains, emptyLevel, get, init, outOfBase, pickOut, play, putBack, putIn, refresh, startPlay, stop, takeOut, toString   @@ -209,11 +210,15 @@

    -

    +

    TermLinkBag

    -public TermLinkBag()
    +public TermLinkBag(Memory memory)
    +
    Constructor +

    +

    +
    Parameters:
    memory - The reference of memory
    @@ -260,15 +265,16 @@


    -

    +

    takeOut

    -public TermLink takeOut(TaskLink taskLink)
    +public TermLink takeOut(TaskLink taskLink, + long time)
    Replace defualt to prevent repeated inference, by checking TaskLink

    -
    Parameters:
    taskLink - The selected TaskLink +
    Parameters:
    taskLink - The selected TaskLink
    time - The current time
    Returns:
    The selected TermLink
    diff --git a/nars-dist/javadoc/nars/storage/class-use/Bag.html b/nars-dist/javadoc/nars/storage/class-use/Bag.html index e1545238..bb6df13a 100644 --- a/nars-dist/javadoc/nars/storage/class-use/Bag.html +++ b/nars-dist/javadoc/nars/storage/class-use/Bag.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.storage.Bag (NARS Document) +Uses of Class nars.storage.Bag - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.storage.Bag (NARS Document)"; + parent.document.title="Uses of Class nars.storage.Bag"; } } @@ -111,28 +111,12 @@

     

    - - - - - - - - -
    Fields in nars.gui declared as Bag
    -private  BagBagWindow.bag - -
    -          The bag to be displayed
    -  -

    - - - diff --git a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html index 73cb3969..5617cdf7 100644 --- a/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/ConceptBag.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.storage.ConceptBag (NARS Document) +Uses of Class nars.storage.ConceptBag - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.storage.ConceptBag (NARS Document)"; + parent.document.title="Uses of Class nars.storage.ConceptBag"; } } @@ -84,43 +84,7 @@

    Uses of Class
    nars.storage.ConceptBag

    - -
    Constructors in nars.gui with parameters of type Bag
    BagWindow(Bag b, +BagWindow(Bag<?> b, java.lang.String title)
    @@ -166,7 +150,7 @@

     classTaskBuffer +NovelTaskBag
              New tasks that contain new Term.
    - - - - - - - -
    -Packages that use ConceptBag
    nars.mainTop-level classes of the system 
    -  -

    - - - - - -
    -Uses of ConceptBag in nars.main
    -  -

    - - - - - - - - - -
    Fields in nars.main declared as ConceptBag
    -private static ConceptBagMemory.concepts - -
    -          Concept bag.
    -  +No usage of nars.storage.ConceptBag


    diff --git a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html index da8985ea..c59fd467 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TaskLinkBag.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.storage.TaskLinkBag (NARS Document) +Uses of Class nars.storage.TaskLinkBag - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.storage.TaskLinkBag (NARS Document)"; + parent.document.title="Uses of Class nars.storage.TaskLinkBag"; } } @@ -84,43 +84,7 @@

    Uses of Class
    nars.storage.TaskLinkBag

    - - - - - - - - - -
    -Packages that use TaskLinkBag
    nars.entityData entities that are independently stored 
    -  -

    - - - - - -
    -Uses of TaskLinkBag in nars.entity
    -  -

    - - - - - - - - - -
    Fields in nars.entity declared as TaskLinkBag
    -private  TaskLinkBagConcept.taskLinks - -
    -          Task links for indirect processing
    -  +No usage of nars.storage.TaskLinkBag


    diff --git a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html index 9e843f73..dcf0ed14 100644 --- a/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html +++ b/nars-dist/javadoc/nars/storage/class-use/TermLinkBag.html @@ -2,13 +2,13 @@ - + -Uses of Class nars.storage.TermLinkBag (NARS Document) +Uses of Class nars.storage.TermLinkBag - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Class nars.storage.TermLinkBag (NARS Document)"; + parent.document.title="Uses of Class nars.storage.TermLinkBag"; } } @@ -84,43 +84,7 @@

    Uses of Class
    nars.storage.TermLinkBag

    - - - - - - - - - -
    -Packages that use TermLinkBag
    nars.entityData entities that are independently stored 
    -  -

    - - - - - -
    -Uses of TermLinkBag in nars.entity
    -  -

    - - - - - - - - - -
    Fields in nars.entity declared as TermLinkBag
    -private  TermLinkBagConcept.termLinks - -
    -          Term links between the term and its components and compounds
    -  +No usage of nars.storage.TermLinkBag


    diff --git a/nars-dist/javadoc/nars/storage/package-frame.html b/nars-dist/javadoc/nars/storage/package-frame.html index 8f469520..59189028 100644 --- a/nars-dist/javadoc/nars/storage/package-frame.html +++ b/nars-dist/javadoc/nars/storage/package-frame.html @@ -2,13 +2,13 @@ - + -nars.storage (NARS Document) +nars.storage - + @@ -28,9 +28,9 @@
    ConceptBag
    -Distributor +Memory
    -TaskBuffer +NovelTaskBag
    TaskLinkBag
    diff --git a/nars-dist/javadoc/nars/storage/package-summary.html b/nars-dist/javadoc/nars/storage/package-summary.html index e13e8589..f07a7342 100644 --- a/nars-dist/javadoc/nars/storage/package-summary.html +++ b/nars-dist/javadoc/nars/storage/package-summary.html @@ -2,13 +2,13 @@ - + -nars.storage (NARS Document) +nars.storage - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.storage (NARS Document)"; + parent.document.title="nars.storage"; } } @@ -56,7 +56,7 @@ PREV PACKAGE  + PREV PACKAGE   NEXT PACKAGE FRAMES   @@ -105,11 +105,11 @@

    Contains Concepts. -Distributor -A pseudo-random number generator, used in Bag. +Memory +The memory of the system. -TaskBuffer +NovelTaskBag New tasks that contain new Term. @@ -192,7 +192,7 @@

    Package Specification

    PREV PACKAGE  + PREV PACKAGE   NEXT PACKAGE FRAMES   diff --git a/nars-dist/javadoc/nars/storage/package-tree.html b/nars-dist/javadoc/nars/storage/package-tree.html index d67f4d9c..9dcc4bfd 100644 --- a/nars-dist/javadoc/nars/storage/package-tree.html +++ b/nars-dist/javadoc/nars/storage/package-tree.html @@ -2,13 +2,13 @@ - + -nars.storage Class Hierarchy (NARS Document) +nars.storage Class Hierarchy - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="nars.storage Class Hierarchy (NARS Document)"; + parent.document.title="nars.storage Class Hierarchy"; } } @@ -56,7 +56,7 @@ PREV  + PREV   NEXT FRAMES   @@ -94,8 +94,8 @@

    +
  • nars.storage.Memory
    @@ -127,7 +127,7 @@

    PREV  + PREV   NEXT FRAMES   diff --git a/nars-dist/javadoc/nars/storage/package-use.html b/nars-dist/javadoc/nars/storage/package-use.html index db2811c0..6fa215f1 100644 --- a/nars-dist/javadoc/nars/storage/package-use.html +++ b/nars-dist/javadoc/nars/storage/package-use.html @@ -2,13 +2,13 @@ - + -Uses of Package nars.storage (NARS Document) +Uses of Package nars.storage - + @@ -16,7 +16,7 @@ function windowTitle() { if (location.href.indexOf('is-external=true') == -1) { - parent.document.title="Uses of Package nars.storage (NARS Document)"; + parent.document.title="Uses of Package nars.storage"; } } @@ -99,6 +99,18 @@

    Graphical user interface of the system  +nars.inference +The inference rules and control functions  + + +nars.io +Input/output management  + + +nars.language +Term hierarchy in Narsese  + + nars.main Top-level classes of the system  @@ -116,16 +128,10 @@

    Classes in nars.storage used by nars.entity -TaskLinkBag +Memory
    -          TaskLinkBag contains links to tasks. - - -TermLinkBag - -
    -          Contains TermLinks to relevant (compound or component) Terms. +          The memory of the system.   @@ -146,23 +152,62 @@

     

    - + +Classes in nars.storage used by nars.inference - +          The memory of the system. + +
    -Classes in nars.storage used by nars.main
    ConceptBag +Memory
    -          Contains Concepts.
    +  +

    + + + + + + + + +
    +Classes in nars.storage used by nars.io
    Memory + +
    +          The memory of the system.
    +  +

    + + + + + + + + +
    +Classes in nars.storage used by nars.language
    Memory + +
    +          The memory of the system.
    +  +

    + + + + - +          The memory of the system.
    +Classes in nars.storage used by nars.main
    TaskBuffer +Memory
    -          New tasks that contain new Term.
      @@ -181,10 +226,10 @@

    distribution for retrieval. -Distributor +Memory
    -          A pseudo-random number generator, used in Bag. +          The memory of the system.   diff --git a/nars-dist/javadoc/overview-frame.html b/nars-dist/javadoc/overview-frame.html index f46c8b98..f6e7eec4 100644 --- a/nars-dist/javadoc/overview-frame.html +++ b/nars-dist/javadoc/overview-frame.html @@ -2,13 +2,13 @@ - + Overview List - + @@ -31,8 +31,6 @@ Packages
    -nars.container -
    nars.entity
    nars.gui @@ -41,9 +39,11 @@
    nars.io
    +nars.language +
    nars.main
    -nars.term +nars.storage
    diff --git a/nars-dist/javadoc/overview-summary.html b/nars-dist/javadoc/overview-summary.html index 61ad33bb..d2fd1e0a 100644 --- a/nars-dist/javadoc/overview-summary.html +++ b/nars-dist/javadoc/overview-summary.html @@ -2,13 +2,13 @@ - + Overview - + @@ -87,10 +87,6 @@ Packages
    -nars.container -Storage management - - nars.entity Data entities that are independently stored @@ -107,12 +103,16 @@ Input/output management +nars.language +Term hierarchy in Narsese + + nars.main Top-level classes of the system -nars.term -Term hierarchy in Narsese +nars.storage +Storage management diff --git a/nars-dist/javadoc/overview-tree.html b/nars-dist/javadoc/overview-tree.html index a112190c..fc54032f 100644 --- a/nars-dist/javadoc/overview-tree.html +++ b/nars-dist/javadoc/overview-tree.html @@ -2,13 +2,13 @@ - + Class Hierarchy - + @@ -85,15 +85,15 @@

    Hierarchy For All Packages

    -
    Package Hierarchies:
    nars.container, nars.entity, nars.gui, nars.inference, nars.io, nars.main, nars.term
    +
    Package Hierarchies:
    nars.entity, nars.gui, nars.inference, nars.io, nars.language, nars.main, nars.storage

    Class Hierarchy