Charlie is green. Fiona is blue. Harry is blue. Green, furry people are kind. If someone is blue then they are kind. All young people are green. If Fiona is kind then Fiona is nice. Nice, young people are kind. If Harry is nice and Harry is kind then Harry is young.
Charlie is green.
("Charlie" "is" "green" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Harry is blue.
("Harry" "is" "blue" "+")
Green, furry people are kind.
((("someone" "is" "green" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "kind" "+"))
If someone is blue then they are kind.
((("someone" "is" "blue" "+")) -> ("someone" "is" "kind" "+"))
All young people are green.
((("someone" "is" "young" "+")) -> ("someone" "is" "green" "+"))
If Fiona is kind then Fiona is nice.
((("Fiona" "is" "kind" "+")) -> ("Fiona" "is" "nice" "+"))
Nice, young people are kind.
((("someone" "is" "nice" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "kind" "+"))
If Harry is nice and Harry is kind then Harry is young.
((("Harry" "is" "nice" "+") ("Harry" "is" "kind" "+")) -> ("Harry" "is" "young" "+"))
Harry is blue.
True
1
proof
[(triple3)]
("Harry" "is" "blue" "+")
triple3
Fiona is not blue.
False
1
inv-proof
[(triple2)]
("Fiona" "is" "blue" "-")
triple2
Harry is kind.
True
2
proof
[(((triple3) -> rule2))]
("Harry" "is" "kind" "+")
((triple3) -> (rule2 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Harry is not kind.
False
2
inv-proof
[(((triple3) -> rule2))]
("Harry" "is" "kind" "-")
((triple3) -> (rule2 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Fiona is nice.
True
3
proof
[(((((triple2) -> rule2)) -> rule4))]
("Fiona" "is" "nice" "+")
((((triple2) -> (rule2 % int2))) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is not nice.
False
3
inv-proof
[(((((triple2) -> rule2)) -> rule4))]
("Fiona" "is" "nice" "-")
((((triple2) -> (rule2 % int2))) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Harry is not young.
Unknown
inv-rconc
[@1: Harry is young.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Harry" "is" "young" "-")
Fiona is green.
Unknown
rconc
[@1: Fiona is green.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Fiona" "is" "green" "+")
Harry is not green.
Unknown
inv-rconc
[@2: Harry is green.[CWA. Example of deepest failure = (rule3 <- rule6 <- FAIL)]]
("Harry" "is" "green" "-")
Charlie is young.
Unknown
random
[@0: Charlie is young.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "young" "+")
Fiona is not furry.
Unknown
inv-random
[@0: Fiona is furry.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "furry" "-")
Fiona is young.
Unknown
random
[@0: Fiona is young.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "young" "+")
@0: Charlie is green.[(triple1)] Fiona is blue.[(triple2)] Harry is blue.[(triple3)] @1: Fiona is kind.[(((triple2) -> rule2))] Harry is kind.[(((triple3) -> rule2))] @2: Fiona is nice.[(((((triple2) -> rule2)) -> rule4))]
Charlie is green.
("Charlie" "is" "green" "+")
triple1
Fiona is blue.
("Fiona" "is" "blue" "+")
triple2
Harry is blue.
("Harry" "is" "blue" "+")
triple3
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple2) -> (rule2 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
((triple3) -> (rule2 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Fiona is nice.
("Fiona" "is" "nice" "+")
((((triple2) -> (rule2 % int2))) -> (rule4 % int1))
Fiona is nice.
("Fiona" "is" "nice" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2