Skip to content

Commit e44867b

Browse files
KJ-21 Bug discovered by Andrei: Investigated. Adapted the programs to our naming pattern. Needs further investigation.
1 parent 4a3bcbe commit e44867b

File tree

3 files changed

+34
-24
lines changed

3 files changed

+34
-24
lines changed
Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
/*
2-
$KOMPILE_CMD -v java --symbolic-rules "symbolic-rule" --backend symbolic
2+
kompile -v java --symbolic-rules "symbolic-rule" --backend symbolic
33
4-
time timeout 300 krun --debug-info --color extended --directory="/home/andrei.arusoaie/work/java-semantics/tools/../semantics" --main-module=JAVA -cMainClass="ListItem(\"max3\")" -cModelCheck="false" --output=pretty --parser="kj-parse-aggreg.sh" ../symbolic/max3.java -cIN="ListItem(3) ListItem(#symInt(x)) ListItem(8)" -cPC=true --search
4+
time timeout 300 krun --debug-info --color extended --directory="." --main-module=JAVA \
5+
-cMainClass="ListItem(\"symbolic_01_max3\")" -cModelCheck="false" --output=pretty --parser="kj-parse-aggreg.sh" \
6+
../symbolic/symbolic_01_max3.java \
7+
-cIN="ListItem(3) ListItem(#symInt(x)) ListItem(8)" -cPC=true --search
58
69
Expected output: 3 solutions
710
*/
811
import java.util.*;
912

10-
public class max3 {
13+
public class symbolic_01_max3 {
1114

1215
public static void main(String[] args) {
1316
System.out.print("Insert 3 numbers: ");
Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,20 @@
11
/*
2-
$KOMPILE_CMD -v java --symbolic-rules "symbolic-rule" --backend symbolic
2+
kompile -v java --symbolic-rules "symbolic-rule" --backend symbolic
33
4-
time timeout 300 krun --debug-info --color extended --directory="/home/andrei.arusoaie/work/java-semantics/tools/../semantics" --main-module=JAVA -cMainClass="ListItem(\"test\")" -cModelCheck="false" --output=pretty --parser="kj-parse-aggreg.sh" ../symbolic/test.java -cIN="ListItem(#symInt(e1)) ListItem(#symInt(e2)) ListItem(#symInt(x))" -cPC="true" --search
4+
time timeout 300 krun --debug-info --color extended --directory="." --main-module=JAVA \
5+
-cMainClass="ListItem(\"symbolic_02_BasicList\")" -cModelCheck="false" --output=pretty --parser="kj-parse-aggreg.sh" \
6+
../symbolic/symbolic_02_BasicList.java \
7+
-cIN="ListItem(#symInt(e1)) ListItem(#symInt(e2)) ListItem(#symInt(x))" -cPC="true" --search
58
69
Expected output: 4 solutions, one of them containing error message.
710
*/
811
import java.util.*;
912

10-
class List {
13+
class BasicList {
1114
int a[] = new int[10];
1215
int size, capacity;
1316

14-
List () { size = 0; capacity = 10; }
17+
BasicList() { size = 0; capacity = 10; }
1518

1619
void insert (int x) {
1720
if (size < capacity) {
@@ -41,7 +44,7 @@ int getAt(int i) {
4144
return -1;
4245
}
4346

44-
boolean eqTo(List l) {
47+
boolean eqTo(BasicList l) {
4548
if (size != l.size) {
4649
return false;
4750
}
@@ -55,8 +58,8 @@ boolean eqTo(List l) {
5558
return false;
5659
}
5760

58-
List copy() {
59-
List t = new List();
61+
BasicList copy() {
62+
BasicList t = new BasicList();
6063
int i = 0;
6164
t.size = size;
6265
while(i < size) {
@@ -67,18 +70,18 @@ List copy() {
6770
}
6871
}
6972

70-
public class test {
73+
public class symbolic_02_BasicList {
7174
public static void main(String[] args) {
7275
int i = 0;
73-
List l1 = new List();
76+
BasicList l1 = new BasicList();
7477
Scanner scanner = new Scanner(System.in);
7578
while (i < 2) {
7679
l1.insert(scanner.nextInt());
7780
i = i+1;
7881
}
7982
int x = scanner.nextInt();
8083

81-
List l2 = l1.copy();
84+
BasicList l2 = l1.copy();
8285
l1.insert(x);
8386
l1.delete(x);
8487
if (l2.eqTo(l1) == false) {
Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,21 @@
11
/*
2-
$KOMPILE_CMD -v java --symbolic-rules "symbolic-rule" --backend symbolic
2+
kompile -v java --symbolic-rules "symbolic-rule" --backend symbolic
33
4-
time timeout 300 krun --debug-info --color extended --directory="/home/andrei.arusoaie/work/java-semantics/tools/../semantics" --main-module=JAVA -cMainClass="ListItem(\"test\")" -cModelCheck="false" --output=pretty --parser="kj-parse-aggreg.sh" ../symbolic/main.java -cIN="ListItem(#symInt(e1)) ListItem(#symInt(e2)) ListItem(#symInt(x))" -cPC="true" --search
4+
time timeout 300 krun --debug-info --color extended --directory="." --main-module=JAVA \
5+
-cMainClass="ListItem(\"symbolic_03_OrderedList\")" \
6+
-cModelCheck="false" --output=pretty --parser="kj-parse-aggreg.sh" \
7+
../symbolic/symbolic_03_OrderedList.java \
8+
-cIN="ListItem(#symInt(e1)) ListItem(#symInt(e2)) ListItem(#symInt(x))" -cPC="true" --search
59
610
Expected output (unreached at the moment): 11 solutions, none of them containing error message.
711
*/
812
import java.util.*;
913

10-
class LList {
14+
class BasicList {
1115
int a[] = new int[10];
1216
int size, capacity;
1317

14-
LList () { size = 0; capacity = 10; }
18+
BasicList() { size = 0; capacity = 10; }
1519

1620
void insert (int x) {
1721
if (size < capacity) {
@@ -41,7 +45,7 @@ int getAt(int i) {
4145
return -1;
4246
}
4347

44-
boolean eqTo(LList l) {
48+
boolean eqTo(BasicList l) {
4549
if (size != l.size) {
4650
return false;
4751
}
@@ -55,8 +59,8 @@ boolean eqTo(LList l) {
5559
return false;
5660
}
5761

58-
LList copy() {
59-
LList t = new LList();
62+
BasicList copy() {
63+
BasicList t = new BasicList();
6064
int i = 0;
6165
t.size = size;
6266
while(i < size) {
@@ -67,7 +71,7 @@ LList copy() {
6771
}
6872
}
6973

70-
class OrderedList extends LList {
74+
class OrderedList extends BasicList {
7175

7276
OrderedList() {
7377
super();
@@ -93,18 +97,18 @@ OrderedList copy() {
9397
}
9498
}
9599

96-
public class main {
100+
public class symbolic_03_OrderedList {
97101
public static void main(String[] args) {
98102
int i = 0;
99-
LList l1 = new OrderedList();
103+
BasicList l1 = new OrderedList();
100104
Scanner scanner = new Scanner(System.in);
101105
while (i < 2) {
102106
l1.insert(scanner.nextInt());
103107
i = i+1;
104108
}
105109
int x = scanner.nextInt();
106110

107-
LList l2 = l1.copy();
111+
BasicList l2 = l1.copy();
108112
l1.insert(x);
109113
l1.delete(x);
110114
if (l2.eqTo(l1) == false) {

0 commit comments

Comments
 (0)