Una matriz lógica , matriz binaria , matriz de relación , matriz booleana o matriz (0, 1) es una matriz con entradas del dominio booleano B = {0, 1}. Una matriz de este tipo se puede utilizar para representar una relación binaria entre un par de conjuntos finitos . Es una herramienta importante en matemáticas combinatorias y en informática teórica .
Si R es una relación binaria entre los conjuntos indexados finitos X e Y (por lo que R ⊆ X × Y ), entonces R puede representarse por la matriz lógica M cuyos índices de fila y columna indexan los elementos de X e Y , respectivamente, de modo que las entradas de M están definidas por
Para designar los números de fila y columna de la matriz, los conjuntos X e Y se indexan con números enteros positivos : i varía de 1 a la cardinalidad (tamaño) de X , y j varía de 1 a la cardinalidad de Y. Consulte el artículo sobre conjuntos indexados para obtener más detalles.
La relación binaria R en el conjunto {1, 2, 3, 4} se define de modo que aRb se cumple si y solo si a divide a b de manera exacta, sin residuo. Por ejemplo, 2 R 4 se cumple porque 2 divide a 4 sin dejar residuo, pero 3 R 4 no se cumple porque cuando 3 divide a 4, queda un residuo de 1. El siguiente conjunto es el conjunto de pares para los que se cumple la relación R.
La representación correspondiente como matriz lógica es
que incluye una diagonal de unos, ya que cada número se divide a sí mismo.
La representación matricial de la relación de igualdad en un conjunto finito es la matriz identidad I , es decir, la matriz cuyas entradas en la diagonal son todas 1, mientras que las demás son todas 0. De manera más general, si la relación R satisface I ⊆ R , entonces R es una relación reflexiva .
Si el dominio booleano se considera como un semianillo , donde la adición corresponde a la operación OR lógica y la multiplicación a la operación AND lógica , la representación matricial de la composición de dos relaciones es igual al producto matricial de las representaciones matriciales de estas relaciones. Este producto se puede calcular en un tiempo esperado O( n 2 ). [2]
Con frecuencia, las operaciones con matrices binarias se definen en términos de aritmética modular módulo 2, es decir, los elementos se tratan como elementos del cuerpo de Galois . Surgen en una variedad de representaciones y tienen una serie de formas especiales más restringidas. Se aplican, por ejemplo, en la satisfacibilidad XOR .
El número de matrices binarias m por n distintas es igual a 2mn y, por lo tanto, es finito.
Sean n y m y sea U el conjunto de todas las matrices lógicas m × n . Entonces U tiene un orden parcial dado por
De hecho, U forma un álgebra de Boole con las operaciones y & o entre dos matrices aplicadas componente por componente. El complemento de una matriz lógica se obtiene intercambiando todos los ceros y unos por su opuesto.
Toda matriz lógica A = ( A ij ) tiene una transpuesta A T = ( A ji ). Supongamos que A es una matriz lógica sin columnas ni filas idénticamente cero. Entonces, el producto de matrices, utilizando aritmética booleana, contiene la matriz identidad m × m , y el producto contiene la matriz identidad n × n .
Como estructura matemática, el álgebra de Boole U forma una red ordenada por inclusión ; además es una red multiplicativa debido a la multiplicación de matrices.
Toda matriz lógica en U corresponde a una relación binaria. Estas operaciones enumeradas en U y el ordenamiento corresponden a un cálculo de relaciones , donde la multiplicación de matrices representa la composición de relaciones . [3]
Si m o n es igual a uno, entonces la matriz lógica m × n ( m ij ) es un vector lógico o una cadena de bits . Si m = 1, el vector es un vector fila, y si n = 1, es un vector columna. En cualquier caso, el índice igual a 1 se omite de la denotación del vector.
Supongamos que y son dos vectores lógicos. El producto externo de P y Q da como resultado una relación rectangular de m × n
Un reordenamiento de las filas y columnas de dicha matriz puede reunir todos los unos en una parte rectangular de la matriz. [4]
Sea h el vector de todos los unos. Entonces, si v es un vector lógico arbitrario, la relación R = vh T tiene filas constantes determinadas por v . En el cálculo de relaciones, un R de este tipo se denomina vector. [4] Un caso particular es la relación universal .
Para una relación dada R , una relación rectangular máxima contenida en R se denomina concepto en R . Las relaciones se pueden estudiar descomponiéndolas en conceptos y luego observando la red de conceptos inducida .
Considere la tabla de estructuras similares a grupos, donde "innecesario" puede denotarse por 0 y "requerido" por 1, formando una matriz lógica Para calcular elementos de , es necesario usar el producto interno lógico de pares de vectores lógicos en filas de esta matriz. Si este producto interno es 0, entonces las filas son ortogonales. De hecho, la categoría pequeña es ortogonal al cuasigrupo y el grupoide es ortogonal al magma . En consecuencia, hay ceros en , y no puede ser una relación universal .
La suma de todos los unos en una matriz lógica se puede lograr de dos maneras: primero sumando las filas o primero sumando las columnas. Cuando se suman las sumas de las filas, la suma es la misma que cuando se suman las sumas de las columnas. En geometría de incidencia , la matriz se interpreta como una matriz de incidencia con las filas correspondientes a "puntos" y las columnas como "bloques" (generalizando líneas hechas de puntos). Una suma de filas se llama su grado de punto , y una suma de columnas es el grado de bloque . La suma de los grados de los puntos es igual a la suma de los grados de los bloques. [5]
Un problema temprano en el área fue "encontrar condiciones necesarias y suficientes para la existencia de una estructura de incidencia con grados de puntos y grados de bloques dados; o en lenguaje matricial, para la existencia de una matriz (0, 1) de tipo v × b con sumas de filas y columnas dadas". [5] Este problema se resuelve mediante el teorema de Gale-Ryser .