Function Rest

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
Arity@Frame-Ontology: 2

Equivalence Axioms for Rest:

(<=> (Rest ?List)
     (Or (And (Null ?List) (= ?Rest-List ?List))
         (Exists (?X @Items)
                 (And (= ?List (Listof ?X @Items))
                      (= ?Rest-List (Listof @Items))))))


Implication Axioms mentioning Rest:

(=> (= (Rest ?List) ?Rest-List)
    (Or (And (Null ?List) (= ?Rest-List ?List))
        (Exists (?X @Items)
                (And (= ?List (Listof ?X @Items))
                     (= ?Rest-List (Listof @Items))))))

(=> (Item ?X ?List) (Or (= ?X (First ?List)) (Item ?X (Rest ?List))))

(=> (Sublist ?L1 ?L2) (Or (= ?L1 ?L2) (Sublist ?L1 (Rest ?L2))))

(=> (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))))))


Equivalence Axioms mentioning Rest:

(<=> (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)))))))