Skip to content

Commit a01cb6d

Browse files
update readmes
1 parent 0bd85a6 commit a01cb6d

2 files changed

Lines changed: 48 additions & 1 deletion

File tree

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Chronosymbolic-Learning
2+
Artifact for paper "Chronosymbolic: Efficient CHC Solving with Symbolic Reasoning and Inductive Learning"
3+
- code will be open-source soon

examples/README.md

Lines changed: 45 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,47 @@
11
## nonlin_mult_2.smt2.log
22
The log shows how we handle the instance in Example 1.
3-
The "Information" section prints the statistics and the CHC system.
3+
- The "Information" section prints the statistics and the CHC system.
4+
- The "Init Phase" section indicates that the reasoner finds an init safe zone from fact for inv:
5+
```
6+
And(Var_1 >= Var_0,
7+
Var_0 >= 1,
8+
Var_2 == 0,
9+
Var_4 == 0,
10+
Var_3 == 0),
11+
```
12+
and an init unsafe zone from query for inv:
13+
`Not(Var_4 >= Var_0*Var_2)`
14+
Then, after a few iterations of expansion, the reasoner output initial safe/unsafe zones, which will incorporated in future hypothese. The process is light-weight which corresponds to line 6 `reason()` in Algorithm 1.
15+
- The "Constraint Solving of Horn Clauses" section corresponds to line 5-15 in Algorithm 1. In this process, three positive samples `(1, 1, 3, 3, 3), (1, 1, 4, 4, 4), (1, 1, 5, 5, 5)` and 8 negative samples `(3, -3, -8, 3, -3), (3, -3, -9, 0, 0), (-1, -2, 5, -5, -2), (-1, -2, 4, -4, 0), (7, 3, -3, -8, -8), (7, 3, -4, -15, -11), (5, 4, 0, -2, 3), (5, 4, -1, -7, -1)` are discovered by implication cex converting (Lemma 3). The machine learning toolchain (SVMs and DT) is called multiple times to adjust the hypothesis during this section.
16+
- In the second "Episode" (Epoch) of "Constraint Solving of Horn Clauses", all CHCs are passed `z3Check()`. This implies the satisfiability of the CHC system. The solution interpretations of all uninterpreted predicates are:
17+
```
18+
Relation: fail,
19+
Candidate: False
20+
13:20:06 - line:1308 -
21+
Relation: inv,
22+
Candidate: Or(And(Var_1 >= Var_0,
23+
Var_0 >= 1,
24+
Var_2 == 0,
25+
Var_4 == 0,
26+
Var_3 == 0),
27+
And(Var_0 >= 1,
28+
Var_2 == 1,
29+
Var_3 == Var_0,
30+
Var_4 == Var_1,
31+
Var_1 >= Var_0),
32+
And(Var_1 >= Var_0,
33+
Var_0 >= 1,
34+
Var_2 == 1,
35+
Var_4 + -1*Var_1 == 0,
36+
Var_3 + -1*Var_0 == 0),
37+
And(Var_0 >= 1,
38+
Var_2 == 2,
39+
Var_3 + -2*Var_0 == 0,
40+
Var_4 + -2*Var_1 == 0,
41+
Var_1 >= Var_0),
42+
And(Not(Or(Not(Var_4 >= Var_0*Var_2),
43+
Not(Var_4 + 3*Var_1 >= Var_0*(3 + Var_2)),
44+
Not(Var_4 + 2*Var_1 >= Var_0*(2 + Var_2)),
45+
Not(Var_4 + Var_1 >= Var_0*(1 + Var_2)))),
46+
Var_0 + -1*Var_1 <= 0))
47+
```

0 commit comments

Comments
 (0)