This particular example may be unlikely, but it's a very fun idea.
Primarily because the learnings you make are the same as the original “discoverer”. Without those learnings, you might not be able to arrive at your true destination.
Luckily no one is suggesting that.
I remember reading, about a year or two ago, about a medical doctor that published a paper rediscovering calculus (I just looked it up, it happened in 1994, there’s been many articles and videos about it)
This is such a great story
This is also true with patents.
:- use_module(library(clpr)).
pace(Km, Minutes, Pace) :-
{ Minutes = Km * Pace }.
Even though the rule only specifies how Minutes are calculated, Prolog can now also calculate the other values.You can query it, giving unknowns an uppercase `Name`, and it will give you the possible values for it:
pace(5, 24.5, Pace)
pace(40, Min, 5)
pace(Km, 24.5, 5)
pace(Km, Time, 5)
You can try it here: https://swish.swi-prolog.org/So if you had a rule that defines RSA key calculation this way, you could enter a key and get all valid solutions for the primes. But of course complex calculations still take a long time. I assume it's similar to a brute force attack in that way (Prolog has clever strategies to explore the solution space though).
Disclaimer: I'm not an expert in Prolog or cryptography, so this might not be 100% accurate.