diff --git a/Cars.kif b/Cars.kif index c334101c..9b9c1cb1 100644 --- a/Cars.kif +++ b/Cars.kif @@ -2955,6 +2955,81 @@ of an &%Engine.") (MeasureFn ?M MilesPerHour)) (greaterThan ?M ?S)))))))) + ;; +;; new terms from Useful-terms_2023.kif +;; + +;;odometer +(subclass Odometer MeasuringDevice) +(documentation Odometer EnglishLanguage "An &%Odometer is a &%Device used for +measuring the distance travelled by a vehicle, such as a car.[Wikipedia]") +(names "odograph" Odometer) +(typicalPart Odometer Vehicle) + +(=> + (and + (instance ?O Odometer) + (instance ?V Vehicle) + (part ?O ?V) + (instance ?T Translocation) + (instrument ?T ?V) + (path ?T ?P) + (distanceOnPath + (MeasureFn ?D ?U) ?P) + (instance ?U LengthMeasure)) + (hasPurpose ?O + (exists (?M ?L ?DIST ?U) + (and + (instance ?M Measuring) + (instrument ?M ?O) + (measurementReading ?O ?DIST) + (inList ?D ?L) + (holdsDuring + (WhenFn + (EndFn ?M)) + (and + (equal ?DIST + (MeasureFn + (ListSumFn ?L) ?U)) + (not + (attribute ?O ResetMeasuringDevice)))))))) + +;; reset measuring device +(instance ResetMeasuringDevice RelationalAttribute) +(documentation ResetMeasuringDevice EnglishLanguage "&%ResetMeasuringDevice is +an attribute which signified that the &%measurementReading of a &%MeasuringDevice +has been set to zero.") + +(=> + (and + (instance ?X MeasuringDevice) + (attribute ?X ResetMeasuringDevice)) + (and + (measurementReading ?X + (MeasureFn 0 ?U)) + (instance ?U UnitOfMeasure))) + +(subclass Speedometer MeasuringDevice) +(documentation Speedometer EnglishLanguage "A &%Speedometer is a gauge that +measures and displays the instantaneous speed of a vehicle.[Wikipedia]") +(typicalPart Speedometer Vehicle) + +(=> + (instance ?S Speedometer) + (hasPurpose ?S + (exists (?V ?T ?SPEED ?DIST ?TIME ?M) + (and + (instance ?V Vehicle) + (part ?S ?V) + (instance ?T Translocation) + (instrument ?T ?V) + (measure ?T ?SPEED) + (equal ?SPEED + (SpeedFn ?DIST ?TIME)) + (instance ?M Measuring) + (instrument ?M ?S) + (measurementReading ?M ?SPEED))))) + (subclass Lubricant Substance) (termFormat EnglishLanguage Lubricant "lubricant") (documentation Lubricant EnglishLanguage "Any &%Substance that reduces &%Friction diff --git a/Economy.kif b/Economy.kif index 742220be..4f1af20f 100644 --- a/Economy.kif +++ b/Economy.kif @@ -1922,6 +1922,121 @@ industries: &%TravelArrangementAndReservationServices, (instance ZincManufacturing IndustryAttribute) ;(industryProductType ZincManufacturing ZincProduct) +;;new terms from Useful-terms_2023 +;; +;;part inspection (SUMO Investigating) +(subclass PartInspection Investigating) +(documentation PartInspection EnglishLanguage "A &%PartInspection is a +&%Process in &%Manufacture (ing) in which individual components of a &%Device or +a &%Product are physically and systematically examined to ensure that the manufactured +parts meet the required specifications and quality standards.[wikipedia]") + +(=> + (and + (instance ?X PartInspection) + (patient ?X ?P) + (instance ?P SelfConnectedObject)) + (exists (?A ?M) + (and + (part ?P ?A) + (instance ?A Artifact) + (instance ?M Manufacture) + (result ?M ?A) + (subProcess ?X ?M)))) + +(=> + (instance ?X PartInspection) + (hasPurpose ?X + (exists (?O ?P) + (and + (instance ?O SelfConnectedObject) + (patient ?X ?O) + (instance ?P Proposition) + (refers ?P ?O) + (modalAttribute + (conforms ?O ?P) Necessity))))) + +;;ordering parts (sorting in a specific order) +(subclass OrderingParts Classifying) +(documentation OrderingParts EnglishLanguage "An &%OrderingParts is a +&%Process in &%Manufacture (ing) in which individual parts are sorted +in a specific order.") + +(=> + (and + (instance ?X OrderingParts) + (patient ?X ?P)) + (exists (?A ?M) + (and + (part ?P ?A) + (instance ?A Artifact) + (instance ?M Manufacture) + (result ?M ?A) + (subProcess ?X ?M)))) +(=> + (and + (instance ?X OrderingParts) + (patient ?X ?P)) + (hasPurpose ?X + (exists (?L) + (and + (instance ?L List) + (inList ?P ?L))))) + +;;assembly station (SUMO Region that hasPurpose of Combining, Attaching) +(subclass AssemblyStation StationaryArtifact) +(subclass AssemblyStation Region) +(documentation AssemblyStation EnglishLanguage "An &%AssemblyStation is a +&%StationaryArtifact in &%Manufacture (ing) where individual parts +are combined or attached to the final product in a specific order.") + +(=> + (instance ?X AssemblyStation) + (hasPurpose ?X + (exists (?P) + (and + (instance ?P ProductAssembly) + (eventLocated ?P ?X))))) + +;;product assembly (SUMO Combining, Attaching) +(subclass ProductAssembly DualObjectProcess) +(documentation ProductAssembly EnglishLanguage "A &%ProductAssembly is a +&%subProcess in &%Manufacture (ing) in which individual parts +are combined and attached to form the final product in a specific order.") + + +(=> + (instance ?P ProductAssembly) + (exists (?M) + (and + (subProcess ?P ?M) + (instance ?M Manufacture)))) + +(=> + (and + (instance ?P ProductAssembly) + (eventLocated ?P ?X) + (instance ?X AssemblyStation)) + (or + (instance ?P Attaching) + (instance ?P Combining))) + +(=> + (instance ?P ProductAssembly) + (exists (?O ?Q ?W) + (and + (patient ?P ?O) + (patient ?P ?Q) + (not + (equal ?O ?Q)) + (instance ?O SelfConnectedObject) + (instance ?Q SelfConnectedObject) + (part ?O ?W) + (part ?Q ?W) + (instance ?W Artifact) + (result ?P ?W)))) + + ;; ;;----------------------------------------------------------------------------- ;; diff --git a/QoSontology.kif b/QoSontology.kif index 5fab5171..25d5dd83 100644 --- a/QoSontology.kif +++ b/QoSontology.kif @@ -478,6 +478,112 @@ keys and used to input different characters.") (documentation ComputerOutputDevice EnglishLanguage "Any peripheral that presents output from the computer, such as a screen or printer.") + +(subclass ThreeDPrinter ComputerOutputDevice) +(documentation ThreeDPrinter EnglishLanguage "A &%ThreeDPrinter is a &%ComputerOutputDevice +for the construction of a three-dimensional &%Object from a Computer-Aided Design (CAD) +model or a digital 3D model. Three-dimensional models represent a physical body using +a collection of points in 3D space, connected by various geometric entities such as +triangles, lines, curved surface etc. In a 3D printing process, material is deposited, +joined or solidified under computer control, with the material being added together +(such as plastics, liquids or powder grains being fused), typically layer by layer. [Wikipedia]") + +(=> + (instance ?X ThreeDPrinter) + (hasPurpose ?X + (exists (?P) + (and + (instance ?P ThreeDPrinting) + (instrument ?P ?X))))) + +(subclass ThreeDPrinting Making) +(documentation ThreeDPrinting EnglishLanguage "&%ThreeDPrinting is the &%Making +of a three-dimensional &%Object from a Computer-Aided Design (CAD) 3D +model or a digital 3D model.[Wikipedia]") + +(=> + (instance ?P ThreeDPrinting) + (exists (?X ?A) + (and + (instance ?X DigitalData) + (represents ?X ?A) + (instance ?A Artifact) + (result ?P ?A)))) + +(=> + (and + (instance ?P ThreeDPrinting) + (instance ?X Substance) + (resource ?P ?X)) + (exists (?R) + (and + (instance ?R Reservoir) + (part ?R ?P) + (origin ?P ?R) + (located ?X ?R)))) + +(=> + (and + (instance ?P ThreeDPrinting) + (instance ?X CompoundSubstance) + (patient ?P ?X)) + (exists (?SC) + (and + (instance ?SC ShapeChange) + (subProcess ?SC ?P) + (patient ?SC ?X)))) + +(=> + (and + (instance ?P ThreeDPrinting) + (instance ?O Artifact) + (result ?P ?O)) + (exists (?A ?X ?B ?Y) + (and + (instance ?A Making) + (subProcess ?A ?P) + (instance ?X SelfConnectedObject) + (part ?X ?O) + (result ?A ?X) + (instance ?B Making) + (subProcess ?B ?P) + (instance ?Y SelfConnectedObject) + (part ?Y ?O) + (overlapsSpatially ?X ?Y) + (orientation ?X ?Y Below) + (during + (WhenFn ?A) + (WhenFn ?P)) + (during + (WhenFn ?B) + (WhenFn ?P)) + (earlier + (WhenFn ?A) + (WhenFn ?B))))) + +(subclass Metallic3DPrinter ThreeDPrinter) +(documentation Metallic3DPrinter EnglishLanguage "A &%Metallic3DPrinter is +&%3DPrinter using &%Metals as printing material.") + +(=> + (and + (instance ?P ThreeDPrinting) + (instance ?X Metal) + (resource ?P ?X) + (instrument ?P ?I)) + (instance ?I Metallic3DPrinter)) + +(subclass PlasticPrinter ThreeDPrinter) +(documentation Plastic3DPrinter EnglishLanguage "A &%Plastic3DPrinter is +&%3DPrinter using &%Plastic as printing material.") + +(=> + (and + (instance ?P ThreeDPrinting) + (instance ?X Plastic) + (resource ?P ?X) + (instrument ?P ?I)) + (instance ?I PlasticPrinter)) (subclass TouchScreen ComputerInputDevice) (subclass TouchScreen ComputerOutputDevice) diff --git a/development/Useful-terms_2023.kif b/development/Useful-terms_2023.kif index 230d45e5..fd9e40cb 100644 --- a/development/Useful-terms_2023.kif +++ b/development/Useful-terms_2023.kif @@ -21,643 +21,23 @@ ;; ;; BEGIN FILE ;; -;;3d printer (don't confuse with SUMO's Printer) -(subclass ThreeDPrinter ComputerOutputDevice) -(documentation ThreeDPrinter EnglishLanguage "A &%ThreeDPrinter is a &%ComputerOutputDevice -for the construction of a three-dimensional &%Object from a Computer-Aided Design (CAD) -model or a digital 3D model. Three-dimensional models represent a physical body using -a collection of points in 3D space, connected by various geometric entities such as -triangles, lines, curved surface etc. In a 3D printing process, material is deposited, -joined or solidified under computer control, with the material being added together -(such as plastics, liquids or powder grains being fused), typically layer by layer. [Wikipedia]") -(termFormat EnglishLanguage ThreeDPrinter "3D printer") - -(=> - (instance ?X ThreeDPrinter) - (hasPurpose ?X - (exists (?P) - (and - (instance ?P ThreeDPrinting) - (instrument ?P ?X))))) - -(subclass ThreeDPrinting Making) -(documentation ThreeDPrinting EnglishLanguage "&%ThreeDPrinting is the &%Making -of a three-dimensional &%Object from a Computer-Aided Design (CAD) 3D -model or a digital 3D model.[Wikipedia]") -(termFormat EnglishLanguage ThreeDPrinting "3D printing") - -(=> - (instance ?P ThreeDPrinting) - (exists (?X ?A) - (and - (instance ?X DigitalData) - (represents ?X ?A) - (instance ?A Artifact) - (result ?P ?A)))) - -(=> - (and - (instance ?P ThreeDPrinting) - (instance ?X Substance) - (resource ?P ?X)) - (exists (?R) - (and - (instance ?R Reservoir) - (part ?R ?P) - (origin ?P ?R) - (located ?X ?R)))) +;; +;; 13 November 2024 Jennie Pease +;; moved terms to main folder to engineering.kif, Cars.kif, QoSontology.kif, Economy.kif +;; -(=> - (and - (instance ?P ThreeDPrinting) - (instance ?X CompoundSubstance) - (patient ?P ?X)) - (exists (?SC) - (and - (instance ?SC ShapeChange) - (subProcess ?SC ?P) - (patient ?SC ?X)))) - -(=> - (and - (instance ?P ThreeDPrinting) - (instance ?O Artifact) - (result ?P ?O)) - (exists (?A ?X ?B ?Y) - (and - (instance ?A Making) - (subProcess ?A ?P) - (instance ?X SelfConnectedObject) - (part ?X ?O) - (result ?A ?X) - (instance ?B Making) - (subProcess ?B ?P) - (instance ?Y SelfConnectedObject) - (part ?Y ?O) - (overlapsSpatially ?X ?Y) - (orientation ?X ?Y Below) - (during - (WhenFn ?A) - (WhenFn ?P)) - (during - (WhenFn ?B) - (WhenFn ?P)) - (earlier - (WhenFn ?A) - (WhenFn ?B))))) - +;;3d printer (don't confuse with SUMO's Printer) + ;; metallic printer -(subclass Metallic3DPrinter ThreeDPrinter) -(documentation Metallic3DPrinter EnglishLanguage "A &%Metallic3DPrinter is -&%3DPrinter using &%Metals as printing material.") -(termFormat EnglishLanguage Metallic3DPrinter "metallic 3D printer") -(=> - (and - (instance ?P ThreeDPrinting) - (instance ?X Metal) - (resource ?P ?X) - (instrument ?P ?I)) - (instance ?I Metallic3DPrinter)) - ;; plastic printer -(subclass PlasticPrinter ThreeDPrinter) -(documentation Plastic3DPrinter EnglishLanguage "A &%Plastic3DPrinter is -&%3DPrinter using &%Plastic as printing material.") -(termFormat EnglishLanguage Plastic3DPrinter "plastic 3D printer") - -(=> - (and - (instance ?P ThreeDPrinting) - (instance ?X Plastic) - (resource ?P ?X) - (instrument ?P ?I)) - (instance ?I PlasticPrinter)) ;;spur gears (SUMO Gear) -(subclass SpurGear Gear) -(documentation SpurGear EnglishLanguage "A &%SpurGear, also known as straight-cut -gear, is the simplest type of &%Gear. It consists of a &%Cylinder or disk with teeth -projecting radially. Though the teeth are not straight-sided (but usually of special -form to achieve a constant drive ratio, mainly involute but less commonly cycloidal), -the edge of each tooth is straight and aligned &%parallel to the &%axis of rotation. -These gears mesh together correctly only if fitted to parallel shafts. [Wikipedia]") -(termFormat EnglishLanguage SpurGear "spur gear") -(names "straight cut gear" SpurGear) - -(subclass ExternalGear Gear) -(documentation ExternalGear EnglishLanguage "&%ExternalGears are &%Gears with -teeth on the &%Outside of the &%Cylinder or cone. When two external gears mesh -together they rotate in the opposite directions. [Wikipedia]") -(termFormat EnglishLanguage ExternalGear " external gear") -; if a gear has a hole and it's an external gear then the surface of -; its teeth are not part of the hole host fn of that hole - -(=> - (and - (instance ?G ExternalGear) - (instance ?H HoleRegion) - (equal ?G - (HoleHostFn ?H)) - (instance ?T GearTooth) - (part ?T ?G) - (surface ?ST ?T)) - (not - (part ?ST ?G))) - -(subclass InternalGear Gear) -(documentation InternalGear EnglishLanguage "&%InternalGear are -&%Gears with teeth on the &%Inside of the &%Cylinder or cone. An &%InternalGear can -only mesh with an external gear and the gears rotate in the same direction. [Wikipedia]") -(termFormat EnglishLanguage InternalGear " internal gear") - -; every internal gear is the HoleHostFn of a Hole and the surface -; of every gear tooth that is part of the gear is a part of the HoleHostFn of that Hole - -(=> - (instance ?G InternalGear) - (exists (?H) - (and - (instance ?H HoleRegion) - (equal ?G - (HoleHostFn ?H))))) - -(=> - (and - (instance ?T GearTooth) - (instance ?G InternalGear) - (part ?T ?G) - (surface ?S ?T)) - (exists (?H) - (and - (instance ?H HoleRegion) - (equal ?G - (HoleHostFn ?H)) - (part ?S ?G)))) - -(subclass GearTooth EngineeringComponent) -(typicalPart GearTooth Gear) -(documentation GearTooth EnglishLanguage "Gear teeth are typical parts of a &%Gear. -They are usually located at the exterior surface, although there are &%InternalGear -in which the gear tooth are found at the interior surface of the &%Gear.") -(termFormat EnglishLanguage GearTooth " gear tooth") -(=> - (and - (instance ?G Gear) - (superficialPart ?SG ?G) - (instance ?T GearTooth) - (part ?T ?G) - (surface ?ST ?T)) - (part ?ST ?SG)) - -(instance gearToothCount BinaryPredicate) -(relatedInternalConcept gearToothCount gearRatio) -(documentation gearToothCount EnglishLanguage "&%gearToothCount is an &%instance -of a &%BinaryPredicate. (gearToothCount ?GEAR ?INTEGER) means that there are -?INTEGER number of &%GearTooth that are part of the &%Gear ?GEAR.") -(termFormat EnglishLanguage gearToothCount "gear tooth count") -(format EnglishLanguage gearToothCount "there are %n %2 number of &%GearTooth in %1") -(domain gearToothCount 1 Gear) -(domain gearToothCount 2 Integer) - -(=> - (and - (instance ?G Gear) - (part ?T ?G) - (instance ?T GearTooth) - (gearToothCount ?G ?I)) - (exists (?C) - (and - (instance ?C Collection) - (member ?T ?C) - (memberCount ?C ?I)))) - -(instance gearRatio TernaryPredicate) -(relatedInternalConcept gearRatio gearRatio) -(documentation gearRatio EnglishLanguage "&%gearRatio is an &%instance -of a &%TernaryPredicate. (gearRatio ?GEAR1 ?GEAR2 ?INTEGER) means that the -&%gearRatio between ?GEAR1 and ?GEAR2 is ?INTEGER.It is the number of the -&%toothCount of a gear ?GEAR1 that causes another gear ?GEAR2 to rotate -divided by the &%toothCount of that other gear. So if ?GEAR1 with 20 teeth -causes ?GEAR2 to rotate, and that ?GEAR2 has 10 teeth, then the GearRatio -of the system of two gears is 2 (or often it will be described as '2:1' -in text).") -(termFormat EnglishLanguage gearRatio "gear ratio") -(format EnglishLanguage gearRatio "%3 is the &%gearRatio between %1 and %2") -(domain gearRatio 1 Gear) -(domain gearRatio 2 Gear) -(domain gearRatio 3 RationalNumber) - -(=> - (gearRatio ?G1 ?G2 ?R) - (exists (?R1 ?R2) - (and - (instance ?R1 Rotating) - (patient ?R1 ?G1) - (instance ?R2 Rotating) - (patient ?R2 ?G2) - (causes ?R1 ?R2) - (not - (equal ?R1 ?R2))))) -(=> - (and - (gearToothCount ?G1 ?I1) - (gearToothCount ?G2 ?I2) - (gearRatio ?G1 ?G2 ?R)) - (equal ?R - (DivisionFn ?I1 ?I2))) - ;;lathe (SUMO Lathe) -;; a shaft is a revolving rod - -(=> - (instance ?S Shaft) - (exists (?CL) - (and - (instance ?CL Cylinder) - (shape ?S ?CL)))) - -(=> - (instance ?S Shaft) - (exists (?R) - (and - (instance ?R Rotating) - (patient ?R ?S)))) - -;;cantilever shaft (SUMO Shaft) -(subclass CantileverShaft Shaft) -(subclass CantileverShaft CantileverObject) -(documentation CantileverShaft EnglishLanguage "A &%CantileverShaft is -is a &%Shaft mounted on one end only with the rest of the shaft protruding out.") -(termFormat EnglishLanguage CantileverShaft " cantilever shaft") - -(subclass CantileverObject Artifact) -(documentation CantileverObject EnglishLanguage "A &%CantileverObject is -an &%Artifact that also has the &%Attribute of being a &%Cantilever.") -(termFormat EnglishLanguage CantileverObject " cantilever") - -(instance Cantilever StructureAttribute) -(documentation Cantilever EnglishLanguage "A &%Cantilever is a &%StructureAttribute -that describes a &%Artifact that extends horizontally and is supported at only one -end. [Wikipedia] For example, a &%CantilverObject.") -(termFormat EnglishLanguage Cantilever "cantilever") - -(=> - (instance ?OBJ CantileverObject) - (attribute ?OBJ Cantilever)) - -;;part inspection (SUMO Investigating) -(subclass PartInspection Investigating) -(documentation PartInspection EnglishLanguage "A &%PartInspection is a -&%Process in &%Manufacture (ing) in which individual components of a &%Device or -a &%Product are physically and systematically examined to ensure that the manufactured -parts meet the required specifications and quality standards.[wikipedia]") -(termFormat EnglishLanguage PartInspection " part inspection") - -(=> - (and - (instance ?X PartInspection) - (patient ?X ?P) - (instance ?P SelfConnectedObject)) - (exists (?A ?M) - (and - (part ?P ?A) - (instance ?A Artifact) - (instance ?M Manufacture) - (result ?M ?A) - (subProcess ?X ?M)))) - -(=> - (instance ?X PartInspection) - (hasPurpose ?X - (exists (?O ?P) - (and - (instance ?O SelfConnectedObject) - (patient ?X ?O) - (instance ?P Proposition) - (refers ?P ?O) - (modalAttribute - (conforms ?O ?P) Necessity))))) - -;;ordering parts (sorting in a specific order) -(subclass OrderingParts Classifying) -(documentation OrderingParts EnglishLanguage "An &%OrderingParts is a -&%Process in &%Manufacture (ing) in which individual parts are sorted -in a specific order.") -(termFormat EnglishLanguage OrderingParts "Ordering parts") - -(=> - (and - (instance ?X OrderingParts) - (patient ?X ?P)) - (exists (?A ?M) - (and - (part ?P ?A) - (instance ?A Artifact) - (instance ?M Manufacture) - (result ?M ?A) - (subProcess ?X ?M)))) -(=> - (and - (instance ?X OrderingParts) - (patient ?X ?P)) - (hasPurpose ?X - (exists (?L) - (and - (instance ?L List) - (inList ?P ?L))))) - -;;assembly station (SUMO Region that hasPurpose of Combining, Attaching) -(subclass AssemblyStation StationaryArtifact) -(subclass AssemblyStation Region) -(documentation AssemblyStation EnglishLanguage "An &%AssemblyStation is a -&%StationaryArtifact in &%Manufacture (ing) where individual parts -are combined or attached to the final product in a specific order.") -(termFormat EnglishLanguage AssemblyStation "assembly station") - -(=> - (instance ?X AssemblyStation) - (hasPurpose ?X - (exists (?P) - (and - (instance ?P ProductAssembly) - (eventLocated ?P ?X))))) - -;;product assembly (SUMO Combining, Attaching) -(subclass ProductAssembly DualObjectProcess) -(documentation ProductAssembly EnglishLanguage "A &%ProductAssembly is a -&%subProcess in &%Manufacture (ing) in which individual parts -are combined and attached to form the final product in a specific order.") -(termFormat EnglishLanguage ProductAssembly "Product assembly") - -(=> - (instance ?P ProductAssembly) - (exists (?M) - (and - (subProcess ?P ?M) - (instance ?M Manufacture)))) - -(=> - (and - (instance ?P ProductAssembly) - (eventLocated ?P ?X) - (instance ?X AssemblyStation)) - (or - (instance ?P Attaching) - (instance ?P Combining))) - -(=> - (instance ?P ProductAssembly) - (exists (?O ?Q ?W) - (and - (patient ?P ?O) - (patient ?P ?Q) - (not - (equal ?O ?Q)) - (instance ?O SelfConnectedObject) - (instance ?Q SelfConnectedObject) - (part ?O ?W) - (part ?Q ?W) - (instance ?W Artifact) - (result ?P ?W)))) - -;;electro-mechanical fitting -(subclass ElectroMechanicalFitting Electromagnet) -(documentation ElectroMechanicalFitting EnglishLanguage "An &%ElectroMechanicalFitting -is an &%Electromagnet which takes in an electric current and use the electricity to control -a &%Machine.") -(termFormat EnglishLanguage ElectroMechanicalFitting "electromechanical fitting") - -(=> - (instance ?X ElectroMechanicalFitting) - (hasPurpose ?X - (exists (?M ?E ?D) - (and - (instance ?M Motion) - (instance ?E Electricity) - (resource ?M ?E) - (instrument ?M ?X) - (patient ?M ?D) - (instance ?D Machine))))) - -;;"AMR" -;; Robot cannot experience emotion, so it's not a CognitiveAgent -(subclass AutonomousMobileRobot AutonomousAgent) -(subclass AutonomousMobileRobot Robot) -(documentation AutonomousMobileRobot EnglishLanguage "An &%AutonomousMobileRobot -(AMR) is a type of robot. Among other possible activities, it can at least navigate -in an uncontrolled environment without the need for physical or electro-mechanical -guidance device. AMRs use a sophisticated set of sensors and cameras, aritificial -intelligence,machine learning algorithms to compute for path planning to intepret -and navigate through their environment.[Wikipedia]") -(termFormat EnglishLanguage AutonomousMobileRobot "autonomous mobile robot") -(names "AMR" AutonomousMobileRobot) - -;; hasPurpose to move autonomously - -(=> - (instance ?AMR AutonomousMobileRobot) - (hasPurpose ?AMR - (exists (?T) - (and - (instance ?T Translocation) - (agent ?T ?AMR) - (patient ?T ?AMR) - (instrument ?T ?AMR) - (experiencer ?T ?AMR) - (not - (exists (?G ?A) - (and - (instance ?G Guiding) - (patient ?G ?AMR) - (agent ?G ?A) - (or - (instance ?A Human) - (instance ?A Device))))))))) - -;; PS Guiding is a term originated from Merge but it has not yet -;; been formalised. Driving is a subclass of Guiding -;; I haven't seen any implication of "control" or not causing an accident -;; or not hitting an unintended object involved in the codes - -(subclass Robot Machine) -(documentation Robot EnglishLanguage "A &%Robot is a machine—especially one -programmable by a computer—capable of carrying out a complex series of actions -automatically. A robot can be guided by an external control device, or the control -may be embedded within. Robots may be constructed to evoke human form, but most -robots are task-performing machines, designed with an emphasis on stark -functionality, rather than expressive aesthetics.[Wikipedia]") -(termFormat EnglishLanguage Robot "robot") - -(=> - (instance ?R Robot) - (hasPurpose ?R - (exists (?PROC ?COMP) - (and - (instance ?PROC ComputerProcess) - (instance ?COMP ComputerProgram) - (computerRunning ?PROC ?COMP) - (patient ?PROC ?R) - (holdsDuring - (WhenFn ?PROC) - (exists (?INT) - (and - (instance ?INT IntentionalProcess) - (instrument ?INT ?R)))))))) - -;;camera (SUMO Camera) - -;;robotic gripper (SUMO hasPurpose Grabbing) -(subclass RoboticGripper Device) -(documentation RoboticGripper EnglishLanguage "A &%RoboticGripper is the end -effector of a robot or a robotic arm which act as fingers and has the purpose -of grabbing objects. [Wikipedia]") -(termFormat EnglishLanguage RoboticGripper "robotic gripper") -(typicalPart RoboticGripper Robot) - -(=> - (instance ?X RoboticGripper) - (hasPurpose ?X - (exists (?G ?O) - (and - (instance ?G Grabbing) - (instance ?O Object) - (patient ?G ?O) - (instrument ?G ?X))))) - -;;laser -(subclass Laser Device) -(documentation Laser EnglishLanguage "A &%Laser is a &%Device that emits light -through a process of optical amplification based on the stimulated emission of -electromagnetic radiation. It differs from other light sources in that it emits -light that is coherent. [Wikipedia]") -(termFormat EnglishLanguage Laser "laser") - -(=> - (instance ?L Laser) - (hasPurpose ?L - (exists (?R) - (and - (instance ?R RadiatingVisibleLight) - (instrument ?R ?L))))) - -;; monochromatic -(=> - (and - (instance ?L Laser) - (instance ?R RadiatingVisibleLight) - (instrument ?R ?L) - (patient ?R ?X) - (instance ?X Region)) - (color ?X Monochromatic)) - -;; same wavelength same light source -(=> - (instance ?L Laser) - (exists (?X ?Y ?O1 ?O2 ?X1 ?Y1) - (and - (instance ?X RadiatingVisibleLight) - (instance ?Y RadiatingVisibleLight) - (instrument ?X ?L) - (instrument ?Y ?L) - (origin ?X ?O1) - (origin ?Y ?O2) - (equal ?O1 ?O2) - (not - (equal ?X ?Y)) - (wavelength ?X (MeasureFn ?X1 Nanometer)) - (wavelength ?Y (MeasureFn ?Y1 Nanometer)) - (approximateValue ?X1 ?Y1)))) - -;;odometer -(subclass Odometer MeasuringDevice) -(documentation Odometer EnglishLanguage "An &%Odometer is a &%Device used for -measuring the distance travelled by a vehicle, such as a car.[Wikipedia]") -(termFormat EnglishLanguage Odometer "odometer") -(names "odograph" Odometer) -(typicalPart Odometer Vehicle) - -(=> - (and - (instance ?O Odometer) - (instance ?V Vehicle) - (part ?O ?V) - (instance ?T Translocation) - (instrument ?T ?V) - (path ?T ?P) - (distanceOnPath - (MeasureFn ?D ?U) ?P) - (instance ?U LengthMeasure)) - (hasPurpose ?O - (exists (?M ?L ?DIST ?U) - (and - (instance ?M Measuring) - (instrument ?M ?O) - (measurementReading ?O ?DIST) - (inList ?D ?L) - (holdsDuring - (WhenFn - (EndFn ?M)) - (and - (equal ?DIST - (MeasureFn - (ListSumFn ?L) ?U)) - (not - (attribute ?O ResetMeasuringDevice)))))))) - -;; reset measuring device -(instance ResetMeasuringDevice RelationalAttribute) -(documentation ResetMeasuringDevice EnglishLanguage "&%ResetMeasuringDevice is -an attribute which signified that the &%measurementReading of a &%MeasuringDevice -has been set to zero.") -(termFormat EnglishLanguage ResetMeasuringDevice "reset measuring device") - -(=> - (and - (instance ?X MeasuringDevice) - (attribute ?X ResetMeasuringDevice)) - (and - (measurementReading ?X - (MeasureFn 0 ?U)) - (instance ?U UnitOfMeasure))) - -(subclass Speedometer MeasuringDevice) -(documentation Speedometer EnglishLanguage "A &%Speedometer is a gauge that -measures and displays the instantaneous speed of a vehicle.[Wikipedia]") -(termFormat EnglishLanguage Speedometer "speedometer") -(typicalPart Speedometer Vehicle) - -(=> - (instance ?S Speedometer) - (hasPurpose ?S - (exists (?V ?T ?SPEED ?DIST ?TIME ?M) - (and - (instance ?V Vehicle) - (part ?S ?V) - (instance ?T Translocation) - (instrument ?T ?V) - (measure ?T ?SPEED) - (equal ?SPEED - (SpeedFn ?DIST ?TIME)) - (instance ?M Measuring) - (instrument ?M ?S) - (measurementReading ?M ?SPEED))))) - ;;cabinet (SUMO's ChestOrCabinet) -;;robotic joint (SUMO's MechanicalJoint) -(subclass RoboticJoint MechanicalJoint) -(documentation RoboticJoint EnglishLanguage "&%RoboticJoints are movable -parts of a robot which allow adjacent links to move in relation to one another. -These links refer to the rigid components that connect the joints to ensure -proper and efficient operation. Like the bones in a human arm, movable segments -in a robot are linked up with these robotic joints.") -(termFormat EnglishLanguage RoboticJoint "robotic joint") -(typicalPart RoboticJoint Robot) - - ;;translation Motion (SUMO's Translocation) ;;deformation (SUMO's ShapeChange) diff --git a/domainEnglishFormat.kif b/domainEnglishFormat.kif index cd865dc0..a78b7188 100644 --- a/domainEnglishFormat.kif +++ b/domainEnglishFormat.kif @@ -5009,7 +5009,8 @@ ;; 16March2023 ;; Here starts another list of new format in English only ;; - +(format EnglishLanguage gearRatio "%3 is the &%gearRatio between %1 and %2") +(format EnglishLanguage gearToothCount "there are %n %2 number of &%GearTooth in %1") (format EnglishLanguage sheddingBodyPart "%1 is &%Removing %2 from its body") (format EnglishLanguage sheddingLeaves "%1 is a &%Removing %2 from its stems") @@ -65826,16 +65827,21 @@ (termFormat EnglishLanguage applicableRelation "applicable relation") (termFormat EnglishLanguage approximateValue "approximate value") (termFormat EnglishLanguage ArtifactAttribute "artifact attribute") +(termFormat EnglishLanguage AssemblyStation "assembly station") (termFormat EnglishLanguage attitudeForFormula "attitude for formula") (termFormat EnglishLanguage attitudeForObject "attitude for object") (termFormat EnglishLanguage attribute "attribute") (termFormat EnglishLanguage automatedNotification "automated notification") +(termFormat EnglishLanguage AutonomousMobileRobot "autonomous mobile robot") (termFormat EnglishLanguage baptizeddate "baptizedmdate") (termFormat EnglishLanguage baptizedplace "baptizedplace") (termFormat EnglishLanguage beforeOnPath "before on path") (termFormat EnglishLanguage beliefGroupPercentInRegion "belief group percent in region") (termFormat EnglishLanguage burialplace "burialplace") (termFormat EnglishLanguage canonicalPlaceName "canonical place name") +(termFormat EnglishLanguage Cantilever "cantilever") +(termFormat EnglishLanguage CantileverObject " cantilever object") +(termFormat EnglishLanguage CantileverShaft " cantilever shaft") (termFormat EnglishLanguage catalogItem "catalog item") (termFormat EnglishLanguage cellShape "cell shape") (termFormat EnglishLanguage codeMapping "code mapping") @@ -65865,6 +65871,7 @@ (termFormat EnglishLanguage eCommerceSite "e-commerce site") (termFormat EnglishLanguage earthAltitude "earth altitude") (termFormat EnglishLanguage EducationalCampus "educational campus") +(termFormat EnglishLanguage ElectroMechanicalFitting "electromechanical fitting") (termFormat EnglishLanguage emotionTendency "emotion tendency") (termFormat EnglishLanguage enemy "enemy") (termFormat EnglishLanguage engineCylinders "engine cylinders") @@ -65874,6 +65881,7 @@ (termFormat EnglishLanguage ethnicityPercentInRegion "ethnicity percent in region") (termFormat EnglishLanguage exactCardinality "exact cardinality") (termFormat EnglishLanguage exists "exists") +(termFormat EnglishLanguage ExternalGear " external gear") (termFormat EnglishLanguage externalImage "external image") (termFormat EnglishLanguage Facility "Facility") (termFormat EnglishLanguage faxNumber "fax number") @@ -65887,6 +65895,9 @@ (termFormat EnglishLanguage fulfillingEntity "fulfilling entity") (termFormat EnglishLanguage fullName "full name") (termFormat EnglishLanguage fullNameIndexOrder "full name index order") +(termFormat EnglishLanguage GearTooth " gear tooth") +(termFormat EnglishLanguage gearToothCount "gear tooth count") +(termFormat EnglishLanguage gearRatio "gear ratio") (termFormat EnglishLanguage governorSpeed "governor speed") (termFormat EnglishLanguage graphMeasure "graph measure") (termFormat EnglishLanguage greaterThanByQuality "greater than by quality") @@ -65908,11 +65919,13 @@ (termFormat EnglishLanguage humanName "human name") (termFormat EnglishLanguage inString "in string") (termFormat EnglishLanguage inflationRateInCountry "inflation rate in country") +(termFormat EnglishLanguage InternalGear " internal gear") (termFormat EnglishLanguage internationalDispute "international dispute") (termFormat EnglishLanguage ipOfDomain "IP of domain") (termFormat EnglishLanguage keyName "key name") (termFormat EnglishLanguage language "language") (termFormat EnglishLanguage languagePercentInRegion "language percent in region") +(termFormat EnglishLanguage Laser "laser") (termFormat EnglishLanguage leader "leader") (termFormat EnglishLanguage length "length") ;;(termFormat EnglishLanguage lengthLimit "length limit") @@ -65924,6 +65937,7 @@ (termFormat EnglishLanguage maxCylinderVolume "max cylinder volume") (termFormat EnglishLanguage maxValue "max value") (termFormat EnglishLanguage memberMeasure "member measure") +(termFormat EnglishLanguage Metallic3DPrinter "metallic 3D printer") (termFormat EnglishLanguage mimeType "mime type") (termFormat EnglishLanguage minCardinality "min cardinality") (termFormat EnglishLanguage minCylinderVolume "min cylinder volume") @@ -65940,11 +65954,14 @@ (termFormat EnglishLanguage numberOfCustomers "number of customers") (termFormat EnglishLanguage objectTransferred "object transferred") (termFormat EnglishLanguage observesHoliday "observes holiday") +(termFormat EnglishLanguage Odometer "odometer") (termFormat EnglishLanguage offersAtTime "offers at time") +(termFormat EnglishLanguage OrderingParts "Ordering parts") (termFormat EnglishLanguage organizationName "organization name") (termFormat EnglishLanguage originalTitle "original title") (termFormat EnglishLanguage PortableRestroom "portable restroom") (termFormat EnglishLanguage parasitic "parasitic") +(termFormat EnglishLanguage PartInspection " part inspection") (termFormat EnglishLanguage partTypes "part types") (termFormat EnglishLanguage pastTense "past tense") (termFormat EnglishLanguage pathologicSideEffect "pathologic side effect") @@ -65954,6 +65971,7 @@ (termFormat EnglishLanguage physicalDomain "physical domain") (termFormat EnglishLanguage PhysicallyRestrictedRegion "physically restricted region") (termFormat EnglishLanguage pistonStroke "piston stroke") +(termFormat EnglishLanguage Plastic3DPrinter "plastic 3D printer") (termFormat EnglishLanguage policyLocationCoverage "policy location coverage") (termFormat EnglishLanguage PositionReport "position report") (termFormat EnglishLanguage postAddressText "post address text") @@ -65970,6 +65988,7 @@ (termFormat EnglishLanguage precedesInString "precedes in string") (termFormat EnglishLanguage preventsSubclass "prevents subclass") (termFormat EnglishLanguage PrivateOrganization "Private organization") +(termFormat EnglishLanguage ProductAssembly "Product assembly") (termFormat EnglishLanguage protocolForConnector "protocol for connector") (termFormat EnglishLanguage qualifiedExperiment "qualified experiment") (termFormat EnglishLanguage qualifiedPageView "qualified page view") @@ -65983,8 +66002,12 @@ (termFormat EnglishLanguage reservationEnd "reservation end") (termFormat EnglishLanguage reservationStart "reservation start") (termFormat EnglishLanguage reservingEntity "reserving entity") +(termFormat EnglishLanguage ResetMeasuringDevice "reset measuring device") (termFormat EnglishLanguage resonantFrequency "resonant frequency") (termFormat EnglishLanguage resourceExhausted "resource exhausted") +(termFormat EnglishLanguage Robot "robot") +(termFormat EnglishLanguage RoboticJoint "robotic joint") +(termFormat EnglishLanguage RoboticGripper "robotic gripper") (termFormat EnglishLanguage routeEnd "route end") (termFormat EnglishLanguage routeStart "route start") (termFormat EnglishLanguage screenOfGUIE "screen of GUIE") @@ -65995,7 +66018,9 @@ (termFormat EnglishLanguage sheddingLeaves "shedding leaves") (termFormat EnglishLanguage siteForContact "site for contact") (termFormat EnglishLanguage sortingTitle "sorting title") +(termFormat EnglishLanguage Speedometer "speedometer") (termFormat EnglishLanguage spellingInLanguage "spelling in language") +(termFormat EnglishLanguage SpurGear "spur gear") (termFormat EnglishLanguage states "states") (termFormat EnglishLanguage statisticalPopulation "statistical population") (termFormat EnglishLanguage stringConcatenation "string concatenation") @@ -66013,6 +66038,8 @@ (termFormat EnglishLanguage telecomCoreNumber "telecom core number") (termFormat EnglishLanguage telecomCountryCode "telecom country code") (termFormat EnglishLanguage telecomExtension "telecom extension") +(termFormat EnglishLanguage ThreeDPrinter "3D printer") +(termFormat EnglishLanguage ThreeDPrinting "3D printing") (termFormat EnglishLanguage titleInLanguage "title in language") (termFormat EnglishLanguage topSpeed "top speed") (termFormat EnglishLanguage translatedTitle "translated title") diff --git a/engineering.kif b/engineering.kif index 9fc192b1..8f4a0390 100644 --- a/engineering.kif +++ b/engineering.kif @@ -756,6 +756,132 @@ it swings freely under the influence of gravity.") mechanism in order to change the speed or direction of transmitted motion.") (subclass Gear EngineeringComponent) +(subclass SpurGear Gear) +(documentation SpurGear EnglishLanguage "A &%SpurGear, also known as straight-cut +gear, is the simplest type of &%Gear. It consists of a &%Cylinder or disk with teeth +projecting radially. Though the teeth are not straight-sided (but usually of special +form to achieve a constant drive ratio, mainly involute but less commonly cycloidal), +the edge of each tooth is straight and aligned &%parallel to the &%axis of rotation. +These gears mesh together correctly only if fitted to parallel shafts. [Wikipedia]") +(names "straight cut gear" SpurGear) + +(subclass ExternalGear Gear) +(documentation ExternalGear EnglishLanguage "&%ExternalGears are &%Gears with +teeth on the &%Outside of the &%Cylinder or cone. When two external gears mesh +together they rotate in the opposite directions. [Wikipedia]") + +; if a gear has a hole and it's an external gear then the surface of +; its teeth are not part of the hole host fn of that hole + +(=> + (and + (instance ?G ExternalGear) + (instance ?H HoleRegion) + (equal ?G + (HoleHostFn ?H)) + (instance ?T GearTooth) + (part ?T ?G) + (surface ?ST ?T)) + (not + (part ?ST ?G))) + +(subclass InternalGear Gear) +(documentation InternalGear EnglishLanguage "&%InternalGear are +&%Gears with teeth on the &%Inside of the &%Cylinder or cone. An &%InternalGear can +only mesh with an external gear and the gears rotate in the same direction. [Wikipedia]") + +; every internal gear is the HoleHostFn of a Hole and the surface +; of every gear tooth that is part of the gear is a part of the HoleHostFn of that Hole + +(=> + (instance ?G InternalGear) + (exists (?H) + (and + (instance ?H HoleRegion) + (equal ?G + (HoleHostFn ?H))))) + +(=> + (and + (instance ?T GearTooth) + (instance ?G InternalGear) + (part ?T ?G) + (surface ?S ?T)) + (exists (?H) + (and + (instance ?H HoleRegion) + (equal ?G + (HoleHostFn ?H)) + (part ?S ?G)))) + +(subclass GearTooth EngineeringComponent) +(typicalPart GearTooth Gear) +(documentation GearTooth EnglishLanguage "Gear teeth are typical parts of a &%Gear. +They are usually located at the exterior surface, although there are &%InternalGear +in which the gear tooth are found at the interior surface of the &%Gear.") + +(=> + (and + (instance ?G Gear) + (superficialPart ?SG ?G) + (instance ?T GearTooth) + (part ?T ?G) + (surface ?ST ?T)) + (part ?ST ?SG)) + +(instance gearToothCount BinaryPredicate) +(relatedInternalConcept gearToothCount gearRatio) +(documentation gearToothCount EnglishLanguage "&%gearToothCount is an &%instance +of a &%BinaryPredicate. (gearToothCount ?GEAR ?INTEGER) means that there are +?INTEGER number of &%GearTooth that are part of the &%Gear ?GEAR.") +(domain gearToothCount 1 Gear) +(domain gearToothCount 2 Integer) + +(=> + (and + (instance ?G Gear) + (part ?T ?G) + (instance ?T GearTooth) + (gearToothCount ?G ?I)) + (exists (?C) + (and + (instance ?C Collection) + (member ?T ?C) + (memberCount ?C ?I)))) + +(instance gearRatio TernaryPredicate) +(relatedInternalConcept gearRatio gearRatio) +(documentation gearRatio EnglishLanguage "&%gearRatio is an &%instance +of a &%TernaryPredicate. (gearRatio ?GEAR1 ?GEAR2 ?INTEGER) means that the +&%gearRatio between ?GEAR1 and ?GEAR2 is ?INTEGER.It is the number of the +&%toothCount of a gear ?GEAR1 that causes another gear ?GEAR2 to rotate +divided by the &%toothCount of that other gear. So if ?GEAR1 with 20 teeth +causes ?GEAR2 to rotate, and that ?GEAR2 has 10 teeth, then the GearRatio +of the system of two gears is 2 (or often it will be described as '2:1' +in text).") +(domain gearRatio 1 Gear) +(domain gearRatio 2 Gear) +(domain gearRatio 3 RationalNumber) + +(=> + (gearRatio ?G1 ?G2 ?R) + (exists (?R1 ?R2) + (and + (instance ?R1 Rotating) + (patient ?R1 ?G1) + (instance ?R2 Rotating) + (patient ?R2 ?G2) + (causes ?R1 ?R2) + (not + (equal ?R1 ?R2))))) +(=> + (and + (gearToothCount ?G1 ?I1) + (gearToothCount ?G2 ?I2) + (gearRatio ?G1 ?G2 ?R)) + (equal ?R + (DivisionFn ?I1 ?I2))) + (documentation GearTrain EnglishLanguage "a pair of gears that are used to change speed or direction of an angular motion, ideal gear train can be modeled using a transformer.") @@ -770,7 +896,195 @@ to change speed and torque of transmitted motion.") (documentation Shaft EnglishLanguage "A revolving rod that transmits power or motion.") (subclass Shaft EngineeringComponent) (typicalPart Shaft Motor) +;; a shaft is a revolving rod + +(=> + (instance ?S Shaft) + (exists (?CL) + (and + (instance ?CL Cylinder) + (shape ?S ?CL)))) + +(=> + (instance ?S Shaft) + (exists (?R) + (and + (instance ?R Rotating) + (patient ?R ?S)))) + +;;cantilever shaft (SUMO Shaft) +(subclass CantileverShaft Shaft) +(subclass CantileverShaft CantileverObject) +(documentation CantileverShaft EnglishLanguage "A &%CantileverShaft is +is a &%Shaft mounted on one end only with the rest of the shaft protruding out.") + +(subclass CantileverObject Artifact) +(documentation CantileverObject EnglishLanguage "A &%CantileverObject is +an &%Artifact that also has the &%Attribute of being a &%Cantilever.") + +(instance Cantilever StructureAttribute) +(documentation Cantilever EnglishLanguage "A &%Cantilever is a &%StructureAttribute +that describes a &%Artifact that extends horizontally and is supported at only one +end. [Wikipedia] For example, a &%CantilverObject.") + +(=> + (instance ?OBJ CantileverObject) + (attribute ?OBJ Cantilever)) + +;;electro-mechanical fitting +(subclass ElectroMechanicalFitting Electromagnet) +(documentation ElectroMechanicalFitting EnglishLanguage "An &%ElectroMechanicalFitting +is an &%Electromagnet which takes in an electric current and use the electricity to control +a &%Machine.") + +(=> + (instance ?X ElectroMechanicalFitting) + (hasPurpose ?X + (exists (?M ?E ?D) + (and + (instance ?M Motion) + (instance ?E Electricity) + (resource ?M ?E) + (instrument ?M ?X) + (patient ?M ?D) + (instance ?D Machine))))) + +;;"AMR" +;; Robot cannot experience emotion, so it's not a CognitiveAgent +(subclass AutonomousMobileRobot AutonomousAgent) +(subclass AutonomousMobileRobot Robot) +(documentation AutonomousMobileRobot EnglishLanguage "An &%AutonomousMobileRobot +(AMR) is a type of robot. Among other possible activities, it can at least navigate +in an uncontrolled environment without the need for physical or electro-mechanical +guidance device. AMRs use a sophisticated set of sensors and cameras, aritificial +intelligence,machine learning algorithms to compute for path planning to intepret +and navigate through their environment.[Wikipedia]") + +(names "AMR" AutonomousMobileRobot) + +;; hasPurpose to move autonomously + +(=> + (instance ?AMR AutonomousMobileRobot) + (hasPurpose ?AMR + (exists (?T) + (and + (instance ?T Translocation) + (agent ?T ?AMR) + (patient ?T ?AMR) + (instrument ?T ?AMR) + (experiencer ?T ?AMR) + (not + (exists (?G ?A) + (and + (instance ?G Guiding) + (patient ?G ?AMR) + (agent ?G ?A) + (or + (instance ?A Human) + (instance ?A Device))))))))) + +;; PS Guiding is a term originated from Merge but it has not yet +;; been formalised. Driving is a subclass of Guiding +;; I haven't seen any implication of "control" or not causing an accident +;; or not hitting an unintended object involved in the codes + +(subclass Robot Machine) +(documentation Robot EnglishLanguage "A &%Robot is a machine—especially one +programmable by a computer—capable of carrying out a complex series of actions +automatically. A robot can be guided by an external control device, or the control +may be embedded within. Robots may be constructed to evoke human form, but most +robots are task-performing machines, designed with an emphasis on stark +functionality, rather than expressive aesthetics.[Wikipedia]") + +(=> + (instance ?R Robot) + (hasPurpose ?R + (exists (?PROC ?COMP) + (and + (instance ?PROC ComputerProcess) + (instance ?COMP ComputerProgram) + (computerRunning ?PROC ?COMP) + (patient ?PROC ?R) + (holdsDuring + (WhenFn ?PROC) + (exists (?INT) + (and + (instance ?INT IntentionalProcess) + (instrument ?INT ?R)))))))) + +;;camera (SUMO Camera) + +;;robotic gripper (SUMO hasPurpose Grabbing) +(subclass RoboticGripper Device) +(documentation RoboticGripper EnglishLanguage "A &%RoboticGripper is the end +effector of a robot or a robotic arm which act as fingers and has the purpose +of grabbing objects. [Wikipedia]") +(typicalPart RoboticGripper Robot) + +(=> + (instance ?X RoboticGripper) + (hasPurpose ?X + (exists (?G ?O) + (and + (instance ?G Grabbing) + (instance ?O Object) + (patient ?G ?O) + (instrument ?G ?X))))) + +;;laser +(subclass Laser Device) +(documentation Laser EnglishLanguage "A &%Laser is a &%Device that emits light +through a process of optical amplification based on the stimulated emission of +electromagnetic radiation. It differs from other light sources in that it emits +light that is coherent. [Wikipedia]") + +(=> + (instance ?L Laser) + (hasPurpose ?L + (exists (?R) + (and + (instance ?R RadiatingVisibleLight) + (instrument ?R ?L))))) + +;; monochromatic +(=> + (and + (instance ?L Laser) + (instance ?R RadiatingVisibleLight) + (instrument ?R ?L) + (patient ?R ?X) + (instance ?X Region)) + (color ?X Monochromatic)) + +;; same wavelength same light source +(=> + (instance ?L Laser) + (exists (?X ?Y ?O1 ?O2 ?X1 ?Y1) + (and + (instance ?X RadiatingVisibleLight) + (instance ?Y RadiatingVisibleLight) + (instrument ?X ?L) + (instrument ?Y ?L) + (origin ?X ?O1) + (origin ?Y ?O2) + (equal ?O1 ?O2) + (not + (equal ?X ?Y)) + (wavelength ?X (MeasureFn ?X1 Nanometer)) + (wavelength ?Y (MeasureFn ?Y1 Nanometer)) + (approximateValue ?X1 ?Y1)))) + +;;robotic joint (SUMO's MechanicalJoint) +(subclass RoboticJoint MechanicalJoint) +(documentation RoboticJoint EnglishLanguage "&%RoboticJoints are movable +parts of a robot which allow adjacent links to move in relation to one another. +These links refer to the rigid components that connect the joints to ensure +proper and efficient operation. Like the bones in a human arm, movable segments +in a robot are linked up with these robotic joints.") +(typicalPart RoboticJoint Robot) + (documentation Spring EnglishLanguage "a metal device that returns to its shape or position when pushed or pulled or pressed") (subclass Spring Device)