lemma_quat_of_rmat_ortho.json 10.7 KB
Newer Older
1
[ { "header": "Definition", "tactic": "Wp.unfold", "params": {},
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
2 3 4
    "select": { "select": "inside-goal", "occur": 0,
                "target": "(L_l_RMat_of_FloatQuat_1_ Mf32_0 q_0)",
                "pattern": "L_l_RMat_of_FloatQuat_1_$Mf32$q" },
5
    "children": { "Unfold 'L_l_RMat_of_FloatQuat_1_'": [ { "header": "Definition",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
6 7 8 9 10 11 12 13 14 15
                                                           "tactic": "Wp.unfold",
                                                           "params": {},
                                                           "select": 
                                                             { "select": "clause-step",
                                                               "at": 0,
                                                               "kind": "have",
                                                               "target": "(P_unary_quaternion_1_ Mf32_0 q_0)",
                                                               "pattern": "P_unary_quaternion_1_$Mf32$q" },
                                                           "children": 
                                                             { "Unfold 'P_unary_quaternion_1_'": 
16
                                                                 [ { "header": "Definition",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
17 18 19 20
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
                                                                    { "select": "clause-goal",
21
                                                                    "target": "let r_0 = Mf32_0[(shiftfield_F7_FloatQuat_qy q_0)] in\nlet r_1 = (r_0*r_0) in\nlet r_2 = (-r_1) in\nlet r_3 = Mf32_0[(shiftfield_F7_FloatQuat_qz q_0)] in\nlet r_4 = (r_3*r_3) in\nlet r_5 = (-r_4) in\nlet r_6 = Mf32_0[(shiftfield_F7_FloatQuat_qi q_0)] in\nlet r_7 = (r_6*r_6) in\nlet r_8 = Mf32_0[(shiftfield_F7_FloatQuat_qx q_0)] in\nlet r_9 = (r_8*r_8) in\nlet r_10 = (r_6*r_3) in\nlet r_11 = (r_8*r_0) in\nlet r_12 = (r_6*r_0) in\nlet r_13 = (r_8*r_3) in\nlet r_14 = (-r_9) in\nlet r_15 = (r_6*r_8) in\nlet r_16 = (r_0*r_3) in\n(P_rotation_matrix\n  {\n     F13_RealRMat_s_a00 = r_7+r_9-r_1-r_4 ;\n     F13_RealRMat_s_a01 = 2*(r_11-r_10) ;\n     F13_RealRMat_s_a02 = 2*(r_12+r_13) ;\n     F13_RealRMat_s_a10 = 2*(r_10+r_11) ;\n     F13_RealRMat_s_a11 = r_7+r_1-r_9-r_4 ;\n     F13_RealRMat_s_a12 = 2*(r_16-r_15) ;\n     F13_RealRMat_s_a20 = 2*(r_13-r_12) ;\n     F13_RealRMat_s_a21 = 2*(r_15+r_16) ;\n     F13_RealRMat_s_a22 = r_7+r_4-r_9-r_1\n  })",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
22 23 24
                                                                    "pattern": "P_rotation_matrix{RealRMat_s}+**" },
                                                                    "children": 
                                                                    { "Unfold 'P_rotation_matrix'": 
25
                                                                    [ { "header": "Definition",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
26 27 28 29 30 31 32 33 34
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
                                                                    { "select": "inside-goal",
                                                                    "occur": 0,
                                                                    "target": "L_id_rmat",
                                                                    "pattern": "L_id_rmat" },
                                                                    "children": 
                                                                    { "Unfold 'L_id_rmat'": 
35
                                                                    [ { "header": "Definition",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
36 37 38 39 40
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
                                                                    { "select": "inside-goal",
                                                                    "occur": 0,
41
                                                                    "target": "let r_0 = Mf32_0[(shiftfield_F7_FloatQuat_qy q_0)] in\nlet r_1 = (r_0*r_0) in\nlet r_2 = (-r_1) in\nlet r_3 = Mf32_0[(shiftfield_F7_FloatQuat_qz q_0)] in\nlet r_4 = (r_3*r_3) in\nlet r_5 = (-r_4) in\nlet r_6 = Mf32_0[(shiftfield_F7_FloatQuat_qi q_0)] in\nlet r_7 = (r_6*r_6) in\nlet r_8 = Mf32_0[(shiftfield_F7_FloatQuat_qx q_0)] in\nlet r_9 = (r_8*r_8) in\nlet r_10 = (r_6*r_3) in\nlet r_11 = (r_8*r_0) in\nlet r_12 = (r_6*r_0) in\nlet r_13 = (r_8*r_3) in\nlet r_14 = (-r_9) in\nlet r_15 = (r_6*r_8) in\nlet r_16 = (r_0*r_3) in\n(L_transpose\n  {\n     F13_RealRMat_s_a00 = r_7+r_9-r_1-r_4 ;\n     F13_RealRMat_s_a01 = 2*(r_11-r_10) ;\n     F13_RealRMat_s_a02 = 2*(r_12+r_13) ;\n     F13_RealRMat_s_a10 = 2*(r_10+r_11) ;\n     F13_RealRMat_s_a11 = r_7+r_1-r_9-r_4 ;\n     F13_RealRMat_s_a12 = 2*(r_16-r_15) ;\n     F13_RealRMat_s_a20 = 2*(r_13-r_12) ;\n     F13_RealRMat_s_a21 = 2*(r_15+r_16) ;\n     F13_RealRMat_s_a22 = r_7+r_4-r_9-r_1\n  })",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
42 43 44
                                                                    "pattern": "L_transpose{RealRMat_s}+***+***+" },
                                                                    "children": 
                                                                    { "Unfold 'L_transpose'": 
45
                                                                    [ { "header": "Definition",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
46 47 48 49 50
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
                                                                    { "select": "inside-goal",
                                                                    "occur": 0,
51
                                                                    "target": "let r_0 = Mf32_0[(shiftfield_F7_FloatQuat_qy q_0)] in\nlet r_1 = (r_0*r_0) in\nlet r_2 = (-r_1) in\nlet r_3 = Mf32_0[(shiftfield_F7_FloatQuat_qz q_0)] in\nlet r_4 = (r_3*r_3) in\nlet r_5 = (-r_4) in\nlet r_6 = Mf32_0[(shiftfield_F7_FloatQuat_qi q_0)] in\nlet r_7 = (r_6*r_6) in\nlet r_8 = Mf32_0[(shiftfield_F7_FloatQuat_qx q_0)] in\nlet r_9 = (r_8*r_8) in\nlet r_10 = (r_7+r_9-r_1-r_4) in\nlet r_11 = (r_6*r_3) in\nlet r_12 = (r_8*r_0) in\nlet r_13 = (2*(r_12-r_11)) in\nlet r_14 = (r_6*r_0) in\nlet r_15 = (r_8*r_3) in\nlet r_16 = (2*(r_14+r_15)) in\nlet r_17 = (2*(r_11+r_12)) in\nlet r_18 = (-r_9) in\nlet r_19 = (r_7+r_1-r_9-r_4) in\nlet r_20 = (r_6*r_8) in\nlet r_21 = (r_0*r_3) in\nlet r_22 = (2*(r_21-r_20)) in\nlet r_23 = (2*(r_15-r_14)) in\nlet r_24 = (2*(r_20+r_21)) in\nlet r_25 = (r_7+r_4-r_9-r_1) in\n(L_mult_RealRMat\n  {\n     F13_RealRMat_s_a00 = r_10 ;\n     F13_RealRMat_s_a01 = r_13 ;\n     F13_RealRMat_s_a02 = r_16 ;\n     F13_RealRMat_s_a10 = r_17 ;\n     F13_RealRMat_s_a11 = r_19 ;\n     F13_RealRMat_s_a12 = r_22 ;\n     F13_RealRMat_s_a20 = r_23 ;\n     F13_RealRMat_s_a21 = r_24 ;\n     F13_RealRMat_s_a22 = r_25\n  }\n  {\n     F13_RealRMat_s_a00 = r_10 ;\n     F13_RealRMat_s_a01 = r_17 ;\n     F13_RealRMat_s_a02 = r_23 ;\n     F13_RealRMat_s_a10 = r_13 ;\n     F13_RealRMat_s_a11 = r_19 ;\n     F13_RealRMat_s_a12 = r_24 ;\n     F13_RealRMat_s_a20 = r_16 ;\n     F13_RealRMat_s_a21 = r_22 ;\n     F13_RealRMat_s_a22 = r_25\n  })",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
52 53 54
                                                                    "pattern": "L_mult_RealRMat{RealRMat_s}{RealRMat_s}" },
                                                                    "children": 
                                                                    { "Unfold 'L_mult_RealRMat'": 
55
                                                                    [ { "header": "Definition",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
56 57 58 59
                                                                    "tactic": "Wp.unfold",
                                                                    "params": {},
                                                                    "select": 
                                                                    { "select": "clause-goal",
60 61
                                                                    "target": "let r_0 = Mf32_0[(shiftfield_F7_FloatQuat_qi q_0)] in\nlet r_1 = Mf32_0[(shiftfield_F7_FloatQuat_qy q_0)] in\nlet r_2 = (r_0*r_1) in\nlet r_3 = Mf32_0[(shiftfield_F7_FloatQuat_qx q_0)] in\nlet r_4 = Mf32_0[(shiftfield_F7_FloatQuat_qz q_0)] in\nlet r_5 = (r_3*r_4) in\nlet r_6 = (r_2+r_5) in\nlet r_7 = (r_0*r_4) in\nlet r_8 = (r_3*r_1) in\nlet r_9 = (r_8-r_7) in\nlet r_10 = (r_1*r_1) in\nlet r_11 = (-r_10) in\nlet r_12 = (r_4*r_4) in\nlet r_13 = (-r_12) in\nlet r_14 = (r_0*r_0) in\nlet r_15 = (r_3*r_3) in\nlet r_16 = (r_14+r_15-r_10-r_12) in\nlet r_17 = (r_0*r_3) in\nlet r_18 = (r_1*r_4) in\nlet r_19 = (r_18-r_17) in\nlet r_20 = (r_7+r_8) in\nlet r_21 = (-r_15) in\nlet r_22 = (r_14+r_10-r_15-r_12) in\nlet r_23 = ((4*r_6*r_19)+(2*r_20*r_16)+(2*r_9*r_22)) in\nlet r_24 = (r_17+r_18) in\nlet r_25 = (r_14+r_12-r_15-r_10) in\nlet r_26 = (r_5-r_2) in\nlet r_27 = ((4*r_24*r_9)+(2*r_6*r_25)+(2*r_26*r_16)) in\nlet r_28 = ((4*r_20*r_26)+(2*r_24*r_22)+(2*r_19*r_25)) in\n(EqS13_RealRMat_s\n  {\n     F13_RealRMat_s_a00 = (4*r_6*r_6)+(4*r_9*r_9)+(r_16*r_16) ;\n     F13_RealRMat_s_a01 = r_23 ;\n     F13_RealRMat_s_a02 = r_27 ;\n     F13_RealRMat_s_a10 = r_23 ;\n     F13_RealRMat_s_a11 = (4*r_20*r_20)+(4*r_19*r_19)+(r_22*r_22) ;\n     F13_RealRMat_s_a12 = r_28 ;\n     F13_RealRMat_s_a20 = r_27 ;\n     F13_RealRMat_s_a21 = r_28 ;\n     F13_RealRMat_s_a22 = (4*r_24*r_24)+(4*r_26*r_26)+(r_25*r_25)\n  }\n  {\n     F13_RealRMat_s_a00 = 1 ;\n     F13_RealRMat_s_a01 = 0 ;\n     F13_RealRMat_s_a02 = 0 ;\n     F13_RealRMat_s_a10 = 0 ;\n     F13_RealRMat_s_a11 = 1 ;\n     F13_RealRMat_s_a12 = 0 ;\n     F13_RealRMat_s_a20 = 0 ;\n     F13_RealRMat_s_a21 = 0 ;\n     F13_RealRMat_s_a22 = 1\n  })",
                                                                    "pattern": "EqS13_RealRMat_s{RealRMat_s}{RealRMat_s}" },
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
62
                                                                    "children": 
63
                                                                    { "Unfold 'EqS13_RealRMat_s'": 
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
64 65
                                                                    [ { "prover": "Z3:4.8.6:counterexamples",
                                                                    "verdict": "valid",
POLLIEN Baptiste's avatar
POLLIEN Baptiste committed
66
                                                                    "time": 0.03,
67
                                                                    "steps": 51791 } ] } } ] } } ] } } ] } } ] } } ] } } ] } } ]