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