1:35 AM
I tried a few searches: $\int_{-\infty}^\infty e^{-x^2}dx$ was good, $\mathbb{R}P^\infty$ was not bad, $M\otimes N$ gave lots of hits for $MN$ or $m\times n$ which is not so useful, $\Omega S^3$ gave results which made no sense to me at all. Still, the basic framework looks very promising, and I am sure that the algorithm can be tweaked. — Neil Strickland 1 hour ago
BTW search for $xy^3$ gives rather similar results to the previous search. Which should be a partial explanation for the "results which made no sense".

5 hours later…
6:50 AM
I have also tried a few other searches with adding some keywords (not formulas): search for $\Omega S^3$, Omega, search for $\Omega S^3$, homotopy, search for $\Omega S^3$, homotopy, sphere and
Only the last one found this question: Is there a rational homotopy equivalence between $\Omega S^3$ and infinite complex projective space? (But the query already contained two words from the title.)

7:18 AM
To be more precise, by found I mean that it appeared on the first page of the results. (I was too lazy to check also the remaining pages to see how far it appears.)

7 hours later…
2:07 PM
@MartinSleziak Thank you for listing these query URLs here, it makes a lot convenient for others.
Good question, it is also interesting to explain why you only get the wanted post by searhcing so many query keywords though.

2:28 PM
First, to answer Neil Strickland's question, recall that Approah0 is trying to evaluate similarity between query and hits by two perspectives: One is symbolic similarity, the other is structural similarity. The possible docs that match $\int_{-\infty}^\infty e^{-x^2}dx$ is relatively less than that matches $M\otimes N$, or $\Omega S^3$. Because "ab", "cd", "x \otimes y" they all match $M\otimes N$ structurally. So the only measure to pick who is a better match is to evaluate symbol similarity.
And also, currently Approach0 does not differentiate \times and \otimes, they are both TIMES token (github.com/approach0/search-engine/blob/master/tex-parser/…)
Yes, it definitely has room to improve, for example, we can instead define \otimes to something like OTIME to distinguish \otimes and \times, but this will loose some generalities though.

3:04 PM
As for $\Omega S^3$, well, after I login onto my server and investigate for a while, I think you guys help me find a problem. I would not say it is a bug, it is because my ranking formula is not perfect.
currently approach0 uses a ranking formula like this:
document_score = proximity_score + (math_score * bm25_score)
where proximity_score is how proximate your query keywords occur in this document, the more far away, this score goes lower. The purpose of this score is, for example, if the user enters "hello world" as query, then document with a "hello world" should rank higher than document with a "hello Alice, you are my entire world."
math_score is the score of math expression similarity between query and document.
bm25_score is, for simplicity here, you can think of it as the similarity degree of English words between query and document.
The wanted post has been assigned docID 421893 in my index. To illustrate the problem with current ranking formula, I randomly choose a document which is ranked top 10th on the first page of current result when you search $\Omega S^3$,, it has been assigned docID 58914.
The actual ranking scores are (also unexpected to me when I first observe this issue):
doc#58914, prox_score -0.403648 + (math score 2.980000 * bm25 score 1.000000) = 2.576352
doc#421893, prox_score -1.203973 + (math score 3.010000 * bm25 score 1.000000) = 1.806027
As you can see, although 421893 has a higher math score (which is expected), its prox_score is negative 1.203973.
So Approach0 thinks expressions like "\Omega S^3" and "\Omega S^5" are too sparse in document 421893 with comparison to "X=\mathbb{R}P^2" and "\mathbb{C}P^2" in document 58914.
To solve this issue, I think I need to reinvent the current ranking formula. Or, to put more weight on math score. This is a ... I would say, a math problem :P

3:59 PM
I changed one number in my code and this issue gets fixed: github.com/approach0/search-engine/commit/…
Now search for $\Omega S^3$ you will notice the changes taking effect.

4:16 PM
Since this is a modification to core ranking formula, this change will apply to any query. Please let me know if you observe other cases that do not work well after this change. If this change has side effect, I may consider to replace or reinvent the current ranking formula entirely.