Metamath Proof Explorer


Theorem bdaypw2n0sbnd

Description: Upper bound for the birthday of a proper fraction of a power of two. This is actually a strict equality when A is odd, but we do not need this for the rest of our development. (Contributed by Scott Fenton, 22-Feb-2026)

Ref Expression
Assertion bdaypw2n0sbnd Could not format assertion : No typesetting found for |- ( ( A e. NN0_s /\ N e. NN0_s /\ A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) with typecode |-

Proof

Step Hyp Ref Expression
1 n0s0suc N 0s N = 0 s x 0s N = x + s 1 s
2 n0slt1e0 A 0s A < s 1 s A = 0 s
3 oveq1 A = 0 s A / su 1 s = 0 s / su 1 s
4 0sno 0 s No
5 divs1 0 s No 0 s / su 1 s = 0 s
6 4 5 ax-mp 0 s / su 1 s = 0 s
7 3 6 eqtrdi A = 0 s A / su 1 s = 0 s
8 7 fveq2d A = 0 s bday A / su 1 s = bday 0 s
9 bday0s bday 0 s =
10 8 9 eqtrdi A = 0 s bday A / su 1 s =
11 0ss suc
12 10 11 eqsstrdi A = 0 s bday A / su 1 s suc
13 2 12 biimtrdi A 0s A < s 1 s bday A / su 1 s suc
14 oveq2 Could not format ( N = 0s -> ( 2s ^su N ) = ( 2s ^su 0s ) ) : No typesetting found for |- ( N = 0s -> ( 2s ^su N ) = ( 2s ^su 0s ) ) with typecode |-
15 2sno Could not format 2s e. No : No typesetting found for |- 2s e. No with typecode |-
16 exps0 Could not format ( 2s e. No -> ( 2s ^su 0s ) = 1s ) : No typesetting found for |- ( 2s e. No -> ( 2s ^su 0s ) = 1s ) with typecode |-
17 15 16 ax-mp Could not format ( 2s ^su 0s ) = 1s : No typesetting found for |- ( 2s ^su 0s ) = 1s with typecode |-
18 14 17 eqtrdi Could not format ( N = 0s -> ( 2s ^su N ) = 1s ) : No typesetting found for |- ( N = 0s -> ( 2s ^su N ) = 1s ) with typecode |-
19 18 breq2d Could not format ( N = 0s -> ( A A ( A A
20 18 oveq2d Could not format ( N = 0s -> ( A /su ( 2s ^su N ) ) = ( A /su 1s ) ) : No typesetting found for |- ( N = 0s -> ( A /su ( 2s ^su N ) ) = ( A /su 1s ) ) with typecode |-
21 20 fveq2d Could not format ( N = 0s -> ( bday ` ( A /su ( 2s ^su N ) ) ) = ( bday ` ( A /su 1s ) ) ) : No typesetting found for |- ( N = 0s -> ( bday ` ( A /su ( 2s ^su N ) ) ) = ( bday ` ( A /su 1s ) ) ) with typecode |-
22 fveq2 N = 0 s bday N = bday 0 s
23 22 9 eqtrdi N = 0 s bday N =
24 23 suceqd N = 0 s suc bday N = suc
25 21 24 sseq12d Could not format ( N = 0s -> ( ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) <-> ( bday ` ( A /su 1s ) ) C_ suc (/) ) ) : No typesetting found for |- ( N = 0s -> ( ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) <-> ( bday ` ( A /su 1s ) ) C_ suc (/) ) ) with typecode |-
26 19 25 imbi12d Could not format ( N = 0s -> ( ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) <-> ( A ( bday ` ( A /su 1s ) ) C_ suc (/) ) ) ) : No typesetting found for |- ( N = 0s -> ( ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) <-> ( A ( bday ` ( A /su 1s ) ) C_ suc (/) ) ) ) with typecode |-
27 13 26 imbitrrid Could not format ( N = 0s -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) ) : No typesetting found for |- ( N = 0s -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) ) with typecode |-
28 bdaypw2n0sbndlem Could not format ( ( A e. NN0_s /\ x e. NN0_s /\ A ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) : No typesetting found for |- ( ( A e. NN0_s /\ x e. NN0_s /\ A ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) with typecode |-
29 28 3exp Could not format ( A e. NN0_s -> ( x e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) ) ) : No typesetting found for |- ( A e. NN0_s -> ( x e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) ) ) with typecode |-
30 29 com12 Could not format ( x e. NN0_s -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) ) ) : No typesetting found for |- ( x e. NN0_s -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) ) ) with typecode |-
31 oveq2 Could not format ( N = ( x +s 1s ) -> ( 2s ^su N ) = ( 2s ^su ( x +s 1s ) ) ) : No typesetting found for |- ( N = ( x +s 1s ) -> ( 2s ^su N ) = ( 2s ^su ( x +s 1s ) ) ) with typecode |-
32 31 breq2d Could not format ( N = ( x +s 1s ) -> ( A A ( A A
33 31 oveq2d Could not format ( N = ( x +s 1s ) -> ( A /su ( 2s ^su N ) ) = ( A /su ( 2s ^su ( x +s 1s ) ) ) ) : No typesetting found for |- ( N = ( x +s 1s ) -> ( A /su ( 2s ^su N ) ) = ( A /su ( 2s ^su ( x +s 1s ) ) ) ) with typecode |-
34 33 fveq2d Could not format ( N = ( x +s 1s ) -> ( bday ` ( A /su ( 2s ^su N ) ) ) = ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) ) : No typesetting found for |- ( N = ( x +s 1s ) -> ( bday ` ( A /su ( 2s ^su N ) ) ) = ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) ) with typecode |-
35 fveq2 N = x + s 1 s bday N = bday x + s 1 s
36 35 suceqd N = x + s 1 s suc bday N = suc bday x + s 1 s
37 34 36 sseq12d Could not format ( N = ( x +s 1s ) -> ( ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) <-> ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) ) : No typesetting found for |- ( N = ( x +s 1s ) -> ( ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) <-> ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) ) with typecode |-
38 32 37 imbi12d Could not format ( N = ( x +s 1s ) -> ( ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) <-> ( A ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) ) ) : No typesetting found for |- ( N = ( x +s 1s ) -> ( ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) <-> ( A ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) ) ) with typecode |-
39 38 imbi2d Could not format ( N = ( x +s 1s ) -> ( ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) <-> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) ) ) ) : No typesetting found for |- ( N = ( x +s 1s ) -> ( ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) <-> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su ( x +s 1s ) ) ) ) C_ suc ( bday ` ( x +s 1s ) ) ) ) ) ) with typecode |-
40 30 39 syl5ibrcom Could not format ( x e. NN0_s -> ( N = ( x +s 1s ) -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) ) ) : No typesetting found for |- ( x e. NN0_s -> ( N = ( x +s 1s ) -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) ) ) with typecode |-
41 40 rexlimiv Could not format ( E. x e. NN0_s N = ( x +s 1s ) -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) ) : No typesetting found for |- ( E. x e. NN0_s N = ( x +s 1s ) -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) ) with typecode |-
42 27 41 jaoi Could not format ( ( N = 0s \/ E. x e. NN0_s N = ( x +s 1s ) ) -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) ) : No typesetting found for |- ( ( N = 0s \/ E. x e. NN0_s N = ( x +s 1s ) ) -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) ) with typecode |-
43 1 42 syl Could not format ( N e. NN0_s -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) ) : No typesetting found for |- ( N e. NN0_s -> ( A e. NN0_s -> ( A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) ) ) with typecode |-
44 43 3imp21 Could not format ( ( A e. NN0_s /\ N e. NN0_s /\ A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) : No typesetting found for |- ( ( A e. NN0_s /\ N e. NN0_s /\ A ( bday ` ( A /su ( 2s ^su N ) ) ) C_ suc ( bday ` N ) ) with typecode |-