float_rmat_of_quat_ensures_2.json 23.6 KB
Newer Older
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
1
[ { "header": "Definition", "tactic": "Wp.unfold", "params": {},
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
2
    "select": { "select": "clause-goal",
3
                "target": "let a_0 = (shiftfield_F9_FloatRMat_m rm_0) in\nlet r_0 = Mf32_1[(shiftfield_F7_FloatQuat_qi q_0)] in\nlet r_1 = (2*r_0*r_0) in\nlet r_2 = Mf32_1[(shiftfield_F7_FloatQuat_qx q_0)] in\nlet r_3 = Mf32_1[(shiftfield_F7_FloatQuat_qz q_0)] in\nlet r_4 = (2*r_0*r_3) in\nlet r_5 = Mf32_1[(shiftfield_F7_FloatQuat_qy q_0)] in\nlet r_6 = (2*r_2*r_5) in\nlet r_7 = (2*r_0*r_5) in\nlet r_8 = (2*r_2*r_3) in\nlet r_9 = (2*r_0*r_2) in\nlet r_10 = (2*r_5*r_3) in\n(P_rotation_matrix\n  (L_l_RMat_of_FloatRMat\n    Mf32_1[(shift_float32 a_0 0)->r_1+(2*r_2*r_2)-1][(shift_float32 a_0 1)\n      ->r_4+r_6][(shift_float32 a_0 2)->r_8-r_7][(shift_float32 a_0 3)\n      ->r_6-r_4][(shift_float32 a_0 4)->r_1+(2*r_5*r_5)-1]\n      [(shift_float32 a_0 5)->r_9+r_10][(shift_float32 a_0 6)->r_7+r_8]\n      [(shift_float32 a_0 7)->r_10-r_9][(shift_float32 a_0 8)\n      ->r_1+(2*r_3*r_3)-1] rm_0))",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
4 5 6 7 8 9
                "pattern": "P_rotation_matrixL_l_RMat_of_FloatRMat" },
    "children": { "Unfold 'P_rotation_matrix'": [ { "header": "Definition",
                                                    "tactic": "Wp.unfold",
                                                    "params": {},
                                                    "select": { "select": "inside-goal",
                                                                "occur": 0,
10
                                                                "target": "let a_0 = (shiftfield_F9_FloatRMat_m rm_0) in\nlet r_0 = Mf32_1[(shiftfield_F7_FloatQuat_qi q_0)] in\nlet r_1 = (2*r_0*r_0) in\nlet r_2 = Mf32_1[(shiftfield_F7_FloatQuat_qx q_0)] in\nlet r_3 = Mf32_1[(shiftfield_F7_FloatQuat_qz q_0)] in\nlet r_4 = (2*r_0*r_3) in\nlet r_5 = Mf32_1[(shiftfield_F7_FloatQuat_qy q_0)] in\nlet r_6 = (2*r_2*r_5) in\nlet r_7 = (2*r_0*r_5) in\nlet r_8 = (2*r_2*r_3) in\nlet r_9 = (2*r_0*r_2) in\nlet r_10 = (2*r_5*r_3) in\n(L_transpose\n  (L_l_RMat_of_FloatRMat\n    Mf32_1[(shift_float32 a_0 0)->r_1+(2*r_2*r_2)-1][(shift_float32 a_0 1)\n      ->r_4+r_6][(shift_float32 a_0 2)->r_8-r_7][(shift_float32 a_0 3)\n      ->r_6-r_4][(shift_float32 a_0 4)->r_1+(2*r_5*r_5)-1]\n      [(shift_float32 a_0 5)->r_9+r_10][(shift_float32 a_0 6)->r_7+r_8]\n      [(shift_float32 a_0 7)->r_10-r_9][(shift_float32 a_0 8)\n      ->r_1+(2*r_3*r_3)-1] rm_0))",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
11 12 13 14 15 16 17 18
                                                                "pattern": "L_transposeL_l_RMat_of_FloatRMat" },
                                                    "children": { "Unfold 'L_transpose'": 
                                                                    [ { "header": "Definition",
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
                                                                    { "select": "inside-goal",
                                                                    "occur": 0,
19
                                                                    "target": "let a_0 = (shiftfield_F9_FloatRMat_m rm_0) in\nlet r_0 = Mf32_1[(shiftfield_F7_FloatQuat_qi q_0)] in\nlet r_1 = (2*r_0*r_0) in\nlet r_2 = Mf32_1[(shiftfield_F7_FloatQuat_qx q_0)] in\nlet r_3 = Mf32_1[(shiftfield_F7_FloatQuat_qz q_0)] in\nlet r_4 = (2*r_0*r_3) in\nlet r_5 = Mf32_1[(shiftfield_F7_FloatQuat_qy q_0)] in\nlet r_6 = (2*r_2*r_5) in\nlet r_7 = (2*r_0*r_5) in\nlet r_8 = (2*r_2*r_3) in\nlet r_9 = (2*r_0*r_2) in\nlet r_10 = (2*r_5*r_3) in\nlet a_1 =\n    (L_l_RMat_of_FloatRMat\n      Mf32_1[(shift_float32 a_0 0)->r_1+(2*r_2*r_2)-1][(shift_float32 a_0 1)\n        ->r_4+r_6][(shift_float32 a_0 2)->r_8-r_7][(shift_float32 a_0 3)\n        ->r_6-r_4][(shift_float32 a_0 4)->r_1+(2*r_5*r_5)-1]\n        [(shift_float32 a_0 5)->r_9+r_10][(shift_float32 a_0 6)->r_7+r_8]\n        [(shift_float32 a_0 7)->r_10-r_9][(shift_float32 a_0 8)\n        ->r_1+(2*r_3*r_3)-1] rm_0) in\n(L_mult_RealRMat a_1\n  {\n     a_1 with\n     F12_RealRMat_s_a01 = a_1.F12_RealRMat_s_a10 ;\n     F12_RealRMat_s_a02 = a_1.F12_RealRMat_s_a20 ;\n     F12_RealRMat_s_a10 = a_1.F12_RealRMat_s_a01 ;\n     F12_RealRMat_s_a12 = a_1.F12_RealRMat_s_a21 ;\n     F12_RealRMat_s_a20 = a_1.F12_RealRMat_s_a02 ;\n     F12_RealRMat_s_a21 = a_1.F12_RealRMat_s_a12\n  })",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
                                                                    "pattern": "L_mult_RealRMatL_l_RMat_of_FloatRMat" },
                                                                    "children": 
                                                                    { "Unfold 'L_mult_RealRMat'": 
                                                                    [ { "header": "Definition",
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
                                                                    { "select": "inside-goal",
                                                                    "occur": 0,
                                                                    "target": "L_id_rmat",
                                                                    "pattern": "L_id_rmat" },
                                                                    "children": 
                                                                    { "Unfold 'L_id_rmat'": 
                                                                    [ { "header": "Definition",
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
37 38 39
                                                                    { "select": "clause-goal",
                                                                    "target": "let a_0 = (shiftfield_F9_FloatRMat_m rm_0) in\nlet r_0 = Mf32_1[(shiftfield_F7_FloatQuat_qi q_0)] in\nlet r_1 = (2*r_0*r_0) in\nlet r_2 = Mf32_1[(shiftfield_F7_FloatQuat_qx q_0)] in\nlet r_3 = Mf32_1[(shiftfield_F7_FloatQuat_qz q_0)] in\nlet r_4 = (2*r_0*r_3) in\nlet r_5 = Mf32_1[(shiftfield_F7_FloatQuat_qy q_0)] in\nlet r_6 = (2*r_2*r_5) in\nlet r_7 = (2*r_0*r_5) in\nlet r_8 = (2*r_2*r_3) in\nlet r_9 = (2*r_0*r_2) in\nlet r_10 = (2*r_5*r_3) in\nlet a_1 =\n    (L_l_RMat_of_FloatRMat\n      Mf32_1[(shift_float32 a_0 0)->r_1+(2*r_2*r_2)-1][(shift_float32 a_0 1)\n        ->r_4+r_6][(shift_float32 a_0 2)->r_8-r_7][(shift_float32 a_0 3)\n        ->r_6-r_4][(shift_float32 a_0 4)->r_1+(2*r_5*r_5)-1]\n        [(shift_float32 a_0 5)->r_9+r_10][(shift_float32 a_0 6)->r_7+r_8]\n        [(shift_float32 a_0 7)->r_10-r_9][(shift_float32 a_0 8)\n        ->r_1+(2*r_3*r_3)-1] rm_0) in\nlet r_11 = a_1.F12_RealRMat_s_a00 in\nlet r_12 = a_1.F12_RealRMat_s_a01 in\nlet r_13 = a_1.F12_RealRMat_s_a02 in\nlet r_14 = a_1.F12_RealRMat_s_a10 in\nlet r_15 = a_1.F12_RealRMat_s_a11 in\nlet r_16 = a_1.F12_RealRMat_s_a12 in\nlet r_17 = ((r_11*r_14)+(r_12*r_15)+(r_13*r_16)) in\nlet r_18 = a_1.F12_RealRMat_s_a20 in\nlet r_19 = a_1.F12_RealRMat_s_a21 in\nlet r_20 = a_1.F12_RealRMat_s_a22 in\nlet r_21 = ((r_11*r_18)+(r_12*r_19)+(r_13*r_20)) in\nlet r_22 = ((r_14*r_18)+(r_15*r_19)+(r_16*r_20)) in\n(EqS12_RealRMat_s\n  {\n     F12_RealRMat_s_a00 = (r_11*r_11)+(r_12*r_12)+(r_13*r_13) ;\n     F12_RealRMat_s_a01 = r_17 ;\n     F12_RealRMat_s_a02 = r_21 ;\n     F12_RealRMat_s_a10 = r_17 ;\n     F12_RealRMat_s_a11 = (r_14*r_14)+(r_15*r_15)+(r_16*r_16) ;\n     F12_RealRMat_s_a12 = r_22 ;\n     F12_RealRMat_s_a20 = r_21 ;\n     F12_RealRMat_s_a21 = r_22 ;\n     F12_RealRMat_s_a22 = (r_18*r_18)+(r_19*r_19)+(r_20*r_20)\n  }\n  {\n     F12_RealRMat_s_a00 = 1 ;\n     F12_RealRMat_s_a01 = 0 ;\n     F12_RealRMat_s_a02 = 0 ;\n     F12_RealRMat_s_a10 = 0 ;\n     F12_RealRMat_s_a11 = 1 ;\n     F12_RealRMat_s_a12 = 0 ;\n     F12_RealRMat_s_a20 = 0 ;\n     F12_RealRMat_s_a21 = 0 ;\n     F12_RealRMat_s_a22 = 1\n  })",
                                                                    "pattern": "EqS12_RealRMat_s{RealRMat_s}{RealRMat_s}" },
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
40
                                                                    "children": 
41
                                                                    { "Unfold 'EqS12_RealRMat_s'": 
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
42 43 44 45 46 47
                                                                    [ { "header": "Definition",
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
                                                                    { "select": "inside-goal",
                                                                    "occur": 0,
48
                                                                    "target": "let a_0 = (shiftfield_F9_FloatRMat_m rm_0) in\nlet r_0 = Mf32_1[(shiftfield_F7_FloatQuat_qi q_0)] in\nlet r_1 = (2*r_0*r_0) in\nlet r_2 = Mf32_1[(shiftfield_F7_FloatQuat_qx q_0)] in\nlet r_3 = Mf32_1[(shiftfield_F7_FloatQuat_qz q_0)] in\nlet r_4 = (2*r_0*r_3) in\nlet r_5 = Mf32_1[(shiftfield_F7_FloatQuat_qy q_0)] in\nlet r_6 = (2*r_2*r_5) in\nlet r_7 = (2*r_0*r_5) in\nlet r_8 = (2*r_2*r_3) in\nlet r_9 = (2*r_0*r_2) in\nlet r_10 = (2*r_5*r_3) in\n(L_l_RMat_of_FloatRMat\n  Mf32_1[(shift_float32 a_0 0)->r_1+(2*r_2*r_2)-1][(shift_float32 a_0 1)\n    ->r_4+r_6][(shift_float32 a_0 2)->r_8-r_7][(shift_float32 a_0 3)\n    ->r_6-r_4][(shift_float32 a_0 4)->r_1+(2*r_5*r_5)-1]\n    [(shift_float32 a_0 5)->r_9+r_10][(shift_float32 a_0 6)->r_7+r_8]\n    [(shift_float32 a_0 7)->r_10-r_9][(shift_float32 a_0 8)\n    ->r_1+(2*r_3*r_3)-1] rm_0)",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
49 50 51
                                                                    "pattern": "L_l_RMat_of_FloatRMat[=]$rm[=]shift_float32" },
                                                                    "children": 
                                                                    { "Unfold 'L_l_RMat_of_FloatRMat'": 
52 53
                                                                    [ { "header": "Split",
                                                                    "tactic": "Wp.split",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
54 55
                                                                    "params": {},
                                                                    "select": 
56 57 58
                                                                    { "select": "clause-goal",
                                                                    "target": "let r_0 = Mf32_1[(shiftfield_F7_FloatQuat_qi q_0)] in\nlet r_1 = Mf32_1[(shiftfield_F7_FloatQuat_qx q_0)] in\nlet r_2 = (2*r_0*r_1) in\nlet r_3 = Mf32_1[(shiftfield_F7_FloatQuat_qy q_0)] in\nlet r_4 = Mf32_1[(shiftfield_F7_FloatQuat_qz q_0)] in\nlet r_5 = (2*r_3*r_4) in\nlet r_6 = (r_2+r_5) in\nlet r_7 = (2*r_0*r_0) in\nlet r_8 = (r_7+(2*r_3*r_3)-1) in\nlet r_9 = (2*r_0*r_4) in\nlet r_10 = (2*r_1*r_3) in\nlet r_11 = (r_10-r_9) in\nlet r_12 = (2*r_0*r_3) in\nlet r_13 = (2*r_1*r_4) in\nlet r_14 = (r_12+r_13) in\nlet r_15 = (r_7+(2*r_4*r_4)-1) in\nlet r_16 = (r_5-r_2) in\nlet r_17 = (r_9+r_10) in\nlet r_18 = (r_7+(2*r_1*r_1)-1) in\nlet r_19 = (r_13-r_12) in\n(((r_6*r_6)+(r_8*r_8)+(r_11*r_11))=1)\n/\\ (((r_14*r_14)+(r_15*r_15)+(r_16*r_16))=1)\n/\\ (((r_17*r_17)+(r_18*r_18)+(r_19*r_19))=1)\n/\\ (((r_6*r_15)+(r_14*r_11)+(r_8*r_16))=0)\n/\\ (((r_6*r_19)+(r_17*r_8)+(r_18*r_11))=0)\n/\\ (((r_14*r_18)+(r_17*r_16)+(r_15*r_19))=0)",
                                                                    "pattern": "&======+1+1+1+0+0+0*************" },
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
59
                                                                    "children": 
60
                                                                    { "Goal 1/6": 
61 62
                                                                    [ { "prover": "Z3:4.8.6:noBV",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
63
                                                                    "time": 10. },
64 65
                                                                    { "prover": "Z3:4.8.6:counterexamples",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
66
                                                                    "time": 10. },
67 68
                                                                    { "prover": "Z3:4.8.6",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
69
                                                                    "time": 10. },
70 71 72 73
                                                                    { "prover": "Coq:8.12.2",
                                                                    "verdict": "unknown" },
                                                                    { "prover": "CVC4:1.9-prerelease:strings+counterexamples",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
74
                                                                    "time": 10. },
75 76
                                                                    { "prover": "Alt-Ergo:2.3.3",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
77
                                                                    "time": 10. },
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
                                                                    { "header": "Definition",
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
                                                                    { "select": "inside-step",
                                                                    "at": 2,
                                                                    "kind": "have",
                                                                    "occur": 0,
                                                                    "target": "(P_unary_quaternion Mf32_1 q_0)",
                                                                    "pattern": "P_unary_quaternion$Mf32$q" },
                                                                    "children": 
                                                                    { "Unfold 'P_unary_quaternion'": 
                                                                    [ { "prover": "Coq:8.12.2",
                                                                    "verdict": "unknown" },
                                                                    { "prover": "CVC4:1.9-prerelease:strings+counterexamples",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
93
                                                                    "verdict": "valid",
94
                                                                    "time": 1.32 } ] } } ],
95
                                                                    "Goal 2/6": 
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
96 97
                                                                    [ { "prover": "Alt-Ergo:2.3.3",
                                                                    "verdict": "valid",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
98
                                                                    "time": 13.0668,
99 100
                                                                    "steps": 134 } ],
                                                                    "Goal 3/6": 
101 102
                                                                    [ { "prover": "Z3:4.8.6:noBV",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
103
                                                                    "time": 10. },
104 105
                                                                    { "prover": "Z3:4.8.6:counterexamples",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
106
                                                                    "time": 10. },
107 108
                                                                    { "prover": "Z3:4.8.6",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
109
                                                                    "time": 10. },
110 111 112 113
                                                                    { "prover": "Coq:8.12.2",
                                                                    "verdict": "unknown" },
                                                                    { "prover": "CVC4:1.9-prerelease:strings+counterexamples",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
114
                                                                    "time": 10. },
115 116
                                                                    { "prover": "Alt-Ergo:2.3.3",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
117
                                                                    "time": 10. },
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
                                                                    { "header": "Definition",
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
                                                                    { "select": "inside-step",
                                                                    "at": 2,
                                                                    "kind": "have",
                                                                    "occur": 0,
                                                                    "target": "(P_unary_quaternion Mf32_1 q_0)",
                                                                    "pattern": "P_unary_quaternion$Mf32$q" },
                                                                    "children": 
                                                                    { "Unfold 'P_unary_quaternion'": 
                                                                    [ { "prover": "Coq:8.12.2",
                                                                    "verdict": "unknown" },
                                                                    { "prover": "CVC4:1.9-prerelease:strings+counterexamples",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
133
                                                                    "verdict": "valid",
134
                                                                    "time": 1.01 } ] } } ],
135
                                                                    "Goal 4/6": 
136 137
                                                                    [ { "prover": "Z3:4.8.6:noBV",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
138
                                                                    "time": 10. },
139 140
                                                                    { "prover": "Z3:4.8.6:counterexamples",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
141
                                                                    "time": 10. },
142 143
                                                                    { "prover": "Z3:4.8.6",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
144
                                                                    "time": 10. },
145 146 147 148
                                                                    { "prover": "Coq:8.12.2",
                                                                    "verdict": "unknown" },
                                                                    { "prover": "CVC4:1.9-prerelease:strings+counterexamples",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
149
                                                                    "time": 10. },
150 151
                                                                    { "prover": "Alt-Ergo:2.3.3",
                                                                    "verdict": "timeout",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
152
                                                                    "time": 10. },
153 154 155 156 157 158 159 160 161 162 163 164 165 166 167
                                                                    { "header": "Definition",
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
                                                                    { "select": "inside-step",
                                                                    "at": 2,
                                                                    "kind": "have",
                                                                    "occur": 0,
                                                                    "target": "(P_unary_quaternion Mf32_1 q_0)",
                                                                    "pattern": "P_unary_quaternion$Mf32$q" },
                                                                    "children": 
                                                                    { "Unfold 'P_unary_quaternion'": 
                                                                    [ { "prover": "Coq:8.12.2",
                                                                    "verdict": "unknown" },
                                                                    { "prover": "CVC4:1.9-prerelease:strings+counterexamples",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
168
                                                                    "verdict": "valid",
169
                                                                    "time": 1.37 } ] } } ],
170
                                                                    "Goal 5/6": 
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
171 172
                                                                    [ { "prover": "Alt-Ergo:2.3.3",
                                                                    "verdict": "valid",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
173
                                                                    "time": 18.5909,
174 175
                                                                    "steps": 138 } ],
                                                                    "Goal 6/6": 
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
176 177 178 179
                                                                    [ { "header": "Definition",
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
180 181 182
                                                                    { "select": "inside-step",
                                                                    "at": 36,
                                                                    "kind": "have",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
183
                                                                    "occur": 0,
184 185
                                                                    "target": "(shift_float32 (shiftfield_F9_FloatRMat_m rm_0) 7)",
                                                                    "pattern": "shift_float32shiftfield_F9_FloatRMat_m" },
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
186
                                                                    "children": 
187
                                                                    { "Unfold 'shift_float32'": 
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
188 189
                                                                    [ { "prover": "Alt-Ergo:2.3.3",
                                                                    "verdict": "valid",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
190
                                                                    "time": 11.9438,
191
                                                                    "steps": 138 } ] } } ] } } ] } } ] } } ] } } ] } } ] } } ] } } ]