21:26
<snek>
is it valid to just do a multiplication here? https://gc.gy/140140589.png
21:26
<snek>
i thought it should be Z(epochMilliseconds) * 10^6
21:27
<snek>
or subscript Z or whatever it is
21:29
<Kris Kowal>
ℤ in set notation usually just means “every possible integer (not just the ones expressible in a word on your architecture)”
21:30
<Kris Kowal>
Which is meaningful here because epoch nanoseconds overflow i32, whereas millis do not.
21:30
<snek>
ℤ(x) in the spec means "the BigInt value of x"
21:30
<Kris Kowal>
That’s a fun twist.
21:31
<bakkot>
BigInt does also theoretically represent every possible integer, which is why we use the notation
21:31
<bakkot>
anyway yes it's valid
21:32
<snek>
cool
21:32
<bakkot>
they're both BigInts so it works
21:33
<bakkot>

When applied to BigInts, the operators refer to the usual mathematical operations applied to the mathematical value of the BigInt.