equal
deleted
inserted
replaced
22 qed "complex_inverse_eq_divide"; |
22 qed "complex_inverse_eq_divide"; |
23 |
23 |
24 Goal "(inverse(x::complex) = 0) = (x = 0)"; |
24 Goal "(inverse(x::complex) = 0) = (x = 0)"; |
25 by (auto_tac (claset(), |
25 by (auto_tac (claset(), |
26 simpset() addsimps [COMPLEX_INVERSE_ZERO])); |
26 simpset() addsimps [COMPLEX_INVERSE_ZERO])); |
27 by (rtac ccontr 1); |
|
28 by (blast_tac (claset() addDs [complex_inverse_not_zero]) 1); |
|
29 qed "complex_inverse_zero_iff"; |
27 qed "complex_inverse_zero_iff"; |
30 Addsimps [complex_inverse_zero_iff]; |
28 Addsimps [complex_inverse_zero_iff]; |
31 |
29 |
32 Goal "(x/y = 0) = (x=0 | y=(0::complex))"; |
30 Goal "(x/y = 0) = (x=0 | y=(0::complex))"; |
33 by (auto_tac (claset(), simpset() addsimps [complex_divide_def])); |
31 by (auto_tac (claset(), simpset() addsimps [complex_divide_def])); |
285 qed "complex_add_minus_iff"; |
283 qed "complex_add_minus_iff"; |
286 Addsimps [complex_add_minus_iff]; |
284 Addsimps [complex_add_minus_iff]; |
287 |
285 |
288 Goal "(-b = -a) = (b = (a::complex))"; |
286 Goal "(-b = -a) = (b = (a::complex))"; |
289 by Auto_tac; |
287 by Auto_tac; |
290 by (etac ( inj_complex_minus RS injD) 1); |
|
291 qed "complex_minus_eq_cancel"; |
288 qed "complex_minus_eq_cancel"; |
292 Addsimps [complex_minus_eq_cancel]; |
289 Addsimps [complex_minus_eq_cancel]; |
293 |
290 |
294 (*Distributive laws for literals*) |
291 (*Distributive laws for literals*) |
295 Addsimps (map (inst "w" "number_of ?v") |
292 Addsimps (map (inst "w" "number_of ?v") |