The function shifts letters by 3 positions in reverse order in the alphabet, both for lowercase and uppercase. It does not change numbers and special characters.

[CODE]:
```python
def approx_function(x):
    if x.isalpha():
        shift = -3
        if x.islower():
            return chr((ord(x) - ord('a') + shift) % 26 + ord('a'))
        else: # uppercase letters
            return chr((ord(x) - ord('A') + shift) % 26 + ord('A'))   
    else:
        return x
```

Let's test our approximation with the same inputs.

COMMAND: PYTHON(./temp/function.py approx_function)