This is Russell's flat tire domain.

(operator
 open
 (params 
  (<x> Container))
 (preconds
  (unlocked <x>) (closed <x>))
 (effects 
  (del closed <x>) (open <x>)))


(operator
 close
 (params 
  (<x> Container))
 (preconds
  (open <x>))
 (effects 
  (del open <x>) (closed <x>)))

(operator
 fetch
 (params (<x> Object)  (<y> Container))
 (preconds
  (in <x> <y>) (open <y>))
 (effects
  (del in <x> <y>) (have <x>)))


(operator
 put-away
 (params  (<x> Object) (<y> Container))
 (preconds
  (have <x>) (open <y>))
 (effects
  (in <x> <y>)  (del have <x>)))

(operator
 loosen 
 (params (<x> Nut)  (<y> Hub))
 (preconds
  (have wrench) (tight <x> <y>) (on-ground <y>))
 (effects
  (loose <x> <y>) (del tight <x> <y>)))

(operator
 tighten
 (params (<x> Nut)
   (<y> Hub))
 (preconds
  (have wrench) (loose <x> <y>) (on-ground <y>))
 (effects
  (tight <x> <y>) (del loose <x> <y>)))

(operator
 jack-up
 (params (<y> Hub))
 (preconds  (on-ground <y>) (have jack))
 (effects (not-on-ground <y>) (del on-ground <y>) (del have jack)))

(operator
 jack-down
 (params (<x> Hub))
 (preconds (not-on-ground <x>))
 (effects (del not-on-ground <x>) (on-ground <x>) (have jack)))

(operator
 undo
 (params (<x> Nut) (<y> Hub))
 (preconds
  (not-on-ground <y>) (fastened <y>) (have wrench) (loose <x> <y>))
 (effects
  (have <x>) (unfastened <y>) (del fastened <y>) 
  (del loose <x> <y>)))

(operator
 do-up
 (params (<x> Nut) (<y> Hub))
 (preconds 
  (have wrench) (unfastened <y>)
       (not-on-ground <y>) (have <x>))
 (effects
   (loose <x> <y>) (fastened <y>) (del unfastened <y>)
   (del have <x>)))

(operator
 remove-wheel
 (params (<x> Wheel) (<y> Hub))
 (preconds 
  (not-on-ground <y>) (on <x> <y>) (unfastened <y>))
 (effects
   (have <x>) (free <y>) (del on <x> <y>)))

(operator
 put-on-wheel
 (params (<x> Wheel) (<y> Hub))
 (preconds
  (have <x>) (free <y>) (unfastened <y>) (not-on-ground <y>))
 (effects
  (on <x> <y>) (del free <y>) (del have <x>)))

(operator
 inflate
 (params (<x> Wheel))
 (preconds
  (have pump) (not-inflated <x>) (intact <x>))
 (effects (del not-inflated <x>) (inflated <x>)))

(operator
 cuss
 (params)
 (preconds)
 (effects (del annoyed)))
