f | 1 | [Path 1]: | f | 1 | [Path 1]:
n | 2 | 0: Start of execution | n | 2 | 0: Start of execution: Beginning Search
| 3 | 1: Searching: query |  | 3 | 1: Searching: query
n | 4 | 2: Searching: sibling(S1, S2) | n | 4 | 2: Searching: sibling(Candidate Variable_0, Candidate Variable_1)
| 5 | 3: Searching: brother(william, S2) |  | 5 | 3: Searching: brother(Candidate Variable_0, Candidate Variable_1)
| 6 | 4: Found: brother(william, richard) |  | 6 | 4: Found: brother(william, richard)
n | 7 | 5: Searching: parent(richard, C2) | n |  |
| 8 | 6: Found: parent(richard, kimberley) |  |  |
| 9 | 7: Searching: grandchild(cornelius, GP) |  |  |
| 10 | 8: Searching: parent(GP, Z) |  |  |
| 11 | 9: Found: parent(frank, cornelius) |  |  |
| 12 | 10: Searching: parent(Z, cornelius) |  |  |
| 13 | 11: Found: cornelius=cornelius |  |  |
| 14 | 12: Searching: grandchild(C2, GP) |  |  |
| 15 | 13: Searching: parent(GP, Z2) |  |  |
| 16 | 14: Found: GP=frank, Z2=cornelius |  |  |
| 17 | 15: Searching: parent(frank, C2) |  |  |
| 18 | 16: Found: C2=kimberley |  |  |
| 19 | 17: Searching: relation(C1, C2) |  |  |
| 20 | 18: Searching: sibling(C1, Z3) |  |  |
| 21 | 19: Searching: brother(C1, Z3) |  |  |
| 22 | 20: Found: C1=william, Z3=richard |  |  |
| 23 | 21: Searching: sibling(william, richard) |  | 7 | 5: Found: sibling(william, richard)
| 24 | 22: Found: william=william, richard=richard |  | 8 | 6: Searching: parent(william, Candidate Variable_2)
| 25 | 23: Found: relation(william, kimberley) |  | 9 | 7: Fail: parent(william, Candidate Variable_2) | {'Result': 'Search Failed'}
| 26 | 24: Found: query | {'Result': 'truth = True'} |  | 10 |
|  |  |  | 11 | Looking for other paths: Redo: brother(Candidate Variable_0, Candidate Variable_1)
| 27 |  |  | 12 |
| 28 |  |  | 13 |
t | 29 | The search paths help confirm that Kimberley and Cornelius are indeed second cousins, as the code successfully establishes their relationship through shared parents (William and Richard) and grandparents (Frank). | t | 14 | [Path 2]:
|  |  |  | 15 | 8: Found: brother(william, frank)
|  |  |  | 16 | 9: Found: sibling(william, frank)
|  |  |  | 17 | 10: Searching: parent(william, Candidate Variable_3)
|  |  |  | 18 | 11: Fail: parent(william, Candidate Variable_3) | {'Result': 'Search Failed'}
|  |  |  | 19 | 12: Fail: query | {'Result': 'Search Failed'}
|  |  |  | 20 |

Legends
Colors
Added
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op