Beakta följande formella grammatik
F(_) --> F(_,_)
F(_,_) -->
F(F(_,_),
_) |
F(_,F(_,_)
) | x | konstant1 | konstant2 | sqrt(F(_,_)) | (_ + _) | (_ - _) | (_ / _) | (_ * _)
Vi gör en bredden-först sökning och testar ekvationer mot en vektor V av tupler (x,y). Ex: V = {(1,2), (4,9), ... }. Det maximala dJupet av sökningen sätter vi till N och den sematiska tolkningen av "djup" sätter vi till Q.
Låt R = { (F(x) - y)^2, ... } för alla tupler i V för varje ekvation i vår sökning. Sätt E = SUM(R) för varje test. Vi får en lista av ekvationer sorterade efter deras felkvadratsumma.
Om V är mätdata av exempelvis en fallande kropp mot jorden från inte så hög höjd, och en av konstanterna får vara 9.82 så hittar man trivialt några av dessa ekvationer
https://en.wikipedia.org/wiki/Equations_for_a_falling_body#The_equations (jag har testat). Inget tjafs om det nu.
Vad heter den specifika metoden? Jag hittar bara ytterst lite litteratur om det.
Notera att vi
INTE diskuterar andra metoder här än brute-force bredden-först sökning av ekvationer som stämmer överrens med den formella grammatiken ovan.