On Nov 11, 6:12 am, fl <
frederic.l...@laposte.net> wrote:
...
> I suggest instead of a sequence we use distinct "symbolic" constants.
> For instance the constants base, add, mult, top.
As I understand it, you are proposing to define base = 1,
add = 2, mult = 3, etc. - is that right?
Right now we are using "base" etc. to extract the components
rather than to specify them. This makes them uniform with
other symbols that specify defined operations,
so that the base is specified in a hypothesis as
"$e |- B = ( base ` R )". With your method, as I understand
it, we would instead say "$e |- B = ( R ` base )".
One issue is that the primitive operations of structures can
be different depending on how they are defined. For
example, a lattice can be defined with either a partial
order or with join, meet operations. In the first case,
join and meet would be defined; in the second case the
partial order would be defined. With the current method,
though, regardless of the definition we can say
$e |- L = ( le ` K )
$e |- J = ( join ` K )
$e |- M = ( meet ` K )
and if the definition is changed, theorems would not have to
be changed (only some early proofs from the new definition).
With your method, as I understand it, we would say
$e |- L = ( K ` le )
$e |- J = ( join ` K )
$e |- M = ( meet ` K )
in the first case and
$e |- L = ( le ` K )
$e |- J = ( K ` join )
$e |- M = ( K ` meet )
in the second. This seems a little confusing, and would
require all theorems to be changed if the definition was
changed in the future.
> Then one might write things like:
>
> G = { <. base, ZZ >. , <. add , + >. } and G e. GrpNEW
>
> T = { <. base, ZZ >. , <. add , + >. , <. top , ~P ZZ >. } and T e.
> GrpTopNEW
>
> R = { <. base, ZZ >. , <. add , + >. , <. mul , . >. } and R e.
> RingNEW
>
> U = { <. base, ZZ >. , <. add , + >. , <. mul , . >. , <. top , ~P ZZ
>
> >. } and U e. RingTopNEW
>
> and we would have the nice property that U e. RingNEW and U e.
> GrpTopNEW
I don't see how this is any different from the current
method except that you are using names base, add,... to
represent numbers 1, 2,... Perhaps I am misunderstanding.
Are you also proposing that df-struct be changed somehow?
Norm
metamath.org