En lógica , una lógica de tres valores (también lógica trinaria , trivalente , ternaria o trileana , [1] a veces abreviada 3VL ) es cualquiera de varios sistemas lógicos de muchos valores en los que hay tres valores de verdad que indican verdadero , falso y algunos. tercer valor. Esto se contrasta con las lógicas bivalentes más comúnmente conocidas (como la lógica oracional clásica o booleana ) que sólo prevén verdadero y falso .
A Emil Leon Post se le atribuye la introducción por primera vez de grados de verdad lógica adicionales en su teoría de las proposiciones elementales de 1921. [2] La forma conceptual y las ideas básicas de la lógica de tres valores fueron publicadas inicialmente por Jan Łukasiewicz y Clarence Irving Lewis . Luego , Grigore Constantin Moisil los reformuló en una forma algebraica axiomática y también los extendió a lógicas con valores n en 1945.
Alrededor de 1910, Charles Sanders Peirce definió un sistema lógico de muchos valores . Nunca lo publicó. De hecho, ni siquiera numeró las tres páginas de notas donde definió sus operadores de tres valores. [3] Peirce rechazó rotundamente la idea de que todas las proposiciones deben ser verdaderas o falsas; las proposiciones de frontera, escribe, están "en el límite entre P y no P". [4] Sin embargo, a pesar de lo seguro que estaba de que "la lógica triádica es universalmente cierta", [5] también anotó que "Todo esto está muy cerca de ser una tontería". [6] Sólo en 1966, cuando Max Fisch y Atwell Turquette comenzaron a publicar lo que redescubrieron en sus manuscritos inéditos, las ideas triádicas de Peirce se hicieron ampliamente conocidas. [7]
Al igual que con la lógica bivalente, los valores de verdad en la lógica ternaria se pueden representar numéricamente utilizando varias representaciones del sistema numérico ternario . Algunos de los ejemplos más comunes son:
Dentro de una computadora ternaria , los valores ternarios están representados por señales ternarias .
Este artículo ilustra principalmente un sistema de lógica proposicional ternaria que utiliza los valores de verdad {falso, desconocido, verdadero} y extiende los conectivos booleanos convencionales a un contexto trivalente.
La lógica booleana permite 2 2 = 4 operadores unarios ; la adición de un tercer valor en lógica ternaria conduce a un total de 3 3 = 27 operadores distintos en un único valor de entrada. (Esto puede quedar claro considerando todas las tablas de verdad posibles para un operador unario arbitrario. Dados 2 valores posibles TF de una única entrada booleana, hay cuatro patrones diferentes de salida TT, TF, FT, FF resultantes de los siguientes operadores unarios que actúan en cada valor: siempre T, Identidad, NOT, siempre F. Dados tres valores posibles de una variable ternaria, cada vez tres resultados posibles de una operación unaria, hay 27 patrones de salida diferentes: TTT, TTU, TTF, TUT, TUU, TUF, TFT, TFU, TFF, UTT, UTU, UTF, UUT, UUU, UUF, UFT, UFU, UFF, FTT, FTU, FTF, FUT, FUU, FUF, FFT, FFU y FFF.) De manera similar, donde es booleano la lógica tiene 2 2 × 2 = 16 operadores binarios distintos (operadores con 2 entradas) posibles, la lógica ternaria tiene 3 3 × 3 = 19,683 de dichos operadores. Cuando los operadores booleanos no triviales pueden nombrarse ( AND , NAND , OR , NOR , XOR , XNOR ( equivalencia ) y 4 variantes de implicación o desigualdad), con seis operadores triviales considerando 0 o 1 entradas únicamente, no es razonable intentar nombre todos excepto una pequeña fracción de los posibles operadores ternarios. [11] Al igual que en la lógica bivalente, donde no todos los operadores reciben nombres y se utilizan subconjuntos de operadores funcionalmente completos , puede haber conjuntos funcionalmente completos de operadores con valores ternarios.
A continuación se muestra un conjunto de tablas de verdad que muestran las operaciones lógicas de la "lógica fuerte de la indeterminación" de Stephen Cole Kleene y la "lógica de la paradoja" de Graham Priest .
En estas tablas de verdad, el estado desconocido no puede considerarse ni verdadero ni falso en la lógica de Kleene, o como verdadero y falso en la lógica de Priest. La diferencia radica en la definición de tautologías. Mientras que el único valor de verdad designado por la lógica de Kleene es T, los valores de verdad designados por la lógica de Priest son tanto T como U. En la lógica de Kleene, el conocimiento de si un estado desconocido en particular representa secretamente verdadero o falso en cualquier momento no está disponible. Sin embargo, ciertas operaciones lógicas pueden producir un resultado inequívoco, incluso si involucran un operando desconocido . Por ejemplo, debido a que verdadero O verdadero es igual a verdadero , y verdadero O falso también es igual a verdadero , entonces verdadero O desconocido también es igual a verdadero . En este ejemplo, debido a que cualquiera de los estados bivalentes podría estar subyacente al estado desconocido , y cualquiera de los dos estados también produce el mismo resultado, el resultado es verdadero en los tres casos.
Si los valores numéricos, por ejemplo, valores ternarios equilibrados , se asignan a falso , desconocido y verdadero de manera que falso es menor que desconocido y desconocido es menor que verdadero , entonces A AND B AND C... = MIN(A, B, C .. .) y A O B O C... = MAX(A, B, C...).
La implicación material para la lógica de Kleene se puede definir como:
, y su tabla de verdad es
que difiere de la de la lógica de Łukasiewicz (descrita a continuación).
La lógica de Kleene no tiene tautologías (fórmulas válidas) porque siempre que a todos los componentes atómicos de una fórmula bien formada se les asigna el valor Desconocido, la fórmula en sí también debe tener el valor Desconocido. (Y el único valor de verdad designado para la lógica de Kleene es Verdadero). Sin embargo, la falta de fórmulas válidas no significa que carezca de argumentos válidos y/o reglas de inferencia. Un argumento es semánticamente válido en la lógica de Kleene si, siempre que (para cualquier interpretación/modelo) todas sus premisas sean verdaderas, la conclusión también debe ser verdadera. (La Lógica de la Paradoja (LP) tiene las mismas tablas de verdad que la lógica de Kleene, pero tiene dos valores de verdad designados en lugar de uno; estos son: Verdadero y Ambos (el análogo de Desconocido), de modo que LP tiene tautologías pero tiene menos reglas de inferencia válidas). [12]
El Łukasiewicz Ł3 tiene las mismas tablas para Y, O y NO que la lógica de Kleene dada anteriormente, pero difiere en su definición de implicación en que "desconocido implica desconocido" es verdadero . Esta sección sigue la presentación del capítulo de Malinowski del Manual de Historia de la Lógica , vol 8. [13]
La implicación material para la tabla de verdad lógica de Łukasiewicz es
De hecho, utilizando la implicación y negación de Łukasiewicz, los otros conectivos habituales se pueden derivar como:
También es posible derivar algunos otros operadores unarios útiles (derivados por primera vez por Tarski en 1921): [ cita necesaria ]
Tienen las siguientes tablas de verdad:
M se lee como "no es falso que..." o en el (fallido) intento de Tarski-Łukasiewicz de axiomatizar la lógica modal usando una lógica de tres valores, "es posible que..." L se lee "es cierto que..." o "es necesario que..." Finalmente se lee "se desconoce que..." o "es contingente que..."
En Ł3 de Łukasiewicz el valor designado es Verdadero, lo que significa que sólo una proposición que tiene este valor en todas partes se considera una tautología . Por ejemplo, A → A y A ↔ A son tautologías en Ł3 y también en lógica clásica. No todas las tautologías de la lógica clásica se elevan a Ł3 "tal cual". Por ejemplo, la ley del tercero excluido , A ∨ ¬ A , y la ley de no contradicción , ¬( A ∧ ¬ A ) no son tautologías en Ł3. Sin embargo, utilizando el operador que definí anteriormente, es posible establecer tautologías que son sus análogas:
La tabla de verdad para la implicación material de R-mingle 3 (RM3) es
Una característica definitoria de RM3 es la falta del axioma de Debilitamiento:
que, por adjunción, equivale a la proyección del producto:
RM3 es una categoría cerrada monoidal simétrica no cartesiana; el producto, que está adjunto a la izquierda de la implicación, carece de proyecciones válidas y tiene U como identidad monoide. Esta lógica equivale a una lógica paraconsistente "ideal" que también obedece a la contrapositiva.
La lógica de aquí y de allá ( HT , también denominada lógica de Smetanov SmT o lógica de Gödel G3), introducida por Heyting en 1930 [14] como modelo para estudiar la lógica intuicionista , es una lógica intermedia de tres valores donde el tercer valor de verdad NF (no falso) tiene la semántica de una proposición que se puede demostrar intuicionistamente que no es falsa, pero no tiene una prueba intuicionista de corrección.
Puede definirse agregando uno de los dos axiomas equivalentes (¬ q → p ) → ((( p → q ) → p ) → p ) o de manera equivalente p ∨(¬ q )∨( p → q ) a los axiomas de la lógica intuicionista , o por tablas de verdad explícitas para sus operaciones. En particular, la conjunción y la disyunción son las mismas que para la lógica de Kleene y Łukasiewicz, mientras que la negación es diferente.
La lógica HT es la única capa en el entramado de lógicas intermedias. En este sentido, puede considerarse como la lógica intermedia "segunda más fuerte" después de la lógica clásica.
Esta lógica también se conoce como una forma débil de la lógica de tres valores de Kleene.
Algunas álgebras modulares 3VL se han introducido más recientemente, motivadas por problemas de circuitos más que por cuestiones filosóficas: [15]
El lenguaje de consulta estructural de la base de datos SQL implementa la lógica ternaria como medio para manejar comparaciones con el contenido de campos NULL . Originalmente, NULL estaba pensado para usarse como valor centinela en SQL para representar datos faltantes en una base de datos, es decir, la suposición de que existe un valor real, pero que el valor no está registrado actualmente en la base de datos. SQL utiliza un fragmento común de la lógica Kleene K3, restringido a tablas AND, OR y NOT.
En SQL, el valor intermedio debe interpretarse como DESCONOCIDO. Las comparaciones explícitas con NULL, incluida la de otro NULL, arrojan DESCONOCIDO. Sin embargo, esta elección de semántica se abandona para algunas operaciones de conjuntos, por ejemplo, UNION o INTERSECT, donde los NULL se tratan como iguales entre sí. Los críticos afirman que esta inconsistencia priva a SQL de una semántica intuitiva en su tratamiento de NULL. [17] El estándar SQL define una característica opcional llamada F571, que agrega algunos operadores unarios, entre los que se encuentra IS UNKNOWN
el correspondiente al de Łukasiewicz I en este artículo. La adición de IS UNKNOWN
a los otros operadores de la lógica de tres valores de SQL hace que la lógica de tres valores de SQL sea funcionalmente completa , [18] lo que significa que sus operadores lógicos pueden expresar (en combinación) cualquier función lógica de tres valores concebible.
La lógica triádica es universalmente cierta. Pero la lógica diádica no es del todo falsa.