OverviewFilesCommitsIssuesDocsReleasesPeers

opencog-ure / tests / ure / backwardchainer / scm / friends.scm

109 lines · scm ref:
;; KB for testing BC implication instantiation rule

;; are-friends is symmetric
(ImplicationScope (stv 1 1)
   (VariableList
      (TypedVariable
         (Variable "$X")
         (Type "ConceptNode"))
      (TypedVariable
         (Variable "$Y")
         (Type "ConceptNode")))
   (Evaluation
      (Predicate "are-friends")
      (List
         (Variable "$X")
         (Variable "$Y")))
   (Evaluation
      (Predicate "are-friends")
      (List
         (Variable "$Y")
         (Variable "$X"))))

;; are-friends over musicians is transitive
(ImplicationScope (stv 1 1)
   (VariableList
      (TypedVariable
         (Variable "$X")
         (Type "ConceptNode"))
      (TypedVariable
         (Variable "$Y")
         (Type "ConceptNode"))
      (TypedVariable
         (Variable "$Z")
         (Type "ConceptNode")))
   (And
      (Evaluation
         (Predicate "are-friends")
         (List
            (Variable "$X")
            (Variable "$Y")))
      (Evaluation
         (Predicate "are-friends")
         (List
            (Variable "$Y")
            (Variable "$Z")))
      (Evaluation
         (Predicate "is-musician")
         (Variable "$X"))
      (Evaluation
         (Predicate "is-musician")
         (Variable "$Y"))
      (Evaluation
         (Predicate "is-musician")
         (Variable "$Z")))
   (Evaluation
      (Predicate "are-friends")
      (List
         (Variable "$X")
         (Variable "$Z"))))

;; Facts
(Evaluation (stv 1 1)
   (Predicate "are-friends")
   (List
      (Concept "John")
      (Concept "Mary")))

(Evaluation (stv 1 1)
   (Predicate "are-friends")
   (List
      (Concept "Mary")
      (Concept "Edward")))

(Evaluation (stv 1 1)
   (Predicate "are-friends")
   (List
      (Concept "Michel")
      (Concept "Edward")))

(Evaluation (stv 1 1)
   (Predicate "are-friends")
   (List
      (Concept "Cyril")
      (Concept "John")))

(Evaluation (stv 1 1)
   (Predicate "is-musician")
   (Concept "John"))

(Evaluation (stv 1 1)
   (Predicate "is-musician")
   (Concept "Mary"))

(Evaluation (stv 1 1)
   (Predicate "is-musician")
   (Concept "Edward"))

;; ;; Cheaping facts (useful for debugging)
;; (Evaluation (stv 1 1)
;;    (Predicate "are-friends")
;;    (List
;;       (Concept "Edward")
;;       (Concept "Mary")))
;; (Evaluation (stv 1 1)
;;    (Predicate "are-friends")
;;    (List
;;       (Concept "Mary")
;;       (Concept "John")))