13 votos

Es

Es el verdadero? Donde [a] es una matriz 1x1 que contiene el objeto.

$$ \begin{bmatrix} 2 \end{bmatrix} =\\ \begin{bmatrix} \begin{bmatrix} 2 \end{bmatrix} \end{bmatrix} =\\ \begin{bmatrix} \begin{bmatrix} \begin{bmatrix} 2 \end{bmatrix} \end{bmatrix} \end{bmatrix}\\ \vdots $$

Tengo curiosidad porque estoy escribiendo una función para la adición de matrices, pero no hay ninguna regla que prohíbe los elementos de las matrices a ser matrices; por eso quiero saber si

$$ \begin{bmatrix} \begin{bmatrix} \begin{bmatrix} 2 \end{bmatrix} \end{bmatrix} \end{bmatrix} + \begin{bmatrix} \begin{bmatrix} 2 \end{bmatrix} \end{bmatrix} = 4 $$

después de la creación de nombres canónicos o no. También quiero saber si esto es de suma directa de:

$$ \begin{bmatrix} \begin{bmatrix} \begin{bmatrix} 2\\ 4 \end{bmatrix} \end{bmatrix} \end{bmatrix} + \begin{bmatrix} \begin{bmatrix} 2\\ 4 \end{bmatrix} \end{bmatrix} = \begin{bmatrix} 4\\ 8 \end{bmatrix} $$

Soy consciente de que este se mete a la práctica "indexación" de la propiedad, como[0] dejará de tener sentido; pero las matrices no se requieren para apoyar esta propiedad de todos modos, sólo tenemos de forma gratuita para su aplicación como matrices, así que no suponga un inconveniente.

Tengo curiosidad de saber si hay cualquier daño al álgebra si 1 = [1] = [[1]] = [[[1]]] que la hace inutilizable, o si sólo se causa molestia menor?

Roturas tan lejos/gravedad:

  1. La indexación de una matriz(menor de edad)

[3] en 0 es 3, pero el 3 a 0 no está definido(ya que la indexación no es definido por escalares), y no está claro si [[3; 4]] 0 [3; 4], que es lo que sería en la actual álgebra, mientras que sería de 3 en la propuesta de álgebra.

Esto no es muy grave ya que las matrices no son realmente matrices, pero bilineal mapas, por lo que la indexación de ellos es bastante ingenuo para comenzar con. Esta propiedad no funcionará a menos que la matriz dada es canonizado antes de ser indexado.

  1. La multiplicación de la matriz por el escalar(el menor y el daño real).

Hay algunas preocupaciones acerca de si o no la multiplicación por escalares no es válido, pero mi argumento anterior no es válido. así que me lo quitaron.

30voto

vadim123 Puntos 54128

La cuestión ha evolucionado desde mi primera respuesta, así que ahora me ofrecen tres:


Respuesta #1, a la pregunta "¿existe una diferencia entre el$3$$[3]$?":

La respuesta es sí.

$3$ es el número tres.

$[3]$ es una bonita caja de madera, forrado con terciopelo, manteniendo el número tres.

$[[3]]$ es una bonita caja de madera, forrado con terciopelo, que contiene una pequeña caja de madera.

Tenemos $2+3=5$, porque sabemos cómo sumar dos números. No podemos calcular el $[2]+3$, ya que no sabemos cómo agregar un número a una bonita caja de madera. Resulta que $[2]+[3]=[5]$, porque tenemos reglas especiales para la adición de dos cajas de madera.


Respuesta #2, a la pregunta "¿Podemos tratar a $3$ $[3]$ como el mismo?"

Podemos, a excepción de que este no va a ser el estándar de matemáticas más. Otras respuestas (y los comentarios) han señalado las cosas que se rompen. No todo se rompe, la verdad.

Podríamos, asimismo, el tratamiento de $3$ $7$ como el mismo. Esto no romper todos los de las matemáticas, por ejemplo, $2+2=4$ sigue siendo cierto; sin embargo, ahora $7-3=0$, y todo tipo de locura fluye. Siguiendo este a su conclusión natural termina rompiendo un montón. Para evitar esto, sólo podríamos tirar de las piezas que se rompen, dejando a un nuevo tipo de matemáticas (mucho más pequeño ahora) en el que $3=7$. Esto nos lleva a la tercera pregunta y respuesta.


Respuesta #3, a la pregunta "debemos tratar el $3$ $[3]$ como el mismo?"

La respuesta es que no-no deberíamos hacer esto-a menos que tengamos un claro beneficio de hacerlo. Incluso si hay un beneficio, tendría que compararse con el costo de lo que se dará por vencido con esta nueva matemática.

Los únicos beneficios personalmente veo son: (a) una cierta claridad de entendimiento, y (b) una cierta simplicidad en la escritura de las implementaciones de software. Sin embargo, (a) es un pequeño beneficio por el precio de ajuste 3=7, y en mi opinión, la claridad es en realidad categórica confusión. Como para (b), igualmente, es sólo una ilusión; todo lo que se gana es la capacidad para generar estrelló programas muy fácilmente.

15voto

CodeMonkey1313 Puntos 4754

El anillo de matrices reales de $1 \times 1$ es de hecho isomorfo a los números verdaderos, pero no es "lo mismo". Dicho esto, es a menudo conveniente y rara vez confuso para identificarlos. Por ejemplo, usted puede pensar el producto escalar de dos vectores (que es un número real) como el producto matricial de una matriz $1 \times n$ $n \times 1$ matriz, que es una matriz de #% de #% %.

5voto

barryhunter Puntos 10392

Eso es en definitiva una cuestión de convención. Muchas personas que trabajan profesionalmente en álgebra lineal numérica pensar en esos términos, y el mundo todavía sobrevive. Es solo un ligero abuso de notación que normalmente es inofensivo. Como identificar correctamente, usted tiene que tener cuidado con escalares * la matriz, y es mejor para "aplanar" bloque de matrices: $$ \begin{bmatrix} \begin{bmatrix} 1\\2 \end{bmatrix}\\ \begin{bmatrix} 3\\4 \end{bmatrix} \end{bmatrix} = \begin{bmatrix} 1\\2\\3\\4 \end{bmatrix}. $$

Por ejemplo, tenga en cuenta que en Matlab (probablemente el más popular lenguaje de la matriz en los cálculos) escalares se promueve automáticamente a las matrices: las líneas que comienzan con >> son los que me escriben, el resto es de salida

>> [2] == 2
ans =
  logical
   1
>> [[[2;4]]] + [[2;4]]
ans =
     4
     8
>> A=3
A =
     3
>> A(1)
ans =
     3
>> B = [[3;4]]
B =
     3
     4
>> B(1)
ans =
     3

>> C = [1 2; 3 4]
C =
     1     2
     3     4
>> 2*C
ans =
     2     4
     6     8
>> C+2
ans =
     3     4
     5     6
>> B + 2
ans =
     5
     6
>> A = ones(0,2)
A =
  0×2 empty double matrix
>> B = ones(2, 1)
B =
     1
     1
>> A*B
ans =
  0×1 empty double column vector

4voto

Sentinel135 Puntos 196

Veamos esto de una manera diferente. ¿Supongamos que $$A:= \begin{bmatrix} C&D\\ E&F \end{bmatrix}, \:B:= \begin{bmatrix} E&C\\ D&F \end{bmatrix}$$ Would it be possible for us to say have $ a (B) = X $ or $A + B = Y $ for any arbitrary matricies $C $, $D $, $E $, and $F $? How about both $a (B) = X $ and $A + B = Y$ es esto posible? ¿Si hay problemas, cuando se vienen?

1voto

Konchog Puntos 111

Es el verdadero? Donde [a] es una matriz 1x1 que contiene el objeto una.

Como ha sido implicado por @Federico_Poloni y otros, la respuesta de algo depende de si usted es un matemático platónico o matemática formalista. Como yo lo veo, la matemática es un toolchest desde la que se puede sacar cualquier cosa que usted necesita para el trabajo. Así, una típica actividad matemática sería definir un axioma básico, tales como:

Axioma: 1 = [1]

y, a continuación, mira las consecuencias de la afirmación. En muchas formas, lenguajes de programación son subconjuntos de las matemáticas, dentro de los que uno puede encontrar que la mayoría de los idiomas del estado que el axioma es falso, porque los tipos son diferentes, incluso si los valores son los mismos. Algunas de las respuestas de arriba hacen la misma afirmación.

Así que, la verdad, el valor es meramente una convención entre otros, utilizados para explorar los aspectos formales de resolución de problema de idiomas, que se conocen como las matemáticas.

Creo que lo que están pidiendo, sin embargo, es si es o no es seguro hacer la suposición dentro de su entorno particular, y, a continuación, la respuesta tendría que ser"depende del contexto", y del mismo modo, 'depende de cómo la regla va a ser utilizado, definido y entendido'. Si usted está trabajando en el dominio de los lenguajes con tipos, entonces es probablemente una mala idea para hacer que el estado, mientras que si están en el dominio de un tipo de idiomas, todavía puede ser una mala idea, dependiendo de cómo se espera que los usuarios (biológica y artificial) para interactuar con su función.

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