Application Z expressed in KIF syntax

(define-object resource@Z)

(define-object ?r1)

(define-object ?r2)

(define-object ?r3)

(define-process process@Z)

(define-process ?pA)

(define-process ?pB)


(define-subclass-relation subclass@Z

(=> forall ?r1 ?r2 ?r3

(?r1

(and ?r2

(and ?r3

(and resource@Z))))))

(define-subclass-relation subprocess@Z

(=> forall ?pA ?pB

(?pA

(and ?pB

(and process@Z)))))

(define-subprocess@Z precede-process)

(define-subprocess@Z precede-resource)

(define precede-process ?pA ?pB

(=> forall ?pA ?pB

(precede-process

(and ?pA

(and ?pB)))))

(define precede-resource ?r1 ?r3

(=> forall ?r1 ?r3

(precede-resource

(and ?r1

(and ?r3)))))

(define precede-resource ?r2 ?r3

(=> forall ?r2 ?r3

(precede-resource

(and ?r2

(and ?r3)))))

(and (process@Z)

(precedence-resource (?r1 ?r3)

(precedence-resource (?r2 ?r3)

(precedence-process (?pA ?pB)))))