En lógica intuicionista , las fórmulas de Harrop , denominadas así en honor a Ronald Harrop, son la clase de fórmulas definidas inductivamente de la siguiente manera: [1] [2] [3]
- Las fórmulas atómicas son Harrop, incluida la falsedad (⊥);
se proporciona Harrop y son;![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle B}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
es Harrop para cualquier fórmula bien formada ;![{\displaystyle F}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
¿Se proporciona Harrop ? y es cualquier fórmula bien formada;![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle F}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
¿Se proporciona Harrop ?![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Al excluir la disyunción y la cuantificación existencial (excepto en el antecedente de implicación), se evitan los predicados no constructivos , lo que tiene beneficios para la implementación informática.
Discusión
Las fórmulas de Harrop "se portan bien" también en un contexto constructivo. Por ejemplo, en aritmética de Heyting , las fórmulas de Harrop satisfacen una equivalencia clásica que generalmente no se satisface en lógica constructiva: [1]![{\displaystyle {\mathsf {HA}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \neg \neg A\leftrightarrow A.}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Sin embargo, hay afirmaciones que son independientes, lo que significa que son afirmaciones simples para las cuales el medio excluido no es demostrable. De hecho, si bien la lógica intuicionista es válida para cualquiera , la disyunción no será la de Harrop.![{\displaystyle \Pi _{1}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle {\mathsf {PA}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \forall xA}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle {\mathsf {HA}}}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle \neg \neg (P\lor \neg P)}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle P}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Fórmulas hereditarias de Harrop y programación lógica.
Una definición más compleja de fórmulas hereditarias de Harrop se utiliza en programación lógica como una generalización de las cláusulas de Horn y constituye la base del lenguaje λProlog . Las fórmulas hereditarias de Harrop se definen en términos de dos (a veces tres) conjuntos recursivos de fórmulas. En una formulación: [4]
- Las fórmulas atómicas rígidas, es decir, constantes o fórmulas , son hereditarias de Harrop;
![{\displaystyle r}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle r(t_{1},...,t_{n})}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
es hereditario Harrop proporcionado y son;![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle B}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
es hereditario Harrop siempre que sea;![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Harrop es hereditaria, siempre que sea rígidamente atómica y tenga una fórmula G.![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle G}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Las fórmulas G se definen de la siguiente manera: [4]
- Las fórmulas atómicas son G -fórmulas, incluida la verdad (⊤);
se proporciona una fórmula G y son;![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle B}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
se proporciona una fórmula G y son;![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle B}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
es una fórmula G siempre que sea;![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
es una fórmula G siempre que sea;![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
es una fórmula G proporcionada y es hereditaria Harrop.![{\displaystyle A}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
![{\displaystyle H}](data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)
Historia
Las fórmulas de Harrop fueron introducidas alrededor de 1956 por Ronald Harrop e independientemente por Helena Rasiowa . [2] Se utilizan variaciones del concepto fundamental en diferentes ramas de la matemática constructiva y la programación lógica .
Ver también
Referencias