diff --git a/examples/SUMO/BasicFre.gf b/examples/SUMO/BasicFre.gf index 43fcec672..794633ade 100644 --- a/examples/SUMO/BasicFre.gf +++ b/examples/SUMO/BasicFre.gf @@ -43,7 +43,7 @@ equiv f1 f2 = {s = \\f,c => f1.s ! Indep ! c ++ "est" ++ "equivalent" ++ "à" ++ var c1 c2 i e = let np = UsePN e in {s = np.s; - a = agrP3 c1.g Sg; + a = agrP3 c1.g Sg; isPol = False; hasClit = False; lock_NP = <>}; el c1 c2 i e = e ; diff --git a/examples/SUMO/TPTP/MergeAx.p b/examples/SUMO/TPTP/MergeAx.p index d347c8966..e33f2210d 100644 --- a/examples/SUMO/TPTP/MergeAx.p +++ b/examples/SUMO/TPTP/MergeAx.p @@ -73,18 +73,14 @@ fof(axMerge17, axiom, fof(axMerge18, axiom, ( ! [X] : (hasType(type_AnimalSubstance, X) => hasType(type_BodySubstance, X)))). - -fof(axMerge19, axiom, - ( ! [X] : - (hasType(type_Animal, X) => hasType(type_Organism, X)))). -fof(axMerge19_1, axiom, +fof(axMerge19, axiom, (! [Var_ANIMAL] : (((hasType(type_Organism, Var_ANIMAL)) & ( ((( ? [Var_SUBSTANCE] : (hasType(type_AnimalSubstance, Var_SUBSTANCE) & (f_part(Var_SUBSTANCE,Var_ANIMAL))))) & (( ? [Var_STRUCTURE] : (hasType(type_AnimalAnatomicalStructure, Var_STRUCTURE) & -(f_part(Var_STRUCTURE,Var_ANIMAL)))))))) => (hasType(type_Animal, Var_ANIMAL))))). +(f_part(Var_STRUCTURE,Var_ANIMAL)))))))) <=> (hasType(type_Animal, Var_ANIMAL))))). fof(axMerge20, axiom, ( ! [X] : @@ -1123,13 +1119,10 @@ fof(axMerge278, axiom, (hasType(type_Injecting, X) => hasType(type_Inserting, X)))). fof(axMerge279, axiom, - ( ! [X] : - (hasType(type_Injuring, X) => hasType(type_Damaging, X)))). -fof(axMerge279_1, axiom, (! [Var_INJ] : (((hasType(type_Damaging, Var_INJ)) & ( ( ? [Var_ORGANISM] : (hasType(type_Organism, Var_ORGANISM) & -(f_patient(Var_INJ,Var_ORGANISM)))))) => (hasType(type_Injuring, Var_INJ))))). +(f_patient(Var_INJ,Var_ORGANISM)))))) <=> (hasType(type_Injuring, Var_INJ))))). fof(axMerge280, axiom, ( ! [X] : @@ -1208,13 +1201,10 @@ fof(axMerge298, axiom, (hasType(type_JudicialOrganization, X) => hasType(type_Organization, X)))). fof(axMerge299, axiom, - ( ! [X] : - (hasType(type_JudicialProcess, X) => hasType(type_PoliticalProcess, X)))). -fof(axMerge299_1, axiom, (! [Var_PROCESS] : (((hasType(type_PoliticalProcess, Var_PROCESS)) & ( ( ? [Var_ORG] : (hasType(type_Organization, Var_ORG) & -(f_agent(Var_PROCESS,Var_ORG)))))) => (hasType(type_JudicialProcess, Var_PROCESS))))). +(f_agent(Var_PROCESS,Var_ORG)))))) <=> (hasType(type_JudicialProcess, Var_PROCESS))))). fof(axMerge300, axiom, ( ! [X] : @@ -1545,11 +1535,8 @@ fof(axMerge381, axiom, (hasType(type_NegativeInteger, X) => hasType(type_NegativeRealNumber, X)))). fof(axMerge382, axiom, - ( ! [X] : - (hasType(type_NegativeRealNumber, X) => hasType(type_RealNumber, X)))). -fof(axMerge382_1, axiom, (! [Var_NUMBER] : - (((hasType(type_RealNumber, Var_NUMBER)) & ( f_lessThan(Var_NUMBER,0))) => (hasType(type_NegativeRealNumber, Var_NUMBER))))). + (((hasType(type_RealNumber, Var_NUMBER)) & ( f_lessThan(Var_NUMBER,0))) <=> (hasType(type_NegativeRealNumber, Var_NUMBER))))). fof(axMerge383, axiom, ( ! [X] : @@ -1576,11 +1563,8 @@ fof(axMerge388, axiom, (hasType(type_NonnegativeInteger, X) => hasType(type_NonnegativeRealNumber, X)))). fof(axMerge389, axiom, - ( ! [X] : - (hasType(type_NonnegativeRealNumber, X) => hasType(type_RealNumber, X)))). -fof(axMerge389_1, axiom, (! [Var_NUMBER] : - (((hasType(type_RealNumber, Var_NUMBER)) & ( f_greaterThanOrEqualTo(Var_NUMBER,0))) => (hasType(type_NonnegativeRealNumber, Var_NUMBER))))). + (((hasType(type_RealNumber, Var_NUMBER)) & ( f_greaterThanOrEqualTo(Var_NUMBER,0))) <=> (hasType(type_NonnegativeRealNumber, Var_NUMBER))))). fof(axMerge390, axiom, ( ! [X] : @@ -1771,15 +1755,12 @@ fof(axMerge436, axiom, (hasType(type_PlantSubstance, X) => hasType(type_BodySubstance, X)))). fof(axMerge437, axiom, - ( ! [X] : - (hasType(type_Plant, X) => hasType(type_Organism, X)))). -fof(axMerge437_1, axiom, (! [Var_PLANT] : (((hasType(type_Organism, Var_PLANT)) & ( ((( ? [Var_SUBSTANCE] : (hasType(type_PlantSubstance, Var_SUBSTANCE) & (f_part(Var_SUBSTANCE,Var_PLANT))))) & (( ? [Var_STRUCTURE] : (hasType(type_PlantAnatomicalStructure, Var_STRUCTURE) & -(f_part(Var_STRUCTURE,Var_PLANT)))))))) => (hasType(type_Plant, Var_PLANT))))). +(f_part(Var_STRUCTURE,Var_PLANT)))))))) <=> (hasType(type_Plant, Var_PLANT))))). fof(axMerge438, axiom, ( ! [X] : @@ -1825,12 +1806,9 @@ fof(axMerge448, axiom, ( ! [X] : (hasType(type_PositiveInteger, X) => hasType(type_PositiveRealNumber, X)))). -fof(axMerge449, axiom, - ( ! [X] : - (hasType(type_PositiveRealNumber, X) => hasType(type_NonnegativeRealNumber, X)))). -fof(axMerge449_1, axiom, + fof(axMerge449, axiom, (! [Var_NUMBER] : - (((hasType(type_NonnegativeRealNumber, Var_NUMBER)) & ( f_greaterThan(Var_NUMBER,0))) => (hasType(type_PositiveRealNumber, Var_NUMBER))))). + (((hasType(type_NonnegativeRealNumber, Var_NUMBER)) & ( f_greaterThan(Var_NUMBER,0))) <=> (hasType(type_PositiveRealNumber, Var_NUMBER))))). fof(axMerge450, axiom, ( ! [X] : @@ -2349,13 +2327,10 @@ fof(axMerge578, axiom, (hasType(type_SymmetricPositionalAttribute, X) => hasType(type_PositionalAttribute, X)))). fof(axMerge579, axiom, - ( ! [X] : - (hasType(type_SyntheticSubstance, X) => hasType(type_Substance, X)))). -fof(axMerge579_1, axiom, (! [Var_SUBSTANCE] : (((hasType(type_Substance, Var_SUBSTANCE)) & ( ( ? [Var_PROCESS] : (hasType(type_IntentionalProcess, Var_PROCESS) & -(f_result(Var_PROCESS,Var_SUBSTANCE)))))) => (hasType(type_SyntheticSubstance, Var_SUBSTANCE))))). +(f_result(Var_PROCESS,Var_SUBSTANCE)))))) <=> (hasType(type_SyntheticSubstance, Var_SUBSTANCE))))). fof(axMerge580, axiom, ( ! [X] : @@ -2634,9 +2609,6 @@ fof(axMerge648, axiom, (hasType(type_Exoskeleton, X) => hasType(type_BodyPart, X)))). fof(axMerge649, axiom, - ( ! [X] : - (hasType(type_Vertebrate, X) => hasType(type_Animal, X)))). -fof(axMerge649_1, axiom, (! [Var_VERT] : (((hasType(type_Animal, Var_VERT)) & ( ((((((( ? [Var_SPINE] : (hasType(type_SpinalColumn, Var_SPINE) & @@ -2646,7 +2618,7 @@ fof(axMerge649_1, axiom, (hasType(type_Skeleton, Var_SKELETON) & (f_part(Var_SKELETON,Var_VERT))))))) & (( ? [Var_SKELETON] : (hasType(type_Exoskeleton, Var_SKELETON) & -(f_part(Var_SKELETON,Var_VERT)))))))) => (hasType(type_Vertebrate, Var_VERT))))). +(f_part(Var_SKELETON,Var_VERT)))))))) <=> (hasType(type_Vertebrate, Var_VERT))))). fof(axMerge650, axiom, ( ! [X] : diff --git a/examples/SUMO/TPTP/Mid_level_ontologyAx.p b/examples/SUMO/TPTP/Mid_level_ontologyAx.p index 857139824..e9f677f53 100644 --- a/examples/SUMO/TPTP/Mid_level_ontologyAx.p +++ b/examples/SUMO/TPTP/Mid_level_ontologyAx.p @@ -399,13 +399,10 @@ fof(axMid_level_ontology99, axiom, (hasType(type_Bathing, X) => hasType(type_Washing, X)))). fof(axMid_level_ontology100, axiom, - ( ! [X] : - (hasType(type_Bathroom, X) => hasType(type_Room, X)))). -fof(axMid_level_ontology100_1, axiom, (! [Var_R] : (((hasType(type_Room, Var_R)) & ( ( ? [Var_T] : (hasType(type_Toilet, Var_T) & -(f_located(Var_T,Var_R)))))) => (hasType(type_Bathroom, Var_R))))). +(f_located(Var_T,Var_R)))))) <=> (hasType(type_Bathroom, Var_R))))). fof(axMid_level_ontology101, axiom, ( ! [X] : @@ -696,9 +693,6 @@ fof(axMid_level_ontology172, axiom, (hasType(type_BuildingLevel, X) => hasType(type_StationaryArtifact, X)))). fof(axMid_level_ontology173, axiom, - ( ! [X] : - (hasType(type_Bull, X) => hasType(type_Cow, X)))). -fof(axMid_level_ontology173_1, axiom, (! [Var_B] : (((hasType(type_Cow, Var_B)) & ( f_attribute(Var_B,inst_Male))) => (hasType(type_Bull, Var_B))))). @@ -751,11 +745,8 @@ fof(axMid_level_ontology185, axiom, (hasType(type_Cafeteria, X) => hasType(type_Restaurant, X)))). fof(axMid_level_ontology186, axiom, - ( ! [X] : - (hasType(type_Calf, X) => hasType(type_Cow, X)))). -fof(axMid_level_ontology186_1, axiom, (! [Var_C] : - (((hasType(type_Cow, Var_C)) & ( f_attribute(Var_C,inst_NonFullyFormed))) => (hasType(type_Calf, Var_C))))). + (((hasType(type_Cow, Var_C)) & ( f_attribute(Var_C,inst_NonFullyFormed))) <=> (hasType(type_Calf, Var_C))))). fof(axMid_level_ontology187, axiom, ( ! [X] : @@ -1178,13 +1169,10 @@ fof(axMid_level_ontology291, axiom, (hasType(type_CondominiumBuilding, X) => hasType(type_ResidentialBuilding, X)))). fof(axMid_level_ontology292, axiom, - ( ! [X] : - (hasType(type_CondominiumUnit, X) => hasType(type_SingleFamilyResidence, X)))). -fof(axMid_level_ontology292_1, axiom, (! [Var_UNIT] : (((hasType(type_SingleFamilyResidence, Var_UNIT)) & ( ( ? [Var_PERSON] : (hasType(type_Human, Var_PERSON) & -(((f_home(Var_PERSON,Var_UNIT)) & (f_possesses(Var_PERSON,Var_UNIT)))))))) => (hasType(type_CondominiumUnit, Var_UNIT))))). +(((f_home(Var_PERSON,Var_UNIT)) & (f_possesses(Var_PERSON,Var_UNIT)))))))) <=> (hasType(type_CondominiumUnit, Var_UNIT))))). fof(axMid_level_ontology293, axiom, ( ! [X] : @@ -1887,11 +1875,8 @@ fof(axMid_level_ontology467, axiom, (hasType(type_Feeding, X) => hasType(type_Giving, X)))). fof(axMid_level_ontology468, axiom, - ( ! [X] : - (hasType(type_FemaleCow, X) => hasType(type_Cow, X)))). -fof(axMid_level_ontology468_1, axiom, (! [Var_COW] : - (((hasType(type_Cow, Var_COW)) & ( f_attribute(Var_COW,inst_Female))) => (hasType(type_FemaleCow, Var_COW))))). + (((hasType(type_Cow, Var_COW)) & ( f_attribute(Var_COW,inst_Female))) <=> (hasType(type_FemaleCow, Var_COW))))). fof(axMid_level_ontology469, axiom, ( ! [X] : @@ -2342,11 +2327,8 @@ fof(axMid_level_ontology580, axiom, (hasType(type_Helicopter, X) => hasType(type_Aircraft, X)))). fof(axMid_level_ontology581, axiom, - ( ! [X] : - (hasType(type_Hen, X) => hasType(type_Chicken, X)))). -fof(axMid_level_ontology581_1, axiom, (! [Var_H] : - (((hasType(type_Chicken, Var_H)) & ( f_attribute(Var_H,inst_Female))) => (hasType(type_Hen, Var_H))))). + (((hasType(type_Chicken, Var_H)) & ( f_attribute(Var_H,inst_Female))) <=> (hasType(type_Hen, Var_H))))). fof(axMid_level_ontology582, axiom, ( ! [X] : @@ -2485,11 +2467,8 @@ fof(axMid_level_ontology615, axiom, (hasType(type_Hypothalamus, X) => hasType(type_BodyPart, X)))). fof(axMid_level_ontology616, axiom, - ( ! [X] : - (hasType(type_Ice, X) => hasType(type_Water, X)))). -fof(axMid_level_ontology616_1, axiom, (! [Var_ICE] : - (((hasType(type_Water, Var_ICE)) & ( f_attribute(Var_ICE,inst_Solid))) => (hasType(type_Ice, Var_ICE))))). + (((hasType(type_Water, Var_ICE)) & ( f_attribute(Var_ICE,inst_Solid))) <=> (hasType(type_Ice, Var_ICE))))). fof(axMid_level_ontology617, axiom, ( ! [X] : @@ -2696,11 +2675,8 @@ fof(axMid_level_ontology667, axiom, (hasType(type_Ladder, X) => hasType(type_Artifact, X)))). fof(axMid_level_ontology668, axiom, - ( ! [X] : - (hasType(type_Lamb, X) => hasType(type_Sheep, X)))). -fof(axMid_level_ontology668_1, axiom, (! [Var_L] : - (((hasType(type_Sheep, Var_L)) & ( f_attribute(Var_L,inst_NonFullyFormed))) => (hasType(type_Lamb, Var_L))))). + (((hasType(type_Sheep, Var_L)) & ( f_attribute(Var_L,inst_NonFullyFormed))) <=> (hasType(type_Lamb, Var_L))))). fof(axMid_level_ontology669, axiom, ( ! [X] : @@ -3555,13 +3531,10 @@ fof(axMid_level_ontology881, axiom, (hasType(type_OrchestralConducting, X) => hasType(type_Guiding, X)))). fof(axMid_level_ontology882, axiom, - ( ! [X] : - (hasType(type_Order, X) => hasType(type_Sentence, X)))). -fof(axMid_level_ontology882_1, axiom, (! [Var_SENTENCE] : (((hasType(type_Sentence, Var_SENTENCE)) & ( ( ? [Var_ORDER] : (hasType(type_Ordering, Var_ORDER) & -(f_result(Var_ORDER,Var_SENTENCE)))))) => (hasType(type_Order, Var_SENTENCE))))). +(f_result(Var_ORDER,Var_SENTENCE)))))) <=> (hasType(type_Order, Var_SENTENCE))))). fof(axMid_level_ontology883, axiom, ( ! [X] : @@ -3916,15 +3889,12 @@ fof(axMid_level_ontology970, axiom, (hasType(type_Polygon, X) => hasType(type_ClosedTwoDimensionalFigure, X)))). fof(axMid_level_ontology971, axiom, - ( ! [X] : - (hasType(type_PolyphonicMusic, X) => hasType(type_Music, X)))). -fof(axMid_level_ontology971_1, axiom, (! [Var_MUSIC] : (((hasType(type_Music, Var_MUSIC)) & ( ( ? [Var_PART1] : (hasType(type_Music, Var_PART1) & (( ? [Var_PART2] : (hasType(type_Music, Var_PART2) & -(((((((((f_subProcess(Var_PART1,Var_MUSIC)) & (f_subProcess(Var_PART2,Var_MUSIC)))) & (Var_PART1 = Var_PART2))) & (f_cooccur(Var_PART1,Var_MUSIC)))) & (f_cooccur(Var_PART2,Var_MUSIC))))))))))) => (hasType(type_PolyphonicMusic, Var_MUSIC))))). +(((((((((f_subProcess(Var_PART1,Var_MUSIC)) & (f_subProcess(Var_PART2,Var_MUSIC)))) & (Var_PART1 = Var_PART2))) & (f_cooccur(Var_PART1,Var_MUSIC)))) & (f_cooccur(Var_PART2,Var_MUSIC))))))))))) <=> (hasType(type_PolyphonicMusic, Var_MUSIC))))). fof(axMid_level_ontology972, axiom, ( ! [X] : @@ -4119,13 +4089,10 @@ fof(axMid_level_ontology1019, axiom, (hasType(type_QueenInsect, X) => hasType(type_Insect, X)))). fof(axMid_level_ontology1020, axiom, - ( ! [X] : - (hasType(type_Question, X) => hasType(type_Sentence, X)))). -fof(axMid_level_ontology1020_1, axiom, (! [Var_SENTENCE] : (((hasType(type_Sentence, Var_SENTENCE)) & ( ( ? [Var_QUESTION] : (hasType(type_Questioning, Var_QUESTION) & -(f_result(Var_QUESTION,Var_SENTENCE)))))) => (hasType(type_Question, Var_SENTENCE))))). +(f_result(Var_QUESTION,Var_SENTENCE)))))) <=> (hasType(type_Question, Var_SENTENCE))))). fof(axMid_level_ontology1021, axiom, ( ! [X] : @@ -4152,15 +4119,12 @@ fof(axMid_level_ontology1026, axiom, (hasType(type_RadiatingUltraviolet, X) => hasType(type_RadiatingElectromagnetic, X)))). fof(axMid_level_ontology1027, axiom, - ( ! [X] : - (hasType(type_RadiatingVisibleLight, X) => hasType(type_RadiatingLight, X)))). -fof(axMid_level_ontology1027_1, axiom, (! [Var_R] : (((hasType(type_RadiatingLight, Var_R)) & ( ( ? [Var_H] : (hasType(type_Human, Var_H) & (( ? [Var_S] : (hasType(type_Seeing, Var_S) & -(((f_agent(Var_S,Var_H)) & (f_patient(Var_S,Var_R))))))))))) => (hasType(type_RadiatingVisibleLight, Var_R))))). +(((f_agent(Var_S,Var_H)) & (f_patient(Var_S,Var_R))))))))))) <=> (hasType(type_RadiatingVisibleLight, Var_R))))). fof(axMid_level_ontology1028, axiom, ( ! [X] : @@ -4355,13 +4319,10 @@ fof(axMid_level_ontology1075, axiom, (hasType(type_Report, X) => hasType(type_FactualText, X)))). fof(axMid_level_ontology1076, axiom, - ( ! [X] : - (hasType(type_Request, X) => hasType(type_Sentence, X)))). -fof(axMid_level_ontology1076_1, axiom, (! [Var_SENTENCE] : (((hasType(type_Sentence, Var_SENTENCE)) & ( ( ? [Var_REQUEST] : (hasType(type_Requesting, Var_REQUEST) & -(f_result(Var_REQUEST,Var_SENTENCE)))))) => (hasType(type_Request, Var_SENTENCE))))). +(f_result(Var_REQUEST,Var_SENTENCE)))))) <=> (hasType(type_Request, Var_SENTENCE))))). fof(axMid_level_ontology1077, axiom, ( ! [X] : @@ -4464,11 +4425,8 @@ fof(axMid_level_ontology1101, axiom, (hasType(type_Roof, X) => hasType(type_StationaryArtifact, X)))). fof(axMid_level_ontology1102, axiom, - ( ! [X] : - (hasType(type_Rooster, X) => hasType(type_Chicken, X)))). -fof(axMid_level_ontology1102_1, axiom, (! [Var_R] : - (((hasType(type_Chicken, Var_R)) & ( f_attribute(Var_R,inst_Male))) => (hasType(type_Rooster, Var_R))))). + (((hasType(type_Chicken, Var_R)) & ( f_attribute(Var_R,inst_Male))) <=> (hasType(type_Rooster, Var_R))))). fof(axMid_level_ontology1103, axiom, ( ! [X] : @@ -4611,13 +4569,10 @@ fof(axMid_level_ontology1137, axiom, (hasType(type_SeizingProperty, X) => hasType(type_UnilateralGetting, X)))). fof(axMid_level_ontology1138, axiom, - ( ! [X] : - (hasType(type_SelfPoweredDevice, X) => hasType(type_Device, X)))). -fof(axMid_level_ontology1138_1, axiom, (! [Var_O] : (((hasType(type_Device, Var_O)) & ( ( ? [Var_G] : (hasType(type_Artifact, Var_G) & -(f_powerPlant(Var_O,Var_G)))))) => (hasType(type_SelfPoweredDevice, Var_O))))). +(f_powerPlant(Var_O,Var_G)))))) <=> (hasType(type_SelfPoweredDevice, Var_O))))). fof(axMid_level_ontology1139, axiom, ( ! [X] : @@ -5000,13 +4955,10 @@ fof(axMid_level_ontology1233, axiom, (hasType(type_StateGovernment, X) => hasType(type_Government, X)))). fof(axMid_level_ontology1234, axiom, - ( ! [X] : - (hasType(type_Statement, X) => hasType(type_Sentence, X)))). -fof(axMid_level_ontology1234_1, axiom, (! [Var_SENTENCE] : (((hasType(type_Sentence, Var_SENTENCE)) & ( ( ? [Var_STATE] : (hasType(type_Stating, Var_STATE) & -(f_result(Var_STATE,Var_SENTENCE)))))) => (hasType(type_Statement, Var_SENTENCE))))). +(f_result(Var_STATE,Var_SENTENCE)))))) <=> (hasType(type_Statement, Var_SENTENCE))))). fof(axMid_level_ontology1235, axiom, ( ! [X] : @@ -5157,13 +5109,10 @@ fof(axMid_level_ontology1271, axiom, (hasType(type_Sunset, X) => hasType(type_TimeInterval, X)))). fof(axMid_level_ontology1272, axiom, - ( ! [X] : - (hasType(type_Supposition, X) => hasType(type_Sentence, X)))). -fof(axMid_level_ontology1272_1, axiom, (! [Var_SENTENCE] : (((hasType(type_Sentence, Var_SENTENCE)) & ( ( ? [Var_SUPPOSE] : (hasType(type_Supposing, Var_SUPPOSE) & -(f_result(Var_SUPPOSE,Var_SENTENCE)))))) => (hasType(type_Supposition, Var_SENTENCE))))). +(f_result(Var_SUPPOSE,Var_SENTENCE)))))) <=> (hasType(type_Supposition, Var_SENTENCE))))). fof(axMid_level_ontology1273, axiom, ( ! [X] : @@ -5494,13 +5443,10 @@ fof(axMid_level_ontology1354, axiom, (hasType(type_TransportViaRoadVehicle, X) => hasType(type_LandTransportation, X)))). fof(axMid_level_ontology1355, axiom, - ( ! [X] : - (hasType(type_TransportViaRoadVehicle, X) => hasType(type_Transportation, X)))). -fof(axMid_level_ontology1355_1, axiom, (! [Var_TRANSPORT] : (((hasType(type_Transportation, Var_TRANSPORT)) & ( ( ? [Var_VEHICLE] : (hasType(type_RoadVehicle, Var_VEHICLE) & -(f_instrument(Var_TRANSPORT,Var_VEHICLE)))))) => (hasType(type_TransportViaRoadVehicle, Var_TRANSPORT))))). +(f_instrument(Var_TRANSPORT,Var_VEHICLE)))))) <=> (hasType(type_TransportViaRoadVehicle, Var_TRANSPORT))))). fof(axMid_level_ontology1356, axiom, ( ! [X] : @@ -5755,15 +5701,12 @@ fof(axMid_level_ontology1418, axiom, (hasType(type_Wastebasket, X) => hasType(type_Container, X)))). fof(axMid_level_ontology1419, axiom, - ( ! [X] : - (hasType(type_WatchClock, X) => hasType(type_Clock, X)))). -fof(axMid_level_ontology1419_1, axiom, (! [Var_C] : (((hasType(type_Clock, Var_C)) & ( ( ? [Var_P] : (hasType(type_Human, Var_P) & (( ? [Var_W] : (hasType(type_Wrist, Var_W) & -(((f_wears(Var_P,Var_C)) & (f_located(Var_C,Var_W))))))))))) => (hasType(type_WatchClock, Var_C))))). +(((f_wears(Var_P,Var_C)) & (f_located(Var_C,Var_W))))))))))) <=> (hasType(type_WatchClock, Var_C))))). fof(axMid_level_ontology1420, axiom, ( ! [X] : diff --git a/examples/phrasebook/WordsRon.gf b/examples/phrasebook/WordsRon.gf index cd1e99047..4b3bf22ff 100644 --- a/examples/phrasebook/WordsRon.gf +++ b/examples/phrasebook/WordsRon.gf @@ -3,9 +3,9 @@ concrete WordsRon of Words = SentencesRon ** open SyntaxRon, (P = ParadigmsRon), - NounRon, (L = LexiconRon), - BeschRon in { + BeschRon, + ExtraRon in { flags coding=utf8 ; @@ -43,36 +43,37 @@ concrete WordsRon of Words = SentencesRon ** open -- places - Airport = mkPlace (P.mkNR "aeroport") in_Prep ; - Bar = mkPlace (P.mkNR "bar") in_Prep ; -- at_Prep which doesn't exist - Church = mkPlace (P.mkN "biserică" "biserici") in_Prep ; - Cinema = mkPlace (P.mkNR "cinema") in_Prep ; - Hospital = mkPlace (P.mkN "spital") in_Prep ; - Hotel = mkPlace (P.mkNR "hotel") in_Prep ; -- at_Prep, plural ending in -e is accepted also - Museum = mkPlace (P.mkN "muzeu" "muzee") in_Prep ; - Park = mkPlace (P.mkNR "parc") in_Prep ; - Restaurant = mkPlace (P.mkN "restaurant") in_Prep ; -- at_Prep - School = mkPlace (P.mkN "şcoală" "şcoli") in_Prep ; -- at_Prep - Shop = mkPlace (P.mkN "magazin") in_Prep ; -- at_Prep - Station = mkPlace (P.mkN "gară" "gări") in_Prep ; -- at_Prep - Theatre = mkPlace (P.mkN "teatru" "teatre") in_Prep; -- at_Prep - Toilet = mkPlace (P.mkN "toaletă") in_Prep ; -- at_Prep - University = mkPlace (P.mkN "universitate") in_Prep ; + Airport = mkPlace (P.mkNR "aeroport") at_Prep ; + Bar = mkPlace (P.mkNR "bar") at_Prep ; + Church = mkPlace (P.mkN "biserică" "biserici") at_Prep ; + Cinema = mkPlace (P.mkNR "cinema") at_Prep ; + Hospital = mkPlace (P.mkN "spital") at_Prep ; + Hotel = mkPlace (P.mkNR "hotel") at_Prep ; + Museum = mkPlace (P.mkN "muzeu" "muzee") at_Prep ; + Park = mkPlace (P.mkNR "parc") at_Prep ; + Restaurant = mkPlace (P.mkN "restaurant") at_Prep ; + School = mkPlace (P.mkN "şcoală" "şcoli") at_Prep ; + Shop = mkPlace (P.mkN "magazin") at_Prep ; + Station = mkPlace (P.mkN "gară" "gări") at_Prep ; + Theatre = mkPlace (P.mkN "teatru" "teatre") at_Prep ; + Toilet = mkPlace (P.mkN "toaletă") at_Prep ; + University = mkPlace (P.mkN "universitate") at_Prep ; -- currencies Dollar = mkCN (P.mkN "dolar" P.masculine) ; Euro = mkCN (P.mkN "euro" "euro") ; Lei = mkCN (P.mkN "leu" "lei") ; - DanishCrown = mkCN (P.mkN "coroană") ; - SwedishCrown = mkCN (P.mkN "coroană") ; + DanishCrown = mkCN (P.mkA "danez") (P.mkN "coroană") ; + SwedishCrown = mkCN (P.mkA "suedez") (P.mkN "coroană") ; + -- nationalities Belgian = P.mkA "belgian" ; Belgium = UsePN (P.mkPN "Belgia") ; English = mkNat "englez" "Anglia" ; Finnish = mkNat "finlandez" "Finlanda" ; - -- Flemish = UsePN (P.mkPN "fiammingo") ; -- why NP ? + Flemish = UsePN (P.mkPN "flamandă") ; French = mkNat "francez" "Franţa" ; Italian = mkNat "italian" "Italia" ; Romanian = mkNat "român" "România" ; @@ -88,7 +89,7 @@ concrete WordsRon of Words = SentencesRon ** open AHasTable p num = mkCl p.name have_V2 (mkNP (mkNP a_Det (P.mkN "masa" "mese")) (SyntaxRon.mkAdv for_Prep (mkNP num (P.mkN "persoană")))) ; AHasName p name = mkCl p.name (P.dirV2 (mkRVAcc (v_besch119 "numi"))) name ; - --AHungry p = mkCl p.name (E.ComplCN have_V2 (mkCN (mkN "fame" feminine))) ; + AHungry p = DatSubjCl p.name (mkVP (UseN (P.mkN "foame"))) ; AIll p = mkCl p.name (P.mkA "bolnav") ; AKnow p = mkCl p.name (v_besch122 "şti") ; ALike p item = mkCl p.name (P.dirV2 (v_besch71 "plăcea")) item ; @@ -99,7 +100,7 @@ concrete WordsRon of Words = SentencesRon ** open AReady p = mkCl p.name (P.mkA "gata" "gata" "gata" "gata") ; AScared p = mkCl p.name (P.mkA "speriat") ; ASpeak p lang = mkCl p.name (P.dirV2 (P.mkV "vorbi")) lang ; - --AThirsty p = mkCl p.name (E.ComplCN have_V2 (mkCN (P.mkN "sete" feminine))) ; + AThirsty p = DatSubjCl p.name (mkVP (UseN (P.mkN "sete"))) ; ATired p = mkCl p.name (P.mkA "obosit") ; AUnderstand p = mkCl p.name (v_besch83 "înţelege") ; AWant p obj = mkCl p.name (P.dirV2 (v_besch74 "vrea")) obj ; diff --git a/lib/src/romanian/ExtraRon.gf b/lib/src/romanian/ExtraRon.gf new file mode 100644 index 000000000..3f61556df --- /dev/null +++ b/lib/src/romanian/ExtraRon.gf @@ -0,0 +1,30 @@ +--# -path=.:../romance:../common:../abstract:../../prelude +concrete ExtraRon of ExtraRonAbs = CatRon ** + open ResRon, ParadigmsRon, Prelude, MorphoRon in { + + lin + at_Prep = mkPrep "la" Ac; + DatSubjCl np vp = mkClause (np.s ! Da).comp (agrP3 Masc Sg) (insertClit vp np); + + + + oper +insertClit : VerbPhrase -> NounPhrase -> VerbPhrase = \vp, np -> + let + vcDa = case np.nForm of + {HasClit => nextClit vp.nrClit PDat ; + _ => vp.nrClit + }; + vpp = insertObje (\\_ => "") RNoAg (clitFromNoun np Da) False vcDa vp; + in + {isRefl = vpp.isRefl; + s = vpp.s ; isFemSg = vpp.isFemSg ; pReflClit = vp.pReflClit ; + nrClit = vpp.nrClit; clAcc = vpp.clAcc ; + clDat = vpp.clDat ; neg = vpp.neg ; + comp = \\a => vpp.comp ! (np.a); + ext = vpp.ext ; + lock_VP = <> }; + + + +} diff --git a/lib/src/romanian/ExtraRonAbs.gf b/lib/src/romanian/ExtraRonAbs.gf new file mode 100644 index 000000000..2115a820a --- /dev/null +++ b/lib/src/romanian/ExtraRonAbs.gf @@ -0,0 +1,8 @@ +--# -path=.:../romance:../common:../abstract:../../prelude +abstract ExtraRonAbs = Cat **{ + + + fun + DatSubjCl : NP -> VP -> Cl ; + at_Prep : Prep ; +}