logo
In [1]:
import proveit
theory = proveit.Theory() # the theorem's theory
from proveit import defaults
from proveit import k, m
from proveit.numbers import Exp
from proveit.physics.quantum.QPE import (
    _alpha_m_evaluation, _ideal_phase_cond, _t_in_natural_pos, _two_pow_t_is_nat_pos, _phase_is_real)
In [2]:
%proving _alpha_ideal_case
With these allowed/disallowed theorem/theory presumptions (e.g., to avoid circular dependencies), we begin our proof of
_alpha_ideal_case:
(see dependencies)
In [3]:
defaults.assumptions = [_ideal_phase_cond]
defaults.assumptions:
In [4]:
_scaled_phase = _ideal_phase_cond.element
_scaled_phase:

Keep the $2$ in $2 \pi i$ from combining with powers of $2$:

In [5]:
Exp.change_simplification_directives(factor_numeric_rational=True)
In [6]:
_alpha_m_evaluation

Reduced through auto-simplification:

In [7]:
_alpha_ideal_01 = _alpha_m_evaluation.instantiate({m: _scaled_phase})
_alpha_ideal_01:  ⊢  
_alpha_ideal_case may now be readily provable (assuming required theorems are usable).  Simply execute "%qed".
In [8]:
%qed
proveit.physics.quantum.QPE._alpha_ideal_case has been proven.
Out[8]:
 step typerequirementsstatement
0deduction1  ⊢  
1instantiation2, 3, 4*  ⊢  
  :
2conjecture  ⊢  
 proveit.physics.quantum.QPE._alpha_m_evaluation
3assumption  ⊢  
4instantiation131, 5, 6  ⊢  
  : , : , :
5instantiation103, 7  ⊢  
  : , : , :
6instantiation140, 8, 9  ⊢  
  : , : , :
7instantiation131, 10, 11  ⊢  
  : , : , :
8instantiation140, 12, 13  ⊢  
  : , : , :
9instantiation42, 14, 15, 16  ⊢  
  : , : , : , :
10instantiation103, 17  ⊢  
  : , : , :
11instantiation18, 183, 184, 55, 19*  ⊢  
  : , : , :
12instantiation20, 55, 107, 106  ⊢  
  : , : , : , : , :
13instantiation131, 21, 22  ⊢  
  : , : , :
14instantiation103, 23  ⊢  
  : , : , :
15instantiation103, 23  ⊢  
  : , : , :
16instantiation119, 55  ⊢  
  :
17modus ponens24, 25  ⊢  
18conjecture  ⊢  
 proveit.numbers.summation.trivial_sum
19instantiation131, 26, 109  ⊢  
  : , : , :
20conjecture  ⊢  
 proveit.numbers.division.mult_frac_cancel_denom_left
21instantiation103, 27  ⊢  
  : , : , :
22instantiation103, 28  ⊢  
  : , : , :
23instantiation99, 55  ⊢  
  :
24instantiation29, 150  ⊢  
  : , : , : , : , : , :
25generalization30  ⊢  
26instantiation103, 31  ⊢  
  : , : , :
27instantiation103, 32  ⊢  
  : , : , :
28instantiation131, 33, 34  ⊢  
  : , : , :
29axiom  ⊢  
 proveit.core_expr_types.lambda_maps.lambda_substitution
30instantiation35, 36  ⊢  
  : , : , :
31instantiation131, 37, 38  ⊢  
  : , : , :
32instantiation39, 126  ⊢  
  :
33instantiation103, 109  ⊢  
  : , : , :
34instantiation99, 126  ⊢  
  :
35axiom  ⊢  
 proveit.core_expr_types.conditionals.conditional_substitution
36deduction40  ⊢  
37instantiation103, 41  ⊢  
  : , : , :
38instantiation42, 43, 44, 45  ⊢  
  : , : , : , :
39conjecture  ⊢  
 proveit.numbers.multiplication.elim_one_left
40instantiation131, 46, 47  ⊢  
  : , : , :
41conjecture  ⊢  
 proveit.numbers.negation.negated_zero
42conjecture  ⊢  
 proveit.logic.equality.four_chain_transitivity
43instantiation48, 153, 179, 154, 52, 49, 126, 53, 50, 55  ⊢  
  : , : , : , : , : , :
44instantiation51, 179, 194, 52, 126, 53, 55  ⊢  
  : , : , : , :
45instantiation54, 55, 126, 56  ⊢  
  : , : , :
46instantiation103, 57  ⊢  
  : , : , :
47instantiation58, 89, 59, 81, 60*  ⊢  
  : , : , :
48conjecture  ⊢  
 proveit.numbers.addition.disassociation
49instantiation165  ⊢  
  : , :
50conjecture  ⊢  
 proveit.numbers.number_sets.complex_numbers.zero_is_complex
51conjecture  ⊢  
 proveit.numbers.addition.elim_zero_any
52instantiation165  ⊢  
  : , :
53instantiation192, 169, 61  ⊢  
  : , : , :
54conjecture  ⊢  
 proveit.numbers.addition.subtraction.add_cancel_triple_32
55instantiation192, 169, 62  ⊢  
  : , : , :
56instantiation75  ⊢  
  :
57instantiation63, 64, 65, 66, 67, 68  ⊢  
  : , : , :
58conjecture  ⊢  
 proveit.numbers.exponentiation.product_of_complex_powers
59instantiation69, 108  ⊢  
  :
60instantiation131, 70, 71  ⊢  
  : , : , :
61instantiation192, 174, 72  ⊢  
  : , : , :
62instantiation192, 174, 73  ⊢  
  : , : , :
63conjecture  ⊢  
 proveit.core_expr_types.tuples.tuple_eq_via_elem_eq
64conjecture  ⊢  
 proveit.numbers.numerals.decimals.posnat2
65instantiation165  ⊢  
  : , :
66instantiation165  ⊢  
  : , :
67instantiation103, 74  ⊢  
  : , : , :
68instantiation75  ⊢  
  :
69conjecture  ⊢  
 proveit.numbers.negation.complex_closure
70instantiation103, 76  ⊢  
  : , : , :
71instantiation77, 78  ⊢  
  :
72instantiation192, 177, 187  ⊢  
  : , : , :
73instantiation192, 177, 191  ⊢  
  : , : , :
74instantiation103, 79  ⊢  
  : , : , :
75axiom  ⊢  
 proveit.logic.equality.equals_reflexivity
76instantiation80, 108, 81, 82  ⊢  
  : , :
77conjecture  ⊢  
 proveit.numbers.exponentiation.exp_zero_eq_one
78instantiation192, 169, 83  ⊢  
  : , : , :
79instantiation131, 84, 85  ⊢  
  : , : , :
80conjecture  ⊢  
 proveit.numbers.addition.subtraction.add_cancel_reverse
81instantiation140, 86, 87  ⊢  
  : , : , :
82instantiation120, 144, 194, 153, 88, 154, 157, 158, 163, 164, 156  ⊢  
  : , : , : , : , : , : , :
83instantiation192, 172, 89  ⊢  
  : , : , :
84instantiation103, 90  ⊢  
  : , : , :
85instantiation131, 91, 92  ⊢  
  : , : , :
86instantiation162, 143, 93  ⊢  
  : , :
87instantiation131, 94, 95  ⊢  
  : , : , :
88instantiation159  ⊢  
  : , : , :
89conjecture  ⊢  
 proveit.numbers.number_sets.real_numbers.e_is_real_pos
90instantiation152, 121, 179, 153, 122, 96, 154, 157, 158, 163, 164, 126, 156  ⊢  
  : , : , : , : , : , :
91instantiation131, 97, 98  ⊢  
  : , : , :
92instantiation99, 108  ⊢  
  :
93instantiation140, 100, 101  ⊢  
  : , : , :
94instantiation152, 194, 144, 153, 102, 154, 143, 163, 156, 164  ⊢  
  : , : , : , : , : , :
95instantiation152, 153, 179, 144, 154, 145, 102, 157, 158, 163, 156, 164  ⊢  
  : , : , : , : , : , :
96instantiation165  ⊢  
  : , :
97instantiation103, 104  ⊢  
  : , : , :
98instantiation105, 106, 107, 108, 109*  ⊢  
  : , : , :
99conjecture  ⊢  
 proveit.numbers.division.frac_one_denom
100instantiation162, 110, 164  ⊢  
  : , :
101instantiation152, 153, 179, 194, 154, 111, 163, 156, 164  ⊢  
  : , : , : , : , : , :
102instantiation159  ⊢  
  : , : , :
103axiom  ⊢  
 proveit.logic.equality.substitution
104instantiation131, 112, 113  ⊢  
  : , : , :
105conjecture  ⊢  
 proveit.numbers.division.frac_cancel_left
106instantiation192, 115, 114  ⊢  
  : , : , :
107instantiation192, 115, 116  ⊢  
  : , : , :
108instantiation140, 117, 118  ⊢  
  : , : , :
109instantiation119, 126  ⊢  
  :
110instantiation162, 163, 156  ⊢  
  : , :
111instantiation165  ⊢  
  : , :
112instantiation120, 153, 121, 194, 154, 122, 157, 158, 163, 164, 126, 156  ⊢  
  : , : , : , : , : , : , :
113instantiation123, 194, 124, 153, 125, 154, 126, 157, 158, 163, 164, 156  ⊢  
  : , : , : , : , : , :
114instantiation192, 128, 127  ⊢  
  : , : , :
115conjecture  ⊢  
 proveit.numbers.number_sets.complex_numbers.real_nonzero_within_complex_nonzero
116instantiation192, 128, 129  ⊢  
  : , : , :
117instantiation162, 143, 130  ⊢  
  : , :
118instantiation131, 132, 133  ⊢  
  : , : , :
119conjecture  ⊢  
 proveit.numbers.multiplication.elim_one_right
120conjecture  ⊢  
 proveit.numbers.multiplication.leftward_commutation
121conjecture  ⊢  
 proveit.numbers.numerals.decimals.nat4
122instantiation134  ⊢  
  : , : , : , :
123conjecture  ⊢  
 proveit.numbers.multiplication.association
124conjecture  ⊢  
 proveit.numbers.numerals.decimals.nat5
125instantiation135  ⊢  
  : , : , : , : , :
126instantiation192, 169, 136  ⊢  
  : , : , :
127instantiation192, 138, 137  ⊢  
  : , : , :
128conjecture  ⊢  
 proveit.numbers.number_sets.real_numbers.rational_nonzero_within_real_nonzero
129instantiation192, 138, 139  ⊢  
  : , : , :
130instantiation140, 141, 142  ⊢  
  : , : , :
131axiom  ⊢  
 proveit.logic.equality.equals_transitivity
132instantiation152, 194, 144, 153, 146, 154, 143, 163, 164, 156  ⊢  
  : , : , : , : , : , :
133instantiation152, 153, 179, 144, 154, 145, 146, 157, 158, 163, 164, 156  ⊢  
  : , : , : , : , : , :
134conjecture  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_4_typical_eq
135conjecture  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_5_typical_eq
136instantiation147, 148, 189  ⊢  
  : , : , :
137instantiation192, 149, 189  ⊢  
  : , : , :
138conjecture  ⊢  
 proveit.numbers.number_sets.rational_numbers.nonzero_int_within_rational_nonzero
139instantiation192, 149, 150  ⊢  
  : , : , :
140theorem  ⊢  
 proveit.logic.equality.sub_right_side_into
141instantiation162, 151, 156  ⊢  
  : , :
142instantiation152, 153, 179, 194, 154, 155, 163, 164, 156  ⊢  
  : , : , : , : , : , :
143instantiation162, 157, 158  ⊢  
  : , :
144conjecture  ⊢  
 proveit.numbers.numerals.decimals.nat3
145instantiation165  ⊢  
  : , :
146instantiation159  ⊢  
  : , : , :
147theorem  ⊢  
 proveit.logic.sets.inclusion.unfold_subset_eq
148instantiation160, 161  ⊢  
  : , :
149conjecture  ⊢  
 proveit.numbers.number_sets.integers.nat_pos_within_nonzero_int
150conjecture  ⊢  
 proveit.numbers.numerals.decimals.posnat1
151instantiation162, 163, 164  ⊢  
  : , :
152conjecture  ⊢  
 proveit.numbers.multiplication.disassociation
153axiom  ⊢  
 proveit.numbers.number_sets.natural_numbers.zero_in_nats
154conjecture  ⊢  
 proveit.core_expr_types.tuples.tuple_len_0_typical_eq
155instantiation165  ⊢  
  : , :
156instantiation192, 169, 166  ⊢  
  : , : , :
157instantiation192, 169, 167  ⊢  
  : , : , :
158instantiation192, 169, 168  ⊢  
  : , : , :
159conjecture  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_3_typical_eq
160theorem  ⊢  
 proveit.logic.sets.inclusion.relax_proper_subset
161conjecture  ⊢  
 proveit.numbers.number_sets.real_numbers.nat_pos_within_real
162conjecture  ⊢  
 proveit.numbers.multiplication.mult_complex_closure_bin
163conjecture  ⊢  
 proveit.numbers.number_sets.complex_numbers.i_is_complex
164instantiation192, 169, 170  ⊢  
  : , : , :
165conjecture  ⊢  
 proveit.numbers.numerals.decimals.tuple_len_2_typical_eq
166conjecture  ⊢  
 proveit.physics.quantum.QPE._phase_is_real
167instantiation192, 174, 171  ⊢  
  : , : , :
168instantiation192, 172, 173  ⊢  
  : , : , :
169conjecture  ⊢  
 proveit.numbers.number_sets.complex_numbers.real_within_complex
170instantiation192, 174, 175  ⊢  
  : , : , :
171instantiation192, 177, 176  ⊢  
  : , : , :
172conjecture  ⊢  
 proveit.numbers.number_sets.real_numbers.real_pos_within_real
173conjecture  ⊢  
 proveit.numbers.number_sets.real_numbers.pi_is_real_pos
174conjecture  ⊢  
 proveit.numbers.number_sets.real_numbers.rational_within_real
175instantiation192, 177, 178  ⊢  
  : , : , :
176instantiation192, 193, 179  ⊢  
  : , : , :
177conjecture  ⊢  
 proveit.numbers.number_sets.rational_numbers.int_within_rational
178instantiation192, 180, 181  ⊢  
  : , : , :
179conjecture  ⊢  
 proveit.numbers.numerals.decimals.nat2
180instantiation182, 183, 184  ⊢  
  : , :
181assumption  ⊢  
182conjecture  ⊢  
 proveit.numbers.number_sets.integers.int_interval_within_int
183conjecture  ⊢  
 proveit.numbers.number_sets.integers.zero_is_int
184instantiation185, 186, 187  ⊢  
  : , :
185conjecture  ⊢  
 proveit.numbers.addition.add_int_closure_bin
186instantiation192, 188, 189  ⊢  
  : , : , :
187instantiation190, 191  ⊢  
  :
188conjecture  ⊢  
 proveit.numbers.number_sets.integers.nat_pos_within_int
189conjecture  ⊢  
 proveit.physics.quantum.QPE._two_pow_t_is_nat_pos
190conjecture  ⊢  
 proveit.numbers.negation.int_closure
191instantiation192, 193, 194  ⊢  
  : , : , :
192theorem  ⊢  
 proveit.logic.sets.inclusion.superset_membership_from_proper_subset
193conjecture  ⊢  
 proveit.numbers.number_sets.integers.nat_within_int
194theorem  ⊢  
 proveit.numbers.numerals.decimals.nat1
*equality replacement requirements