## Logiweb aspects of f.unitac-Ponens ( " ) in pyk

### The "pyk" aspect

Define pyk of f.unitac-Ponens ( asterisk ) as "f.unitac-Ponens ( "! )" end define

### The "value" aspect

define value of f.unitac-Ponens ( u ) as norm { u is val : LET u BE { asterisk IN LET { if asterisk atom then asterisk else { asterisk head } } :: { { if asterisk atom then asterisk else { asterisk tail } } :: true } BE { asterisk prime IN LET asterisk prime head BE { asterisk IN LET asterisk prime tail BE { asterisk prime IN LET asterisk BE { t IN LET asterisk prime head BE { asterisk IN LET asterisk prime tail BE { asterisk prime IN LET { if asterisk atom then asterisk else { asterisk head } } :: { { if asterisk atom then asterisk else { asterisk tail } } :: true } BE { asterisk prime prime IN LET asterisk prime prime head BE { asterisk IN LET asterisk prime prime tail BE { asterisk prime prime IN LET asterisk BE { s IN LET asterisk prime prime head BE { asterisk IN LET asterisk prime prime tail BE { asterisk prime prime IN LET { if asterisk atom then asterisk else { asterisk head } } :: { { if asterisk atom then asterisk else { asterisk tail } } :: true } BE { asterisk prime prime prime IN LET asterisk prime prime prime head BE { asterisk IN LET asterisk prime prime prime tail BE { asterisk prime prime prime IN LET asterisk BE { c IN LET asterisk prime prime prime head BE { asterisk IN LET asterisk prime prime prime tail BE { asterisk prime prime prime IN LET unieval ( t first , s , c ) BE { asterisk IN LET asterisk BE { s IN LET f.unitac-adapt ( "imply" , s , c ) BE { asterisk IN LET asterisk BE { s IN LET s [[ hook-arg ]] BE { asterisk IN LET asterisk BE { a IN LET s [[ hook-res ]] BE { asterisk IN LET asterisk BE { r IN if .not. { r r= quote x imply y end quote } then error ( t , LocateProofLine ( t , c ) diag ( "Malformed result of hypothetical reasoning" ) disp ( r ) end diagnose ) else LET r first BE { asterisk IN LET asterisk BE { h IN LET r second BE { asterisk IN LET asterisk BE { r IN LET r first BE { asterisk IN LET asterisk BE { x IN LET r second BE { asterisk IN LET asterisk BE { y IN LET make-root ( t , quote a unquote ;; { { h unquote imply { x unquote } } Init ;; { { { { MP' Init Deref Ponens at { h unquote } } at { x unquote } } at { y unquote } } Ponens Ponens } } end quote ) :: { a :: { { make-root ( t , quote { h unquote imply { x unquote } } Init ;; { { { { MP' Init Deref Ponens at { h unquote } } at { x unquote } } at { y unquote } } Ponens Ponens } end quote ) :: { { make-root ( t , quote { h unquote imply { x unquote } } Init end quote ) :: { { make-root ( t , quote h unquote imply { x unquote } end quote ) :: { h :: { x :: true } } } :: true } } :: { { make-root ( t , quote { { { MP' Init Deref Ponens at { h unquote } } at { x unquote } } at { y unquote } } Ponens Ponens end quote ) :: { { make-root ( t , quote { { { MP' Init Deref Ponens at { h unquote } } at { x unquote } } at { y unquote } } Ponens end quote ) :: { { make-root ( t , quote { { MP' Init Deref Ponens at { h unquote } } at { x unquote } } at { y unquote } end quote ) :: { { make-root ( t , quote { MP' Init Deref Ponens at { h unquote } } at { x unquote } end quote ) :: { { make-root ( t , quote MP' Init Deref Ponens at { h unquote } end quote ) :: { { make-root ( t , quote MP' Init Deref Ponens end quote ) :: { { make-root ( t , quote MP' Init Deref end quote ) :: { { make-root ( t , quote MP' Init end quote ) :: { { make-root ( t , quote MP' end quote ) :: true } :: true } } :: true } } :: true } } :: { h :: true } } } :: { x :: true } } } :: { y :: true } } } :: true } } :: true } } :: true } } } :: true } } BE { asterisk IN LET asterisk BE { a IN LET make-root ( t , quote h unquote imply { y unquote } end quote ) :: { h :: { y :: true } } BE { asterisk IN LET asterisk BE { r IN { s [[ hook-arg -> a ]] [[ hook-res -> r ]] } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } end define

The pyk compiler, version 0.1.9 by Klaus Grue,
GRD-2007-07-12.UTC:20:13:13.678589 = MJD-54293.TAI:20:13:46.678589 = LGT-4690988026678589e-6