Reversible/linear logic is very very interesting, if you already know the answer you're looking for, then there's no need to save any states at all, you can reduce the other side of the equation and end up with a reversible program.
You'll ask, but if you know both sides of the equation, why is there a need to compute at all.
In this little video I show the entropy loss in a standard loop against a version which releases the expected literals for a completely reversible program without states
Problem 1: Isn’t the output implied by the input? Problem 2: Doesn’t this contradict the second law of thermodynamics?
This problem lies adjacent to another one at the roots of logic. If we extract logical consequences of axioms, then surely the answer was already there implicitly in the axioms; what has been added by the derivation?
Uncomputing the ADD arithmetic opcode by stashing one byte of state, so I can run the vm both forward and back even if I don't always use non-destructive stack permutations.
@d6@alderwick just looked it up, and all the results about this are on quantum computing in regards to entropy loss *swimgs back to the shallow end of the pool*
@wim_v12e I'll remove @d6@alderwick from this thread because I have some very naive questions and I don't want to blow up their notifications, add yourself back if you're interested in this sort of thing ^^
An interesting aspect of fractions and prime factorization is that multiplying fractions is the same as adding the prime numerators and subtracting the prime denominators.
For example, multiplying 42 by 5/14 means incrementing the power of prime 5, and decrementing the power of primes 2 and 7 — For a result of 42. A division is simply the inversion of the effects of the numerator and denumerator.
@alderwick can zero be presented in the format in the picture above? Like, does zero exist in the prime factorization layout? If a multiplication by 0 is equal to setting all prime factors to zero, zero has in a sense awareness of what is being multiplied by it, does it not?
@d6@alderwick is it tho? For one input bit, there are two possible reversible gates. One of them is NOT. The other is the identity gate, which maps its input to the output unchanged.
If annihilation is the mirror to identity, shouldn't it be reversible?
@wim_v12e Is the lack of annihilator really that much of problem?
I'm trying to figure, is there a variance of Uxntal that could be reversible?
I'm thinking something like a loop:
#1000 &l LDAk #18 DEO INC GTHk ,&l JCN
I feel like this could be run in reverse without annihilation, maybe. So at the end of the loop, I would normally POP2, if I knew its exact value then, could I "unliteral" it? Like, #1010 SUB2 , so this whole thing could be run backward?
So I had this idea a few days ago, which I likely do not have the computery words to explain properly, but it goes something like this:
So, #forth has this syntax to define words which is just a comment saying what goes in, and what comes out. And I was wondering if I could use this in conjunction with the actual body of the routine while counting how many items are expected at the end of the routine, and throwing a warning when it doesn't match.
@AlgoCompSynth it turns out Factor does and it's really well handled too, it won't even let you build the program if it's not equivalent. It also runs through loops and recursion which is shown as a warning.
We tore half the boat apart today trying to find where the second breaker panel wires connect. Turns out they connected to the starting cables(!?), behind the wall(we had to remove the wall, and dismantle half of the chart-table to get to it). And in the end, it connected in the worse manner imaginable, to totally unrelated cables. Fucking classic. #theBoatyard