5 ms·
By reading the source code? def divisors(n): for d in range(1, n): if n % d == 0: yield d n = 1 while True:
by pwdisswordfish2 6y ago
By reading the source code?
def divisors(n):
for d in range(1, n):
if n % d == 0:
yield d
n = 1
while True:
if n == sum(divisors(n)):
break
n += 2
print(n)
I don’t know if this program halts. But I’m pretty sure it won’t steal my data and send it to third parties. Why? Because at no point does it read my data or communicate with third parties in any way: it would have to have those things programmed into it for that to be a possibility. At no point I had to solve the halting problem to know this.
Also, if I execute a program and it does exhibit that behaviour, that’s a proof right there.
The same kind of analysis can be applied to Google’s scripts: look what data it collects and where it pushes data to the outside world. If there are any undecidable problems along the way, then Google has no plausible deniability that some nefarious behaviour is possible. Now, whether that is a practical thing to do is another matter; but the halting problem is just a distraction.
- saagarjha 6y ago> I don’t know if this program halts. Be cool if you did ;)
- FabHK 6y agoIf you didn't catch the joke: It is currently unknown whether there are any odd perfect numbers (and the program halts on encountering the first). https://en.wikipedia.org/wiki/Perfect_number https://en.wikipedia.org/wiki/Perfect_number https://oeis.org/A000396 https://oeis.org/A000396
- pdkl95 6y ago> at no point does it read my data Tracking doesn't require reading any of your data. All that is necessary is to trigger some kind of signal back to Google's servers on whatever user behavior they are interested in tracking. > or communicate with third parties Third parties like Google? Which is kind of the point? > [example source code] Of course you can generate examples that are trivial to inspect. Real world problems are far harder to understand. Source is minified/uglified/obfuscated, and "bad" behaviors might intermingle with legitimate actions. Instead of speculating, here is Google's JS for AMP pages: https://cdn.ampproject.org/v0.js https://cdn.ampproject.org/v0.js How much tracking does that library implement? What data does it exfiltrate from the user's browser back to Google? It obviously communicates with Google's servers; can you characterize if these communications are "good" or "bad"? Even if you spent the time and effort to manually answer these questions, the javascript might change at any time. Unless you're willing to stop using all AMP pages every time Google changes their JS and you perform another manual inspection, you are going to need some sort of automated process that can inspect and characterize unknown programs. Which is where you will run into the halting problem.
- pwdisswordfish2 6y agoFunny how people can literally "forget" that Google is a third party. Probably people at Google believe they are not third parties. Not even asking or trust, just assuming it. No other alternatives. Trust relationship by default.