; if-then : boolean boolean -> boolean

; purpose: expects the values of propositions
;    p and q, and returns the result of
;    p->q

(EXAMPLE (if-then true true)
  true)
(EXAMPLE (if-then true false)
  false)
(EXAMPLE (if-then false true)
  true)
(EXAMPLE (if-then false false)
  true)

(define  (if-then p q)
   (not (and p (not q)))
)

(if-then true false)

;========
; I can now USE if-then in whatever I'd like
;    for the rest of this file/window!
;    (you should click Run first to use it in
;    the Interactions window)

; green-party-concl : boolean boolean -> boolean
; purpose: expects the values for propositions
;    p and r, and returns the result of
;    ~(~p -> ~r)

(EXAMPLE (green-party-concl true true) false)
(EXAMPLE (green-party-concl false true) true)

(define  (green-party-concl p r)
    (not (if-then (not p) (not r)))
)