;; Devices used in a military context

;; Access to and use of these products is governed by the GNU General
;; Public License <http://www.gnu.org/copyleft/gpl.html>.  By using
;; these products, you agree to be bound by the terms of the GPL.
 
;; Authors: Jan Scheffczyk (jan.scheffczyk@gmx.net)
;; Adam Pease (apease [at] articulatesoftware [dot] com)

;; We ask the people using or referencing this work cite our primary
;; paper:

;; Niles, I., and Pease, A.  2001.  Towards a Standard Upper Ontology.
;; In Proceedings of the 2nd International Conference on Formal
;; Ontology in Information Systems (FOIS-2001), Chris Welty and Barry
;; Smith, eds, Ogunquit, Maine, October 17-19, 2001.  See also
;; http://www.ontologyportal.org


(instance weaponCarryingCapability TernaryPredicate)
(instance weaponCarryingCapability TotalValuedRelation)

(domain weaponCarryingCapability 1 MilitaryVehicle)
(domainSubclass weaponCarryingCapability 2 Weapon)
(domain weaponCarryingCapability 3 PositiveInteger)

(documentation weaponCarryingCapability EnglishLanguage "(&%weaponCarryingCapability
?MV ?WC ?I) means that the &%MilitaryVehicle ?MV is able to carry ?I
&%Weapons of class ?WC.")

;; being capable of carrying some weapon type enables the military
;; vehicle to do what the weapon does in case of some shooting or
;; damaging

(=>
  (and
    (weaponCarryingCapability ?MV ?WC ?COUNT)
    (instance ?WEAPON ?WC)
    (capability ?PC ?ROLE ?WEAPON)
    (or
      (subclass ?PC Shooting)
      (subclass ?PC Damaging)))
  (capability ?PC ?ROLE ?MV))

;; if some military vehicle can take part in a shooting then it must
;; carry some weapon which is able to do so

(=>
  (and
    (capability ?PC ?ROLE ?MV)
    (subclass ?PC Shooting))
  (exists (?WEAPON)
    (and
      (instance ?WEAPON Weapon)
      (part ?WEAPON ?MV)
      (capability ?PC ?ROLE ?WEAPON))))

;; is some weapon is part of a vehicle then it is in fact a military
;; vehicle

(=>
  (and
    (part ?WEAPON ?MV)
    (instance ?MV Vehicle))
  (instance ?MV MilitaryVehicle))

(instance personTransportCapability BinaryPredicate)
(instance personTransportCapability TotalValuedRelation)

(domain personTransportCapability 1 PassengerVehicle)
(domain personTransportCapability 2 PositiveInteger)

(documentation personTransportCapability EnglishLanguage "(&%personTransportCapability
?PV ?I) means that the &%PassengerVehicle ?PV is able to carry ?I
&%Humans.")

(instance maximumPayloadCapacity BinaryPredicate)
(instance maximumPayloadCapacity TotalValuedRelation)

(domain maximumPayloadCapacity 1 Vehicle)
(domain maximumPayloadCapacity 2 MassMeasure)

(documentation maximumPayloadCapacity EnglishLanguage "(&%maximumPayloadCapacity ?V
?MM) means that the &%Vehicle ?V has a maximum payload of ?MM. This
means that the vehicle can transport &%Objects weighing less than ?MM,
provided that their height and width are within the limits of
&%maximumPayloadHeightWidth.")

;; maximumPayloadCapacity limits the ability to transport goods

(=>
  (maximumPayloadCapacity ?V
    (MeasureFn ?LOAD ?UNITLOAD))
  (not
    (exists (?TP ?O)
      (and
        (instance ?TP Transportation)
        (instrument ?TP ?V)
        (patient ?TP ?O)
        (weight ?O
          (MeasureFn ?WO ?WOU))
        (equal ?WOU ?UNITLOAD)
        (greaterThan ?WO ?LOAD)))))

(instance maximumPayloadHeightWidth TernaryPredicate)
(instance maximumPayloadHeightWidth TotalValuedRelation)

(domain maximumPayloadHeightWidth 1 Vehicle)
(domain maximumPayloadHeightWidth 2 LengthMeasure)
(domain maximumPayloadHeightWidth 3 LengthMeasure)

(documentation maximumPayloadHeightWidth EnglishLanguage "(&%maximumHeightWidth ?V
?LMHEIGHT ?LMWIDTH) means that the &%Vehicle ?V can transport
&%Objects with a &%height less then or equal to ?LMHEIGHT and &%width
less than or equal to ?LMWIDTH, provided that the &%weight of these
&%Objects is less than or equal to &%maximumPayloadCapacity.")

;; maximumPayloadHeightWidth limits the ability to transport goods

(=>
  (maximumPayloadHeightWidth ?V
    (MeasureFn ?HEIGHT ?UNITHEIGHT)
    (MeasureFn ?WIDTH ?UNITWIDTH))
  (not
    (exists (?TP ?O)
      (and
        (instance ?TP Transportation)
        (instrument ?TP ?V)
        (patient ?TP ?O)
        (width ?O
          (MeasureFn ?WO ?WOU))
        (height ?O
          (MeasureFn ?HO ?HOU))
        (equal ?WOU ?UNITWIDTH)
        (equal ?HOU ?UNITHEIGHT)
        (greaterThan ?WO ?WIDTH) 
        (greaterThan ?HO ?HEIGHT)))))

;; maximumPayloadCapacity and maximumPayloadHeightWidth enable a
;; vehicle to transport certain goods that are within weight limits
;; and are small enough

(=>
  (and
    (maximumPayloadCapacity ?V
      (MeasureFn ?WEIGHT ?UNITWEIGHT))
    (maximumPayloadHeightWidth ?V
      (MeasureFn ?HEIGHT ?UNITHEIGHT)
      (MeasureFn ?WIDTH ?UNITWIDTH))
    (instance ?O SelfConnectedObject)
    (weight ?O
      (MeasureFn ?WEO ?WEOU))
    (width ?O
      (MeasureFn ?WO ?WOU))
    (height ?O
      (MeasureFn ?HO ?HOU))
    (equal ?WEOU ?UNITWEIGHT)
    (equal ?WOU ?UNITWIDTH)
    (equal ?HOU ?UNITHEIGHT)
    (lessThanOrEqualTo ?WEO ?WEIGHT)
    (lessThanOrEqualTo ?WO ?WIDTH) 
    (lessThanOrEqualTo ?HO ?HEIGHT))
  (capability
    (KappaFn ?TRANSPORT
      (and
        (instance ?TRANSPORT Transportation)
        (patient ?TRANSPORT ?O)))
     instrument ?V))

(subclass ArtilleryCannon ArtilleryGun)
(disjoint ArtilleryCannon MilitaryTank)

(documentation ArtilleryCannon EnglishLanguage "A long-range &%ArtilleryGun that is
capable of launching rockets or grenades or other explosives.")

;; ACs shoot missiles or grenades

(=>
  (and
    (instance ?SHOOTING Shooting)
    (instrument ?SHOOTING ?AC)
    (instance ?AC ArtilleryCannon))
  (exists (?PROJ)
    (and
      (instrument ?SHOOTING ?PROJ)
      (instance ?PROJ
        (UnionFn Missile Grenade)))))

(subclass Grenade Projectile)
(subclass Grenade ExplosiveDevice)

(documentation Grenade EnglishLanguage "A larger projectile that is not self powered
and launched by some ArtilleryCannon or MortarGun")

;; MortarGuns shoot grenades

(=>
  (and
    (instance ?SHOOTING Shooting)
    (instrument ?SHOOTING ?MG)
    (instance ?MG MortarGun))
  (exists (?PROJ)
    (and
      (instrument ?SHOOTING ?PROJ)
      (instance ?PROJ Grenade))))

(instance caliber BinaryPredicate)
(instance caliber TotalValuedRelation)

(domainSubclass caliber 1 Gun)
(domain caliber 2 LengthMeasure)

(documentation caliber EnglishLanguage "(&%caliber ?G ?L) means that the gun ?G is
designed to shoot projectiles with a diameter of ?L.")

;; the projectiles shot with a gun depend on its caliber

(=>
  (and
    (instance ?SHOT Shooting)
    (instrument ?SHOT ?GUN)
    (patient ?SHOT ?PROJ)
    (width ?PROJ ?LM1)
    (instance ?GUN ?GUNCLASS)
    (instance ?PROJ Projectile)
    (caliber ?GUNCLASS ?LM))
  (equal ?LM ?LM1))

;; the caliber enables a gun to shot projectiles of the
;; right size (at least in theory)

(=>
  (and
    (instance ?PROJ Projectile)
    (caliber ?GUNCLASS ?LM)
    (instance ?GUN ?GUNCLASS)
    (width ?PROJ ?LM1)
    (equal ?LM ?LM1))
  (capability
    (KappaFn ?SHOOTING
      (and
        (instance ?SHOOTING Shooting)
        (patient ?SHOOTING ?PROJ)))
     instrument ?GUN))

;; a gun with a certain caliber has the purpose to shoot
;; the right projectiles

(=>
  (and
    (instance ?PROJ Projectile)
    (caliber ?GUNCLASS ?LM)
    (instance ?GUN ?GUNCLASS)
    (width ?PROJ ?LM1)
    (equal ?LM ?LM1))
  (hasPurpose ?GUN
    (exists (?SHOOTING)
      (and
        (instance ?SHOOTING Shooting)
        (patient ?SHOOTING ?PROJ)
        (instrument ?SHOOTING ?GUN)))))

(subclass M242 AntiArmorWeapon)
(subclass M242 ChainGun)

(documentation M242 EnglishLanguage "The M242 Bushmaster is a 25 mm chain gun.  It is 
currently used by the US Armed Forces and other NATO forces.  It is used 
extensively on vehicles and aircraft.  It is an externally powered, chain 
driven, single-barrel weapon which may be fired in semi-automatic or 
automatic modes.  It is fed by a metallic link belt and has dual-feed 
capability.  The term chain gun derives from the use of a roller chain 
that drives the bolt back and forth.  It can destroy lightly armored 
vehicles and aerial targets (such as helicopters and slow-flying 
aircraft).  It can also suppress enemy positions such as troops in the 
open, dug-in positions, and built-up areas.  The standard rate of fire is 
200 rounds per minute, and has a range of 2,000 meters (depending on the 
type of ammunition used).  (from Wikipedia)") 

;; caliber of M242

(caliber M242
  (MeasureFn 25 Millimeter))

;; effective range of M242

(=>
  (instance ?M242 M242)
  (effectiveRange ?M242
    (MeasureFn 2 Kilometer)))

;; weight of M242

(=>
  (instance ?M242 M242)
  (weight ?M242
    (MeasureFn 110 Kilogram)))

(subclass GAU12U AntiArmorWeapon)
(subclass GAU12U GatlingGun)

(documentation GAU12U EnglishLanguage "The five-barrel 'Equalizer' cannon was developed in 
the late 1970s, based on the mechanism of the GAU-8/A Avenger cannon, but 
firing a new NATO series of 25 mm ammunition.  The GAU-12U cannon is 
operated by a 15 hp (11 kW) electric motor, in external mounts supplied by 
a bleed air-drive pneumatic system.  Its rate of fire is normally 3,600 
rounds per minute, with a maximum of 4,200 rounds per minute.  The 
Equalizer normally uses PGU-20/U armor-piercing incendiary (API) or PGU-22 
or PGU-25 high-explosive incendiary (HEI) ammunition.  With a 
harder-hitting projectile and comparable muzzle velocity, it is more 
lethal than the older M61 Vulcan, and more effective than the older 30 mm 
ADEN cannon it replaces.  (from Wikipedia)") 

;; caliber of GAU12U

(caliber GAU12U
  (MeasureFn 25 Millimeter))

;; weight of GAU12U

(=>
  (instance ?GAU12U GAU12U)
  (weight ?GAU12U
    (MeasureFn 122 Kilogram)))

(subclass ChainGun HeavyMachineGun)
(documentation ChainGun EnglishLanguage "A chain gun is a type of machine gun or automatic 
cannon that uses an external source of power, rather than recoil, to cycle 
the weapon, and does so via a continuous loop of chain similar to that 
used on a motor or bicycle.  Chain gun is a registered trademark of 
McDonnell Douglas for a chain-powered weapon.  The primary advantages of 
chain-driven weapons over their recoil-actuated counterparts are their 
reliability and controllability.  Rather than being dependent upon recoil 
to actuate the system, which is usually derived from the detonation of a 
cartridge and is thus inherently uncontrollable, a chain gun instead 
depends on an external motor to produce power.  The motor drives the 
chain, the chain moves in a rectangular loop via four sprockets which 
tension it, and one link of the chain is in turn connected to the bolt 
assembly, thus the bolt moves back and forth to load, fire, extract and 
eject cartridges.  As with other externally-powered guns, this provides a 
degree of reliability.  In addition, and again as with all 
externally-controlled guns, a misfired round does not stop the weapon - it 
is simply ejected.  The speed of the motor also controls how fast the 
weapon fires, and thus provides controllability.  During each full cycle 
of the chain link attached to the bolt assembly, two periods (passage 
along the 'long' sides of the rectangle') control the time taken for the 
bolt to drive forward and chamber a round and how quickly it extracts it, 
whilst the other two periods - when the chain moves across the 'short' 
sides of the rectangle, sideways relative to the axis of the barrel - 
determine for how long the breech remains locked (during firing) and open 
(allowing extraction and ventilation of fumes etc).  Since it is the time 
taken for the chain to move around a complete loop of the rectangle that 
controls the rate of fire of the gun, chain guns can theoretically operate 
at an infinite number of firing rates from single shot to the maximum 
imposed by mechanical etc tolerances.  In practice, chain guns come with 
two or three pre-set firing speeds.  (from Wikipedia)") 

(subclass M240 AutomaticGun)
(documentation M240 EnglishLanguage "The M240 is a belt-fed 7.62 mm NATO medium
machine gun. It has been used by the U.S. Armed Forces since the end
of the 20th century, and is also used by other NATO forces. It is used
extensively in the infantry as well as on vehicles and
aircraft. Though not the lightest medium machine gun, it is highly
regarded for reliability, and the firearm's standardization with those
of other NATO allies is also seen as a major plus.
The M240 designation is used to describe the whole family, but it is
also a specic variant- a specialized co-axial model. There are many
versions in service, see selected versions below:

    * M240- a co-axial version adopted in 1977 by the US Army for use
    * in tanks. This version of the FN MAG beat out the M60E2 and
    * M219, as well as host of other medium machine guns including the
    * MG3 and AA-52 co-axial versions. Entered service in the 1980s on
    * the M1 Abrams.

    * M240E1- a pintle mounted version that also entered service in
    * the 1980s. Also used by USMC.

    * M240G- a version used by the USMC starting 1994, including in
    * infantry configuration as opposed to the previous vehicle
    * mounted types.

    * M240B- a ground version adopted by the Army in the late 1990s,
    * with deliverys starting around 1998. Includes recoil buffer and
    * front heat guard. Beat out other medium MGs.

    * M240H- an improved model mainly for aircraft developed in the
    * early first decade of the 2000s.
 (from Wikipedia)")

;; ammunition for M240

(caliber M240
  (MeasureFn 7.62 Millimeter))

;; weight of M240

(=>
  (instance ?M240 M240)
  (weight ?M240
    (MeasureFn 12.5 Kilogram)))

;; effective range of M240

(=>
  (instance ?M240 M240)
  (effectiveRange ?M240
    (MeasureFn 1.8 Kilometer)))

(subclass M60 AutomaticGun)
(documentation M60 EnglishLanguage "The M60 (also seen 'M-60', formally Machine Gun, 
7.62mm, M60) is a family of American belt-fed machine guns firing linked 
7.62 - 51 mm NATO cartridges.  In the U.S.  military, the M60 has largely 
been replaced by various versions of the M240 as a medium machine gun, and 
by the M249 SAW as a squad automatic weapon.  However, it remains in use 
in every branch, as well as some other countries (another major user was 
Australia), it continues to be manufactured into the 21st century.  The 
M60 can be used in both offensive and defensive configurations.  In the 
offense, it provides a higher rate of fire, greater effective range, and 
uses a larger caliber round than the standard-issue U.S.  service rifle, 
the M16 family.  In defensive use, the long range, close defensive, and 
final protective fires delivered by the M60 form an integral part of a 
unit's battle plan.  The M60 is effective up to 1,100 meters when firing 
at an area target and mounted on a tripod, up to 800 meters when firing at 
an area target using the integral bipod, up to 600 meters when firing at a 
point target, and up to 200 meters when firing at a moving point target.  
United States Marine Corps doctrine holds that the M60 and other weapons 
in its class are capable of suppressive fire on area targets out to 1,500 
meters if the gunner is sufficiently skilled.  (from Wikipedia)") 

;; ammunition for M60

(caliber M60
  (MeasureFn 7.62 Millimeter))

;; weight of M60

(=>
  (instance ?M60 M60)
  (weight ?M60
    (MeasureFn 10.5 Kilogram)))

;; effective range of M60

(=>
  (instance ?M60 M60)
  (effectiveRange ?M60
    (MeasureFn 1.1 Kilometer)))

(subclass HeavyMachineGun AutomaticGun)
(documentation HeavyMachineGun EnglishLanguage "A heavy machine gun refers to either a 
larger-caliber, high-power machine gun or one of the smaller, 
medium-caliber (rifle caliber) machine guns meant for prolonged firing 
from heavy mounts, less mobile, or static positions (or some combination 
of the two).  The latter meaning is generally thought of as an older 
meaning, and the former as a modern one, but both weapon types have 
histories extending back to the 1800s.  Furthermore, heavier 
smaller-caliber weapons continue to be used up to the present.  A classic 
example of a rifle-caliber heavy machine gun would be a water-cooled Maxim 
machine gun that was belt fed, had a water jacket, was crew served, and 
mounted on tripod or wheeled mount.  Other types used linkable strips 
(such as the Hotchkiss) or large magazines.  A common example of a 
heavy-caliber machine gun would be the Browning M2 .50-caliber machine 
gun.  Firearms with calibers larger than 13 to 15 mm are generally thought 
of as autocannons instead of heavy machine guns.  (from Wikipedia)") 

(subclass M2Browning HeavyMachineGun)
(documentation M2Browning EnglishLanguage "The M2 Machine Gun, or Browning .50 Caliber
Machine Gun is a heavy machine gun designed just after World War I by
John Browning. It is nicknamed Ma Deuce by US troops or simply called
fifty caliber machine gun. The design has had many specific
designations- the official designation for the infantry type is
Browning Machine Gun, Heavy Barrel, Cal. .50, M2, HB, Flexible. The
Browning .50 machine gun was used extensively as a vehicle weapon and
for aircraft armament by the United States from the 1920s to the
present day. It was heavily used during World War II, Korean War, the
Vietnam Conflict, as well as during operations in Iraq in the 1990s
and 2000s. It is the primary heavy machine gun of NATO countries, and
has been used by many other countries. It is still in use today. It
was very similar in design to the smaller Browning Model 1919 machine
gun .30-06 Springfield. 
Type 	Fully-automatic machine gun
Caliber 	.50 in (12.7 mm)
Ammunition 	.50 BMG
Feed system 	Belt-fed
Action 	Recoil-operated, short recoil
Length 	1,650 mm (65 in)
Barrel length 	1,140 mm (44 7/8 in)
Weight 	38 kg (58 kg w/ tripod)
Rate of fire 	550 round/min
Muzzle velocity 	3,050 ft/s (930 m/s)
Effective range 	2,000 m (2200 yards)
 (from Wikipedia)")

;; ammunition for M2Browning

(caliber M2Browning
  (MeasureFn 12.7 Millimeter))

;; weight of M2Browning

(=>
  (instance ?M2Browning M2Browning)
  (weight ?M2Browning
    (MeasureFn 38 Kilogram)))

;; effective range of M2Browning

(=>
  (instance ?M2Browning M2Browning)
  (effectiveRange ?M2Browning
    (MeasureFn 2 Kilometer)))

(subclass XM218 HeavyMachineGun)
(relatedInternalConcept XM218 M2Browning)

(documentation XM218 EnglishLanguage "The GAU-15/A utilized on the H-46, UH-1N and H-53 
series aircraft is a crew served, recoil operated, belt fed, air cooled, 
percussion fired weapon, with a rate of fire of 750 rounds per minute.  
The gun system consists of the GAU-15/A (XM-218) cal.  50 machine gun, a 
pintle mount assembly, brass collection bag, and ammunition can bracket 
assembly.  The pintle mount assembly is attached at personnel or cargo 
doors or windows of the aircraft.  The ammunition can bracket holds a 
single 100 round can of linked cal.  50 percussion primed ammunition.  
Additional cans of ammunition are carried inside the aircraft to allow for 
rapid reloading.  (from 
http://www.fas.org/man/dod-101/sys/ac/equip/gau-15.htm)") 

;; ammunition for XM218

(caliber XM218
  (MeasureFn 12.7 Millimeter))

;; weight of XM218

(=>
  (instance ?XM218 XM218)
  (weight ?XM218
    (MeasureFn 27 Kilogram)))

;; effective range of XM218

(=>
  (instance ?XM218 XM218)
  (effectiveRange ?XM218
    (MeasureFn 2 Kilometer)))

(subclass M3M HeavyMachineGun)
(documentation M3M EnglishLanguage "The M3M is a weapon system rather than just a machine 
gun.  The system has three parts: The Machine Gun, the Medium Pintle Head 
(MPH) or Soft Mount, and the Cradle, which is used to integrate the weapon 
into a particular aircraft or vehicle.  An optional Integrated 
Illuminator/Laser spotting device gives this weapon a day/night 
capability.  Three important differences between the M3M and the M2 BMG: 
1) The new weapon uses an open bolt 2) has an internal recoil spring, 
and 3) a significantly longer barrel life.  The first difference means 
that cook-offs are far less likely to occur while the second point means 
that the M3M has only a third as much non-compensated recoil as compared 
to the M2 BMG.  As a personal note, I have been on a firing range where 
three out of four M2 BMGs had cook-offs following prolonged firing.  Some 
problems noted during the initial evaluation of this weapon by the US 
Marines in 2001 included: 1) Significantly increased reload times compared 
to the M2 BMG.  2) Lengths of rounds were repeatedly pulled from the 100 
round magazines by the airstream, resulting in hazards to personnel and 
equipment.  3) Lack of a flash suppressor, which made this weapon almost 
impossible to use with night-vision equipment.  The feed system for 600 
round magazines has been modified to reduce the air stream problem and FN 
Herstal has added a flash suppressor, as can be seen below in the second 
photograph.  (from 
http://www.navweaps.com/Weapons/WNUS_50cal-M3M_MG.htm)") 

;; ammunition for M3M

(caliber M3M
  (MeasureFn 12.7 Millimeter))

;; weight of M3M

(=>
  (instance ?M3M M3M)
  (weight ?M3M
    (MeasureFn 35.8 Kilogram)))

;; effective range of M3M

(=>
  (instance ?M3M M3M)
  (effectiveRange ?M3M
    (MeasureFn 1.85 Kilometer)))

(subclass GrenadeLauncher HeavyMachineGun)
(documentation GrenadeLauncher EnglishLanguage "A grenade launcher is an machine gun
able to shoot grenades at high frequency.")

;; grenade launchers shoot grenades

(=>
  (and
    (instance ?SHOOTING Shooting)
    (instrument ?SHOOTING ?AC)
    (instance ?AC GrenadeLauncher))
  (exists (?PROJ)
    (and
      (instrument ?SHOOTING ?PROJ)
      (instance ?PROJ Grenade))))

(subclass MK19 GrenadeLauncher)
(documentation MK19 EnglishLanguage "The MK19 (also known as MK-19, M19, Mark 19, or Mk 
19) is a belt-fed grenade machine gun capable of firing five grenades per 
second.  The Mk 19 fires 40mm grenades at a cyclic rate of 300 to 400 
rounds per minute, giving a practical rate of fire of 60 rpm (rapid) and 
40 rpm (sustained).  The weapon operates on the blowback principle, which 
uses the chamber pressure from each fired round to load and re-cock the 
weapon.  The Mk 19 is able to lob its grenade at a maximum distance of 
2.2km, though its effective range is about 1.6km.  The nearest safe 
distance to launch the grenade is 75 meters.  In addition, the Mk 19's 
flash suppressor and its lack of smoke during firing makes it difficult 
for enemies to spot and counter it.  For night operation, an AN/TVS-5 
night vision sight can be fitted.  The Mk 19 is a man-portable crew-served 
weapon that can fire from a tripod mounted position or from a vehicle 
mount (this being the preferred method as the weapon alone weighs 33 kg).  
The primary ammunition for Mk 19 is the high explosive dual-purpose M430 
grenade.  Upon impact, the grenade can kill anyone within the radius of 
five meters, and wound them within the radius of 15 meters.  It can also 
punch through two inches of armour, which means it can take out most 
infantry fighting vehicles and armoured personnel carriers.  It is 
especially deadly when used against enemy infantry formations.  The 
ammunition comes in 32 or 48 round cans weighing 42 and 60 lb (20 and 30 
kg).  Due to its low recoil and comparatively light weight, it has been 
adapted for use on many different platforms, including small attack boats, 
fast attack vehicles such as the Humvee (HMMWV) and Stryker, military 
jeeps and as well as a large variety of naval mounts.  (from Wikipedia)") 

;; ammunition for MK19

(caliber MK19
  (MeasureFn 40 Millimeter))

;; weight of MK19

(=>
  (instance ?MK19 MK19)
  (weight ?MK19
    (MeasureFn 33 Kilogram)))

;; effective range of MK19

(=>
  (instance ?MK19 MK19)
  (effectiveRange ?MK19
    (MeasureFn 1.6 Kilometer)))

(subclass AntiArmorWeapon Weapon)
(documentation AntiArmorWeapon EnglishLanguage "A weapon designed to damage the armor
of military vehicles or bunkers")

;; AntiArmorWeapons should damage armors

(=>
  (instance ?W AntiArmorWeapon)
  (hasPurpose ?W
    (exists (?DAMAGING ?ARMOR)
      (and
        (instance ?DAMAGING Damaging)
        (instrument ?DAMAGING ?W)
        (patient ?DAMAGING ?ARMOR)
        (instance ?ARMOR Armor)))))

(subclass DragonWeapon AntiArmorWeapon)
(subclass DragonWeapon Missile)

(documentation DragonWeapon EnglishLanguage "Primary function: Anti-armor weapon
system ManBuilder: McDonnell Douglas Aerospace and Missile Systems and
Raytheon
Length:
Launcher: 45.4 inches (115.32 cm)
Missile: 33.3 inches (84.58 centimeters)
Weight:
Ready to Fire: 33.9 lbs (Day Tracker)
48.7 lbs (Night Tracker)
Day Tracker (Sights): 6.75 lbs
Thermal Night Tracker (w/1 bottle and battery): 21.65 lbs
Maximum effective range: 3281 feet (1000 meters)
Time of flight: 11.2 seconds
Armor penetration: Will defeat T-55, T-62, or T-72 w/o added armor
Unit Replacement Cost:
Night Tracker System: $51,000
Day Tracker System: $13,000
Mission: Primary: To engage and destroy armor and light armored
vehicles. Secondary: defeat hard targets such as bunkers and field
fortifications.
Features: The warhead power of Dragon makes it possible for a single
Marine to defeat armored vehicles, fortified bunkers, concrete gun
emplacements, or other hard targets. The launcher consists of a
smoothbore fiberglass tube, breech/gas generator, tracker and support,
bipod, battery, sling, and forward and aft shock
absorbers. Non-integral day and night sights are required to utilize
the Dragon.  The complete system consists of the launcher, the tracker
and the missile, which is installed in the launcher during final
assembly and received by the Marine Corps in a ready to fire
condition. The launch tube serves as the storage and carrying case for
the missile. The night tracker operates in the thermal energy range.
(from http://www.hqmc.usmc.mil/factfile.nsf/0/8d198eb6ac07b33b8525627b00567d5e?OpenDocument)")

;; weight of DragonWeapon

(=>
  (instance ?DragonWeapon DragonWeapon)
  (weight ?DragonWeapon
    (MeasureFn 33.9 PoundMass)))

;; effective range of DragonWeapon

(=>
  (instance ?DragonWeapon DragonWeapon)
  (effectiveRange ?DragonWeapon
    (MeasureFn 1.0 Kilometer)))

(subclass JavelinWeapon AntiTankWeapon)
(subclass JavelinWeapon Missile)

(documentation JavelinWeapon EnglishLanguage "The Javelin is a manportable, 
fire-and-forget antitank missile employed by dismounted infantry to defeat 
current and future threat armored combat vehicles.  Its range of about 1.5 
miles is more than twice that of its predecessor, the Dragon.  The Javelin 
has secondary capabilities against helicopters and ground-fighting 
positions.  It is equipped with an imaging infrared system and a 
fire-and-forget guided missile.  The Javelin's normal engagement mode is 
top-attack to penetrate the tank's most vulnerable armor.  It also has a 
direct-attack capability to engage targets with overhead cover or in 
bunkers.  Its soft launch allows employment from within buildings and 
enclosed fighting positions.  The soft launch signature limits the 
gunner's exposure to the enemy, thus increasing survivability.  The 
Javelin is credited with helping U.S.  Special Forces and Kurdish troops 
repel an Iraqi attack in April 2003 in one of the biggest tank battles of 
Operation Iraqi Freedom.  Traveling in eight trucks, the coalition troops 
were met by surprise attack from an Iraqi brigade.  The Special Forces 
used 19 Javelins against the Iraqis, who had 12 tanks and 24 armored 
personnel carriers.  The shoulder-held anti-tank weapons stopped two T-55 
tanks, eight personnel carriers, and four troop trucks even though not one 
of the U.S.  soldiers had ever fired the weapon before the engagement.  
The Javelin consists of a missile in a disposable launch tube and a 
reusable Command Launch Unit (CLU) with a trigger mechanism and the 
integrated day/night sighting device for surveillance, and target 
acquisition and built-in test capabilities and associated electronics.  
The CLU, powered by a disposable battery, provides the capability for 
battlefield surveillance, target acquisition, missile launch and damage 
assessment.  The round consists of a disposable launch tube assembly, 
battery coolant unit, and the missile.  The 3.5-foot-long missile locks on 
to the target before launch using an infrared focal plane array and 
on-board processing, which also maintains target track and guides the 
missile to the target after launch.  A full-up system weighs 49.5 pounds.  
The U.S.  Army awarded the Javelin contract in 1989 to Raytheon and 
Lockheed Martin, the weapon was deployed some seven years later.  Since 
then at least nine other countries have selected the weapon for their 
arsenals.  The Javelin is one of about 1,400 weapon systems supported by 
Defense Supply Center Columbus, which supplies several of the missile's 
spare parts to the U.S.  Marine Corps through the Performance Based 
Logistics arrangement.  Three DSCC organizations manage these parts - the 
Land-based Weapon Systems Group, the Commodity-based Application Group and 
the Maritime Weapon Systems Group.  (from 
http://federalvoice.dscc.dla.mil/federalvoice/040728/weapon.html)") 

;; weight of JavelinWeapon

(=>
  (instance ?JavelinWeapon JavelinWeapon)
  (weight ?JavelinWeapon
    (MeasureFn 49.5 PoundMass)))

;; effective range of JavelinWeapon

(=>
  (instance ?JavelinWeapon JavelinWeapon)
  (effectiveRange ?JavelinWeapon
    (MeasureFn 1.5 Mile)))


(subclass SMAWBunkerBuster AntiArmorWeapon)
(subclass SMAWBunkerBuster Missile)

(documentation SMAWBunkerBuster EnglishLanguage "The Shoulder-launched Multipurpose 
Assault Weapon (SMAW) is a versatile, lightweight and lethal weapon 
system.  SMAW, employed by the United States Marine Corps for more than 
twenty years, has proven performance in combat situations, easily 
demolishing bunkers, breaching fortifications, and defeating armored 
vehicles.  The man-portable SMAW is exceedingly accurate and reliable, 
exhibiting an average hit probability greater than 90 percent on a 1 x 2 
meter target at combat ranges.  SMAW is perfectly suited for MOUT 
scenarios, enabling the gunner to defeat enemy fortifications while 
remaining under protective cover, greatly enhancing survivability.  SMAW 
will feature even greater capability with a new Confined Space 
fire-from-enclosure version.  Talley Defense Systems, in cooperation with 
the US Marine Corps, is perfecting a design which drastically reduces 
backblast and over-pressure, and virtually eliminates flash and smoke when 
firing the weapon.  The SMAW is an 83mm man-portable weapon system 
consisting of the MK153 Mod 0 launcher, the MK 3 Mod 0 encased HEDP 
rocket, the MK 6 Mod 0 encased HEAA rocket, and the MK217 Mod 0 spotting 
rifle cartridge.  The launcher consists of a fiberglass launch tube, a 9mm 
spotting rifle, an electro-mechanical firing mechanism, open battle 
sights, and a mount for the MK42 Mod 0 optical and AN/PVS-4 night sights.  
The SMAW MK153 Mod 0 launcher is based on the Israeli B-300 and consists 
of the launch tube, the spotting rifle, the firing mechanism, and mounting 
brackets.  The launch tube is fiberglass/epoxy with a gel coat on the 
bore.  The spotting rifle is a British design and is mounted on the right 
side of the launch tube.  The firing mechanism mechanically fires the 
spotting rifle and uses a magneto to fire the rocket.  The mounting 
brackets connect the components and provide the means for boresighting the 
weapon.  The encased rockets are loaded at the rear of the launcher.  The 
spotting cartridges are stored in a magazine in the cap of the encased 
rocket.  The SMAW system (launcher, ammunition and logistics support) was 
fielded in 1984 as a Marine Corps unique system.  At that time, the SMAW 
included the MK153 Mod 0 launcher, the MK3 Mod 0 HEDP encased rocket, the 
MK4 Mod 0 practice rocket and the MK217 Mod 0 9mm spotting cartridge.  The 
MK6 Mod 0 encased HEAA rocket is being added to the inventory.  The MOD 0 
has demonstrated several shortcomings.  A series of modifications is 
currently planned to address the deficiencies.  They include a resleeving 
process for bubbled launch tubes, rewriting/drafting operator and 
technical manuals, a kit that will reduce environmental intrusion into the 
trigger mechanism, and an optical sight modification to allow the new HEAA 
rocket to be used effectively against moving armor targets.  Recently 
fielded were new boresight bracket kits that, when installed, will solve 
the loss of boresight problem between launch tube and spotting rifle.  
(from http://www.globalsecurity.org/military/systems/ground/smaw.htm)") 

;; ammunition for SMAWBunkerBuster

(caliber SMAWBunkerBuster
  (MeasureFn 83 Millimeter))

;; weight of SMAWBunkerBuster

(=>
  (instance ?SMAWBunkerBuster SMAWBunkerBuster)
  (weight ?SMAWBunkerBuster
    (MeasureFn 7.54 Kilogram)))

;; effective range of SMAWBunkerBuster

(=>
  (instance ?SMAWBunkerBuster SMAWBunkerBuster)
  (effectiveRange ?SMAWBunkerBuster
    (MeasureFn 0.5 Kilometer)))

(subclass BGM71TOW AntiTankMissile)
(documentation BGM71TOW EnglishLanguage "The BGM-71 TOW is a US anti-tank missile. TOW
stands for Tube-launched, Optically tracked, Wire-guided.

The TOW was first produced in 1970 and is the most widely used
anti-tank missile in the world. Current production TOWs can penetrate
all currently known tank armor. (from Wikipedia)")

;; weight of BGM71TOW

(=>
  (instance ?BGM71TOW BGM71TOW)
  (weight ?BGM71TOW
    (MeasureFn 18.9 Kilogram)))

;; effective range of BGM71TOW

(=>
  (instance ?BGM71TOW BGM71TOW)
  (effectiveRange ?BGM71TOW
    (MeasureFn 3 Kilometer)))

(subclass AntiTankWeapon AntiArmorWeapon)
(documentation AntiTankWeapon EnglishLanguage "A weapon primarily designed to destroy
tanks and other armored vehicles. Most often these weapons are
(self-guided) missiles.")

;; anti tank weapons should damage armored vehicles

(=>
  (instance ?W AntiTankWeapon)
  (hasPurpose ?W
    (exists (?DAMAGING ?V)
      (and
        (instance ?DAMAGING Damaging)
        (instrument ?DAMAGING ?W)
        (patient ?DAMAGING ?V)
        (instance ?V ArmoredVehicle)))))

(subclass AntiTankMissile AntiTankWeapon)
(subclass AntiTankMissile Missile)

(documentation AntiTankMissile EnglishLanguage "An Anti-Tank Guided Missile (ATGM) or 
Anti-Tank Guided Weapon (ATGW) is a guided missile primarily designed to 
hit and destroy heavily armored tanks and other armoured fighting 
vehicles.  ATGMs range in size from shoulder-launched weapons which can be 
transported by a single soldier, to larger tripod mounted weapons which 
require a squad or team to transport and fire, to vehicle and aircraft 
mounted missile systems.  The introduction of smaller, man-portable ATGMs 
with larger warheads to the modern battlefield has given infantry the 
ability to defeat even heavily armored main battle tanks at great ranges, 
usually with the first shot.  Earlier infantry anti-tank weapons such as 
anti-tank rifles, anti-tank rockets and magnetic anti-tank mines had 
limited armor-penetration abilities and/or required a soldier to approach 
the target closely.  (from Wikipedia)") 

(subclass M197GatlingGun GatlingGun)
(documentation M197GatlingGun EnglishLanguage "The M197 electric cannon is a 
three-barreled electric Gatling gun developed primarily for use by United 
States Army helicopter gunships.  Development of the M197 began in 1967 
after experience in the Vietnam War revealed the inadequacy of the 7.62 mm 
Minigun for gunship use.  The M197 is essentially a lightened version of 
the General Electric M61 Vulcan cannon, with three barrels instead of six.  
Its maximum rate of fire is one quarter that of the Vulcan, largely to 
limit its recoil for light aircraft and helicopter use.  It shares the 
Vulcan's M50 and PGU series 20 mm ammunition.  The M197 went into service 
on later marks of the AH-1 Cobra, and was also fitted in a ventral turret 
on the U.S.  Marine Corps OV-10D Bronco.  It is also the basis of the 
GPU-2 gun pod, which incorporates the cannon, a battery and electric drive 
motor, and 300 rounds of linkless ammunition.  In the Cobra, the weapon is 
supplied with a magazine of 700 linked rounds.  It has a cyclic rate of 
fire of 730 rounds per minute (plus or minus 50 rounds).  Standard practice is to 
fire the cannon in 100-round bursts, allowing several minutes of cooling 
time between bursts.  The M197 remains in use in the latest AH-1W and 
AH-1Z Cobra gunships.  Although the weapon's rotary drive is theoretically 
quite reliable, its ammunition feed has been anything but: Marine pilots 
report an alarmingly high jam rate (sometimes greater than 30%).  The USMC 
and the manufacturer are aware of the problem, but no specific fix has 
been incorporated on the AH-1Z.  In the meantime, crews have been trained 
in techniques intended to minimize the risk of jamming.  (from 
Wikipedia)") 

(subclass GatlingGun AutomaticGun)
(documentation GatlingGun EnglishLanguage "The Gatling gun was the first highly successful 
rapid-repeating firearm.  It was the first firearm to combine reliability, 
high firing rate and ease of loading into a single device.  It was 
designed by the American inventor Richard J.  Gatling, in 1861 and 
patented on May 9, 1862.  In modern usage it typically refers to guns with 
a similar rotating barrel design.  Depending on how one defines the term, 
the Gatling gun is not the first machine gun, despite frequent references 
to it as such, machine guns operate entirely on a fraction of the power of 
the fired cartridge, while the Gatling relies on external power (hand 
crank, or electric/hydraulic motor).  (from Wikipedia)") 

(subclass AirLaunchMissile Missile)
(documentation AirLaunchMissile EnglishLanguage "A missile launched from the air.")

;; Air launched missiles are launched from the air

(=>
  (and
    (instance ?FLYING Flying)
    (patient ?FLYING ?ALM)
    (instance ?ALM AirLaunchMissile))
  (exists (?REGION)
    (and
      (instance ?REGION AtmosphericRegion)
      (holdsDuring
        (BeginFn
          (WhenFn ?FLYING))
        (located ?ALM ?REGION)))))

(subclass GroundLaunchMissile Missile)

(documentation GroundLaunchMissile EnglishLanguage "A missile launched from the ground.")

;; Ground launched missiles can take part in a TakingOff

(=>
  (instance ?GLM GroundLaunchMissile)
  (not
    (capability TakingOff patient ?GLM)))


(subclass AirAttackMissile Missile)

(documentation AirAttackMissile EnglishLanguage "A missile that attacks targets in the
air.")

;; Air attack missiles attack targets in the air

(=>
  (instance ?M AirAttackMissile)
  (hasPurpose ?M
    (exists (?OBJ ?REGION ?DAMAGE)
      (and
        (instrument ?DAMAGE ?M)
        (patient ?DAMAGE ?OBJ)
        (instance ?DAMAGE Damaging)
        (instance ?REGION AtmosphericRegion)
        (holdsDuring
          (BeginFn
            (WhenFn ?DAMAGE))
          (and
            (located ?M ?REGION)
            (located ?OBJ ?REGION)))))))

(subclass GroundAttackMissile Missile)

(documentation GroundAttackMissile EnglishLanguage "A missile that attacks targets on
the ground.")

;; Ground attack missiles attack targets on the ground

(=>
  (instance ?M GroundAttackMissile)
  (hasPurpose ?M
    (exists (?OBJ ?REGION ?DAMAGE)
      (and
        (instrument ?DAMAGE ?M)
        (patient ?DAMAGE ?OBJ)
        (instance ?DAMAGE Damaging)
        (instance ?REGION GeographicArea)
        (holdsDuring
          (BeginFn
            (WhenFn ?DAMAGE))
          (and
            (located ?M ?REGION)
            (located ?OBJ ?REGION)))))))

(subclass GuidedMissile Missile)

(documentation GuidedMissile EnglishLanguage "Missiles that have the ability to
maneuver through the air can be guided, and are known as guided
missiles. These have three key system components:
    * tracking
    * guidance
    * flight
A tracking system locates the missile's target. This can be either a
human gunner aiming a sight on the target (remotely from the missile)
or an automatic tracker. Automatic trackers use radiation emanating
from the target or emitted from the launch platform and reflecting
back to it from the target. Passive automatic trackers use the
target's inherent radiation, usually heat or light, but missiles
designed to attack Command & Control posts, aircraft or guided
missiles may look for radio waves. Active automatic trackers rely on
the target being illuminated by radiation. The target can be painted
with light (sometimes infrared and/or laser) or radio waves (radar)
which can be detected by the missile. The radiation for the painting
can originate in the missile itself or may come from a remote station
(for example, a hilltop gunner can illuminate a target with a laser
device and this can be used to direct an air launched guided missile).
A guidance system takes data from the missile's tracking system and
flight system and computes a flight path for the missile designed to
intercept the target. It produces commands for the flight system.
The flight system causes the missile to maneuver. There are two main
systems: vectored thrust (for missiles that are powered throughout the
guidance phase of their flight) and aerodynamic maneuvering (wings,
fins, canards, etc).
There are some similarities between guided missiles and guided
bombs. A guided bomb, dropped from an aircraft, is unpowered and uses
aerodynamic fins for forward horizontal maneuvering while falling
vertically. (from Wikipedia)")

;; guided missiles guide their own flight

(=>
  (and
    (instance ?M GuidedMissile)
    (instance ?FLYING Flying)
    (patient ?FLYING ?M))
  (exists (?GUIDING)
    (and
      (instance ?GUIDING Guiding)
      (patient ?GUIDING ?FLYING)
      (agent ?GUIDING ?M)
      (during
        (WhenFn ?GUIDING)
        (WhenFn ?FLYING)))))

(subclass InfraRedGMissile GuidedMissile)
(documentation InfraRedGMissile EnglishLanguage "A missile that is guided by infrared 
homing.  Infra-red homing refers to a guidance system which uses the 
infra-red light emission from a target to track it.  Missiles which use 
infra-red seeking are often referred to as heat-seekers.  Infra-red (IR) 
is just below the visible spectrum of light in frequency and is radiated 
strongly by hot bodies.  Many objects such as people, vehicle engines and 
aircraft generate and retain heat, and as such, are especially visible in 
the infra-red wavelengths of light compared to objects in the background.  
(from Wikipedia)") 

;; infrared guided missiles are made to damage objects that emit
;; infrared waves

(=>
  (instance ?M InfraRedGMissile)
  (hasPurpose ?M
    (exists (?DAMAGE ?OBJ ?RADIATION)
      (and
        (instance ?DAMAGE Damaging)
        (instrument ?DAMAGE ?M)
        (patient ?DAMAGE ?OBJ)
        (instance ?RADIATION RadiatingInfrared)
        (agent ?RADIATION ?OBJ)))))

(subclass BeamRidingGMissile GuidedMissile)
(documentation BeamRidingGMissile EnglishLanguage "Beam-riding guidance leads a missile to 
its target by means of radar or a laser beam.  It is one of the simplest 
forms of radar or laser guidance.  The main use of this kind of system is 
to destroy airplanes or tanks.  First, an aiming station (possibly mounted 
in a vehicle) in the launching area directs a narrow radar or laser beam 
at the enemy aircraft or tank.  Then, the missile is launched and at some 
point after launch is gathered by the radar or laser beam when it flies 
into it.  From this stage onwards, the missile attempts to keep itself 
inside the beam, while the aiming station keeps the beam pointing at the 
target.  The missile, controlled by a computer inside it, rides the beam 
to the target.  The aiming station can also use the radar returns of the 
beam bouncing off the target to track it, or it can be tracked optically 
or by some other means.  (from Wikipedia)") 

;; BeamRidingGMissiles are designed to damage targets that are pointed at 
;; by some laser or radar beam

(=>
  (instance ?M BeamRidingGMissile)
  (hasPurpose ?M
    (exists (?DAMAGE ?OBJ ?RADIATION ?INST)
      (and
        (instance ?DAMAGE Damaging)
        (instrument ?DAMAGE ?M)
        (patient ?DAMAGE ?OBJ)
        (instance ?RADIATION Radiating)
        (instrument ?RADIATION ?INST)
        (or
          (instance ?INST Radar)
          (instance ?INST LightFixture))
        (patient ?RADIATION ?OBJ)))))

(subclass AGM AirLaunchMissile)
(subclass AGM GroundAttackMissile)
(documentation AGM EnglishLanguage "An air-to-surface missile (also, air-to-ground 
missile, ASM or AGM) is a missile designed to be launched from military 
aircraft (bombers, attack aircraft, fighter aircraft or other kinds) and 
strike ground targets on land, at sea, or both.  They are similar to 
guided glide bombs but to be considered a missile, they usually contain 
some form of propulsion system.  The two most common propulsion systems 
for air-to-surface missiles are rocket motors and jet engines.  These also 
tend to correspond to the range of the missiles - short and long, 
respectively.  Some Soviet air-to-surface missiles are powered by ramjets, 
giving them both long range and high speed.  (from Wikipedia)") 

(subclass AGM65 AGM)
(subclass AGM65 InfraRedGMissile)
(subclass AGM65 AntiArmorWeapon)
(documentation AGM65 EnglishLanguage "The AGM-65 Maverick is an air-to-surface tactical 
missile (ASM) designed for close air support, prohibition, and forceful 
prevention.  It is effective against a wide range of tactical targets, 
including armor, air defenses, ships, ground transportation, and fuel 
storage facilities.  The AGM-65F (infrared targeting) used by the US Navy 
has an infrared guidance system optimized for ship tracking and a larger 
penetrating warhead than the shaped charge used by the US Marine Corps and 
the US Air Force (300 pounds (136 kg) vs 125 pounds (57 kg)).  The AGM-65 
has two types of warheads, one has a contact fuze in the nose, and the 
other has a heavyweight warhead with a delayed fuze, which penetrates the 
target with its kinetic energy before firing.  The latter is most 
effective against large, hard targets.  The propulsion system for both 
types is a solid-fuel rocket motor behind the warhead.  (from Wikipedia)") 

;; dimensions & weight & effectiveRange of an AGM65

(=>
  (instance ?AGM65 AGM65)
  (and
    (length ?AGM65
      (MeasureFn 2.55 Meter))
    (width ?AGM65
      (MeasureFn 0.7 Meter))
    (height ?AGM65
      (MeasureFn 0.7 Meter))
    (weight ?AGM65
      (MeasureFn 302 Kilogram))
    (effectiveRange ?AGM65
      (MeasureFn 27 Kilometer))))

(subclass AAM AirLaunchMissile)
(subclass AAM AirAttackMissile)
(subclass AAM GuidedMissile)
(documentation AAM EnglishLanguage "An air-to-air missile (AAM) is a guided missile
fired from an aircraft for the purpose of destroying another
aircraft. It is typically powered by one or more rocket motors,
usually solid fuelled but sometimes liquid fuelled. (from Wikipedia)")

(subclass AIM9 AAM)
(subclass AIM9 InfraRedGMissile)
(documentation AIM9 EnglishLanguage "The AIM-9 Sidewinder is a heat-seeking,
short-range, air-to-air missile carried by fighter aircraft and
recently, certain gunship helicopters. It is named after the
Sidewinder snake, which also detects its prey via body heat. The
Sidewinder was the first truly effective air-to-air missile, widely
imitated and copied. Its latest variants remain in active service with
many air forces. (from Wikipedia)")

;; dimensions & weight & effectiveRange of an AIM9

(=>
  (instance ?AIM9 AIM9)
  (and
    (length ?AIM9
      (MeasureFn 2.85 Meter))
    (width ?AIM9
      (MeasureFn 0.63 Meter))
    (height ?AIM9
      (MeasureFn 0.63 Meter))
    (weight ?AIM9
      (MeasureFn 91 Kilogram))
    (effectiveRange ?AIM9
      (MeasureFn 18 Kilometer))))

(subclass AGM114 AGM)
(subclass AGM114 BeamRidingGMissile)
(subclass AGM114 AntiArmorWeapon)
(documentation AGM114 EnglishLanguage "AGM-114 Hellfire (Helicopter launched 
fire-and-forget) is a U.S.  air-to-ground missile system designed to 
defeat tanks and other individual targets while minimizing the exposure of 
the launch vehicle to enemy fire.  Hellfire uses laser guidance and is 
designed to accept other guidance packages.  It is used on helicopters 
against heavily armored vehicles at longer standoff distances than any 
other U.S.  Army missiles now in the inventory.  The Hellfire II is the 
optimized version of the laser family of Hellfire missiles.  The Longbow 
Hellfire Modular Missile System is an air-launched, radar aided, 
inertially guided missile that utilizes millimeter-wave radar technology.  
Despite the expanded acronym, most versions of the Hellfire missile are 
not truly fire-and-forget -- all the laser-guided versions require 
constant illumination or painting of the target from launch to impact.  
The AGM-114L is a true fire-and-forget weapon: it requires no further 
guidance after launch and can hit its target without the launcher being in 
line of sight of the target.  The Hellfire (along with the Maverick and 
the air-launched TOW) was to be replaced by the Joint Common Missile (JCM) 
around 2011.  The JCM was developed with a tri-mode seeker and a 
multi-purpose warhead that would combine the capabilities of the several 
Hellfire variants.  In the budget for FY2006, the US Department of Defense 
canceled a number of projects that they felt no longer warranted 
continuation based on their cost effectiveness, including the JCM.  Due to 
the U.S.  military's continuing need for a proven precision-strike 
aviation weapon in the interim until a successor to the JCM is fielded, as 
well as extensive foreign sales, it is likely the Hellfire will be in 
service for many years.  (from Wikipedia)") 

;; dimensions & weight & effectiveRange of an AGM114

(=>
  (instance ?AGM114 AGM114)
  (and
    (length ?AGM114
      (MeasureFn 1.63 Meter))
    (width ?AGM114
      (MeasureFn 0.71 Meter))
    (height ?AGM114
      (MeasureFn 0.71 Meter))
    (weight ?AGM114
      (MeasureFn 45 Kilogram))
    (effectiveRange ?AGM114
      (MeasureFn 8 Kilometer))))

(subclass MolotovCocktail Bomb)
(documentation MolotovCocktail EnglishLanguage "Molotov cocktail, named after Vyacheslav 
Molotov, also known as petrol bomb, benzine torch, molotov grenade or 
molotov bomb, is the generic name for a variety of crude incendiary 
weapons.  While they are commonly associated with irregular military 
forces and rioters, they are actually more frequently used for basic 
arson[citation needed].  In urban slang, they are often referred to as a 
homemade frag or the poor man's hand grenade.  A Molotov cocktail consists 
of a glass bottle partly filled with flammable liquid, typically petrol, 
alcohol, methanol or ethanol.  The mouth of the bottle is stopped up with 
a cork or other type of airtight bung, made of rubber, glass, or plastic, 
and an igniter, such as cloth rag is fixed securely around the mouth.  The 
weapon is used by first soaking the rag in a flammable liquid immediately 
prior to using it, lighting the rag, and throwing the bottle at the 
target.  The bottle shatters on impact, spilling the flammable liquid over 
the target, which is then ignited by the burning rag.  There are also 
sophisticated methods for igniting, such as use of pyrophoric mass Bengal 
fire or a chemical igniter based on reaction of sulfuric acid and 
potassium chlorate, which do not need an external source of fire to work.  
Additional substances may be added to the basic Molotov cocktail to 
enhance its use as a weapon.  Molotov cocktails are similar to napalm 
bombs in principle.  Napalm was originally made by combining flammable 
naphthalene and petrol with a thickening agent palmitic acid, the latter 
two being the main ingredients of Molotov cocktails.  When gasoline is 
used as the main ingredient, motor oil or sugar is commonly added to help 
the gasoline cling to the target.  (from Wikipedia)") 

;; a molotov cocktail should damage targets by combustion

(=>
  (instance ?MC MolotovCocktail)
  (hasPurpose ?MC
    (exists (?COMB ?DAMAGE ?OBJ)
      (and
        (instance ?COMB Combustion)
        (instance ?DAMAGE Damaging)
        (instrument ?COMB ?MC)
        (instrument ?DAMAGE ?MC)
        (patient ?COMB ?OBJ)
        (patient ?DAMAGE ?OBJ)))))

;; a molotov cocktail contains some flammable liquid mixture

(=>
  (instance ?MC MolotovCocktail)
  (exists (?LIQUID)
    (and
      (instance ?LIQUID LiquidMixture)
      (part ?LIQUID ?MC)
      (capability Combustion patient ?LIQUID))))

(subclass RPG AntiArmorWeapon)
(subclass RPG Rocket)
(documentation RPG EnglishLanguage "A (RPG) is a hand-held, shoulder-launched anti-tank 
weapon capable of firing an unguided rocket equipped with an explosive 
warhead.  Most modern main battle tanks (MBTs) are largely immune to 
unguided anti-tank weapons due to advances in armor design requiring more 
precise aiming to hit weak spots.  RPGs, however, are still used very 
effectively against light-skinned vehicles such as armored personnel 
carriers (APCs) or unarmored wheeled vehicles, as well as against 
buildings and bunkers.  They can still be a threat to an MBT under certain 
tactical conditions (see below).  RPG is the Russian acronym of Ruchnoy 
Protivotankovy Granatomyot and is translated into English as handheld 
antitank grenade-launcher.  The commonly used term rocket-propelled 
grenade is a mistranslation, backformed from the acronym RPG and does not 
follow correct naming conventions used by English speaking militaries to 
describe these weapons.  (from Wikipedia)") 

(subclass CSGas BiologicallyActiveSubstance)
(documentation CSGas EnglishLanguage "2-chlorobenzalmalononitrile (chemical formula: 
C10H5ClN2) is a substance that is used as a riot control agent and is 
usually claimed to be non-lethal by the forces who use it.  CS was 
discovered by two Americans, Ben Carson and Roger Staughton in 1928, the 
first letters of the scientists' surname giving us the name of the 
substance, 'CS' [4].  It was developed and tested secretly at Porton Down 
in Wiltshire, England.  Apparently this testing occurred in the 1950s and 
1960s when CS was used firstly on animals, then subsequently on British 
Army servicemen volunteers.  Notably CS has a limited effect on animals 
due to under-developed tear-ducts and protection by fur.  [5].  (from 
Wikipedia). Known as tear or pepper gas, often used by paramilitary 
and police to control unruly crowds, the gas can cause temporary blindness and 
tearing.") 

;; CS gas contains chlorine and nitrogen

(=>
  (instance ?C CSGas)
  (exists (?CHLOR ?N)
    (and
      (instance ?CHLOR Chlorine)
      (part ?CHLOR ?C)
      (instance ?N Nitrogen)
      (part ?N ?C))))

;; CS gas is used to injure living organisms

(=>
  (instance ?C CSGas)
  (hasPurpose ?C
    (exists (?INJ ?ORG)
      (and
        (instance ?INJ Injuring)
        (instrument ?INJ ?C)
        (patient ?INJ ?ORG)
        (instance ?ORG Animal)))))

(=>
  (instance ?C CSGas)
  (hasPurpose ?C
    (exists (?W)
      (and
        (instance ?W Weapon)
        (part ?C ?W)))))

(subclass AbsoluteFilter Filter)
(documentation AbsoluteFilter EnglishLanguage "A filter capable of cutting off 100% by
weight of solid particles greater than a stated micron size.")

;; AbsoluteFilters remove something out of GasMixtures
(=>
  (instance ?FILTER AbsoluteFilter)
  (hasPurpose ?FILTER
    (exists (?REMOVE ?GAS)
      (and
        (instance ?REMOVE Removing)
        (origin ?REMOVE ?GAS)
        (instance ?GAS GasMixture)
        (instrument ?REMOVE ?FILTER)))))

;; AbsoluteFilters remove 100% of the particles from some Gas
(=> 
  (and
    (instance ?FILTER AbsoluteFilter)
    (instance ?REMOVE Removing)
    (origin ?REMOVE ?GAS)
    (instance ?GAS GasMixture)
    (patient ?REMOVE ?PARTICLE)
    (attribute ?PARTICLE Solid)
    (instrument ?REMOVE ?FILTER))
  (not
    (part ?PARTICLE ?GAS)))

(subclass AbsoluteDud NuclearWeapon)
(documentation AbsoluteDud EnglishLanguage "A &%NuclearWeapon which, when launched at
or emplaced on a target, fails to explode.")

;; if an AbsoluteDud has been launched it will never explode and vice
;; versa

(=>
  (and
    (instance ?DUD AbsoluteDud)
    (instance ?PROCESS TakingOff)
    (patient ?PROCESS ?DUD))
  (not
    (exists (?EXPLOSION)
      (and
        (instance ?EXPLOSION Explosion)
        (patient ?EXPLOSION ?DUD)))))

(=>
  (and
    (instance ?PROCESS TakingOff)
    (patient ?PROCESS ?DUD)
    (not
      (exists (?EXPLOSION)
        (and
          (instance ?EXPLOSION Explosion)
          (patient ?EXPLOSION ?DUD)))))
  (instance ?DUD AbsoluteDud))

(subclass Altimeter MeasuringDevice)
(documentation Altimeter EnglishLanguage "A &%Device that measures the vertical
distance to the some reference point of the surface below. This may be
the mean sea level or the actual surface of the earth.")

;; altimeters measure AltitudeMeasures
(=>
  (and
    (instance ?MEASURE Measuring)
    (result ?MEASURE ?QUANTITY)
    (instrument ?MEASURE ?ALTIMETER)
    (instance ?ALTIMETER Altimeter))
  (instance ?QUANTITY AltitudeMeasure))

(subclass AbsoluteAltimeter Altimeter)
(documentation AbsoluteAltimeter EnglishLanguage "A type of &%Altimeter that measures
vertical distance to the surface below, using radio, radar, sonic,
laser, or capacitive technology.")

;; an AbsoluteAltimeter measures the distance of an object to the
;; surface of planet earth
(=>
  (and
    (instance ?MEASURE Measuring)
    (patient ?MEASURE ?OBJ)
    (result ?MEASURE ?QUANTITY)
    (instrument ?MEASURE ?ABSOLUTEMETER)
    (instance ?ABSOLUTEMETER AbsoluteAltimeter))
  (exists (?OBJ2)
    (and
      (altitude ?OBJ ?OBJ2 ?QUANTITY)
      (surface ?OBJ2 PlanetEarth))))

(instance absoluteHeight SingleValuedRelation)
(instance absoluteHeight SpatialRelation)
(instance absoluteHeight BinaryPredicate)
(domain absoluteHeight 1 Aircraft)
(domain absoluteHeight 2 AltitudeMeasure)

(documentation absoluteHeight EnglishLanguage "The height of an aircraft directly
above the surface or terrain over which it is flying.")

(<=>
  (and
    (altitude ?AIRCRAFT ?OBJ2 ?QUANTITY)
    (surface ?OBJ2 PlanetEarth)
    (instance ?AIRCRAFT Aircraft))
  (absoluteHeight ?AIRCRAFT ?QUANTITY))

(subclass BarometricAltimeter Altimeter)
(subclass BarometricAltimeter PressureMeasuringDevice)
(documentation BarometricAltimeter EnglishLanguage "A type of &%Altimeter which measures
vertical distance to the mean sea level, using pressure level and
calculated according to the standard atmosphere laws.")

;; a BarometricAltimeter measures the distance of some object to the
;; sea level
(=>
  (and
    (instance ?MEASURE Measuring)
    (patient ?MEASURE ?OBJ)
    (result ?MEASURE ?QUANTITY)
    (instrument ?MEASURE ?BAROMETER)
    (instance ?BAROMETER BarometricAltimeter))
  (altitude ?OBJ SeaLevel ?QUANTITY))

;; if the object used in the measurement is on planet earth then we
;; measure the elevation of the object
(=>
  (and
    (instance ?MEASURE Measuring)
    (patient ?MEASURE ?OBJ)
    (surface ?OBJ PlanetEarth)
    (result ?MEASURE ?QUANTITY)
    (instrument ?MEASURE ?BAROMETER)
    (instance ?BAROMETER BarometricAltimeter))
  (elevation ?OBJ ?QUANTITY))

(subclass AltitudeMeasure LengthMeasure)
(documentation AltitudeMeasure EnglishLanguage "The vertical distance of a level, a
point or an object considered as a point, measured from mean sea
level.")

;; Removing these as they are already instances of UnitOfLength
;;(subclass Centimeter AltitudeMeasure)
;;(subclass Meter AltitudeMeasure)
;;(subclass FootLength AltitudeMeasure)
;;(subclass Mile AltitudeMeasure)

(subclass LAV APC)
(documentation LAV EnglishLanguage "The Light Armoured Vehicle (LAV, also called Mowag 
Piranha but not by the USMC) is a family of armoured fighting vehicles 
designed and manufactured by the Swiss Mowag corporation (now General 
Dynamics European Land Combat Systems).  It is available in 4x4, 6x6, 8x8, 
and 10x10 wheel versions.  There are several variants within these 
versions, giving different degrees of armour protection and several kinds 
of turrets, for use in a variety of roles.  Piranha derivatives have been 
assigned roles as troop transports, command vehicles, fire support 
vehicles, tank trainers, and police vehicles.  (from Wikipedia)") 

(subclass LAV25 LAV)
(subclass LAV25 AmphibiousVehicle)
(documentation LAV25 EnglishLanguage "LAV-25 (Light Armoured Vehicle) is an eight-wheeled 
armoured personnel carrier (APC) based on the Mowag Piranha family of 
armoured fighting vehicles used by the United States Marine Corps.  
Powered by a Detroit Diesel Turbo-Charged engine, they are 4 wheel drive 
(rear wheels) transferable to 8-wheel drive.  These vehicles are also 
amphibious, meaning they have the ability to swim, but are limited to 
non-surf bodies of water (No oceans).  While engaged in amphibious 
operations, the maximum speed is approximately 12 km/h.  Typical land 
speeds are approximately 85 km/h in either 4 or 8-wheel drive, however 
fuel economy decreases in 8-wheel drive.  The vehicles operate on diesel 
fuel (JP-8), and require 3 weights of lubricants to remain in running 
condition.  They are equipped with a M242 Bushmaster 25 mm cannon, two 
M240 7.62 mm machine guns, and 2 4-barrel launchers usually loaded with 
smoke canisters.  The crew is three, and four passengers with combat gear.  
The vehicle has been through many changes through the late 90s.  The new 
modification or SLEP (Service Life Extension Program) has changed the 
LAV-25 to an LAV-25A1 standard.  (from Wikipedia)") 

;; dimensions & weight & effectiveRange of an LAV25

(=>
  (instance ?LAV LAV25)
  (and
    (length ?LAV
      (MeasureFn 6.39 Meter))
    (width ?LAV
      (MeasureFn 2.5 Meter))
    (height ?LAV
      (MeasureFn 2.69 Meter))
    (weight ?LAV
      (MeasureFn 12802.8 Kilogram))
    (effectiveRange ?LAV
      (MeasureFn 660.1 Kilometer))))

;; weapons carried by an LAV25

(=>
  (instance ?LAV LAV25)
  (and
    (weaponCarryingCapability ?LAV M242 1)
    (weaponCarryingCapability ?LAV M240 2)))

;; maximum passenger load of an LAV25

(=>
  (instance ?LAV LAV25)
  (personTransportCapability ?LAV 4))

  
(subclass APC MilitaryVehicle)
(subclass APC PassengerVehicle)
(subclass APC LandVehicle)
(subclass APC PoweredVehicle)
(subclass APC ArmoredVehicle)
(documentation APC EnglishLanguage "Armoured personnel carriers (APCs) are armoured 
fighting vehicles developed to transport infantry on the battlefield.  
They usually have only a machine gun although variants carry recoilless 
rifles, anti-tank guided missiles (ATGMs), or mortars.  They are not 
really designed to take part in a direct-fire battle, but to carry the 
troops to the battlefield safe from shrapnel and ambush.  They may have 
wheels or tracks.  Examples include the American M113 (tracked), M2 
Bradley, the British FV 432 (tracked), the French VAB (wheeled), the 
German Boxer MRAV (wheeled) and the Soviet BTR (wheeled).  (from 
Wikipedia)") 

;; APCs carry machine guns

(=>
  (instance ?APC APC)
  (exists (?MG)
    (and
      (instance ?MG AutomaticGun)
      (part ?MG ?APC))))

(subclass ArmoredVehicle Vehicle)

(documentation ArmoredVehicle EnglishLanguage "a vehicle that is protected by armor
plate (WN)")

(=>
  (instance ?AV ArmoredVehicle)
  (exists (?A)
    (and
      (instance ?A Armor)
      (part ?A ?AV))))

(subclass MilitaryTank ArmoredVehicle)
(subclass Armor Artifact)
(documentation Armor EnglishLanguage "Armor is protective clothing intended to defend its 
wearer from intentional harm in combat and military engagements, typically 
associated with soldiers.  Armour has been used throughout recorded 
history, beginning with hides, leather, and bone, before progressing to 
bronze, then steel during the middle ages, to modern fabrics such as 
Kevlar, Dyneema and ceramics.  (from Wikipedia)") 

;; an armor is meant to protect

(=>
  (and
    (instance ?A Armor)
    (or 
      (part ?A ?OBJ)
      (meetsSpatially ?A ?OBJ)))
  (hasPurpose ?A
    (exists (?MAINTAINING)
      (and
        (instance ?MAINTAINING Maintaining)
        (instrument ?MAINTAINING ?A)
        (experiencer ?MAINTAINING ?OBJ)))))

(=>
  (and
    (instance ?A Armor)
    (or 
      (part ?A ?OBJ)
      (meetsSpatially ?A ?OBJ)))
  (hasPurpose ?A
    (not
      (exists (?DAMAGING)
        (and
          (instance ?DAMAGING Damaging)
          (instrument ?DAMAGING ?A)
          (experiencer ?DAMAGING ?OBJ))))))

(subclass AAV MilitaryVehicle)
(subclass AAV AmphibiousVehicle)
(subclass AAV PassengerVehicle)
(subclass AAV PoweredVehicle)
(documentation AAV EnglishLanguage "The Amphibious Assault Vehicle (AAV) (official 
designation AAV-7A1 (formerly known as LVT-7)) is the current amphibious 
troop transport of the United States Marine Corps and is also operated by 
other forces.  The AAV-7A1 is a fully tracked amphibious landing vehicle 
manufactured by FMC Corporation.  It is used by USMC Amphibious Assault 
Battalions to land the surface assault elements of the landing force and 
their equipment in a single lift from assault shipping during amphibious 
operations to inland objectives and to conduct mechanized operations and 
related combat support in subsequent mechanized operations ashore.") 

;; dimensions of an AAV

(=>
  (instance ?AAV AAV)
  (and
    (length ?AAV
      (MeasureFn 7.94 Meter))
    (width ?AAV
      (MeasureFn 3.27 Meter))
    (weight ?AAV
      (MeasureFn 22.8 TonMass))
    (height ?AAV
      (MeasureFn 3.26 Meter))
    (effectiveRange ?AAV
      (MeasureFn 480 Kilometer))))

;; weapons carried by an AAV

(=>
  (instance ?AAV AAV)
  (and
    (weaponCarryingCapability ?AAV M2Browning 1)
    (weaponCarryingCapability ?AAV MK19 1)))

;; maximum passenger load of an AAV

(=>
  (instance ?AAV AAV)
  (personTransportCapability ?AAV 25))

;; an AAV has the M2 Browning mounted

(=>
  (instance ?AAV AAV)
  (exists (?MG)
    (and
      (instance ?MG M2Browning)
      (part ?MG ?AAV))))

;; an AAV has the Mk-19 40 mm grenade launcher mounted

(=>
  (instance ?AAV AAV)
  (exists (?MG)
    (and
      (instance ?MG MK19)
      (part ?MG ?AAV))))

(subclass VSTOL Airplane)
(documentation VSTOL EnglishLanguage "V/STOL is an acronym for Vertical/Short Take-Off and 
Landing.  V/STOL aircraft can take-off or land vertically or on short 
runways.  Most were experiments or outright failures from the 1950s to 
1970s.  The Hawker-Siddeley Harrier is perhaps the most famous production 
V/STOL aircraft, and the only truly operational successful design to date.  
.  Helicopters have continued to dominate vertical flightV/STOL in 
retrospect may be one of the holy grails that has yet to be fully 
fulfilled for general aircraft.  V/STOL was originally developed to allow 
fast jets to be operated from clearings in forests, removing their 
reliance on damage-prone runways, or operated from small aircraft carriers 
that would previously only have been able to carry helicopters.  V/STOL 
has been replaced by STOVL or short takeoff, vertical landing in 
operation, if not in design.  A rolling takeoff, sometimes with a ramp 
reduces the amount of thrust required to lift a fully laden aircraft from 
the ground, and increases the payload and range.  For instance, the 
Harrier is incapable of taking off vertically with a full weapons and fuel 
load, and hence is operated as STOVL wherever possible.  The main 
advantages in the case of the Harrier is closer basing, which reduces 
response time and tanker support requirements.  In the case of the 
Falklands war, it also permitted high performance fighter air cover and 
ground attack without a large catapult-based aircraft carrier.  (from 
Wikipedia)") 

(subclass Harrier2 VSTOL)
(subclass Harrier2 JetAirplane)
(subclass Harrier2 MilitaryVehicle)
(documentation Harrier2 EnglishLanguage "The Harrier II is a family of second generation 
vertical/short takeoff and landing (V/STOL) jet aircraft of the late 20th 
century.  They were developed from the earlier Hawker-Siddeley Harriers, 
are primarily used for light attack or multi-role tasks, and are almost 
all operated from small aircraft carriers.  Versions of it are used 
primarily by NATO countries, and also by India.  (from Wikipedia)") 

;; dimensions & weight & effectiveRange of an Harrier2

(=>
  (instance ?Harrier Harrier2)
  (and
    (length ?Harrier
      (MeasureFn 14.1 Meter))
    (width ?Harrier
      (MeasureFn 9.2 Meter))
    (height ?Harrier
      (MeasureFn 3.5 Meter))
    (weight ?Harrier
      (MeasureFn 5700 Kilogram))
    (effectiveRange ?Harrier
      (MeasureFn 1000 Kilometer))))

;; weapons carried by an Harrier2

(=>
  (instance ?Harrier Harrier2)
  (and
    (weaponCarryingCapability ?Harrier GAU12U 1)
    (weaponCarryingCapability ?Harrier AGM65 7)
    (weaponCarryingCapability ?Harrier AIM9 4)))

(subclass CH53E Helicopter)
(subclass CH53E PassengerVehicle)
(subclass CH53E MilitaryVehicle)
(documentation CH53E EnglishLanguage "Designated S-80E internally by the Sikorsky Aircraft 
Corporation, the Marine Corps CH-53E Super Stallion, and the Navy MH-53E 
Sea Dragon are the largest and heaviest helicopters in the United States 
military.  The base model CH-53E serves both the Navy and Marines in the 
heavy lift transport role.  It is capable of lifting heavy equipment 
including the 8 wheeled LAV-25 Light Armored Vehicle (but not the U.S.  
Army Stryker, which is too heavy), the M198 155mm Howitzer with ammunition 
and crew, and can recover all other Marine corps aircraft except for the 
KC-130.  The less common MH-53E fills the Navy's need for long range mine 
sweeping or Airborne Mine Countermeasures (AMCM) missions.  It features 
enlarged side mounted fuel sponsons and is rigged for towing its mine 
sweeping sled from high above the dangerous naval mines.  Currently under 
development is the CH-53K, formerly known as the Heavy Lift Replacement, 
which will be equipped with three 6000 shp-class turboshaft engines.  
(from Wikipedia)") 

;; dimensions & weight & effectiveRange of an CH53E

(=>
  (instance ?CH53E CH53E)
  (and
    (length ?CH53E
      (MeasureFn 30.2 Meter))
    (width ?CH53E
      (MeasureFn 24.1 Meter))
    (height ?CH53E
      (MeasureFn 8.46 Meter))
    (weight ?CH53E
      (MeasureFn 15071 Kilogram))
    (effectiveRange ?CH53E
      (MeasureFn 2000 Kilometer))))

;; weapons carried by an CH53E

(=>
  (instance ?CH53E CH53E)
  (and
    (weaponCarryingCapability ?CH53E M3M 1)
    (weaponCarryingCapability ?CH53E XM218 2)))

;; person and transport capability of an CH53E

(=>
  (instance ?CH53E CH53E)
  (and
    (personTransportCapability ?CH53E 55)
    (maximumPayloadCapacity ?CH53E
      (MeasureFn 14515 Kilogram))))

;; a CH53E has heavy MGs mounted

(=>
  (instance ?CH CH53E)
  (exists (?MG)
    (and
      (instance ?MG HeavyMachineGun)
      (part ?MG ?CH))))

(subclass CH46D Helicopter)
(subclass CH46D PassengerVehicle)
(subclass CH46D MilitaryVehicle)

(documentation CH46D EnglishLanguage "The CH-46D Sea Knight helicopter is a medium lift 
tandem rotor assault helicopter, used by the United States Navy for 
shipboard delivery of cargo, personnel, and search & rescue.  The CH-46E 
is used by the United States Marine Corps to provide all-weather, 
day-or-night assault transport of combat troops, supplies and equipment.  
Assault Support is its primary function, and the movement of supplies and 
equipment is secondary.  Additional tasks may be assigned, such as combat 
support, search and rescue, support for forward refueling and rearming 
points, aeromedic evacuation of casualties from the field, and recovery of 
aircraft and personnel.  

The CH-46 Sea Knight was first procured in 1960 under the old
designation of HRB-1 to meet the medium-lift requirements of the
United States Marine Corps in all combat and peacetime environments
since that time. The final production version was the CH-46F. In all,
524 H-46s were produced for the Navy and Marine Corps. The last Sea
Knight rolled off the assembly line in February of 1971. The fleet is
currently being maintained until a suitable replacement is approved.

On September 24, 2004 the USN retired the type, seeing it replaced by
the MH-60 Seahawk. The USMC is replacing its CH-46s with the V-22
Osprey. The first V-22 squadron, HMM-263, will be stood up in March of
2006 and renamed VMM-263. The replacement process is expected to
continue through the other medium helicopter squadrons, into 2014.
 (from Wikipedia)")

;; dimensions & weight & effectiveRange of an CH46D

(=>
  (instance ?CH46D CH46D)
  (and
    (length ?CH46D
      (MeasureFn 25.72 Meter))
    (width ?CH46D
      (MeasureFn 15.54 Meter))
    (height ?CH46D
      (MeasureFn 5.1 Meter))
    (weight ?CH46D
      (MeasureFn 7047 Kilogram))
    (effectiveRange ?CH46D
      (MeasureFn 676 Kilometer))))

;; weapons carried by an CH46D

(=>
  (instance ?CH46D CH46D)
  (weaponCarryingCapability ?CH46D HeavyMachineGun 2))

;; person and transport capability of an CH46D

(=>
  (instance ?CH46D CH46D)
  (and
    (personTransportCapability ?CH46D 25)
    (maximumPayloadCapacity ?CH46D
      (MeasureFn 3131 Kilogram))))

(subclass AH1 Helicopter)
(subclass AH1 MilitaryVehicle)
(documentation AH1 EnglishLanguage "The Bell AH-1 Cobra, called the Huey Cobra, Cobra, Sea 
Cobra, or Snake (depending on the model), is an attack helicopter, 
designed by Bell Helicopter Textron.  It shares a common engine, 
transmission and rotor system with the UH-1.  It is now fully replaced by 
the AH-64 Apache in US Army service, but upgraded versions continue to fly 
with US Marine Corps, US Navy and several other users.  (from Wikipedia)") 

;; dimensions & weight & effectiveRange of an AH1

(=>
  (instance ?AH1 AH1)
  (and
    (length ?AH1
      (MeasureFn 17.68 Meter))
    (width ?AH1
      (MeasureFn 14.63 Meter))
    (height ?AH1
      (MeasureFn 4.44 Meter))
    (weight ?AH1
      (MeasureFn 4634 Kilogram))
    (effectiveRange ?AH1
      (MeasureFn 587 Kilometer))))

;; weapons carried by an AH1

(=>
  (instance ?AH1 AH1)
  (and
    (weaponCarryingCapability ?AH1 M197GatlingGun 1)
    (weaponCarryingCapability ?AH1 AntiTankMissile 4)
    (weaponCarryingCapability ?AH1 AGM114 8)
    (weaponCarryingCapability ?AH1 AIM9 1)))

;; a AH1 has a M197 Gatling Gun mounted

(=>
  (instance ?CH AH1)
  (exists (?MG)
    (and
      (instance ?MG M197GatlingGun)
      (part ?MG ?CH))))

;; AH1s are designed to attack

(=>
  (instance ?CH AH1)
  (hasPurpose ?CH
    (exists (?ATTACK)
      (and
        (instance ?ATTACK Attack)
        (instrument ?ATTACK ?CH)))))


(subclass LCAC AmphibiousVehicle)
(subclass LCAC MilitaryVehicle)
(subclass LCAC PassengerVehicle)
(subclass LCAC PoweredVehicle)
(documentation LCAC EnglishLanguage "The air cushioned landing craft, or fully amphibious 
landing craft, is a more modern variation on the amphibious landing boat.  
These craft are based on small to mid sized multi-purpose hovercraft, also 
known as 'over the beach' ('OTB') craft.  This allows troops and material 
to access more than 70% of the world's coastline, while only approximately 
15% of that coastline is available to conventional landing craft.  Typical 
barriers to conventional landing craft are soft sandy beaches, marshes, 
swampland, and loose surfaces.  Air cushion technology has vastly 
increased the landing capability of the craft, providing greater speed and 
flexibility over traditional landing craft.  Like the mechanized landing 
craft, they are usually equipped with mounted machine guns, although they 
also support grenade launchers and heavy weapons.  These vehicles are 
commonly used in the United States Navy, which first received them in 
1984, the Russian Navy, and some other modern fighting forces, such as the 
United Kingdom's Royal Navy.  Forces that may use the LCAC may include The 
Royal Marines.  (from Wikipedia) ") 

;; dimensions of an LCAC

(=>
  (instance ?LCAC LCAC)
  (and
    (length ?LCAC
      (MeasureFn 88 FootLength))
    (effectiveRange ?LCAC
      (MeasureFn 555 Kilometer))))

;; weapons carried by an LCAC

(=>
  (instance ?LCAC LCAC)
  (and
    (weaponCarryingCapability ?LCAC M2Browning 2)
    (weaponCarryingCapability ?LCAC M60 2)
    (weaponCarryingCapability ?LCAC MK19 2)))

;; maximum passenger load of an LCAC

(=>
  (instance ?LCAC LCAC)
  (personTransportCapability ?LCAC 24))

;; maximum payload of an LCAC

(=>
  (instance ?LCAC LCAC)
  (maximumPayloadCapacity ?LCAC
    (MeasureFn 60 TonMass)))

(subclass Barrier StationaryArtifact)
(documentation Barrier EnglishLanguage "WN: a structure or object that impedes free
movement")

;; barriers should prohibit translocations along their location

(=>
  (and
    (instance ?B Barricade)
    (partlyLocated ?B ?P))
  (hasPurpose ?B
    (not
      (exists (?T)
        (and
          (instance ?T Translocation)
          (path ?T ?P))))))

(subclass Barricade Barrier)
(subclass Barricade Device)
(documentation Barricade EnglishLanguage "WN: a barrier (usually thrown up hastily so
as to impede the advance of an enemy), they stormed the barricade")

(subclass AmphibiousVehicle LandVehicle)
(subclass AmphibiousVehicle WaterVehicle)
(documentation AmphibiousVehicle EnglishLanguage "The class of vehicles that can go on
land and water")

;; amphibious vehicles can land on shores etc.

(=>
  (instance ?VEHICLE  AmphibiousVehicle)
  (capability  LandingWaterLand instrument ?VEHICLE))

;; format and termFormat statements for MilitaryDevices.kif

(format EnglishLanguage weaponCarryingCapability "%1 can%n{not} carry %3 weapons of type %2.")
(format EnglishLanguage personTransportCapability "%1 can%n{not} carry %2 passengers.")
(format EnglishLanguage maximumPayloadCapacity "%1 can%n{not} carry a payload weighing up to %2.")
(format EnglishLanguage maximumPayloadHeightWidth "%1 can%n{not} carry a payload measuring up to %2 high and %3 wide.")
(format EnglishLanguage caliber "%1 weapons can%n{not} shoot projectiles with a caliber of %2.")
(format EnglishLanguage absoluteHeight "%1 is %n at an absolute height of %2.")

(termFormat EnglishLanguage ArtilleryCannon "artillery cannon")
(termFormat EnglishLanguage Grenade "grenade")
(termFormat EnglishLanguage M242 "M-242 Bushmaster")
(termFormat EnglishLanguage GAU12U "GAU-12U Equalizer cannon")
(termFormat EnglishLanguage ChainGun "chain gun")
(termFormat EnglishLanguage M240 "M240 machine gun")
(termFormat EnglishLanguage M60 "M60 machine gun")
(termFormat EnglishLanguage HeavyMachineGun "heavy machine gun")
(termFormat EnglishLanguage M2Browning "M2 Browning machine gun")
(termFormat EnglishLanguage XM218 "GAU-15/A machine gun")
(termFormat EnglishLanguage M3M "M3M machine gun")
(termFormat EnglishLanguage GrenadeLauncher "grenade launcher")
(termFormat EnglishLanguage MK19 "MK19 grenade launcher")
(termFormat EnglishLanguage AntiArmorWeapon "anti-armor weapon")
(termFormat EnglishLanguage DragonWeapon "Dragon anti-armor missile")
(termFormat EnglishLanguage JavelinWeapon "Javelin anti-tank missile")
(termFormat EnglishLanguage SMAWBunkerBuster "Shoulder-launched Multi-purpose Assault Weapon")
(termFormat EnglishLanguage BGM71TOW "BGM-71 TOW anti-tank missile")
(termFormat EnglishLanguage AntiTankWeapon "anti-tank weapon")
(termFormat EnglishLanguage AntiTankMissile "anti-tank missile")
(termFormat EnglishLanguage M197GatlingGun "M197 Gatling gun")
(termFormat EnglishLanguage GatlingGun "Gatling gun")
(termFormat EnglishLanguage AirLaunchMissile "air launched missile")
(termFormat EnglishLanguage GroundLaunchMissile "ground launched missile")
(termFormat EnglishLanguage AirAttackMissile "air attack missile")
(termFormat EnglishLanguage GroundAttackMissile "ground attack missile")
(termFormat EnglishLanguage GuidedMissile "guided missile")
(termFormat EnglishLanguage InfraRedGMissile "infra-red guided missile")
(termFormat EnglishLanguage BeamRidingGMissile "beam-riding guided missile")
(termFormat EnglishLanguage AGM "AGM missile")
(termFormat EnglishLanguage AGM65 "AGM-65 Maverick missile")
(termFormat EnglishLanguage AAM "air-to-air missile")
(termFormat EnglishLanguage AIM9 "AIM-9 Sidewinder missile")
(termFormat EnglishLanguage AGM114 "AGM-114 Hellfire missile")
(termFormat EnglishLanguage MolotovCocktail "Molotov cocktail")
(termFormat EnglishLanguage RPG "handheld anti-tank grenade launcher")
(termFormat EnglishLanguage CSGas "CS gas")
(termFormat EnglishLanguage AbsoluteFilter "absolute filter")
(termFormat EnglishLanguage AbsoluteDud "absolute dud")
(termFormat EnglishLanguage Altimeter "altimeter")
(termFormat EnglishLanguage AbsoluteAltimeter "absolute altimeter")
(termFormat EnglishLanguage BarometricAltimeter "barometric altimeter")
(termFormat EnglishLanguage LAV "Light Armored Vehicle")
(termFormat EnglishLanguage LAV25 "LAV-25")
(termFormat EnglishLanguage APC "armored personnel carrier")
(termFormat EnglishLanguage ArmoredVehicle "armored vehicle")
(termFormat EnglishLanguage Armor "armor")
(termFormat EnglishLanguage AAV "Amphibious Assault Vehicle")
(termFormat EnglishLanguage VSTOL "V/STOL")
(termFormat EnglishLanguage Harrier2 "Harrier II")
(termFormat EnglishLanguage CH53E "CH-53E Super Stallion")
(termFormat EnglishLanguage CH46D "CH-46D Sea Knight")
(termFormat EnglishLanguage AH1 "AH-1 Cobra")
(termFormat EnglishLanguage LCAC "LCAC hovercraft")
(termFormat EnglishLanguage Barricade "barricade")
(termFormat EnglishLanguage AmphibiousVehicle "amphibious vehicle")







