Anne is nice. Anne is young. Bob is green. Bob is kind. Bob is nice. Bob is rough. Bob is smart. Bob is young. Fiona is smart. Harry is cold. Harry is green. Harry is kind. Harry is nice. Harry is rough. Harry is smart. Harry is young. All nice people are cold. All nice people are green. All cold, green people are smart.
Anne is nice.
("Anne" "is" "nice" "+")
Anne is young.
("Anne" "is" "young" "+")
Bob is green.
("Bob" "is" "green" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Bob is young.
("Bob" "is" "young" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is green.
("Harry" "is" "green" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is rough.
("Harry" "is" "rough" "+")
Harry is smart.
("Harry" "is" "smart" "+")
Harry is young.
("Harry" "is" "young" "+")
All nice people are cold.
((("someone" "is" "nice" "+")) -> ("someone" "is" "cold" "+"))
All nice people are green.
((("someone" "is" "nice" "+")) -> ("someone" "is" "green" "+"))
All cold, green people are smart.
((("someone" "is" "cold" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "smart" "+"))
Bob is rough.
True
1
proof
[(triple6)]
("Bob" "is" "rough" "+")
triple6
Bob is not kind.
False
1
inv-proof
[(triple4)]
("Bob" "is" "kind" "-")
triple4
Fiona is not green.
Unknown
inv-rconc
[@1: Fiona is green.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Fiona" "is" "green" "-")
Fiona is nice.
Unknown
random
[@0: Fiona is nice.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "nice" "+")
@0: Anne is nice.[(triple1)] Anne is young.[(triple2)] Bob is green.[(triple3 OR ((triple5) -> rule2))] Bob is kind.[(triple4)] Bob is nice.[(triple5)] Bob is rough.[(triple6)] Bob is smart.[(triple7 OR ((((triple5) -> rule1) triple3) -> rule3) OR ((((triple5) -> rule1) ((triple5) -> rule2)) -> rule3))] Bob is young.[(triple8)] Fiona is smart.[(triple9)] Harry is cold.[(triple10 OR ((triple13) -> rule1))] Harry is green.[(triple11 OR ((triple13) -> rule2))] Harry is kind.[(triple12)] Harry is nice.[(triple13)] Harry is rough.[(triple14)] Harry is smart.[(triple15 OR ((triple10 triple11) -> rule3) OR ((triple10 ((triple13) -> rule2)) -> rule3) OR ((((triple13) -> rule1) triple11) -> rule3) OR ((((triple13) -> rule1) ((triple13) -> rule2)) -> rule3))] Harry is young.[(triple16)] @1: Anne is cold.[(((triple1) -> rule1))] Anne is green.[(((triple1) -> rule2))] Bob is cold.[(((triple5) -> rule1))] @2: Anne is smart.[(((((triple1) -> rule1) ((triple1) -> rule2)) -> rule3))]
Anne is nice.
("Anne" "is" "nice" "+")
triple1
Anne is young.
("Anne" "is" "young" "+")
triple2
Bob is green.
("Bob" "is" "green" "+")
triple3
((triple5) -> (rule2 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
triple4
Bob is nice.
("Bob" "is" "nice" "+")
triple5
Bob is rough.
("Bob" "is" "rough" "+")
triple6
Bob is smart.
("Bob" "is" "smart" "+")
triple7
((((triple5) -> (rule1 % int2)) triple3) -> (rule3 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
int2
((((triple5) -> (rule1 % int3)) ((triple5) -> (rule2 % int2))) -> (rule3 % int1))
Bob is smart.
("Bob" "is" "smart" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
int3
Bob is young.
("Bob" "is" "young" "+")
triple8
Fiona is smart.
("Fiona" "is" "smart" "+")
triple9
Harry is cold.
("Harry" "is" "cold" "+")
triple10
((triple13) -> (rule1 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
triple11
((triple13) -> (rule2 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
triple12
Harry is nice.
("Harry" "is" "nice" "+")
triple13
Harry is rough.
("Harry" "is" "rough" "+")
triple14
Harry is smart.
("Harry" "is" "smart" "+")
triple15
((triple10 triple11) -> (rule3 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
((triple10 ((triple13) -> (rule2 % int2))) -> (rule3 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
((((triple13) -> (rule1 % int2)) triple11) -> (rule3 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
((((triple13) -> (rule1 % int3)) ((triple13) -> (rule2 % int2))) -> (rule3 % int1))
Harry is smart.
("Harry" "is" "smart" "+")
int1
Harry is green.
("Harry" "is" "green" "+")
int2
Harry is cold.
("Harry" "is" "cold" "+")
int3
Harry is young.
("Harry" "is" "young" "+")
triple16
Anne is cold.
("Anne" "is" "cold" "+")
((triple1) -> (rule1 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
((triple1) -> (rule2 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Bob is cold.
("Bob" "is" "cold" "+")
((triple5) -> (rule1 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
((((triple1) -> (rule1 % int3)) ((triple1) -> (rule2 % int2))) -> (rule3 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Anne is cold.
("Anne" "is" "cold" "+")
int3