Reverse the Polarity The aim of this challenge is to write a program that satisfies the following conditions:


The program is not palindromic, or essentially palindromic (meaning that it is possible to remove characters to make it a palindrome without changing the effects of the program).
The program is not an involution (meaning that it does not produce its original input when run on its output)
The reversed-polarity program is the inverse of the normal program; so when the reversed program is run on the output of the normal program, it returns the original input.


What does reversed-polarity mean? Well, it differs between languages.


For most non-esolangs, this means reversing the order of sub-operations in a single operation, reversing the order of arguments, and reversing the contents of hard-coded lists/arrays/tuples/dictionaries/stacks/queues/etc, as well as reversing the order of code-blocks and stand-alone lines (but not lines within blocks)


Examples:

Haskell:
x`mod`y -> y`mod`x;zipWith ((*3).(+)) [1,2,3] [4,5,6] -> zipWith ((+).(*3)) [6,5,4] [3,2,1]

Python: 2**3 -> 3**2; for x,y in [(1,2),(3,4),(5,6)] -> for y,x in [(6,5),(4,3),(2,1)]


For languages that have 1-character functions (like Pyth, APL), simply reverse the string of instructions
For 1-dimensional esolangs like BF, reverse the instructions or swap the polarity; polarity swaps are [] -> {}, + -> -, - -> +, &gt; -> &lt;, &lt; -> &gt;, . -> , and , -> . (but not both)
For 2-dimensional esolangs like Befunge, you may either perform a reflection across the x- or y- axes or a diagonal, rotate 180 degrees, or do a combination of a reflection and a rotation


Commutative operations are allowed, but palindromic ones are not: 2*x is fine, but x+x is bad. The definition of a polarity-reversal is pretty loose, but use your judgment as to what makes sense; the object isn't to find the most clever loophole, but to find the most clever solution.

This is a popularity contest, so a very clever loophole may be popular, but try to keep within the spirit of this challenge. The winner will be announced once there are at least 10 solutions with at least 1 upvote, and there is at least one solution with more upvotes than there are submissions with at least 1 upvote; or in 1 month, whichever comes first. This is my first challenge, so try to be fair and give me constructive feedback, but also let me know if this is an unreasonable challenge or it is in any way miscategorized or ambiguous. If you have questions about a language that don't fit into any of the pigeonholes I have set out here, comment, and I will bend to the will of the community if there is a strong outcry for a particular clarification or rule-change.

UPDATE

It has been exactly 1 month since this contest was started (I just happened to check on it by chance, not knowing that I was actually on time). As this is a popularity contest, the winner (by a landslide) is 
Pietu1998-Befunge. Even though the bottom components (the text reverser and the backwards-alphabet) are both involutions, the encoder/decoder are not, so there is no problem there. Bonus points (in my mind) for managing to write "BEFUNGE" down the middle. I personally liked the novelty of Zgarb's Theseus solution, because the language looks cool (if restricted). Thanks to everyone for participating, and while the winner has been chosen, I am leaving this contest completely open, and welcome future submissions.
Befunge

Whoa, that was a job, even with the editor I made for this challenge. Here's what I got, a nice 11x12 block:

v$,g6&lt;6g,$v
v,$ _^_ $,v
1W&gt;v\B\v&gt;L1
~T+:1E1:-O~
+F00-F-02L+
&gt;:|6gUg6|:&gt;
{a@&gt;^N^&gt;@z`
&gt;1+|@G$| +&gt;
:^9&lt; E&lt;  ^1
~&gt;7^@_,#:&gt;:
 xD&gt;65 ^=P~
v,-\+**&lt;  v


It does a couple of things, sadly only for lowercase letters.

What it does

When run normally, it performs a Caesar cipher on the input.

abcxyz      -&gt; bcdyza
exampletext -&gt; fybnqmfufyu


When flipped horizontally, it reverses said cipher. This is the requirement for the challenge, but it doesn't end here.

bcdyza      -&gt; abcxyz
fybnqmfufyu -&gt; exampletext


When flipped vertically, it ciphers input with a reverse alphabet. This can be considered the opposite approach to the Caesar cipher.

abcxyz      -&gt; zyxcba
exampletext -&gt; vcznkovgvcg


Finally, when rotated 180 degrees, it reverses input. I have a feeling it has to be a reverse of something (hint: the input).

abcxyz      -&gt; zyxcba
exampletext -&gt; txetelpmaxe


How it works

The block basically consists of four semi-overlapping algorithms.

Caesar cipher encoder

v$,g6&lt;
v,$ _^
1 &gt;v\
~ +:1
+ 00-
&gt;:|6g
{a@&gt;^


Caesar cipher decoder (flipped horizontally)

v$,g6&lt;
v,$ _^
1 &gt;v\
~ -:1
+ 20-
&gt;:|6g
`z@&gt;^


Reverse alphabet cipher (flipped vertically)

v,-\+**&lt;
   &gt;65 ^
~&gt;7^
:^9&lt;
&gt;1+|@
   &gt;^


Text reverser (rotated 180 degrees)

v  &lt;
~      
:&gt;:#,_@
1^  &lt;
&gt;+ |$
   &gt;^