%% Copyright (C) 2017, 2019, 2021 Dennis J. Darland load("RULES2/life_0001.lf")? load("FACTS2/facts_0031.lf")? load("RULES2/rules_0031.lf")? load("RULES2/rules_0032.lf")? %% load("RULES2/rules_0033.lf")? load("RULES2/rules_0034.lf")? load("RULES2/rules_0035.lf")? load("RULES2/rules_0036.lf")? load("RULES2/rules_0038.lf")? %% This file is part of darland's philosophy. %% darland's philosophy 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 3 of the License, or %% (at your option) any later version. %% darland's philosophy 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 darland's philosophy. If not, see . %% This file only checks rules (relating to propositions). %% This file uses queries to illustrate agreement or disagreement of subjects. %% This is an example with a mini universe for queries of high complexity. %% I use an example from Quine's Word & Object. (pp.144-151). %% The Story of Cicero and Catiline is given %% in _Caesar and Christ_, by Will Durant, pp. 140-147. %% "Tully" is not in the index of that work (or "De Senectute"). %% Wikipedia gives the full name as "Marcus Tullius Cicero" %% and notes "The name is infrequently anglicized as Tully." %% It also does not mention "De Senectute". %% "De Senectute" is in Wikipedia under "Writings of Cicero" %% Tom believes that Cicero denounced Catiline. %% Tom does not know Cicero = Tully. %% In my philosophy, for Tom at that time, %% "Cicero" R Toms_idea_of_Cicero %% and %% Toms_idea of_Cicero S Cicero %% %% %% but not %% "Cicero" R Toms_idea_of_Tully %% %% %% In my program the relation R is represented by the predicate %% rrrr(Subject, Time, Type, Word, Idea) %% In my program the relation S is represented by the predicate %% ssss(Subject, Time, Type, Idea, Object) %% R | S is represented by rrss trace_input(true)? write_time(Ignore)? %% I indicate for each query whether the immediate response should be %% TRUE = Yes or FALSE = No %% There may be subsequient No responses - as I may have asked for additional answers with semicolons. %% There are 7 relations of both understanding and belief. %% Those of understanding are defined in terms of rrrr and ssss %% Those of belief require also a belief_in_ideas relation. %% The 7 cases are: %% words %% ideas %% objects %% words_ideas %% words_objects %% ideas_objects %% words_ideas_objects %% First membership %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 %% %% 1 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 %% 2 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 %% 3 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 4 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 5 %% guarantees word & object %% To keep the database simple I did not declare "everyone" in these classes %% There there are ideas with tttt relations with several objects. %% %% cicero & catiline qqqq(member_plural_word_object, tom, now, roman_class_word, X)? ; ; ; ; %% cicero, catiline & russell qqqq(member_plural_word_object, quine, now, human_class_word, X)? ; ; ; ; %% cicero, catiline & russell qqqq(member_plural_word_object, quine, now, featherless_biped_class_word, X)? ; ; ; ; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 6 %% guarantees idea & object %% cicero & catiline qqqq(member_plural_idea_object, tom, now, tom_roman_class_idea, X)? ; ; %% cicero, catiline & russell qqqq(member_plural_idea_object, quine, now, quine_human_class_idea, X)? ; ; ; ; %% cicero, catiline & russell qqqq(member_plural_idea_object, quine, now, quine_featherless_biped_class_idea, X)? ; ; ; ; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 7 %% %% cicero, catiline qqqq(member_plural_word_idea_object, tom, now, roman_class_word, tom_roman_class_idea, X)? ; ; %% cicero, catiline & russell qqqq(member_plural_word_idea_object, quine, now, human_class_word, quine_human_class_idea, X)? ; ; ; ; %% cicero, catiline & russell qqqq(member_plural_word_idea_object, quine, now, featherless_biped_class_word, quine_featherless_biped_class_idea, X)? ; ; ; ; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% %% 1 %% TRUE qqqq(exists_plural_word, tom, now, roman_class_word)? %% 2 %% TRUE qqqq(exists_plural_idea, tom, now, tom_roman_class_idea)? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 %% 3 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 4 %% guarantees word and idea qqqq(exists_plural_word_idea, tom, now, roman_class_word, tom_roman_class_idea)? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 5 %% guarantees word & object %% cicero & catiline qqqq(exists_plural_word_object, tom, now, roman_class_word, X)? ; ; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 6 %% guarantees idea & object %% cicero & catiline (& tom's ideas of them) qqqq(exists_plural_idea_object, tom, now, tom_roman_class_idea, X)? ; ; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 7 %% %% cicero & catiline (& words for them) qqqq(exists_plural_word_idea_object, tom, now, roman_class_word, tom_roman_class_idea, X)? ; ; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% now equality -- only applies with object specified %% 1 %% NA %% 2 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 %% 3 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 4 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 5 %% %% TRUE qqqq(equal_plural_words_objects, quine, now, human_class_word, featherless_biped_class_word)? %% FALSE qqqq(equal_plural_words_objects, quine, now, roman_class_word, featherless_biped_class_word)? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 6 %% guarantees idea & object %% TRUE qqqq(equal_plural_ideas_objects, quine, now, quine_human_class_idea, quine_featherless_biped_class_idea)? %% FALSE qqqq(equal_plural_ideas_objects, quine, now, quine_roman_class_idea, quine_featherless_biped_class_idea)? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 7 %% %% FALSE qqqq(equal_plural_words_ideas_objects, quine, now, roman_class_word, featherless_biped_class_word, quine_roman_class_idea, quine_featherless_biped_class_idea)? %% TRUE qqqq(equal_plural_words_ideas_objects, quine, now, human_class_word, featherless_biped_class_word, quine_human_class_idea, quine_featherless_biped_class_idea)? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% now functions -- only applies with object specified %% 1 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 %% 2 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 %% 3 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 4 %% NA %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 5 %% guarantees word & object %% TRUE qqqq(function_plural_word, tom, now, human_word, human_class_word)? %% FALSE some humans are not roman qqqq(function_plural_word, tom, now, roman_word, human_class_word)? %% FALSE some humans are not dolphins qqqq(function_plural_word, tom, now, dolphin_word, human_class_word)? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 6 %% guarantees idea & object %% TRUE qqqq(function_plural_idea, tom, now, tom_human_idea, quine_human_class_idea)? %% FALSE qqqq(function_plural_idea, tom, now, tom_roman_idea, quine_human_class_idea)? %% FALSE qqqq(function_plural_idea, tom, now, tom_dolphin_idea, quine_human_class_idea)? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 7 %% %% TRUE qqqq(function_plural_word_idea, tom, now, human_word, human_class_word, tom_human_class_idea)? %% FALSE qqqq(function_plural_word_idea, tom, now, roman_word, human_class_word, tom_roman_class_idea)? %% FALSE function_plural_word_idea( tom, now, dolphin_word, roman_class_word, tom_roman_class_idea)? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Start testing new predicates 9/21/2021 qqqq(tttt, tom, now, Y, X)? ; ; %% First included in second qqqq(inclusion_plural_words_objects, tom, now, human_class_word, american_class_word)? qqqq(inclusion_plural_words_objects, tom, now, american_class_word, human_class_word)? qqqq(inclusion_plural_ideas_objects, tom, now, tom_human_class_idea, tom_american_class_idea)? qqqq(inclusion_plural_ideas_objects, tom, now, tom_american_class_idea, tom_human_class_idea)? qqqq(inclusion_plural_words_ideas_objects, tom, now, human_class_word, tom_human_class_idea, american_class_word, tom_american_class_idea)? qqqq(in_intersection_plural_words_objects, tom, now, human_class_word, roman_class_word, cicero)? qqqq(in_intersection_plural_ideas_objects, tom, now, tom_human_class_idea, tom_roman_class_idea, cicero)? qqqq(in_intersection_plural_words_ideas_objects, tom, now, human_class_word, roman_class_word, tom_human_class_idea, tom_roman_class_idea, cicero)? qqqq(in_union_plural_words_objects, tom, now, human_class_word, roman_class_word, russell)? qqqq(in_union_plural_ideas_objects, tom, now, tom_human_class_idea, tom_roman_class_idea, russell)? qqqq(in_union_plural_words_ideas_objects, tom, now, human_class_word, roman_class_word, tom_human_class_idea, tom_roman_class_idea, russell)? qqqq(in_w1_minus_w2_words_objects, tom, now, human_class_word, roman_class_word, cicero)? qqqq(in_w1_minus_w2_words_objects, tom, now, human_class_word, roman_class_word, russell)? qqqq(in_i1_minus_i2_ideas_objects, tom, now, tom_human_class_idea, tom_roman_class_idea, cicero)? qqqq(in_i1_minus_i2_ideas_objects, tom, now, tom_human_class_idea, tom_roman_class_idea, russell)? qqqq(in_wi1_minus_wi2_words_ideas_objects, tom, now, human_class_word, roman_class_word, tom_human_class_idea, tom_roman_class_idea, cicero)? qqqq(in_wi1_minus_wi2_words_ideas_objects, tom, now, human_class_word, roman_class_word, tom_human_class_idea, tom_roman_class_idea, russell)? qqqq(in_one_plural_word, tom, now, flipper_class_word)? qqqq(in_one_plural_word, tom, now, american_class_word)? qqqq(in_one_plural_idea, tom, now, tom_flipper_class_idea)? qqqq(in_one_plural_idea, tom, now, tom_american_class_idea)? qqqq(in_one_plural_word_idea, tom, now, flipper_class_word, tom_flipper_class_idea)? qqqq(in_one_plural_word_idea, tom, now, american_class_word, tom_american_class_idea)? qqqq(in_two_plural_word, tom, now, american_class_word)? qqqq(in_two_plural_word, tom, now, flipper_class_word)? qqqq(in_two_plural_idea, tom, now, tom_american_class_idea)? qqqq(in_two_plural_idea, tom, now, tom_flipper_class_idea)? qqqq(in_two_plural_word_idea, tom, now, american_class_word, tom_american_class_idea)? qqqq(in_two_plural_word_idea, tom, now, flipper_class_word, tom_flipper_class_idea)? qqqq(in_successor_plural_idea_object, tom, now, tom_flipper_class_idea, tom_cat_class_idea)? A = qqqq(bagof, Objects, ssss(tom, now, tom_cicero_idea, Objects))? qqqq(class_list, B, tom, now, tom_flipper_class_idea)? write_stats(Ignore)? halt?