You've got to start with some axioms. In computing int() can be considered an axiom because it relies on the hardware implementation. Doesn't need logic as such, you just dump the non-integral part.
In maths the axioms are usually considered to be logic and set theory, so if you want to reduce the problem down to the axioms but you don't want to use logic, well, that's not gonna happen.
IEEE floating point uses an explicit sign bit, so the absolute value can be taken by a bitwise AND with the complement of the sign bit. For IA32 32-bit, the sign bit is an int value of 0x80000000, for IA32 64-bit, the sign bit is the long long int value 0x8000000000000000. Of course, if you prefer to use just int values, the IA32 64-bit sign bit is 0x80000000 at an int address offset of +1. For example:
double x;
/* make x = abs(x) */
*(((int *) &x) + 1) &= 0x7fffffff;