MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  df-smu Structured version   Visualization version   Unicode version

Definition df-smu 15198
Description: Define the multiplication of two bit sequences, using repeated sequence addition. (Contributed by Mario Carneiro, 9-Sep-2016.)
Assertion
Ref Expression
df-smu  |- smul  =  ( x  e.  ~P NN0 ,  y  e.  ~P NN0  |->  { k  e.  NN0  |  k  e.  (  seq 0 ( ( p  e.  ~P NN0 ,  m  e.  NN0  |->  ( p sadd  { n  e.  NN0  |  ( m  e.  x  /\  ( n  -  m
)  e.  y ) } ) ) ,  ( n  e.  NN0  |->  if ( n  =  0 ,  (/) ,  ( n  -  1 ) ) ) ) `  (
k  +  1 ) ) } )
Distinct variable group:    k, m, n, p, x, y

Detailed syntax breakdown of Definition df-smu
StepHypRef Expression
1 csmu 15143 . 2  class smul
2 vx . . 3  setvar  x
3 vy . . 3  setvar  y
4 cn0 11292 . . . 4  class  NN0
54cpw 4158 . . 3  class  ~P NN0
6 vk . . . . . 6  setvar  k
76cv 1482 . . . . 5  class  k
8 c1 9937 . . . . . . 7  class  1
9 caddc 9939 . . . . . . 7  class  +
107, 8, 9co 6650 . . . . . 6  class  ( k  +  1 )
11 vp . . . . . . . 8  setvar  p
12 vm . . . . . . . 8  setvar  m
1311cv 1482 . . . . . . . . 9  class  p
1412, 2wel 1991 . . . . . . . . . . 11  wff  m  e.  x
15 vn . . . . . . . . . . . . . 14  setvar  n
1615cv 1482 . . . . . . . . . . . . 13  class  n
1712cv 1482 . . . . . . . . . . . . 13  class  m
18 cmin 10266 . . . . . . . . . . . . 13  class  -
1916, 17, 18co 6650 . . . . . . . . . . . 12  class  ( n  -  m )
203cv 1482 . . . . . . . . . . . 12  class  y
2119, 20wcel 1990 . . . . . . . . . . 11  wff  ( n  -  m )  e.  y
2214, 21wa 384 . . . . . . . . . 10  wff  ( m  e.  x  /\  (
n  -  m )  e.  y )
2322, 15, 4crab 2916 . . . . . . . . 9  class  { n  e.  NN0  |  ( m  e.  x  /\  (
n  -  m )  e.  y ) }
24 csad 15142 . . . . . . . . 9  class sadd
2513, 23, 24co 6650 . . . . . . . 8  class  ( p sadd  { n  e.  NN0  |  ( m  e.  x  /\  ( n  -  m
)  e.  y ) } )
2611, 12, 5, 4, 25cmpt2 6652 . . . . . . 7  class  ( p  e.  ~P NN0 ,  m  e.  NN0  |->  ( p sadd  { n  e.  NN0  |  ( m  e.  x  /\  ( n  -  m
)  e.  y ) } ) )
27 cc0 9936 . . . . . . . . . 10  class  0
2816, 27wceq 1483 . . . . . . . . 9  wff  n  =  0
29 c0 3915 . . . . . . . . 9  class  (/)
3016, 8, 18co 6650 . . . . . . . . 9  class  ( n  -  1 )
3128, 29, 30cif 4086 . . . . . . . 8  class  if ( n  =  0 ,  (/) ,  ( n  - 
1 ) )
3215, 4, 31cmpt 4729 . . . . . . 7  class  ( n  e.  NN0  |->  if ( n  =  0 ,  (/) ,  ( n  - 
1 ) ) )
3326, 32, 27cseq 12801 . . . . . 6  class  seq 0
( ( p  e. 
~P NN0 ,  m  e. 
NN0  |->  ( p sadd  {
n  e.  NN0  | 
( m  e.  x  /\  ( n  -  m
)  e.  y ) } ) ) ,  ( n  e.  NN0  |->  if ( n  =  0 ,  (/) ,  ( n  -  1 ) ) ) )
3410, 33cfv 5888 . . . . 5  class  (  seq 0 ( ( p  e.  ~P NN0 ,  m  e.  NN0  |->  ( p sadd  { n  e.  NN0  |  ( m  e.  x  /\  ( n  -  m
)  e.  y ) } ) ) ,  ( n  e.  NN0  |->  if ( n  =  0 ,  (/) ,  ( n  -  1 ) ) ) ) `  (
k  +  1 ) )
357, 34wcel 1990 . . . 4  wff  k  e.  (  seq 0 ( ( p  e.  ~P NN0 ,  m  e.  NN0  |->  ( p sadd  { n  e. 
NN0  |  ( m  e.  x  /\  (
n  -  m )  e.  y ) } ) ) ,  ( n  e.  NN0  |->  if ( n  =  0 ,  (/) ,  ( n  - 
1 ) ) ) ) `  ( k  +  1 ) )
3635, 6, 4crab 2916 . . 3  class  { k  e.  NN0  |  k  e.  (  seq 0
( ( p  e. 
~P NN0 ,  m  e. 
NN0  |->  ( p sadd  {
n  e.  NN0  | 
( m  e.  x  /\  ( n  -  m
)  e.  y ) } ) ) ,  ( n  e.  NN0  |->  if ( n  =  0 ,  (/) ,  ( n  -  1 ) ) ) ) `  (
k  +  1 ) ) }
372, 3, 5, 5, 36cmpt2 6652 . 2  class  ( x  e.  ~P NN0 , 
y  e.  ~P NN0  |->  { k  e.  NN0  |  k  e.  (  seq 0 ( ( p  e.  ~P NN0 ,  m  e.  NN0  |->  ( p sadd  { n  e.  NN0  |  ( m  e.  x  /\  ( n  -  m
)  e.  y ) } ) ) ,  ( n  e.  NN0  |->  if ( n  =  0 ,  (/) ,  ( n  -  1 ) ) ) ) `  (
k  +  1 ) ) } )
381, 37wceq 1483 1  wff smul  =  ( x  e.  ~P NN0 ,  y  e.  ~P NN0  |->  { k  e.  NN0  |  k  e.  (  seq 0 ( ( p  e.  ~P NN0 ,  m  e.  NN0  |->  ( p sadd  { n  e.  NN0  |  ( m  e.  x  /\  ( n  -  m
)  e.  y ) } ) ) ,  ( n  e.  NN0  |->  if ( n  =  0 ,  (/) ,  ( n  -  1 ) ) ) ) `  (
k  +  1 ) ) } )
Colors of variables: wff setvar class
This definition is referenced by:  smufval  15199
  Copyright terms: Public domain W3C validator