Hello Nicolas,
Thank you for the reply and feedback.
I agree that a formalized math wiki offers significant added value,
but I think that formalization adds little pedagogical value. As a
math professor, I do not see my students struggling with mental
substitution, as I think you are describing. I think that most
linguists would agree that substitution is an innate mental process --
every person who uses a natural human language constantly
substitutes. I find that students have a bigger problem with
"oversubstitution" -- I will give two examples:
* Small children automatically put an "s" on the end of every word,
in order to pluralize it. They effectively substitute any noun for
any other noun. They have to be specifically told about exceptional
words.
* School age students tend to incorrectly apply the distributive law
to square roots, following the false rule "the square root of a + b
equals the square root of a plus the square root of b". They mentally
substitute any operation for multiplication, and have to be
specifically corrected.
So in general, I would argue that students would "over-reuse".
On the other hand, the problem that you mention is a significant one
for computation and automatic theorem-proving/verification. For
automatic proving/verification, it seems that this vdash project is an
excellent idea. For computation, I could imagine adding a tab for
"SAGE code" (SAGE is a great piece of open-source math software),
which describes how to construct a given mathematical object within
SAGE. SAGE can handle a great amount of abstract math, and can
perform the sort of "substitution" you are discussing.
I would also say that when mathematicians "build on top of another",
they do so by applying previously proven results and definitions to
prove new results. As a mathematician, I build upon other published
results constantly -- the process is not at all formalized like "code
re-use", though that is a reasonable metaphor. Perhaps the argument
for formalization is the (perceived or real) unreliability of the
mathematician's deductive method. It is essentially impossible for
nonmathematicians and computers to verify the results of math papers,
since the deductive reliance is almost never completely and clearly
stated. It is difficult for mathematicians to verify the results of
math papers too -- this is why I usually take months to referee a math
paper for a journal.
Personally, I think that the formalization of research mathematics in
my field (automorphic forms and representations) would be impossible -
but I think that the formalization of certain foundational fields
could be important and useful.
best,
Marty Weissman