Function Last

Instance-Of@Frame-Ontology:
Binary-Relation@Ol-User%Kif-Relations, Function@Ol-User%Kif-Relations, Relation@Ol-User%Kif-Relations, Set@Ol-User%Kif-Sets
Domain@Frame-Ontology: List
Arity@Frame-Ontology: 2

Implication Axioms mentioning Last:

(=> (= (Exact-Range@Frame-Ontology ?Relation) ?Range-Class)
    (Forall (?Range-Instance)
            (<=> (Holds@Ol-User%Kif-Relations ?Range-Class
                        ?Range-Instance)
                 (Exists (?Tuple)
                         (And (Member@Ol-User%Kif-Sets ?Tuple
                                      ?Relation)
                              (= (Last ?Tuple) ?Range-Instance))))))

(=> (Composition-Of@Frame-Ontology ?Binary-Relation
                    ?List-Of-Relations)
    (Or (And (Single ?List-Of-Relations)
             (= ?Binary-Relation (First ?List-Of-Relations)))
        (And (Double ?List-Of-Relations)
             (= ?Binary-Relation
                (Composition@Ol-User%Kif-Relations 
                    (First (Rest ?List-Of-Relations))
                    (First ?List-Of-Relations))))
        (Exists 
            (?Left-Sub-Relation)
            (And (= ?Binary-Relation
                    (Composition@Ol-User%Kif-Relations 
                        (Last ?List-Of-Relations)
                        ?Left-Sub-Relation))
                 (Composition-Of@Frame-Ontology 
                     ?Left-Sub-Relation
                     (Butlast ?List-Of-Relations))))))

(=> (Function@Ol-User%Kif-Relations ?Relation)
    (Forall (?Tuple1 ?Tuple2)
            (=> (Member@Ol-User%Kif-Sets ?Tuple1 ?Relation)
                (Member@Ol-User%Kif-Sets ?Tuple2 ?Relation)
                (= (Butlast ?Tuple1) (Butlast ?Tuple2))
                (= (Last ?Tuple1) (Last ?Tuple2)))))


Equivalence Axioms mentioning Last:

(<=> (Exact-Range@Frame-Ontology ?Relation)
     (And (Relation@Ol-User%Kif-Relations ?Relation)
          (Class@Frame-Ontology ?Range-Class)
          (Forall (?Range-Instance)
                  (<=> (Holds@Ol-User%Kif-Relations ?Range-Class
                              ?Range-Instance)
                       (Exists (?Tuple)
                               (And (Member@Ol-User%Kif-Sets ?Tuple
                                            ?Relation)
                                    (= (Last ?Tuple) ?Range-Instance)))))))

(<=> (Composition-Of@Frame-Ontology ?Binary-Relation
                     ?List-Of-Relations)
     (And (Binary-Relation@Ol-User%Kif-Relations ?Binary-Relation)
          (List ?List-Of-Relations)
          (Not (Null ?List-Of-Relations))
          (=> (Item ?R ?List-Of-Relations)
              (Binary-Relation@Ol-User%Kif-Relations ?R))
          (Or (And (Single ?List-Of-Relations)
                   (= ?Binary-Relation (First ?List-Of-Relations)))
              (And (Double ?List-Of-Relations)
                   (= ?Binary-Relation
                      (Composition@Ol-User%Kif-Relations 
                          (First (Rest ?List-Of-Relations))
                          (First ?List-Of-Relations))))
              (Exists 
                  (?Left-Sub-Relation)
                  (And (= ?Binary-Relation
                          (Composition@Ol-User%Kif-Relations 
                              (Last ?List-Of-Relations)
                              ?Left-Sub-Relation))
                       (Composition-Of@Frame-Ontology 
                           ?Left-Sub-Relation
                           (Butlast ?List-Of-Relations)))))))

(<=> (Function@Ol-User%Kif-Relations ?Relation)
     (And (Relation@Ol-User%Kif-Relations ?Relation)
          (Forall (?Tuple1 ?Tuple2)
                  (=> (Member@Ol-User%Kif-Sets ?Tuple1 ?Relation)
                      (Member@Ol-User%Kif-Sets ?Tuple2 ?Relation)
                      (= (Butlast ?Tuple1) (Butlast ?Tuple2))
                      (= (Last ?Tuple1) (Last ?Tuple2))))))