Funciones de parte entera
# Funciones de parte entera

En matemáticas, las funciones de parte entera son funciones que toman un número real y devuelven un número entero próximo, sea por exceso o por defecto. Formalmente son funciones de la forma:

    ${\begin{array}{rccl}{\text{E}}:&\mathbb {R} &\to &\mathbb {Z} \\&x&\to &y={\text{E}}(x)\end{array}}$

Según la forma de considerar el número entero más próximo a un número real dado, se pueden considerar varias funciones:

* Función techo, que a cada número real asigna el número entero más próximo por exceso, es decir, el menor número entero igual o mayor que ese número real. Algunos lenguajes de programación tienen una implementación nativa llamada generalmente ceil o Ceil (por ceiling, «techo» en inglés).
* Función piso (o suelo), que a cada número real asigna el mayor número entero igual o menor que ese número real (por ejemplo, si tenemos el caso [-2.4], este se acercaría al valor -3; o aplicándolo a un caso positivo sería [1.5], este se acercaría al valor 1). Algunos lenguajes de programación tienen una implementación nativa llamada generalmente floor o Floor («suelo» en inglés).
* Truncamiento, que a cada número real se le asigna el número entero resultado de ignorar su parte decimal.
* Redondeo, que a cada número real asigna el número entero más próximo según su parte decimal.

Un concepto relacionado con estas funciones es la parte fraccionaria, cuya representación es la de una [[onda de sierra.. la forma es entera

## Función techo

La función techo se aplica a un número real x y devuelve el mínimo número entero y no inferior a x:

    ${\begin{array}{rccl}{\text{techo}}:&\mathbb {R} &\to &\mathbb {Z} \\&x&\to &y={\text{techo}}(x)\end{array}}$

Definida:

    ${\text{techo}}(x)=\lceil x\rceil =\min\{k\in \mathbb {Z} \mid x\leq k\}$

O de otra forma:

    $y=\lceil x\rceil :\quad y={\big \y:\quad y\in \mathbb {Z} \quad \land \quad x\in \mathbb {R} \quad \land \quad y-1<x\leq y{\big \}}$

Se conoce también como función mínimo entero o como función entero menor (que es mayor o igual que x). Precaución: Algunas publicaciones le llaman "función entero mayor" debido a que devuelve el entero mayor o igual que x.

### Propiedades

* Para cualquier número real se cumple que $\lceil x\rceil \geq x$.
* El número real x al que se aplica la función techo es un número entero si y solo si la función techo de x tiene el mismo valor que x.

   $x\in \mathbb {Z} \Leftrightarrow \lceil x\rceil =x$
* La función techo tiene puntos de discontinuidad en los números enteros pero es diferenciable para el resto de puntos.
* La función techo puede expresarse como integral mediante la delta de Dirac y la función característica del conjunto de los enteros:

   $\int _{\epsilon }^{x+\epsilon }\delta (1-\chi _{\mathbb {Z} }(y))dy=\lceil x\rceil ,\qquad 0<\epsilon <1$

Estas funciones no son algebraicas ni trascendentes, por lo que son funciones no elementales

### Ejemplos

Para un número real no entero:

    $\lceil 2.3\rceil =\min\{k\in \mathbb {Z} \mid 2,3\leq k\}=3$
    $\lceil -2.3\rceil =\min\{k\in \mathbb {Z} \mid -2,3\leq k\}=-2$

Para un número entero:

    $\lceil 2\rceil =\min\{k\in \mathbb {Z} \mid 2\leq k\}=2$
    $\lceil -2\rceil =\min\{k\in \mathbb {Z} \mid -2\leq k\}=-2$

## Función piso/suelo

La función suelo se aplica a un número real x y devuelve el máximo número entero y no superior a x cuyo conjunto de partida (dominio) y conjunto de llegada (rango) son:

    ${\begin{array}{rccl}{\text{suelo}}:&\mathbb {R} &\to &\mathbb {Z} \\&x&\to &y={\text{suelo}}(x)\end{array}}$

y se define como:

    ${\text{suelo}}(x)=\lfloor x\rfloor =\max\{k\in \mathbb {Z} \mid k\leq x\}$

También se puede expresar como:

    $y={\text{suelo}}(x):\quad y=\lfloor x\rfloor :\quad y={\big \y:\quad y\in \mathbb {Z} \quad \land \quad x\in \mathbb {R} \quad \land \quad y\leq x<y+1{\big \}}$

Se conoce también como función máximo entero o como función entero mayor (que es menor o igual que x). Precaución: Algunas publicaciones le llaman "función entero menor" debido a que devuelve el entero menor o igual que x.

### Propiedades

El número real x al que se aplica la función suelo es un número entero si y solo si la función piso de x tiene el mismo valor que x.

    $x\in \mathbb {Z} \Leftrightarrow \lfloor x\rfloor =x$

Podemos deducir que si m y n son números enteros estrictamente positivos coprimos entonces (fórmula de Sylvester):

    $\sum _{k=1}^{n-1}\left\lfloor {\frac {km}{n}}\right\rfloor ={\frac {(m-1)(n-1)}{2}}$.

La fórmula anterior puede ser generalizada para todo m y n enteros estrictamente positivos:

    $\sum _{k=1}^{n-1}\left\lfloor {\frac {km}{n}}\right\rfloor ={\frac {(m-1)(n-1)+\operatorname {mcd} (m,n)-1}{2}}$.

### Ejemplos

Para un número real no entero:

    $\lfloor 2.3\rfloor =\max\{k\in \mathbb {Z} \mid k\leq 2,3\}=2$
    $\lfloor -2.3\rfloor =\max\{k\in \mathbb {Z} \mid k\leq -2,-3\}=-3$

Para un número entero:

    $\lfloor 2\rfloor =\max\{k\in \mathbb {Z} \mid k\leq 2\}=2$
    $\lfloor -2\rfloor =\max\{k\in \mathbb {Z} \mid k\leq -2\}=-2$

## Función truncamiento/parte entera

La función parte entera en el lenguaje de programación C es el resultado de truncar el valor real, eliminando su parte decimal. Se puede definir a partir de las funciones piso y techo, de la siguiente manera:

    ${\begin{array}{rccl}{\text{int}}:&\mathbb {R} &\to &\mathbb {Z} \\&x&\to &y={\text{int}}(x)\end{array}}$

definida de esta forma:

    $\operatorname {int} (x)=[x]=\left\{{\begin{array}{ccl}\lceil ~x\rceil &{\text{si}}&x<0\\\lfloor ~x\rfloor &{\text{si}}&x\geq 0\end{array}}\right.$

Se utiliza mediante el operador (int) para truncar el valor de variables del tipo float o double.

## Función redondeo

La función redondeo asigna a cada x número real un y número entero siendo y el valor más próximo a x.

    ${\begin{array}{rccl}{\text{redon}}:&\mathbb {R} &\to &\mathbb {Z} \\&x&\to &y={\text{redon}}(x)\end{array}}$

si la primera cifra decimal es 5 o mayor el redondeo se hace por exceso, si la primera cifra decimal es inferior a 5 el redondeo se hace por defecto.

Se puede comprobar la siguiente igualdad:

    ${\text{redon}}(x)=\left\{{\begin{array}{ccl}\lceil x-0.5\rceil &{\text{si}}&x<0\\\lfloor x+0.5\rfloor &{\text{si}}&x\geq 0\end{array}}\right.$

## Series de expansión

La función piso no es continua, y por lo tanto no tiene un expansión en serie de Taylor; como no es periódica, tampoco tiene una expansión en serie de Fourier. Sin embargo, la función $\{x\}:=x-\lfloor x\rfloor$, llamada función de parte decimal, fraccionaria o función mantisa, es periódica, y por lo tanto tiene una expansión en serie de Fourier, que es:

    $\{x\}={\frac {1}{2}}-{\frac {1}{\pi }}\sum _{k=1}^{\infty }{\frac {\sin(2\pi kx)}{k}}.$ si x no es un número entero.

Usando la expresión $\{x\}:=x-\lfloor x\rfloor$ podemos saber la expansión de la función $\lfloor x\rfloor$:

    $\lfloor x\rfloor =x-{\frac {1}{2}}+{\frac {1}{\pi }}\sum _{k=1}^{\infty }{\frac {\sin(2\pi kx)}{k}}.$

Teniendo en cuenta que: $\lceil x\rceil =-\lfloor -x\rfloor$, entonces la expansión de serie de la función techo sería:

    $\lceil x\rceil =x+{\frac {1}{2}}+{\frac {1}{\pi }}\sum _{k=1}^{\infty }{\frac {\sin(2\pi kx)}{k}}.$

Y por último, para la función truncamiento, se utiliza la siguiente expresión ${\mbox{int}}(x)={\big \lfloor }|x|{\big \rfloor }{\text{sgn}}(x)$; entonces quedaría:

    ${\mbox{int}}(x)=x-{\frac {\sin(x)}{2}}+{\frac {1}{\pi }}\sum _{k=1}^{\infty }{\frac {\sin(2\pi kx)}{k}}.$
