@jcamilledo — I can reply now to this part of your comment, which I think I understand:

> … if the automate is able to kind of conjecturate that it is an intermediary result, … we would be sometime even more happy that the automate finds that a result is a good “intermediary” candidate, then if the automate is able to proof the intermediary result.

I think you are saying that (especially if a task fails to prove its goal statement, but not only then), it may be useful for it to come up with an “intermediary result” statement which it can neither prove, nor prove would lead to the goal, but which it still thinks would be a useful intermediate to study, as part of studying the goal.

I will guess that a statement would be a “useful intermediate” if (1) it is likely to be easier to solve than the original goal; (2) if solved, that solution process would likely provide some useful insight into how to achieve the original goal.

I agree with that (if I interpreted it correctly). It reminds me of this known advice for a mathematician facing a hard problem: “first solve a related easier problem”.

I am not sure how a machine could purposefully come up with an intermediate statement like that; but in hindsight, it can’t be harder than some of the other things we’re proposing here, since it would be a necessary consequence of those ways working, that this would sometimes happen.

For example, if it’s possible to come up with an intermediate which *is* a good step on the way to a proof of the goal, then it must also be possible to come up with one which *might be* that, but in some cases turns out not to be that. But very likely it would often be easier, and related enough that its solution could be a useful model. Also, at the time of coming up with it, it may be unclear whether or not it will be a useful step in a larger proof.

This reminds me of another comment here in which someone said something like “the first step is to form a mental picture of the situation being examined, and play with it to further develop one’s understanding of it”. That process of playing with it might include coming up with many simpler problems about the same situation, and solving some of them.

Indeed, one definition of “an understanding (of type T) of situation X” is “the ability to efficiently solve any problem about X (which is expressed in a form based on T)”. In other words, a type T of “understanding of X” consists of a set of problem-templates about situations of the same type as X, coupled with an efficient ability to solve any problem of those kinds, about X. (Or perhaps “most problems” rather than “any problems” of those kinds.)

]]>@jcamilledo

I don’t understand your description very clearly, but to the extent I can guess your meaning, I think your ideas are interesting. If you are planning to reorganize your blog post, I will gladly read it after you do that. (I don’t understand french, but I can understand the beginning of your current blog post using google translate, so I will try it that way when you say it’s ready.)

I have not heard of the work of Christophe Chalons, and I’d also be interested to hear more about that work.

]]>As my comment was too long to fit, I used my own blog to answer. I did’t know I had a blog, and I will soon take advantage of it to make the comment more easy to read (I will do an little abstract and put more subtitles…) anyway as it is quite long, I don’t expect to be read yet, so I feel more confortable that it is not a long comment anymore but a page that can be read if wanted.I still wanted to writenotes and thoughts, so it seems like a good compromize : I put ideas but the volume of the text is not anymore kind of “impolite”, as I don’t especially aspect to be read (of course if it is the case I would be very happy!)

]]>]]>Réponse à Tim Gowers, à propos de l’automate [trop long pour un commentaire]

I’m not sure that motivated proof is about motivated prooving, and that, for examaple, showing” where it didn’t work” is an acceptable “motivation” to understand the “natural keys”, but it is also IMHO.

However, it is still a good extremum for the caracterisation of a “motivated proof”, the idea of “explaining the steps” seems to me as if either the proof is not enought motivated, either the explainations are part of the proofs, in this last case, a motivated proof can be very long… why not. The other extremum would be to have a conception of motivated proof (MP) that implies that it should be more or less very close to the shortets proof.

Anyway, the exploration/exploitation of mistakes is, I think, a important point of the process, not so much for the definition of M vs B\M, but for the automate itself.

The idea of giving a library is also imho a good way to parametrize difficulties, and I thing it should be a good thing to use it in an extended way as follow (it has a link with the “mistakes” discussion) :

We can say “library” or “oracle” : it is the data of a “intermediary result” (that we can call a “cut”)that the automate is alowed to use. But “we” know that it is intermediary…. if the automate is able to kind of conjecturate that it is an intermediary result, then it would be a “dual” subject of happyness ,as we would be sometime even more happy that the automate finds that a result is a good “intermediary” candidate, then if the automate is able to proof the intermediary result. So the idea that I have, and that will seam a bit strange, is that we could encourage the automate to MAKE HIS OWN CUTS, without caring “too much” if it is right or wrong. The difficulties are principally included in the “too much”. A good begining for a framework of this idea could be to precize, the most formally as possible, what could be a good cut (some how, independantally of its truth)

I have got three main ideas too bring up the subjcet, I discuted them in a very long comment that I posted yesterday and that were maybe too long to be published, so I will just give the 3 main ideas and eventually discuss them later :

1) use a small set of “mental images” to lead the “cut searching”

2) developpe a “sens of complexity” for the automate, it would be a sens like we have “sight” and “hearing” to evaluate distances

3) exploring the “degrés ludiques” , theory developped by Chalons

————-

By the way have you heard about a result by the same mathematician (Christophe Chalons) that informally sais that “any theorem is the obvious concequnece of some obvious statement” (note the two occurrences of “obvious”, and that “obvious” is formalized in a way that (according too what I’ve been said) is really what we call obvious, the difficulty (the not obvious task) is to find of WHITCH obvious statement, the theorem is an obvious concequence) I will ask for more details, including the formal statement if anyone is intersted

]]>– the data structure of a “motivated proof” (optionally including the full story of its generation);

– how “prover modes” (as discussed in the manifesto) fit into that;

– a “story editor” UI, for developing motivated proofs and their prover hints.

(As in all my comments, everything is merely “IMHO”.)

==

I think the general case of a “motivated proof” has a modular or hierarchical structure, not just the linear structure of a ROBOT proof. This is the same kind of structure as in a normal written proof, if that contains subsections for establishing propositions or lemmas, whose details can be ignored outside them, except for the “output” itself (e.g. the proven sub-theorem). (Within the sections, the structure might be much like that of a ROBOT proof.)

When a motivated proof includes the full story of how it was made, it also needs subsections for goals which were attempted but not achieved. Those would have “failure outputs” which (hopefully) say something about why they failed (which can help guide higher-level decisions in the prover). A reader interested only in learning math from the proof would skip the failed subsections; a reader who wanted to understand the proving process might see their inputs and outputs, but skip their internals; a reader wanting a complete “debugging view” of the prover run would need to see everything inside the failed subsections.

(Likewise, the database of all “motivated proofs” ought to include the ones in which the entire proof failed, though only some readers will want to see those in search results. Strictly speaking, it’s a database of “motivated proof attempts”, some successful.)

==

If the proving algorithm maintained several “mental images” which it periodically worked to improve or expand, or later retried a failed subsection with revised parameters or other new input, the overall structure would be more complex, but should still be understood in a modular/hierarchical way.

==

When a subsection starts running, it has goals (e.g. “prove this” or “prove something of this form”), and several kinds of inputs — the assertions and external data it can use (e.g. theorem libraries), and things affecting the prover algorithm, i.e. “hints”, “skills”, the “mode”, and maybe other parameters.

The nature of those prover algorithm parameters is up for much discussion and experimentation. But it seems clear that, since each subsection is created due to some rule running at a higher level, that rule may want to alter some of those parameters inside that subsection it creates. That would be how “changes of mode” were organized — the mode (or any other parameter) could differ in different subsections, or in a subsection compared to its enclosing section.

==

Finally, a specialized UI for browsing a motivated proof can be used not only for understanding it or debugging the prover, but for developing new hints for the prover — that is, as a “story editor”. The “story” is about “how the prover managed to solve this problem” (or perhaps “how we hope it will solve it someday”); we edit it by adding or changing hints or other parameters (and seeing immediately how they change what happens), or by adding comments about what we hope can happen, perhaps adding hoped-for outputs “by hand” so we can debug later sections of the proof before earlier sections are fully working. (Of course, the UI needs to clearly warn us when the proof contains any hoped-for goal statement that is assumed but not presently achieved. We might then alter some hint, and observe that some parts of the proof work better and others worse.)

A “proof story” might start out as mostly informal comments, just recording how someone thinks a specific problem could be solved. It might be divided into proof sections with formalized intermediate states “assumed”, but with the proving itself replaced by comments about the kinds of hints needed to reach those states. Then working hints could be developed gradually. Once the proof worked, if we still thought the hints were too specific (i.e. they were “cheating”), we could try editing them and getting the proof to work again, perhaps with more steps required as the tradeoff for using a more general “hint”.

]]>gowers wrote, replying to “Anon from May 1st”:

> … the way we think about smallish positive integers is heavily influenced by the kind of “play” you allude to … The short-term challenge that creates for developing a human-style prover is to try to provide the prover with the fruits of that kind of play without requiring it to do the playing and consequent learning for itself.

From your manifesto and other comments, I think your approach to that challenge is to formalize the results of that kind of play in hand-programmed “hints” or “built-in skills”, then construct the prover so it can make use of those, presumably in a flexible way to permit experimentation.

I agree. I think it’s important that the “database of explicitly motivated proofs” can include multiple proofs of the same theorem, in which different sets of hints were used, so their effect can be compared. It’s also desirable for the proofs to be “reproducible” — that is, if the “prover runs” which lead to those proofs can be reconstructed precisely later (by recording their exact inputs, including hint sets used, other parameters, and exact version of the prover itself), so project observers can browse proofs (or the stories of finding them) at any level of detail, and can even create tools to statistically study those stories (e.g. for comparing effects of different hint-sets over large problem sets).

Then instead of arguing about whether use of some hint is “cheating” (which I fear will inevitably be subjective and relative, and often controversial), we can discuss whether it helps many problems or only a few, whether it slows down other problems, whether it can be effectively replaced with other hints which are more primitive or general, etc. We can even discuss whether a hint is “human” or “superhuman”, based on whether it makes the system better than any humans at certain kinds of problems, or if the stories of how it’s being used don’t look “natural”.

(If a project observer doesn’t like a hint, they can contribute a better one, along with new experiments (i.e. new reproducible motivated proofs) showing how their hint affects certain problems in ways they like.)

==

The more advanced question of how a hint can be learned also becomes more definite that way, at least for a hint represented as a formal expression (as opposed to a “built-in skill” represented by an optionally-used software module). It turns into the more concrete question “how could this formally-expressed hint have been invented or discovered from this database of proof-finding-experience”? At some future time, we could even repeat the same experimental process to try out various “hints about how to learn new hints from experience” on a fixed proof-finding-database.

]]>I suggest that a better term would be either “motivated proof”, or (if you think that fails to imply the motivation is included with the proof), “explicitly motivated proof”. (Or maybe there is something still better.)

I think “justified proof” is too likely to be interpreted as just meaning “valid proof” (one with reasoning that ought to be persuasive). That is, any proof in a formal language using an accepted set of axioms (and passing a well-tested proof checker) could be arguably called “justified”; so could a clearly written informal but correct-seeming proof.

]]>Let me try to answer part of your question (in English, as that will be a lot quicker for me). I definitely don’t think that P=NP, though in a way that doesn’t make too much difference to the project at the moment, since even if P=NP we have no idea what an efficient algorithm for solving NP problems could be like, and much more of an idea of how to solve “natural” maths problems, even if there are plenty of mysteries about it.

But your follow-up question about whether there might be some statement that isn’t P=NP but is nevertheless still very interesting aligns with a fantasy I have, which is that it might be possible to identify a complexity class within NP that consists of NP problems with some extra property that makes them feasible. One difficulty with making this fantasy real is to come up with even a conjectured property that doesn’t make that statement trivial and uninteresting — I don’t want to end up saying little more than that a proof is easy to find if it is easy to find, or to say that it’s easy if some particular proof-finding algorithm finds it in a short time (or short expected time if it’s randomized). What I’d like is to identify structural properties of proofs, or rather “fully justified proofs” (that is, proofs together with convincing motivations for the steps) and for it to be a non-trivial theorem that proofs with those properties can be found in reasonable time.

The question about how our physical intuition feeds into our problem-solving ability is of course an important one. I’m hoping to be able to sidestep it for the time being, because it seems difficult to design a model of the world that would be suitable for providing that kind of intuition to a program, but it may be that that will restrict the kinds of problems we can hope to get a program to solve.

]]>I don’t think that the project will hit a brick wall. In fact, I believe the idea is really good and I hope it will succeed. I think logic (and early formalization) was done with a similar goal in mind back in the days. It is unfortunate that it did not help in proving theorems a lot. I find it interesting to ask whether a closer look at our thinking can help with that (solving problems algorithmically).

I just want to highlight that parts of mathematics are “cleaner from humans” than others. I think (even advanced) questions from algebra, like “what are the finite simple groups”, can simply pop up with just playing with numbers/structures/abstraction, noticing stuff and so on.

Meanwhile the Hausdorff question, unless you are guided by human apriori knowledge, is further down the line. For example, it is not immediately obvious that a continuous extension of the rationals, as in the real numbers, is useful. We know that it is a good model for the line, but I would count adding this knowledge as cheating.

Anyways, I’m excited to see what new information this project uncovers about the way we think.

]]>I agree with a lot of this. As an example, the way we think about smallish positive integers is heavily influenced by the kind of “play” you allude to. For example, if the number 1023 comes up in a problem, I will, thanks to a lot of playing with numbers, immediately notice that it is , and although that may be irrelevant, it’s actually quite likely to be helpful, since numbers of that sort of size don’t tend to be one off a power of 2.

The short-term challenge that creates for developing a human-style prover is to try to provide the prover with the fruits of that kind of play without requiring it to do the playing and consequent learning for itself. In the longer term, perhaps one could (almost certainly with the help of machine learning) create a system that could explore and discover “useful number facts” for itself (and similar facts in other domains) and store them in a way that made them accessible at the right moments, but that seems like an ambitious project, though I would guess that it’s one that people are already working on.

It may be that we have a slight difference of opinion in that I think one can set that last challenge aside for the time being and still make substantial progress, whereas I think you think that without it we’ll hit a brick wall fairly soon.

]]>I think our attitudes here are very well aligned!

]]>I think my point with the mental images wasn’t properly communicated. I don’t think an implementation of space is necessary to recreate visual/geometric thinking.

My point is, that most beginner problems, where undergrads feel a big advantage over computers, arise from the real world, and our intuition about the real world gives us this advantage. This is something that computer programs lack, and that’s why, I think, they can’t tackle even the basics.

I believe to model mathematics (and to differentiate $\mathbb{M}$ from $\mathbb{B}$), an important aspect is the “play with the objects” process. As the intuition about the object guides the new discoveries and further areas of mathematics. The things we prove are the observations we make about these objects that are intuitive.

(Note: I’m not trying to trivialize maths here, just say that in the search space of possible proofs we choose the ones we feel natural, not some magical NP certificate path.)

And for early mathematics (like geometry and number theory) a lot of it is built inside us.

]]>Another important point about a “mental image” (according to my theory of them) is illustrated by my “image of a 10×10 grid”. (I say “my image” only to try not to state more than I have evidence for. I imagine things are similar for many other people who think about math. That said, there could also be important individual differences.)

The “mental content items” of my image of a 10×10 grid do NOT include 100 grid points. They don’t even include ten explicit columns of grid points, and/or the corresponding grid lines.

Instead, the grid as a whole is one item, and the ability to imagine subitems (points, columns of points (or corresponding grid lines), rows of points, various edges or faces, and more complex embedded objects, not to mention various kinds of patterns or functions on top of those) is “implicit”.

That is, whenever needed, I can bring to mind one or a few of the grid points, whether at specific or generic positions, and imagine them. (But probably not more than 3 or 4 at once, unless they’re in some kind of pattern.)

So when I first imagine the grid, it seems like I imagine fairly explicitly at least one corner point (this time it’s at the top right), plus the two “grid lines” intersecting it (or more precisely the nearby parts of those lines, but I can “zoom out” to see all of the outer 4 lines if needed); and I have a sense of the rest of the points and grid lines “being there”, which includes the illusion of actually seeming to see a lot of them at once, but I have evidence that I don’t really represent lots of them individually.

==

An example of that evidence: given k, let t(k) be this mental task: imagine a grid of k by k decimal digits. Make up an arbitrary digit for each grid point (don’t permit them to have any obvious pattern). Memorize those digits in your head. Be confident you really memorized them and can repeat them unchanged tomorrow.

I think I could do t(2) easily (though I’d still have to repeat the digits several times or more, to be sure I’d remember them tomorrow, as opposed to remembering them once after 10 minutes). I think with some difficulty (and less confidence about “tomorrow”) I could do t(3). For t(4) it would already be a big challenge — I could probably do it, but I’d sure rather not have to. And for t(8) I’d certainly have to break up the task, and possibly invent new memorization methods based on ones I’ve heard of, and even then I’m not confident I’d do it accurately.

==

Then if I need to use that grid for anything, I imagine other things on top of it, plus metainfo about anything mentioned so far.

A hypothesis about the “limit on short term memory size”: no more than k things of any one type allowed at one moment in a mental image, for k = something like 4 or 7. (But it’s ok to make new ones explicit and let old ones get forgotten, as needed and usually without noticing it.)

If a “simulated mathematician” is allowed to use paper, then it might contain several “mental images” while working on one problem, but some of them are allowed to “be on paper”, which means they can have more components but must be more stable. To be realistic, each “image on paper” should have an associated “image in the head” which is the subset of its items being thought about at a given moment, and is subject to the same strict item-count limitations as any other “image in the head”.

==

Even an equation or expression (like the ones that show up in some of the ROBOT stories) may often be one of these “images on paper”, with each visible symbol, each subexpression, and each identifier used in it, being a separate “mental content item”. The corresponding “image in the head” has the usual item-count limitations, so it may well be incomplete at any given time.

One effect of those limits is to provide a strong incentive to notice symmetry or other patterns in written expressions (or anything else being imagined, or studied on paper). Another is to help mitigate combinatorial explosion in possible things to think about at a given moment.

]]>> I also think, but this is quite speculative, that it may be possible to represent our geometric intuition in a more symbolic form that would be less efficient than what we do as humans but nevertheless helpful for computers.

I agree, and personally I would even say “I believe this”, only grudgingly admitting that it’s speculative.

I should emphasize that by a “mental image” I don’t mean to imply anything different from this, even as a theory of what happens in humans! Specifically, I don’t limit that concept to “geometric” information. Even in a human mental image about a geometric figure, I think it doesn’t generally contain enough info to fully specify geometry, or even to prove that’s possible. Instead, I think it’s made of lots of essentially symbolic assertions about relationships, which include topological ones and approximate geometric ones. (Plus lots of symbolic metainfo or other info which is not of those kinds.) (Perhaps it also includes lots of “numerical weights” to go with some of the symbolic subexpressions or identifiers, which govern how often attention gets directed to them vs. the others, and what kind of attention.)

I speculate that the main way the human version of this would differ from what your program might contain in a few years, would be to have far more rules, many of which were almost-duplicates or differed only in which (hypothetical) “internal variables” they referred to, because they’d been “learned by the brain” rather than “programmed by hand”. But I agree with your speculation that hand-programming fewer rules can provide a useful-enough approximation to that for many simple purposes. In some ways it will be “better than human”, e.g. each rule can be applied to any set of variables of the right types.

==

About this example:

> … to prove that the complete graph on five vertices isn’t planar. Diagrams help one’s thinking a lot for that question, but I think it’s easier than the Venn-diagrams question.

> … if we take notions of inside and outside as “obvious” …

My mental image for this would permit topological plane-embedded graphs with “semi-geometric” curved edges, would also think about regions inside closed curves, and would permit a known directed cyclic order of edges around each vertex. It would permit *very* approximate lengths and angles (for this problem, those would end up having to be ignored or generalized-over). (In my own brain, I suspect it’s impossible for me *not* to have a definite though very-approximate measurement on every length or angle; the desire to generalize over some of those is a separate piece of metainfo.)

Then the attempt to solve that problem would be a case analysis, as the attempted embedding was constructed, hopefully also noticing lots of symmetry (leading to several “WLOG” steps).

I would also have to implicitly understand that concept of “embedding” — the graph already exists by definition in a non-embedded way, my task is only to embed it (or prove I can’t).

==

Given a bunch of hints and rules which suffice to make that problem solvable, it would then be an interesting experiment to understand which subsets of them, and/or variant “weights” on their uses, also suffice. (I’ll say more about that kind of experiment later.)

]]>A quick PS: the statement I made about the non-planarity of being reasonably easy to prove is in one sense not accurate, as I think it may need the Jordan curve theorem, but if we take notions of inside and outside as “obvious” then it’s OK. To avoid this issue one could ask for the edges to be straight-line segments.

]]>I have had very similar thoughts about the Hausdorff problem and the role played by mental models. The conclusion I draw is that it would be difficult for the project to succeed fully without grappling with that problem, but I’m nevertheless fairly confident that quite a lot of interesting partial progress can be made before not having that kind of modelling becomes a real problem.

I also think, but this is quite speculative, that it may be possible to represent our geometric intuition in a more symbolic form that would be less efficient than what we do as humans but nevertheless helpful for computers.

I saw a problem recently that raises this issue in a rather acute way. It asks whether you can create a Venn diagram with four circles: that is, can you find four circles in the plane such that for every subset there is a point in the plane such that if and only if ?

I personally would find such a question much harder to solve if I couldn’t draw, or at least imagine, a diagram and instead had to solve it purely analytically. (Actually, I haven’t yet got round to solving it, though I’m pretty sure I know what the answer is.) So I would hazard a guess that this problem would be a very difficult challenge for a program of the kind I hope the team will develop.

It would be of some interest to find a simpler such example — ideally of a problem that humans find very easy but for which diagrams seem to be completely essential. (I think the Hausdorff one doesn’t come into that category — it can be done analytically without too much trouble, even if most humans would in fact visualize circles in the plane.)

Actually, on writing that I think I have an example: it’s to prove that the complete graph on five vertices isn’t planar. Diagrams help one’s thinking a *lot* for that question, but I think it’s easier than the Venn-diagrams question.

I don’t have an immediate response to this but just wanted to say that I read it with interest.

]]>“I … use my mental image of R^2 as the plane… Every step is effortless, as I (and everyone else), know the plane really well.”

For me as well, I would never think about a problem involving R^2 without using some “mental image” of it.

But what actually *is* a mental image? I contend that this is a very important question, since (IMHO) your project can’t succeed without answering it reasonably well, at least in an operational sense. So I’ll indulge in a somewhat long comment about it.

(I note there are some people, perhaps including some mathematicians, who claim to never experience “mental images”. I suspect they still have them and use them, but are unaware of that, since they don’t experience them in a manner that “imitates seeing”. I also suspect that a mental image is as much based on human instincts/abilities for perceiving and controlling motion of hands and body relative to environment, as it is on seeing.)

I think a mental image is something like a “theory” or “mental playground” — an imagined place described (at any one time) by a number of simple assertions (similar to the statement-lines in your “ROBOT-proof-finding stories”, but also including meta-statements about those statements), and where certain rules are operative. The rules are not only about “the definition of the plane” (or whatever the image is about), but about “what can be readily constructed or thought about in the plane”.

Specifically, my mental image of the plane (perhaps with certain contents like points, curves, or regions) lets me construct closed curves around bounded sets of things, zoom in, imagine lines connecting things, etc. It comes with some tendencies to prefer doing some of these things more often.

It also comes with more than one way to construct or scan the entire plane inductively — for example, I know that I can lay out a grid of points (eventually reaching “far enough in any direction” to be near any point in the plane), then zoom in and make finer grids to better approximate any given point; and by constructing a few lines, picking points on them, and constructing lines between those points, I can reach any specific point in a few steps.

I can also run a variety of algorithms in the mental plane, and know they’ll work (and will provably work), such as one to sweep out a region inside a closed curve, using a movable curve anchored at both movable ends to the inside boundary of the region.

I presumably know all this from a combination of lots of built-in spatial intuition (developed over time by evolution, and probably accidently over-represented in typical mathematicians), plus lots of experience doing thinking with this kind of mental image.

And the same holds for several other important kinds of mental images (some of them not usually directly “visual”), including ones that focus on linear order, metaphorical order of control, hierarchical structure, certainty of being able to trust rules, games, algorithms, etc. More precisely, I can make use of any or all of those aspects at once (and probably another 30 or so I’m not listing or don’t know about explicitly), when imagining any “situation”.

==

To be specific about “proving R^2 is Hausdorff” — once I understand the goal, I just imagine two points (in my image they have specific positions, but I somehow know I can treat those positions as generic), zoom in so they’re not too close, observe I can construct disjoint regions around them (since good enough example regions come readily to mind), and do so. I might need to think a bit about “how to formalize that this can be done”, which would include observing that there’s a positive distance between the points, that balls of radii summing to less than that distance will work, etc. But (as you and others observed) it certainly starts with just “knowing I can easily make regions like that”. This “knowing” comes from just “trying it and seeing that it easily works”, with both the “trying” and the “confidence that it works generically and reliably” (even before I formalized it) coming from built-in abilities of the mental image. (BTW, in a specific image with two balls, the balls being disjoint (if they are) is one of the “statements” that make up the image, whether or not I needed to think about it at that time.)

(I admit that I have seen that problem before, and for all I know I’ve seen or been taught that specific proof, so I can’t accurately simulate discovering it for the first time, let alone, discovering/inventing “the definition of Hausdorff”, which is arguably the *real* creative act related to this example.)

==

I’m sure there is more to say — for example, about how mental images relate to finding good subtasks or choosing modes — but this comment is already long. Is my most important point — that your project can’t succeed without formalizing and using “mental images” about the situations being reasoned about — obvious? It is controversial?

]]>Over millions of years of evolution we are wired to think and argue about the environment we live in. Historically the first areas of mathematics were number theory and geometry, as they deal with objects that appear in everyday life. The development of early algebra and analysis is therefore heavily influenced by this advantage.

I think a computer program, without any of this intuition, is unlikely to find two balls that separate two points in $\mathbb{R}^2$ without an insane effort (brute force). On the other hand, us, humans, we defined Hausdorff and $\mathbb{R}^2$ in a way that is natural to us and that let’s us use our intuition easily.

When I try to solve this problem, I first expand the definition of Hausdorff, use my mental image of $\mathbb{R}^2$ as the plane. And then I imagine two blobs that separates them, realize the simplest blob is a ball and end up with the result. Every step is effortless, as I (and everyone else), know the plane really well.

This is certainly true in early mathematics, that is more down to earth, and where most humans have a strong background and therefore advantage over computers. But I think it applies to higher mathematics as well, but we have to create the mental image with effort.

As a working mathematician, I perform the following steps:

1: Play with the object I am studying, so my mental image is as accurate as possible

2: Justify my observations with proofs, guided by my intuition about the object

3: Generalize the proofs and abstract them out to a larger context

A stage of mathematics is considerably easier if you don’t have to deal with step 1. First year undergrads can answer the Hausdorff question, right after they learn the definition of Hausdorff. Someone who studied number theory for a while, can answer that $n^7-77$ is never a Fibonacci number with less effort, as they are familiar with residues and Euler’s totient function. Proving it from scratch would require an insane effort, rediscovering all that theory.

I believe this is the main difference between $\mathbb{B}$ and $\mathbb{M}$

]]>What kinds of proofs are in Other? Certainly there is a lot of boring junk in there, and we can say that Boring is a subset of Other. But what about the proofs that are in Other but not in Boring? Non-boring non-human proofs. So let’s say we have a three-way partition of all proofs: Human Mathematics, Boring, and Mysterious.

The Mysterious class is touched on briefly in the post:

> It is interesting to speculate about whether there are, out there, utterly bizarre and idea-free proofs that just happen to establish concise mathematical statements but that will never be discovered because searching for them would take too long.

To my ears, this wording suggests that Mysterious proofs are strange anomalies that might crop up occasionally. But Mysterious proofs are far more numerous than Human Mathematical proofs. In the grand scheme of things, Human Mathematical proofs are the unusual case.

Suppose we were to enumerate all proofs, and that we do this in careful and discerning manner so as to avoid being deluged with Boring junk. We would find that, especially as the lengths of the proofs increase, it would still be quite difficult to pick out the Human Mathematical proofs. Most of the proofs would be incomprehensible to us, but we would have no grounds for saying that they are incomprehensible in an absolute sense. Maybe humans just aren’t smart enough! An extreme version of this point of view (proposed by Doron Zeilberger) says that humans definitely aren’t smart enough, and in fact any proofs that humans are capable of understanding are ipso facto trivial.

So if I may offer a vague and most non-actionable suggestion, there might be some value in starting from the assumption that Human Mathematical proofs exhibit some kind of radical simplicity. Maybe there is some nice way to characterize that simplicity.

It would also be illuminating to examine a Mysterious proof, although by definition such proofs are difficult to obtain. They are said to be “idea-free”. Can that be formalized?

]]>There was a bug in the text, when I speak about “parenthèse ” that I close … there was no more parenthèse. And also somewhere in the text the word “energie” occures but was not ment to be written, I don’t relember which word it wanted ro write at this place.

]]>