8 votos

¿Está la división de enteros definida de forma única en matemáticas?

Actualmente estoy estudiando programación en java y me choca un poco el concepto de división de enteros. Supongo que es cuestión de acostumbrarse a ello $1/2=0$ pero me temo que puede llevar algún tiempo, dado que esta propiedad del operador de división (/) es inconsistente con las matemáticas.

¿O no? La lectura de la sección de Wikipedia sobre la división de enteros parece dar a entender que es un concepto ambiguo (ver el siguiente enlace ). La afirmación de que el conjunto de los enteros no es cerrado bajo la división (es decir, la división de enteros podría producir elementos que no son enteros) tiene sentido para mí, al igual que la opción 2 de la siguiente lista. Sin embargo, la lista me desconcierta. Su existencia implica que tenemos una opción en el asunto, y que una de ellas (la opción 4) permite llamar " $1/2=0$ " una afirmación verdadera.

Entonces, ¿el significado de la división de enteros es realmente una cuestión de gustos? ¿Puede " $1/2=0$ "¿es una afirmación verdadera, incluso en un sentido estrictamente matemático, dependiendo de cómo se interprete?

0 votos

Tal vez quiera echar un vistazo a este .

3 votos

Definitivamente es una versión diferente de la división a la que estás acostumbrado. Piensa en ella como la primera división que aprendiste en la escuela primaria, en la que, al hacer la división, obtienes un resultado y un "resto". En realidad, también existe un operador de "resto" en la mayoría de los lenguajes de programación, normalmente el carácter "%".

1 votos

Una de las razones para realizar la división de enteros de esta manera en los lenguajes de programación es que las operaciones de enteros son mucho más rápidas que las de coma flotante. Básicamente, el lenguaje de programación le exige que convierta explícitamente sus tipos enteros en flotantes si quiere hacer aritmética de punto flotante.

7voto

Adjit Puntos 172

Todo depende de lo que quieras que haga tu operación de "división". En otras palabras, qué propiedades debe satisfacer. En los números reales (o racionales, o complejos, etc.), la propiedad más esencial se refiere a $/$ a $\times$ :

La división es inversa a la multiplicación: $a/b = c$ si y sólo si $b \times c = a$ .

Sin embargo, incluso en los sistemas numéricos conocidos, la operación no está cerrada. $a/0$ es indefinido (ya que no hay real (o racional, o complejo) $c$ tal que $0 \times c = a$ . La situación es aún más restringida en los números enteros, donde $a/b$ sólo puede definirse cuando $b$ divide $a$ .

La operación de "división de enteros" (que existe en muchas aplicaciones informáticas utilizando el mismo símbolo " $/$ "), fija la propiedad de cierre (es decir, $a/b$ se define para todos los números enteros excepto cuando $b=0$ ), pero no cumple la propiedad Inversa en general. En mi opinión, debería haber una notación separada, como la función "Cociente" de Mathematica:

Cociente[a,b] = cociente entero de $a$ y $b$ aproximadamente, cuántas veces enteras $b$ entra en $a$ .

Cuando se menciona la coherencia, siempre es con respecto a las propiedades de la operación. El cociente no tiene las mismas propiedades que $/$ y es una función bien definida de enteros (excepto cuando el divisor es $0$ ).

Espero que esto ayude.

0 votos

Estoy totalmente de acuerdo en que la notación debería estar separada, para evitar confusiones. Sin embargo, una pregunta sobre su primer párrafo: usted dice " su " operador de división. ¿Realmente depende de mí? ¿O de alguien? ¿No debería haber un consenso en el campo de las matemáticas sobre lo que significa realmente "/" para el conjunto de los números enteros?

3 votos

No tiene por qué haberla. Como dice Shaun, depende de lo que quieras que haga el operador. Mientras digas lo que quieres decir y seas coherente con tu notación, está bien. Todo lo que estás haciendo realmente es definir una función $\mathbb{Z}^2\to\mathbb{Z}$ y sólo se llama "división" por razones culturales. Para mí, como algebrista, diría que no hay división en $\mathbb{Z}$ porque requeriría que fuera inversa a la multiplicación, pero si alguien me dice que usa la división con resto porque no requiere esta propiedad, ¡no tendré una discusión con él!

1 votos

Le gustará saber que Python tiene una notación separada: 3 / 2 == 1.5 pero 3 // 2 == 1

4voto

sheila hannigan Puntos 38

Recuerda el significado real de la división: Decimos que $a/b=c$ si y sólo si $a = b \cdot c$ . Pero como no hay ningún número entero $z$ tal que $2z = 1$ Esto significa que una simple definición de la división entre números enteros es, por necesidad, incompleta: $1/2$ simplemente no existe en este sentido.

Por otro lado, existe una solución bastante sencilla, que de hecho también ofrecen los lenguajes de programación comunes: Se puede definir la división como división con resto, es decir: decimos que $a/b$ es $q$ con el resto $r$ si y sólo si $a = bq + r$ . Especificando que, por ejemplo, $0 \le r < b$ esta definición produce resultados únicos para todos los $a$ y $b \neq 0$ y el valor de $q$ es, para los naturales $a$ y $b$ exactamente $\mathtt{a/b}$ para la mayoría de los lenguajes de programación. En los lenguajes derivados de C (por ejemplo, Java), el resto $r$ viene dada por $\mathtt{a\%b}$ .

0 votos

Así que te refieres a la opción 1 del artículo citado de la Wikipedia: que 1/2 simplemente no está definido para el conjunto de los números enteros. ¿Es esta interpretación universalmente aceptada en el campo de las matemáticas, o existe un debate real? Al fin y al cabo estamos hablando de matemáticas, ¿realmente puede haber múltiples interpretaciones de lo que significa "/" cuando se opera con números enteros?

0 votos

La operación "/" está bien definida utilizando la división con resto, y esta es la definición que se utiliza comúnmente para los números naturales y enteros. Por supuesto, tienes cosas como "1/2=0", pero esto es sólo la mitad de la verdad aquí, ya que también hay que considerar el resto.

0 votos

Sólo quería decir que no hay manera de definir la división de enteros sin resto y sin contradicciones.

3voto

aduric Puntos 601

Como ya se ha dicho, la notación matemática está muy sobrecargada, ya que un símbolo puede utilizarse para varias nociones potencialmente incompatibles. La noción correcta se da (normalmente) o puede deducirse del contexto, al menos con el nivel de detalle necesario. Los lenguajes de programación agravan este problema.

En definitiva, se puede hacer que cualquier símbolo signifique cualquier cosa siempre que se proporcione una definición. Dicho esto, la división de enteros no es un artificio ad hoc, aunque podría decirse que está mal implementada en la mayoría de los lenguajes de programación. Tomando la "propiedad esencial" de Shaun de la división, podemos debilitarla a otra propiedad que caracteriza completamente la división de enteros. Dejemos que $b$ sea un número entero positivo, y $a$ y $c$ cualquier número entero. Entonces la siguiente propiedad (una conexión o adjunción de Galois) caracteriza la división de enteros: $$\textrm{forall }a \textrm{ and } c\quad a\times{}b \leq c\quad \textrm{if and only if}\quad a \leq c/b$$ Tenga en cuenta que esto es equivalente también a $$\textrm{forall }a \textrm{ and } c\quad a\times{}b \gt c\quad \textrm{if and only if}\quad a \gt c/b$$ Entonces, ¿qué debería $5/3$ ¿ser? Si decimos $0$ entonces tendríamos para todos $a$ , $a \gt 5/3 = 0$ implica $a\times{}3 \gt 5$ lo que no es cierto para $a=1$ . Si decimos $2$ entonces tendríamos para todos $a$ , $a \leq 5/3 = 2$ implica $a\times{}3 \leq 5$ lo que no es cierto para $a=2$ . $a=1$ satisface la propiedad. Más interesante es averiguar qué $(-5)/3$ y compárelo con su lenguaje de programación favorito.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X