<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>https://www.glc.us.es/~jalonso/LMF2015/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=WikiSysop</id>
	<title>Lógica matemática y fundamentos (2014-15) - Contribuciones del usuario [es]</title>
	<link rel="self" type="application/atom+xml" href="https://www.glc.us.es/~jalonso/LMF2015/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=WikiSysop"/>
	<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php/Especial:Contribuciones/WikiSysop"/>
	<updated>2026-07-19T05:01:12Z</updated>
	<subtitle>Contribuciones del usuario</subtitle>
	<generator>MediaWiki 1.31.14</generator>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=L%C3%B3gica_matem%C3%A1tica_y_fundamentos_(2014-15)&amp;diff=355</id>
		<title>Lógica matemática y fundamentos (2014-15)</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=L%C3%B3gica_matem%C3%A1tica_y_fundamentos_(2014-15)&amp;diff=355"/>
		<updated>2018-07-16T12:29:36Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En esta página se publicarán las relaciones de ejercicios y sus soluciones colaborativas.&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 1(a)&amp;#039;&amp;#039;&amp;#039;: Iniciación a la programación con Haskell ([[Media:Rel_1.hs |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 1(b)&amp;#039;&amp;#039;&amp;#039;: Tema 1. ([[R2 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 2(a)&amp;#039;&amp;#039;&amp;#039;: Sintaxis y semántica de la lógica proposicional en Haskell. ([[Media:SintaxisSemantica.hs |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 2(b)&amp;#039;&amp;#039;&amp;#039;: Tema 1:  cuestiones ([[R2b |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 3&amp;#039;&amp;#039;&amp;#039;: Deducción natural proposicional con Isabelle/HOL. ([[Rel_3 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 4&amp;#039;&amp;#039;&amp;#039;: Deducción natural en lógica de primer con Isabelle/HOL. ([[Rel_4 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 5&amp;#039;&amp;#039;&amp;#039;: Formalización de argumentos en lógica de primer orden. ([[Rel_5 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;&amp;lt;font style=&amp;quot;background:#FFFF00&amp;quot;&amp;gt;Relación 5 (resuelta)&amp;lt;/font&amp;gt;&amp;#039;&amp;#039;&amp;#039;:[[Relación 5 (resuelta) |Solución]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 6&amp;#039;&amp;#039;&amp;#039;: Sintaxis y semántica de la Lógica de primer orden ([[R6 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 7&amp;#039;&amp;#039;&amp;#039;: Tableros semánticos proposicionales en Haskell. ([[Media:TablerosSemanticos.hs |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 8&amp;#039;&amp;#039;&amp;#039;: Cuestiones sobre tableros semánticos ([[R8 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 9&amp;#039;&amp;#039;&amp;#039;: Formas normales en lógica proposicional en Haskell ([[Media:FormasNormales.hs |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 10&amp;#039;&amp;#039;&amp;#039;: Cuestiones. ([[R10 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 11&amp;#039;&amp;#039;&amp;#039;: Cláusulas proposicionales en Haskell. ([[Media:Clausulas.hs |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 12&amp;#039;&amp;#039;&amp;#039;: Resolución proposicional en Haskell. ([[Media:ResolucionProposicional.hs |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 13&amp;#039;&amp;#039;&amp;#039;: Cuestiones. ([[R13 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 14&amp;#039;&amp;#039;&amp;#039;: Argumentación y Deducción natural en lógica de primer orden.([[R14 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 15&amp;#039;&amp;#039;&amp;#039;: Tableros semánticos en lógica de primer orden.([[R15 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 16&amp;#039;&amp;#039;&amp;#039;: Resolución en lógica de primer orden.([[R16 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Segundo examen (resuelto)&amp;#039;&amp;#039;&amp;#039;:([[Ejercicio 4 (a) |Solución_4a]], [[Ejercicio 4 (b)|Solución_4b]],[[Ejercicio 5 (a) |Solución_5a]] y [[Ejercicio 5 (b) |Solución_5b]]).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Teorías Isabelle/HOL ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Tema 2&amp;#039;&amp;#039;&amp;#039;: [[Tema 2 | Deducción natural en lógica proposicional con Isabelle/HOL]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Tema 8&amp;#039;&amp;#039;&amp;#039;: [[Tema 8 | Deducción natural en lógica de primer orden con Isabelle/HOL]].&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Tema_2&amp;diff=354</id>
		<title>Tema 2</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Tema_2&amp;diff=354"/>
		<updated>2018-07-16T12:27:12Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang=&amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* Tema 2: Deducción natural proposicional con Isabelle/HOL *}&lt;br /&gt;
&lt;br /&gt;
theory T2&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  En este tema se presentan los ejemplos del tema de deducción natural&lt;br /&gt;
  proposicional siguiendo la presentación de Huth y Ryan en su libro&lt;br /&gt;
  &amp;quot;Logic in Computer Science&amp;quot; http://goo.gl/qsVpY y, más concretamente,&lt;br /&gt;
  a la forma como se explica en la asignatura.&lt;br /&gt;
 &lt;br /&gt;
  La página al lado de cada ejemplo indica la página de las transparencias &lt;br /&gt;
  donde se encuentra la demostración. *}&lt;br /&gt;
&lt;br /&gt;
subsection {* Reglas de la conjunción *}&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 1 (p. 4). Demostrar que&lt;br /&gt;
     p ∧ q, r ⊢ q ∧ r.&lt;br /&gt;
  *}     &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_1_1:&lt;br /&gt;
  assumes 1: &amp;quot;p ∧ q&amp;quot; and&lt;br /&gt;
          2: &amp;quot;r&amp;quot; &lt;br /&gt;
  shows &amp;quot;q ∧ r&amp;quot;     &lt;br /&gt;
proof -&lt;br /&gt;
  have 3: &amp;quot;q&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
  show 4: &amp;quot;q ∧ r&amp;quot; using 3 2 by (rule conjI)&lt;br /&gt;
qed&lt;br /&gt;
thm ejemplo_1_1&lt;br /&gt;
text {*&lt;br /&gt;
  Notas sobre el lenguaje: En la demostración anterior se ha usado&lt;br /&gt;
  · &amp;quot;assumes&amp;quot; para indicar las hipótesis,&lt;br /&gt;
  · &amp;quot;and&amp;quot; para separar las hipótesis,&lt;br /&gt;
  · &amp;quot;shows&amp;quot; para indicar la conclusión,&lt;br /&gt;
  · &amp;quot;proof&amp;quot; para iniciar la prueba,&lt;br /&gt;
  · &amp;quot;qed&amp;quot; para terminar la pruebas,&lt;br /&gt;
  · &amp;quot;-&amp;quot; (después de &amp;quot;proof&amp;quot;) para no usar el método por defecto,&lt;br /&gt;
  · &amp;quot;have&amp;quot; para establecer un paso,&lt;br /&gt;
  · &amp;quot;using&amp;quot; para usar hechos en un paso,&lt;br /&gt;
  · &amp;quot;by (rule ..)&amp;quot; para indicar la regla con la que se peueba un hecho,&lt;br /&gt;
  · &amp;quot;show&amp;quot; para establecer la conclusión.&lt;br /&gt;
&lt;br /&gt;
  Notas sobre la lógica: Las reglas de la conjunción son&lt;br /&gt;
  · conjI:      ⟦P; Q⟧ ⟹ P ∧ Q&lt;br /&gt;
  · conjunct1:  P ∧ Q ⟹ P&lt;br /&gt;
  · conjunct2:  P ∧ Q ⟹ Q  &lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {* Se pueden dejar implícitas las reglas como sigue *}&lt;br /&gt;
&lt;br /&gt;
lemma ejemplo_1_2:&lt;br /&gt;
  assumes 1: &amp;quot;p ∧ q&amp;quot; and &lt;br /&gt;
          2: &amp;quot;r&amp;quot; &lt;br /&gt;
  shows &amp;quot;q ∧ r&amp;quot;     &lt;br /&gt;
proof -&lt;br /&gt;
  have 3: &amp;quot;q&amp;quot; using 1 .. &lt;br /&gt;
  show 4: &amp;quot;q ∧ r&amp;quot; using 3 2 ..&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Nota sobre el lenguaje: En la demostración anterior se ha usado&lt;br /&gt;
  · &amp;quot;..&amp;quot; para indicar que se prueba por la regla correspondiente. *}&lt;br /&gt;
&lt;br /&gt;
text {* Se pueden eliminar las etiquetas como sigue *}&lt;br /&gt;
&lt;br /&gt;
lemma ejemplo_1_3:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot; &lt;br /&gt;
          &amp;quot;r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q ∧ r&amp;quot;     &lt;br /&gt;
proof -&lt;br /&gt;
  have &amp;quot;q&amp;quot; using assms(1) ..&lt;br /&gt;
  thus &amp;quot;q ∧ r&amp;quot; using assms(2) ..&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Nota sobre el lenguaje: En la demostración anterior se ha usado&lt;br /&gt;
  · &amp;quot;assms(n)&amp;quot; para indicar la hipótesis n y&lt;br /&gt;
  · &amp;quot;thus&amp;quot; para demostrar la conclusión usando el hecho anterior.&lt;br /&gt;
  Además, no es necesario usar and entre las hipótesis. *}&lt;br /&gt;
&lt;br /&gt;
text {* Se puede automatizar la demostración como sigue *}&lt;br /&gt;
  &lt;br /&gt;
lemma ejemplo_1_4:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot; &lt;br /&gt;
          &amp;quot;r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q ∧ r&amp;quot;     &lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Nota sobre el lenguaje: En la demostración anterior se ha usado&lt;br /&gt;
  · &amp;quot;assms&amp;quot; para indicar las hipótesis y&lt;br /&gt;
  · &amp;quot;by auto&amp;quot; para demostrar la conclusión automáticamente. *}&lt;br /&gt;
&lt;br /&gt;
text {* Se puede automatizar totalmente la demostración como sigue *}&lt;br /&gt;
&lt;br /&gt;
lemma ejemplo_1_5:&lt;br /&gt;
  &amp;quot;⟦p ∧ q; r⟧ ⟹ q ∧ r&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Nota sobre el lenguaje: En la demostración anterior se ha usado&lt;br /&gt;
  · &amp;quot;⟦ ... ⟧&amp;quot; para representar las hipótesis,&lt;br /&gt;
  · &amp;quot;;&amp;quot; para separar las hipótesis y&lt;br /&gt;
  · &amp;quot;⟹&amp;quot; para separar las hipótesis de la conclusión. *}&lt;br /&gt;
&lt;br /&gt;
text {* Se puede hacer la demostración por razonamiento hacia atrás,&lt;br /&gt;
  como sigue *}&lt;br /&gt;
&lt;br /&gt;
lemma ejemplo_1_6:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot; &lt;br /&gt;
      and &amp;quot;r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q ∧ r&amp;quot;     &lt;br /&gt;
proof (rule conjI)&lt;br /&gt;
  show &amp;quot;q&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
next&lt;br /&gt;
  show &amp;quot;r&amp;quot; using assms(2) by this&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Nota sobre el lenguaje: En la demostración anterior se ha usado&lt;br /&gt;
  · &amp;quot;proof (rule r)&amp;quot; para indicar que se hará la demostración con la&lt;br /&gt;
    regla r,&lt;br /&gt;
  · &amp;quot;next&amp;quot; para indicar el comienzo de la prueba del siguiente&lt;br /&gt;
    subobjetivo,&lt;br /&gt;
  · &amp;quot;this&amp;quot; para indicar el hecho actual. *}&lt;br /&gt;
&lt;br /&gt;
text {* Se pueden dejar implícitas las reglas como sigue *}&lt;br /&gt;
&lt;br /&gt;
lemma ejemplo_1_7:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot; &lt;br /&gt;
          &amp;quot;r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q ∧ r&amp;quot;     &lt;br /&gt;
proof &lt;br /&gt;
  show &amp;quot;q&amp;quot; using assms(1) ..&lt;br /&gt;
next&lt;br /&gt;
  show &amp;quot;r&amp;quot; using assms(2) . &lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Nota sobre el lenguaje: En la demostración anterior se ha usado&lt;br /&gt;
  · &amp;quot;.&amp;quot; para indicar por el hecho actual. *}&lt;br /&gt;
&lt;br /&gt;
subsection {* Reglas de la doble negación *}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  La regla de eliminación de la doble negación es&lt;br /&gt;
  · notnotD: ¬¬ P ⟹ P&lt;br /&gt;
&lt;br /&gt;
  Para ajustarnos al tema de LI vamos a introducir la siguiente regla de&lt;br /&gt;
  introducción de la doble negación&lt;br /&gt;
  · notnotI: P ⟹ ¬¬ P&lt;br /&gt;
  aunque, de momento, no detallamos su demostración.&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
lemma notnotI [intro!]: &amp;quot;P ⟹ ¬¬ P&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Ejemplo 2. (p. 5)&lt;br /&gt;
       p, ¬¬(q ∧ r) ⊢ ¬¬p ∧ r&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_2_1:&lt;br /&gt;
  assumes 1: &amp;quot;p&amp;quot; and&lt;br /&gt;
          2: &amp;quot;¬¬(q ∧ r)&amp;quot; &lt;br /&gt;
  shows      &amp;quot;¬¬p ∧ r&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have 3: &amp;quot;¬¬p&amp;quot; using 1 by (rule notnotI)&lt;br /&gt;
  have 4: &amp;quot;q ∧ r&amp;quot; using 2 by (rule notnotD)&lt;br /&gt;
  have 5: &amp;quot;r&amp;quot; using 4 by (rule conjunct2)&lt;br /&gt;
  show 6: &amp;quot;¬¬p ∧ r&amp;quot; using 3 5 by (rule conjI)&lt;br /&gt;
qed        &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_2_2:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot; &lt;br /&gt;
          &amp;quot;¬¬(q ∧ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬¬p ∧ r&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have  &amp;quot;¬¬p&amp;quot; using assms(1) ..&lt;br /&gt;
  have  &amp;quot;q ∧ r&amp;quot; using assms(2) by (rule notnotD)&lt;br /&gt;
  hence &amp;quot;r&amp;quot; ..&lt;br /&gt;
  with `¬¬p` show  &amp;quot;¬¬p ∧ r&amp;quot; ..&lt;br /&gt;
qed        &lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Nota sobre el lenguaje: En la demostración anterior se ha usado&lt;br /&gt;
  · &amp;quot;hence&amp;quot; para indicar que se tiene por el hecho anterior,&lt;br /&gt;
  · `...` para referenciar un hecho y&lt;br /&gt;
  · &amp;quot;with P show Q&amp;quot; para indicar que con el hecho anterior junto con el&lt;br /&gt;
    hecho P se demuestra Q. *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_2_3:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot; &lt;br /&gt;
          &amp;quot;¬¬(q ∧ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬¬p ∧ r&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* Se puede demostrar hacia atrás *}&lt;br /&gt;
&lt;br /&gt;
lemma ejemplo_2_4:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot; &lt;br /&gt;
          &amp;quot;¬¬(q ∧ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬¬p ∧ r&amp;quot;&lt;br /&gt;
proof  (rule conjI)&lt;br /&gt;
  show &amp;quot;¬¬p&amp;quot; using assms(1) by (rule notnotI)&lt;br /&gt;
next&lt;br /&gt;
  have &amp;quot;q ∧ r&amp;quot; using assms(2) by (rule notnotD) &lt;br /&gt;
  thus &amp;quot;r&amp;quot; by (rule conjunct2)&lt;br /&gt;
qed &lt;br /&gt;
&lt;br /&gt;
text {* Se puede eliminar las reglas en la demostración anterior, como&lt;br /&gt;
  sigue: *}&lt;br /&gt;
&lt;br /&gt;
lemma ejemplo_2_5:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot; &lt;br /&gt;
          &amp;quot;¬¬(q ∧ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬¬p ∧ r&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
  show &amp;quot;¬¬p&amp;quot; using assms(1) ..&lt;br /&gt;
next&lt;br /&gt;
  have &amp;quot;q ∧ r&amp;quot; using assms(2) by (rule notnotD) &lt;br /&gt;
  thus &amp;quot;r&amp;quot; .. &lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
subsection {* Regla de eliminación del condicional *}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  La regla de eliminación del condicional es la regla del modus ponens&lt;br /&gt;
  · mp: ⟦P ⟶ Q; P⟧ ⟹ Q &lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 3. (p. 6) Demostrar que&lt;br /&gt;
     ¬p ∧ q, ¬p ∧ q ⟶ r ∨ ¬p ⊢ r ∨ ¬p&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_3_1:&lt;br /&gt;
  assumes 1: &amp;quot;¬p ∧ q&amp;quot; and &lt;br /&gt;
          2: &amp;quot;¬p ∧ q ⟶ r ∨ ¬p&amp;quot; &lt;br /&gt;
  shows      &amp;quot;r ∨ ¬p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  show &amp;quot;r ∨ ¬p&amp;quot; using 2 1 by (rule mp)&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_3_2:&lt;br /&gt;
  assumes &amp;quot;¬p ∧ q&amp;quot;&lt;br /&gt;
          &amp;quot;¬p ∧ q ⟶ r ∨ ¬p&amp;quot; &lt;br /&gt;
  shows   &amp;quot;r ∨ ¬p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  show &amp;quot;r ∨ ¬p&amp;quot; using assms(2,1) ..&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_3_3:&lt;br /&gt;
  assumes &amp;quot;¬p ∧ q&amp;quot;&lt;br /&gt;
          &amp;quot;¬p ∧ q ⟶ r ∨ ¬p&amp;quot; &lt;br /&gt;
  shows   &amp;quot;r ∨ ¬p&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 4 (p. 6) Demostrar que&lt;br /&gt;
     p, p ⟶ q, p ⟶ (q ⟶ r) ⊢ r&lt;br /&gt;
 *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_4_1:&lt;br /&gt;
  assumes 1: &amp;quot;p&amp;quot; and &lt;br /&gt;
          2: &amp;quot;p ⟶ q&amp;quot; and &lt;br /&gt;
          3: &amp;quot;p ⟶ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows &amp;quot;r&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have 4: &amp;quot;q&amp;quot; using 2 1 by (rule mp)&lt;br /&gt;
  have 5: &amp;quot;q ⟶ r&amp;quot; using 3 1 by (rule mp)&lt;br /&gt;
  show 6: &amp;quot;r&amp;quot; using 5 4 by (rule mp)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_4_2:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot;&lt;br /&gt;
          &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;p ⟶ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows &amp;quot;r&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have &amp;quot;q&amp;quot; using assms(2,1) .. &lt;br /&gt;
  have &amp;quot;q ⟶ r&amp;quot; using assms(3,1) ..&lt;br /&gt;
  thus &amp;quot;r&amp;quot; using `q` ..&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_4_3:&lt;br /&gt;
  &amp;quot;⟦p; p ⟶ q; p ⟶ (q ⟶ r)⟧ ⟹ r&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
subsection {* Regla derivada del modus tollens *}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Para ajustarnos al tema de LI vamos a introducir la regla del modus&lt;br /&gt;
  tollens&lt;br /&gt;
  · mt: ⟦F ⟶ G; ¬G⟧ ⟹ ¬F &lt;br /&gt;
  aunque, de momento, sin detallar su demostración.&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
lemma mt: &amp;quot;⟦F ⟶ G; ¬G⟧ ⟹ ¬F&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Ejemplo 5 (p. 7). Demostrar&lt;br /&gt;
     p ⟶ (q ⟶ r), p, ¬r ⊢ ¬q&lt;br /&gt;
 *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_5_1:&lt;br /&gt;
  assumes 1: &amp;quot;p ⟶ (q ⟶ r)&amp;quot; and &lt;br /&gt;
          2: &amp;quot;p&amp;quot; and &lt;br /&gt;
          3: &amp;quot;¬r&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬q&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have 4: &amp;quot;q ⟶ r&amp;quot; using 1 2 by (rule mp)&lt;br /&gt;
  show &amp;quot;¬q&amp;quot; using 4 3 by (rule mt)&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_5_2:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ r)&amp;quot;&lt;br /&gt;
          &amp;quot;p&amp;quot;&lt;br /&gt;
          &amp;quot;¬r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬q&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have &amp;quot;q ⟶ r&amp;quot; using assms(1,2) ..&lt;br /&gt;
  thus &amp;quot;¬q&amp;quot; using assms(3) by (rule mt)&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_5_3:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ r)&amp;quot;&lt;br /&gt;
          &amp;quot;p&amp;quot;&lt;br /&gt;
          &amp;quot;¬r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬q&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 6. (p. 7) Demostrar &lt;br /&gt;
     ¬p ⟶ q, ¬q ⊢ p&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_6_1:&lt;br /&gt;
  assumes 1: &amp;quot;¬p ⟶ q&amp;quot; and &lt;br /&gt;
          2: &amp;quot;¬q&amp;quot; &lt;br /&gt;
  shows &amp;quot;p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have 3: &amp;quot;¬¬p&amp;quot; using 1 2 by (rule mt)&lt;br /&gt;
  show &amp;quot;p&amp;quot; using 3 by (rule notnotD)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_6_2:&lt;br /&gt;
  assumes &amp;quot;¬p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;¬q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have &amp;quot;¬¬p&amp;quot; using assms(1,2) by (rule mt)&lt;br /&gt;
  thus &amp;quot;p&amp;quot; by (rule notnotD)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_6_3:&lt;br /&gt;
  &amp;quot;⟦¬p ⟶ q; ¬q⟧ ⟹ p&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 7. (p. 7) Demostrar&lt;br /&gt;
     p ⟶ ¬q, q ⊢ ¬p&lt;br /&gt;
  *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_7_1:&lt;br /&gt;
  assumes 1: &amp;quot;p ⟶ ¬q&amp;quot; and &lt;br /&gt;
          2: &amp;quot;q&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have 3: &amp;quot;¬¬q&amp;quot; using 2 by (rule notnotI)&lt;br /&gt;
  show &amp;quot;¬p&amp;quot; using 1 3 by (rule mt)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_7_2:&lt;br /&gt;
  assumes &amp;quot;p ⟶ ¬q&amp;quot;&lt;br /&gt;
          &amp;quot;q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have &amp;quot;¬¬q&amp;quot; using assms(2) by (rule notnotI)&lt;br /&gt;
  with assms(1) show &amp;quot;¬p&amp;quot; by (rule mt)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_7_3:&lt;br /&gt;
  &amp;quot;⟦p ⟶ ¬q; q⟧ ⟹ ¬p&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
subsection {* Regla de introducción del condicional *}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  La regla de introducción del condicional es&lt;br /&gt;
  · impI: (P ⟹ Q) ⟹ P ⟶ Q&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 8. (p. 8) Demostrar&lt;br /&gt;
     p ⟶ q ⊢ ¬q ⟶ ¬p&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_8_1:&lt;br /&gt;
  assumes 1: &amp;quot;p ⟶ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬q ⟶ ¬p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  { assume 2: &amp;quot;¬q&amp;quot;&lt;br /&gt;
    have &amp;quot;¬p&amp;quot; using 1 2 by (rule mt) } &lt;br /&gt;
  thus &amp;quot;¬q ⟶ ¬p&amp;quot; by (rule impI)&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Nota sobre el lenguaje: En la demostración anterior se ha usado&lt;br /&gt;
  · &amp;quot;{ ... }&amp;quot; para representar una caja. *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_8_2:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬q ⟶ ¬p&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
  assume &amp;quot;¬q&amp;quot;&lt;br /&gt;
  with assms show &amp;quot;¬p&amp;quot; by (rule mt)&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_8_3:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬q ⟶ ¬p&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 9. (p. 9) Demostrar&lt;br /&gt;
     ¬q ⟶ ¬p ⊢ p ⟶ ¬¬q&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_9_1: &lt;br /&gt;
  assumes 1: &amp;quot;¬q ⟶ ¬p&amp;quot; &lt;br /&gt;
  shows &amp;quot;p ⟶ ¬¬q&amp;quot;   &lt;br /&gt;
proof -&lt;br /&gt;
  { assume 2: &amp;quot;p&amp;quot;&lt;br /&gt;
    have 3: &amp;quot;¬¬p&amp;quot; using 2 by (rule notnotI)&lt;br /&gt;
    have &amp;quot;¬¬q&amp;quot; using 1 3 by (rule mt) } &lt;br /&gt;
  thus &amp;quot;p ⟶ ¬¬q&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_9_2:&lt;br /&gt;
  assumes &amp;quot;¬q ⟶ ¬p&amp;quot; &lt;br /&gt;
  shows    &amp;quot;p ⟶ ¬¬q&amp;quot;   &lt;br /&gt;
proof &lt;br /&gt;
  assume &amp;quot;p&amp;quot;&lt;br /&gt;
  hence &amp;quot;¬¬p&amp;quot; by (rule notnotI)&lt;br /&gt;
  with assms show &amp;quot;¬¬q&amp;quot; by (rule mt)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_9_3:&lt;br /&gt;
  assumes &amp;quot;¬q ⟶ ¬p&amp;quot; &lt;br /&gt;
  shows &amp;quot;p ⟶ ¬¬q&amp;quot;   &lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 10 (p. 9). Demostrar&lt;br /&gt;
     ⊢ p ⟶ p&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_10_1:&lt;br /&gt;
  &amp;quot;p ⟶ p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
    have &amp;quot;p&amp;quot; using 1 by this }&lt;br /&gt;
  thus &amp;quot;p ⟶ p&amp;quot; by (rule impI) &lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_10_2:&lt;br /&gt;
  &amp;quot;p ⟶ p&amp;quot;&lt;br /&gt;
proof (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_10_3:&lt;br /&gt;
  &amp;quot;p ⟶ p&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Ejemplo 11 (p. 10) Demostrar&lt;br /&gt;
     ⊢ (q ⟶ r) ⟶ ((¬q ⟶ ¬p) ⟶ (p ⟶ r))&lt;br /&gt;
 *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_11_1:&lt;br /&gt;
  &amp;quot;(q ⟶ r) ⟶ ((¬q ⟶ ¬p) ⟶ (p ⟶ r))&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  { assume 1: &amp;quot;q ⟶ r&amp;quot;&lt;br /&gt;
    { assume 2: &amp;quot;¬q ⟶ ¬p&amp;quot;&lt;br /&gt;
      { assume 3: &amp;quot;p&amp;quot;&lt;br /&gt;
        have 4: &amp;quot;¬¬p&amp;quot; using 3 by (rule notnotI)&lt;br /&gt;
        have 5: &amp;quot;¬¬q&amp;quot; using 2 4 by (rule mt)&lt;br /&gt;
        have 6: &amp;quot;q&amp;quot; using 5 by (rule notnotD)&lt;br /&gt;
        have &amp;quot;r&amp;quot; using 1 6 by (rule mp) } &lt;br /&gt;
      hence &amp;quot;p ⟶ r&amp;quot; by (rule impI) } &lt;br /&gt;
    hence &amp;quot;(¬q ⟶ ¬p) ⟶ p ⟶ r&amp;quot; by (rule impI) } &lt;br /&gt;
  thus &amp;quot;(q ⟶ r) ⟶ ((¬q ⟶ ¬p) ⟶ p ⟶ r)&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración hacia atrás es&amp;quot;&lt;br /&gt;
lemma ejemplo_11_2:&lt;br /&gt;
  &amp;quot;(q ⟶ r) ⟶ ((¬q ⟶ ¬p) ⟶ (p ⟶ r))&amp;quot;&lt;br /&gt;
proof (rule impI)&lt;br /&gt;
  assume 1: &amp;quot;q ⟶ r&amp;quot;&lt;br /&gt;
  show &amp;quot;(¬q ⟶ ¬p) ⟶ (p ⟶ r)&amp;quot;&lt;br /&gt;
  proof (rule impI)&lt;br /&gt;
    assume 2: &amp;quot;¬q ⟶ ¬p&amp;quot;&lt;br /&gt;
    show &amp;quot;p ⟶ r&amp;quot;&lt;br /&gt;
    proof (rule impI)&lt;br /&gt;
      assume 3: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 4: &amp;quot;¬¬p&amp;quot; using 3 by (rule notnotI)&lt;br /&gt;
      have 5: &amp;quot;¬¬q&amp;quot; using 2 4 by (rule mt)&lt;br /&gt;
      have 6: &amp;quot;q&amp;quot; using 5 by (rule notnotD)&lt;br /&gt;
      show &amp;quot;r&amp;quot; using 1 6 by (rule mp)&lt;br /&gt;
    qed&lt;br /&gt;
  qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración hacia atrás con reglas implícitas es&amp;quot;&lt;br /&gt;
lemma ejemplo_11_3:&lt;br /&gt;
  &amp;quot;(q ⟶ r) ⟶ ((¬q ⟶ ¬p) ⟶ (p ⟶ r))&amp;quot;&lt;br /&gt;
proof&lt;br /&gt;
  assume 1: &amp;quot;q ⟶ r&amp;quot;&lt;br /&gt;
  show &amp;quot;(¬q ⟶ ¬p) ⟶ (p ⟶ r)&amp;quot;&lt;br /&gt;
  proof&lt;br /&gt;
    assume 2: &amp;quot;¬q ⟶ ¬p&amp;quot;&lt;br /&gt;
    show &amp;quot;p ⟶ r&amp;quot;&lt;br /&gt;
    proof&lt;br /&gt;
      assume 3: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 4: &amp;quot;¬¬p&amp;quot; using 3 ..&lt;br /&gt;
      have 5: &amp;quot;¬¬q&amp;quot; using 2 4 by (rule mt)&lt;br /&gt;
      have 6: &amp;quot;q&amp;quot; using 5 by (rule notnotD)&lt;br /&gt;
      show &amp;quot;r&amp;quot; using 1 6 ..&lt;br /&gt;
    qed&lt;br /&gt;
  qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración sin etiquetas es&amp;quot; &lt;br /&gt;
lemma ejemplo_11_4:&lt;br /&gt;
  &amp;quot;(q ⟶ r) ⟶ ((¬q ⟶ ¬p) ⟶ (p ⟶ r))&amp;quot;&lt;br /&gt;
proof&lt;br /&gt;
  assume &amp;quot;q ⟶ r&amp;quot;&lt;br /&gt;
  show &amp;quot;(¬q ⟶ ¬p) ⟶ (p ⟶ r)&amp;quot;&lt;br /&gt;
  proof&lt;br /&gt;
    assume &amp;quot;¬q ⟶ ¬p&amp;quot;&lt;br /&gt;
    show &amp;quot;p ⟶ r&amp;quot;&lt;br /&gt;
    proof&lt;br /&gt;
      assume &amp;quot;p&amp;quot;&lt;br /&gt;
      hence &amp;quot;¬¬p&amp;quot; ..&lt;br /&gt;
      with `¬q ⟶ ¬p` have &amp;quot;¬¬q&amp;quot; by (rule mt)&lt;br /&gt;
      hence &amp;quot;q&amp;quot; by (rule notnotD)&lt;br /&gt;
      with `q ⟶ r` show &amp;quot;r&amp;quot; ..&lt;br /&gt;
    qed&lt;br /&gt;
  qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_11_5:&lt;br /&gt;
  &amp;quot;(q ⟶ r) ⟶ ((¬q ⟶ ¬p) ⟶ (p ⟶ r))&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
subsection {* Reglas de la disyunción *}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Las reglas de la introducción de la disyunción son&lt;br /&gt;
  · disjI1: P ⟹ P ∨ Q&lt;br /&gt;
  · disjI2: Q ⟹ P ∨ Q&lt;br /&gt;
  La regla de elimación de la disyunción es&lt;br /&gt;
  · disjE:  ⟦P ∨ Q; P ⟹ R; Q ⟹ R⟧ ⟹ R &lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 12 (p. 11). Demostrar&lt;br /&gt;
     p ∨ q ⊢ q ∨ p&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_12_1:&lt;br /&gt;
  assumes &amp;quot;p ∨ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;q ∨ p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have &amp;quot;p ∨ q&amp;quot; using assms by this&lt;br /&gt;
  moreover&lt;br /&gt;
  { assume 2: &amp;quot;p&amp;quot;&lt;br /&gt;
    have &amp;quot;q ∨ p&amp;quot; using 2 by (rule disjI2) }&lt;br /&gt;
  moreover&lt;br /&gt;
  { assume 3: &amp;quot;q&amp;quot;&lt;br /&gt;
    have &amp;quot;q ∨ p&amp;quot; using 3 by (rule disjI1) }&lt;br /&gt;
  ultimately show &amp;quot;q ∨ p&amp;quot; by (rule disjE) &lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Nota sobre el lenguaje: En la demostración anterior se ha usado&lt;br /&gt;
  · &amp;quot;moreover&amp;quot; para separar los bloques y&lt;br /&gt;
  · &amp;quot;ultimately&amp;quot; para unir los resultados de los bloques. *}&lt;br /&gt;
 &lt;br /&gt;
-- &amp;quot;La demostración detallada con reglas implícitas es&amp;quot;&lt;br /&gt;
lemma ejemplo_12_2:&lt;br /&gt;
  assumes &amp;quot;p ∨ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;q ∨ p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  note `p ∨ q`&lt;br /&gt;
  moreover&lt;br /&gt;
  { assume &amp;quot;p&amp;quot;&lt;br /&gt;
    hence &amp;quot;q ∨ p&amp;quot; .. }&lt;br /&gt;
  moreover&lt;br /&gt;
  { assume &amp;quot;q&amp;quot;&lt;br /&gt;
    hence &amp;quot;q ∨ p&amp;quot; .. }&lt;br /&gt;
  ultimately show &amp;quot;q ∨ p&amp;quot; ..&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Nota sobre el lenguaje: En la demostración anterior se ha usado&lt;br /&gt;
  · &amp;quot;note&amp;quot; para copiar un hecho. *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración hacia atrás es&amp;quot;&lt;br /&gt;
lemma ejemplo_12_3:&lt;br /&gt;
  assumes 1: &amp;quot;p ∨ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;q ∨ p&amp;quot;&lt;br /&gt;
using 1&lt;br /&gt;
proof (rule disjE)&lt;br /&gt;
  { assume 2: &amp;quot;p&amp;quot;&lt;br /&gt;
    show &amp;quot;q ∨ p&amp;quot; using 2 by (rule disjI2) }&lt;br /&gt;
next&lt;br /&gt;
  { assume 3: &amp;quot;q&amp;quot;&lt;br /&gt;
    show &amp;quot;q ∨ p&amp;quot; using 3 by (rule disjI1) }&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración hacia atrás con reglas implícitas es&amp;quot;&lt;br /&gt;
lemma ejemplo_12_4:&lt;br /&gt;
  assumes &amp;quot;p ∨ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;q ∨ p&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
proof &lt;br /&gt;
  { assume  &amp;quot;p&amp;quot;&lt;br /&gt;
    thus &amp;quot;q ∨ p&amp;quot; .. }&lt;br /&gt;
next&lt;br /&gt;
  { assume &amp;quot;q&amp;quot;&lt;br /&gt;
    thus &amp;quot;q ∨ p&amp;quot; .. }&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_12_5:&lt;br /&gt;
  assumes &amp;quot;p ∨ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;q ∨ p&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 13. (p. 12) Demostrar&lt;br /&gt;
     q ⟶ r ⊢ p ∨ q ⟶ p ∨ r&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot; &lt;br /&gt;
lemma ejemplo_13_1:&lt;br /&gt;
  assumes 1: &amp;quot;q ⟶ r&amp;quot;&lt;br /&gt;
  shows &amp;quot;p ∨ q ⟶ p ∨ r&amp;quot;&lt;br /&gt;
proof (rule impI)&lt;br /&gt;
  assume 2: &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
  thus &amp;quot;p ∨ r&amp;quot;&lt;br /&gt;
  proof (rule disjE)&lt;br /&gt;
    { assume 3: &amp;quot;p&amp;quot;&lt;br /&gt;
      show &amp;quot;p ∨ r&amp;quot; using 3 by (rule disjI1) }&lt;br /&gt;
  next&lt;br /&gt;
    { assume 4: &amp;quot;q&amp;quot;&lt;br /&gt;
      have 5: &amp;quot;r&amp;quot; using 1 4 by (rule mp)&lt;br /&gt;
      show &amp;quot;p ∨ r&amp;quot; using 5 by (rule disjI2) }&lt;br /&gt;
  qed&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot; &lt;br /&gt;
lemma ejemplo_13_2:&lt;br /&gt;
  assumes &amp;quot;q ⟶ r&amp;quot;&lt;br /&gt;
  shows &amp;quot;p ∨ q ⟶ p ∨ r&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
  assume &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
  thus &amp;quot;p ∨ r&amp;quot;&lt;br /&gt;
  proof &lt;br /&gt;
    { assume &amp;quot;p&amp;quot;&lt;br /&gt;
      thus &amp;quot;p ∨ r&amp;quot; .. }&lt;br /&gt;
  next&lt;br /&gt;
    { assume &amp;quot;q&amp;quot;&lt;br /&gt;
      have &amp;quot;r&amp;quot; using assms `q` ..&lt;br /&gt;
      thus &amp;quot;p ∨ r&amp;quot; .. }&lt;br /&gt;
  qed&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot; &lt;br /&gt;
lemma ejemplo_13_3:&lt;br /&gt;
  assumes &amp;quot;q ⟶ r&amp;quot;&lt;br /&gt;
  shows &amp;quot;p ∨ q ⟶ p ∨ r&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
subsection {* Regla de copia *}&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 14 (p. 13). Demostrar&lt;br /&gt;
     ⊢ p ⟶ (q ⟶ p)&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_14_1:&lt;br /&gt;
  &amp;quot;p ⟶ (q ⟶ p)&amp;quot;&lt;br /&gt;
proof (rule impI)&lt;br /&gt;
  assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
  show &amp;quot;q ⟶ p&amp;quot; &lt;br /&gt;
  proof (rule impI)&lt;br /&gt;
    assume &amp;quot;q&amp;quot;&lt;br /&gt;
    show &amp;quot;p&amp;quot; using 1 by this&lt;br /&gt;
  qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_14_2:&lt;br /&gt;
  &amp;quot;p ⟶ (q ⟶ p)&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
  assume &amp;quot;p&amp;quot;&lt;br /&gt;
  thus &amp;quot;q ⟶ p&amp;quot; ..&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_14_3:&lt;br /&gt;
  &amp;quot;p ⟶ (q ⟶ p)&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
subsection {* Reglas de la negación *}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  La regla de eliminación de lo falso es&lt;br /&gt;
  · FalseE: False ⟹ P&lt;br /&gt;
  La regla de eliminación de la negación es&lt;br /&gt;
  · notE: ⟦¬P; P⟧ ⟹ R&lt;br /&gt;
  La regla de introducción de la negación es&lt;br /&gt;
  · notI: (P ⟹ False) ⟹ ¬P&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Ejemplo 15 (p. 15). Demostrar&lt;br /&gt;
     ¬p ∨ q ⊢ p ⟶ q&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_15_1:&lt;br /&gt;
  assumes 1: &amp;quot;¬p ∨ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
proof (rule impI)&lt;br /&gt;
  assume 2: &amp;quot;p&amp;quot;&lt;br /&gt;
  note 1&lt;br /&gt;
  thus &amp;quot;q&amp;quot;&lt;br /&gt;
  proof (rule disjE)&lt;br /&gt;
    { assume 3: &amp;quot;¬p&amp;quot;&lt;br /&gt;
      show &amp;quot;q&amp;quot; using 3 2 by (rule notE) }&lt;br /&gt;
  next&lt;br /&gt;
    { assume 4: &amp;quot;q&amp;quot;&lt;br /&gt;
      show &amp;quot;q&amp;quot; using 4 by this}&lt;br /&gt;
  qed&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_15_2:&lt;br /&gt;
  assumes &amp;quot;¬p ∨ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
  assume &amp;quot;p&amp;quot;&lt;br /&gt;
  note `¬p ∨ q`&lt;br /&gt;
  thus &amp;quot;q&amp;quot;&lt;br /&gt;
  proof&lt;br /&gt;
    { assume &amp;quot;¬p&amp;quot;&lt;br /&gt;
      thus &amp;quot;q&amp;quot; using `p` .. }&lt;br /&gt;
  next&lt;br /&gt;
    { assume &amp;quot;q&amp;quot;&lt;br /&gt;
      thus &amp;quot;q&amp;quot; . }&lt;br /&gt;
  qed&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_15_3:&lt;br /&gt;
  assumes &amp;quot;¬p ∨ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 16 (p. 16). Demostrar&lt;br /&gt;
     p ⟶ q, p ⟶ ¬q ⊢ ¬p&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_16_1:&lt;br /&gt;
  assumes 1: &amp;quot;p ⟶ q&amp;quot; and &lt;br /&gt;
          2: &amp;quot;p ⟶ ¬q&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬p&amp;quot;    &lt;br /&gt;
proof (rule notI)&lt;br /&gt;
  assume 3: &amp;quot;p&amp;quot;&lt;br /&gt;
  have 4: &amp;quot;q&amp;quot; using 1 3 by (rule mp)&lt;br /&gt;
  have 5: &amp;quot;¬q&amp;quot; using 2 3 by (rule mp)&lt;br /&gt;
  show False using 5 4 by (rule notE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_16_2:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;p ⟶ ¬q&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬p&amp;quot;    &lt;br /&gt;
proof &lt;br /&gt;
  assume &amp;quot;p&amp;quot;&lt;br /&gt;
  have &amp;quot;q&amp;quot; using assms(1) `p` ..&lt;br /&gt;
  have &amp;quot;¬q&amp;quot; using assms(2) `p` ..&lt;br /&gt;
  thus False using `q` ..&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_16_3:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;p ⟶ ¬q&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬p&amp;quot;    &lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
subsection {* Reglas del bicondicional *}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  La regla de introducción del bicondicional es&lt;br /&gt;
  · iffI: ⟦P ⟹ Q; Q ⟹ P⟧ ⟹ P ⟷ Q&lt;br /&gt;
  Las reglas de eliminación del bicondicional son&lt;br /&gt;
  · iffD1: ⟦Q ⟷ P; Q⟧ ⟹ P &lt;br /&gt;
  · iffD2: ⟦P ⟷ Q; Q⟧ ⟹ P&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 17 (p. 17) Demostrar&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_17_1:&lt;br /&gt;
  &amp;quot;(p ∧ q) ⟷ (q ∧ p)&amp;quot;&lt;br /&gt;
proof (rule iffI)&lt;br /&gt;
  { assume 1: &amp;quot;p ∧ q&amp;quot;&lt;br /&gt;
    have 2: &amp;quot;p&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
    have 3: &amp;quot;q&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
    show &amp;quot;q ∧ p&amp;quot; using 3 2 by (rule conjI) }&lt;br /&gt;
next&lt;br /&gt;
  { assume 4: &amp;quot;q ∧ p&amp;quot;&lt;br /&gt;
    have 5: &amp;quot;q&amp;quot; using 4 by (rule conjunct1)&lt;br /&gt;
    have 6: &amp;quot;p&amp;quot; using 4 by (rule conjunct2)&lt;br /&gt;
    show &amp;quot;p ∧ q&amp;quot; using 6 5 by (rule conjI) }&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_17_2:&lt;br /&gt;
  &amp;quot;(p ∧ q) ⟷ (q ∧ p)&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
  { assume 1: &amp;quot;p ∧ q&amp;quot;&lt;br /&gt;
    have &amp;quot;p&amp;quot; using 1 ..&lt;br /&gt;
    have &amp;quot;q&amp;quot; using 1 ..&lt;br /&gt;
    show &amp;quot;q ∧ p&amp;quot; using `q` `p` .. }&lt;br /&gt;
next&lt;br /&gt;
  { assume 2: &amp;quot;q ∧ p&amp;quot;&lt;br /&gt;
    have &amp;quot;q&amp;quot; using 2 ..&lt;br /&gt;
    have &amp;quot;p&amp;quot; using 2 ..&lt;br /&gt;
    show &amp;quot;p ∧ q&amp;quot; using `p` `q`  .. }&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_17_3:&lt;br /&gt;
  &amp;quot;(p ∧ q) ⟷ (q ∧ p)&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Ejemplo 18 (p. 18). Demostrar&lt;br /&gt;
     p ⟷ q, p ∨ q ⊢ p ∧ q&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_18_1:&lt;br /&gt;
  assumes 1: &amp;quot;p ⟷ q&amp;quot; and &lt;br /&gt;
          2: &amp;quot;p ∨ q&amp;quot;  &lt;br /&gt;
  shows &amp;quot;p ∧ q&amp;quot;&lt;br /&gt;
using 2&lt;br /&gt;
proof (rule disjE)&lt;br /&gt;
  { assume 3: &amp;quot;p&amp;quot;&lt;br /&gt;
    have 4: &amp;quot;q&amp;quot; using 1 3 by (rule iffD1)&lt;br /&gt;
    show &amp;quot;p ∧ q&amp;quot; using 3 4 by (rule conjI) }&lt;br /&gt;
next&lt;br /&gt;
  { assume 5: &amp;quot;q&amp;quot;&lt;br /&gt;
    have 6: &amp;quot;p&amp;quot; using 1 5 by (rule iffD2)&lt;br /&gt;
    show &amp;quot;p ∧ q&amp;quot; using 6 5 by (rule conjI) }&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_18_2:&lt;br /&gt;
  assumes &amp;quot;p ⟷ q&amp;quot;&lt;br /&gt;
          &amp;quot;p ∨ q&amp;quot;  &lt;br /&gt;
  shows  &amp;quot;p ∧ q&amp;quot;&lt;br /&gt;
using assms(2)&lt;br /&gt;
proof&lt;br /&gt;
  { assume &amp;quot;p&amp;quot;&lt;br /&gt;
    with assms(1) have &amp;quot;q&amp;quot; ..&lt;br /&gt;
    with `p` show &amp;quot;p ∧ q&amp;quot; .. }&lt;br /&gt;
next&lt;br /&gt;
  { assume &amp;quot;q&amp;quot;&lt;br /&gt;
    with assms(1) have &amp;quot;p&amp;quot; ..&lt;br /&gt;
    thus &amp;quot;p ∧ q&amp;quot; using `q` .. }&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_18_3:&lt;br /&gt;
  assumes &amp;quot;p ⟷ q&amp;quot;&lt;br /&gt;
          &amp;quot;p ∨ q&amp;quot;  &lt;br /&gt;
  shows &amp;quot;p ∧ q&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
subsection {* Reglas derivadas *}&lt;br /&gt;
&lt;br /&gt;
subsubsection {* Regla del modus tollens *}&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 19 (p. 20) Demostrar la regla del modus tollens a partir de&lt;br /&gt;
  las reglas básicas. &lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_20_1:&lt;br /&gt;
  assumes 1: &amp;quot;F ⟶ G&amp;quot; and &lt;br /&gt;
          2: &amp;quot;¬G&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬F&amp;quot;&lt;br /&gt;
proof (rule notI)&lt;br /&gt;
  assume 3: &amp;quot;F&amp;quot;&lt;br /&gt;
  have 4: &amp;quot;G&amp;quot; using 1 3 by (rule mp)&lt;br /&gt;
  show False using 2 4 by (rule notE)&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_20_2:&lt;br /&gt;
  assumes &amp;quot;F ⟶ G&amp;quot;&lt;br /&gt;
          &amp;quot;¬G&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬F&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
  assume &amp;quot;F&amp;quot;&lt;br /&gt;
  with assms(1) have &amp;quot;G&amp;quot; ..&lt;br /&gt;
  with assms(2) show False ..&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_20_3:&lt;br /&gt;
  assumes &amp;quot;F ⟶ G&amp;quot;&lt;br /&gt;
          &amp;quot;¬G&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬F&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
subsubsection {* Regla de la introducción de la doble negación *}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Ejemplo 21 (p. 21) Demostrar la regla de introducción de la doble&lt;br /&gt;
  negación a partir de las reglas básicas.&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_21_1:&lt;br /&gt;
  assumes 1: &amp;quot;F&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬¬F&amp;quot;&lt;br /&gt;
proof (rule notI)&lt;br /&gt;
  assume 2: &amp;quot;¬F&amp;quot;&lt;br /&gt;
  show False using 2 1 by (rule notE)&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_21_2:&lt;br /&gt;
  assumes &amp;quot;F&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬¬F&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
  assume &amp;quot;¬F&amp;quot;&lt;br /&gt;
  thus False using assms ..&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_21_3:&lt;br /&gt;
  assumes &amp;quot;F&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬¬F&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
subsubsection {* Regla de reducción al absurdo *}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  La regla de reducción al absurdo en Isabelle se correponde con la&lt;br /&gt;
  regla clásica de contradicción &lt;br /&gt;
  · ccontr: (¬P ⟹ False) ⟹ P&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
subsubsection {* Ley del tercio excluso *}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  La ley del tercio excluso es &lt;br /&gt;
  · excluded_middle: ¬P ∨ P&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Ejemplo 22 (p. 23). Demostrar la ley del tercio excluso a partir de&lt;br /&gt;
  las reglas básicas.  &lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_22_1:&lt;br /&gt;
  &amp;quot;F ∨ ¬F&amp;quot;&lt;br /&gt;
proof (rule ccontr)&lt;br /&gt;
  assume 1: &amp;quot;¬(F ∨ ¬F)&amp;quot;&lt;br /&gt;
  thus False&lt;br /&gt;
  proof (rule notE)&lt;br /&gt;
    show &amp;quot;F ∨ ¬F&amp;quot;&lt;br /&gt;
    proof (rule disjI2)&lt;br /&gt;
      show &amp;quot;¬F&amp;quot;&lt;br /&gt;
      proof (rule notI)&lt;br /&gt;
        assume 2: &amp;quot;F&amp;quot;&lt;br /&gt;
        hence 3: &amp;quot;F ∨ ¬F&amp;quot; by (rule disjI1)&lt;br /&gt;
        show False using 1 3 by (rule notE)&lt;br /&gt;
      qed&lt;br /&gt;
    qed&lt;br /&gt;
  qed&lt;br /&gt;
qed&lt;br /&gt;
    &lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_22_2:&lt;br /&gt;
  &amp;quot;F ∨ ¬F&amp;quot;&lt;br /&gt;
proof (rule ccontr)&lt;br /&gt;
  assume &amp;quot;¬(F ∨ ¬F)&amp;quot;&lt;br /&gt;
  thus False&lt;br /&gt;
  proof (rule notE)&lt;br /&gt;
    show &amp;quot;F ∨ ¬F&amp;quot;&lt;br /&gt;
    proof (rule disjI2)&lt;br /&gt;
      show &amp;quot;¬F&amp;quot;&lt;br /&gt;
      proof (rule notI)&lt;br /&gt;
        assume &amp;quot;F&amp;quot;&lt;br /&gt;
        hence &amp;quot;F ∨ ¬F&amp;quot; ..&lt;br /&gt;
        with `¬(F ∨ ¬F)`show False ..&lt;br /&gt;
      qed&lt;br /&gt;
    qed&lt;br /&gt;
  qed&lt;br /&gt;
qed&lt;br /&gt;
    &lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_22_3:&lt;br /&gt;
  &amp;quot;F ∨ ¬F&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 23 (p. 24). Demostrar&lt;br /&gt;
     p ⟶ q ⊢ ¬p ∨ q&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_23_1:&lt;br /&gt;
  assumes 1: &amp;quot;p ⟶ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬p ∨ q&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have &amp;quot;¬p ∨ p&amp;quot; by (rule excluded_middle)&lt;br /&gt;
  thus &amp;quot;¬p ∨ q&amp;quot;&lt;br /&gt;
  proof (rule disjE)&lt;br /&gt;
    { assume &amp;quot;¬p&amp;quot;&lt;br /&gt;
      thus &amp;quot;¬p ∨ q&amp;quot; by (rule disjI1) }&lt;br /&gt;
  next&lt;br /&gt;
    { assume 2: &amp;quot;p&amp;quot;&lt;br /&gt;
      have &amp;quot;q&amp;quot; using 1 2 by (rule mp)&lt;br /&gt;
      thus &amp;quot;¬p ∨ q&amp;quot; by (rule disjI2) }&lt;br /&gt;
  qed&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_23_2:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬p ∨ q&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have &amp;quot;¬p ∨ p&amp;quot; ..&lt;br /&gt;
  thus &amp;quot;¬p ∨ q&amp;quot;&lt;br /&gt;
  proof &lt;br /&gt;
    { assume &amp;quot;¬p&amp;quot;&lt;br /&gt;
      thus &amp;quot;¬p ∨ q&amp;quot; .. }&lt;br /&gt;
  next&lt;br /&gt;
    { assume &amp;quot;p&amp;quot;&lt;br /&gt;
      with assms have &amp;quot;q&amp;quot; ..&lt;br /&gt;
      thus &amp;quot;¬p ∨ q&amp;quot; .. }&lt;br /&gt;
  qed&lt;br /&gt;
qed    &lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_23_3:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot; &lt;br /&gt;
  shows &amp;quot;¬p ∨ q&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
subsection {* Demostraciones por contradicción *}&lt;br /&gt;
&lt;br /&gt;
text {* &lt;br /&gt;
  Ejemplo 24. Demostrar que &lt;br /&gt;
     ¬p, p ∨ q ⊢ q&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración detallada es&amp;quot;&lt;br /&gt;
lemma ejemplo_24_1:&lt;br /&gt;
  assumes &amp;quot;¬p&amp;quot;&lt;br /&gt;
          &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
  shows   &amp;quot;q&amp;quot;&lt;br /&gt;
using `p ∨ q`&lt;br /&gt;
proof (rule disjE)&lt;br /&gt;
  assume &amp;quot;p&amp;quot;&lt;br /&gt;
  with assms(1) show &amp;quot;q&amp;quot; by contradiction &lt;br /&gt;
next&lt;br /&gt;
  assume &amp;quot;q&amp;quot;&lt;br /&gt;
  thus &amp;quot;q&amp;quot; by assumption&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración estructurada es&amp;quot;&lt;br /&gt;
lemma ejemplo_24_2:&lt;br /&gt;
  assumes &amp;quot;¬p&amp;quot;&lt;br /&gt;
          &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
  shows &amp;quot;q&amp;quot;&lt;br /&gt;
using `p ∨ q`&lt;br /&gt;
proof &lt;br /&gt;
  assume &amp;quot;p&amp;quot;&lt;br /&gt;
  with assms(1) show &amp;quot;q&amp;quot; ..&lt;br /&gt;
next&lt;br /&gt;
  assume &amp;quot;q&amp;quot;&lt;br /&gt;
  thus &amp;quot;q&amp;quot; .&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejemplo_24_3:&lt;br /&gt;
  assumes &amp;quot;¬p&amp;quot;&lt;br /&gt;
          &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
  shows &amp;quot;q&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Relaci%C3%B3n_5&amp;diff=352</id>
		<title>Relación 5</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Relaci%C3%B3n_5&amp;diff=352"/>
		<updated>2018-07-16T12:27:11Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang=&amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* R5: Argumentación en lógica de primer orden *}&lt;br /&gt;
&lt;br /&gt;
theory R5_sol&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  --------------------------------------------------------------------- &lt;br /&gt;
  El objetivo de esta relación es formalizar en lógica de primer orden&lt;br /&gt;
  argumentos expresados en lenguaje natural.&lt;br /&gt;
&lt;br /&gt;
  Antes de escribir la soluciones, comprobar con APLI2 la corrección de la&lt;br /&gt;
  formalización. &lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 1. Formalizar el siguiente argumento &lt;br /&gt;
     Sócrates es un hombre. &lt;br /&gt;
     Los hombres son mortales. &lt;br /&gt;
     Luego, Sócrates es mortal.&lt;br /&gt;
  Usar s    para Sócrates&lt;br /&gt;
       H(x) para x es un hombre          &lt;br /&gt;
       M(x) para x es mortal&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio1&lt;br /&gt;
   assumes &amp;quot;H(s)&amp;quot;&lt;br /&gt;
           &amp;quot;H(x) ⟶ M(x)&amp;quot;&lt;br /&gt;
   shows &amp;quot;M(s)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 2. Formalizar el siguiente argumento&lt;br /&gt;
     Hay estudiantes inteligentes y hay estudiantes trabajadores. Por&lt;br /&gt;
     tanto, hay estudiantes inteligentes y trabajadores.&lt;br /&gt;
  Usar I(x) para x es inteligente&lt;br /&gt;
       T(x) para x es trabajador&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio2&lt;br /&gt;
assumes &amp;quot;(∃x. I(x)) ∧ (∃x. T(x))&amp;quot; &lt;br /&gt;
  shows   &amp;quot;∃x. I(x) ∧ T(x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 3. Formalizar el siguiente argumento&lt;br /&gt;
     Todos los participantes son vencedores. Hay como máximo un&lt;br /&gt;
     vencedor. Hay como máximo un participante. Por lo tanto, hay&lt;br /&gt;
     exactamente un participante. &lt;br /&gt;
  Usar P(x) para x es un participante&lt;br /&gt;
       V(x) para x es un vencedor&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
lemma ejercicio3:&lt;br /&gt;
assumes 1: &amp;quot;∀x. (P(x)⟶V(x))&amp;quot; and&lt;br /&gt;
        2: &amp;quot;(¬(∃x. V(x))) ∨ (∃x. (V(x) ∧ (∀y. (V(y) ⟶ x=y))))&amp;quot; and&lt;br /&gt;
        3: &amp;quot;(¬(∃x. P(x))) ∨ (∃x. (P(x) ∧ (∀y. (P(y) ⟶ x=y))))&amp;quot; &lt;br /&gt;
shows &amp;quot;∃x. (P(x) ∧ (∀y. (P(y) ⟶ x=y)))&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
obtain a where 4: &amp;quot;(Co(a) ∧ E(a)) ∧ (∀y. (Ca(y,a)⟶Co(y)))&amp;quot; using 2 by (rule exE)&lt;br /&gt;
have 5: &amp;quot;Co(a) ∧ E(a)&amp;quot; using 4 by (rule conjunct1)&lt;br /&gt;
have 6: &amp;quot;Co(a)&amp;quot; using 5 by (rule conjunct1)&lt;br /&gt;
have 7: &amp;quot;E(a)&amp;quot; using 5 by (rule conjunct2)&lt;br /&gt;
have 8: &amp;quot;∀y. (Ca(y,a)⟶Co(y))&amp;quot; using 4 by (rule conjunct2)&lt;br /&gt;
have 9: &amp;quot;Co(a) ⟶ ¬V(a)&amp;quot; using 3 by (rule allE)&lt;br /&gt;
have 10: &amp;quot;¬V(a)&amp;quot; using 9 6 by (rule mp)&lt;br /&gt;
have 11: &amp;quot;(E(a)∧ ¬V(a)) ⟶ (∃y. (A(y) ∧ Ca(y,a)))&amp;quot; using 1 by (rule allE)&lt;br /&gt;
have 12: &amp;quot;E(a) ∧ ¬V(a)&amp;quot; using 7 10 by (rule conjI)&lt;br /&gt;
have 13: &amp;quot;∃y. (A(y) ∧ Ca(y,a))&amp;quot; using 11 12 by (rule mp)&lt;br /&gt;
obtain b where 14: &amp;quot;A(b) ∧ Ca(b,a)&amp;quot; using 13 by (rule exE)&lt;br /&gt;
have 15: &amp;quot;A(b)&amp;quot; using 14 by (rule conjunct1)&lt;br /&gt;
have 16: &amp;quot;Ca(b,a)⟶Co(b)&amp;quot; using 8 by (rule allE)&lt;br /&gt;
have 17: &amp;quot;Ca(b,a)&amp;quot; using 14 by (rule conjunct2)&lt;br /&gt;
have 18: &amp;quot;Co(b)&amp;quot; using 16 17 by (rule mp)&lt;br /&gt;
have 19: &amp;quot;A(b) ∧ Co(b)&amp;quot; using 15 18 by (rule conjI)&lt;br /&gt;
show 20: &amp;quot;∃x. (A(x) ∧ Co(x))&amp;quot; using 19 by (rule exI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- Alba González Parra &lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 4. Formalizar el siguiente argumento&lt;br /&gt;
     Todo aquel que entre en el país y no sea un VIP será cacheado por&lt;br /&gt;
     un aduanero. Hay un contrabandista que entra en el país y que solo&lt;br /&gt;
     podrá ser cacheado por contrabandistas. Ningún contrabandista es un&lt;br /&gt;
     VIP. Por tanto, algún aduanero es contrabandista.&lt;br /&gt;
  Usar A(x)    para x es aduanero&lt;br /&gt;
       Ca(x,y) para x cachea a y&lt;br /&gt;
       Co(x)   para x es contrabandista&lt;br /&gt;
       E(x)    para x entra en el pais&lt;br /&gt;
       V(x)    para x es un VIP&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
lemma ejercicio4:&lt;br /&gt;
assumes 1: &amp;quot;∀x. ((E(x) ∧ ¬V(x)) ⟶ (∃y. (A(y) ∧ Ca(y,x))))&amp;quot; and&lt;br /&gt;
        2: &amp;quot;∃x. ((Co(x) ∧ E(x)) ∧ (∀y. (Ca(y,x) ⟶ Co(y))))&amp;quot; and&lt;br /&gt;
        3: &amp;quot;∀x. (Co(x)⟶ ¬V(x))&amp;quot;&lt;br /&gt;
shows &amp;quot;∃x. (A(x) ∧ Co(x))&amp;quot; &lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
-- Alba González Parra&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 5. Formalizar el siguiente argumento&lt;br /&gt;
     Juan teme a María. Pedro es temido por Juan. Luego, alguien teme a&lt;br /&gt;
     María y a Pedro.&lt;br /&gt;
  Usar j      para Juan  &lt;br /&gt;
       m      para María&lt;br /&gt;
       p      para Pedro&lt;br /&gt;
       T(x,y) para x teme a y&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio5&lt;br /&gt;
   assumes &amp;quot;T(j,m)&amp;quot;&lt;br /&gt;
           &amp;quot;T(j,p)&amp;quot;&lt;br /&gt;
   shows &amp;quot;∃x. T(x,m) ∧ T(x,p)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 6. Formalizar el siguiente argumento&lt;br /&gt;
     Los hermanos tienen el mismo padre. Juan es hermano de Luis. Carlos&lt;br /&gt;
     es padre de Luis. Por tanto, Carlos es padre de Juan.&lt;br /&gt;
  Usar H(x,y) para x es hermano de y&lt;br /&gt;
       P(x,y) para x es padre de y&lt;br /&gt;
       j      para Juan&lt;br /&gt;
       l      para Luis&lt;br /&gt;
       c      para Carlos&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio6&lt;br /&gt;
  assumes &amp;quot;∀x y z. H(x,y) ⟶ P(z,x) ∧ P(z,y)&amp;quot;&lt;br /&gt;
          &amp;quot;H(x,y) → H(y,x)&amp;quot;&lt;br /&gt;
          &amp;quot;H(j,l)&amp;quot;&lt;br /&gt;
          &amp;quot;P(c,l)&amp;quot;&lt;br /&gt;
  shows &amp;quot;P(c,j)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 7. Formalizar el siguiente argumento&lt;br /&gt;
     La existencia de algún canal de TV pública, supone un acicate para&lt;br /&gt;
     cualquier canal de TV privada; el que un canal de TV tenga un&lt;br /&gt;
     acicate, supone una gran satisfacción para cualquiera de sus&lt;br /&gt;
     directivos; en Madrid hay varios canales públicos de TV; TV5 es un&lt;br /&gt;
     canal de TV privada; por tanto, todos los directivos de TV5 están&lt;br /&gt;
     satisfechos. &lt;br /&gt;
  Usar Pu(x)  para x es un canal de TV pública&lt;br /&gt;
       Pr(x)  para x es un canal de TV privada&lt;br /&gt;
       A(x)   para x posee un acicate&lt;br /&gt;
       D(x,y) para x es un directivo del canal y&lt;br /&gt;
       S(x)   para x está satisfecho &lt;br /&gt;
       t      para TV5&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Adrián Guerra&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_7:&lt;br /&gt;
assumes &amp;quot;∀x. ∀y. (Pu x ∧ Pr y ⟶ A y)&amp;quot;&lt;br /&gt;
        &amp;quot;∀x. ∀y. (A x ∧ D y x) ⟶ S y&amp;quot;&lt;br /&gt;
        &amp;quot;∃x. Pu x&amp;quot;&lt;br /&gt;
        &amp;quot;Pr t&amp;quot;&lt;br /&gt;
shows &amp;quot;∀x. D x t ⟶ S x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 8. Formalizar el siguiente argumento&lt;br /&gt;
     Quien intente entrar en un país y no tenga pasaporte, encontrará&lt;br /&gt;
     algún aduanero que le impida el paso. A algunas personas&lt;br /&gt;
     motorizadas que intentan entrar en un país le impiden el paso&lt;br /&gt;
     únicamente personas motorizadas. Ninguna persona motorizada tiene&lt;br /&gt;
     pasaporte. Por tanto, ciertos aduaneros están motorizados.&lt;br /&gt;
  Usar E(x)   para x entra en un país&lt;br /&gt;
       P(x)   para x tiene pasaporte&lt;br /&gt;
       A(x)   para x es aduanero&lt;br /&gt;
       I(x,y) para x impide el paso a y&lt;br /&gt;
       M(x)   para x está motorizada&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio8&lt;br /&gt;
   assumes &amp;quot;∀x. E(x) ∧ ¬P(x) ⟶ ∃z. A(z) ∧ I(z,x)&amp;quot;&lt;br /&gt;
           &amp;quot;∃x. M(x) ⟶ ∃z. M(z) ∧ I(z,x)&amp;quot;&lt;br /&gt;
           &amp;quot;M(x) ⟶ ¬P(x)&amp;quot;&lt;br /&gt;
  shows &amp;quot;∃x. A(x) ∧ M(x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 9. Formalizar el siguiente argumento&lt;br /&gt;
     Los aficionados al fútbol aplauden a cualquier futbolista&lt;br /&gt;
     extranjero. Juanito no aplaude a futbolistas extranjeros. Por&lt;br /&gt;
     tanto, si hay algún futbolista extranjero nacionalizado español,&lt;br /&gt;
     Juanito no es aficionado al fútbol.&lt;br /&gt;
  Usar Af(x)   para x es aficicionado al fútbol&lt;br /&gt;
       Ap(x,y) para x aplaude a y&lt;br /&gt;
       E(x)    para x es un futbolista extranjero&lt;br /&gt;
       N(x)    para x es un futbolista nacionalizado español&lt;br /&gt;
       j       para Juanito&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio9&lt;br /&gt;
assumes &amp;quot;∀x. Af(x) ⟶ (∀y. E(y) ⟶ Ap(x,y))&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. E(x) ⟶ ¬Ap(j,x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(∃x. E(x) ∧ N(x)) ⟶ ¬Af(j)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 10. Formalizar el siguiente argumento&lt;br /&gt;
     Ningún aristócrata debe ser condenado a galeras a menos que sus&lt;br /&gt;
     crímenes sean vergonzosos y lleve una vida licenciosa. En la ciudad&lt;br /&gt;
     hay aristócratas que han cometido crímenes vergonzosos aunque su&lt;br /&gt;
     forma de vida no sea licenciosa. Por tanto, hay algún aristócrata&lt;br /&gt;
     que no está condenado a galeras. &lt;br /&gt;
  Usar A(x)  para x es aristócrata&lt;br /&gt;
       G(x)  para x está condenado a galeras&lt;br /&gt;
       L(x)  para x lleva una vida licenciosa&lt;br /&gt;
       V(x)  para x ha cometido crímenes vergonzoso&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 11. Formalizar el siguiente argumento&lt;br /&gt;
     Todo individuo que esté conforme con el contenido de cualquier&lt;br /&gt;
     acuerdo internacional lo apoya o se inhibe en absoluto de asuntos&lt;br /&gt;
     políticos. Cualquiera que se inhiba de los asuntos políticos, no&lt;br /&gt;
     participará en el próximo referéndum. Todo español, está conforme&lt;br /&gt;
     con el acuerdo internacional de Maastricht, al que sin embargo no&lt;br /&gt;
     apoya. Por tanto, cualquier individuo o no es español, o en otro&lt;br /&gt;
     caso, está conforme con el contenido del acuerdo internacional de&lt;br /&gt;
     Maastricht y no participará en el próximo referéndum. &lt;br /&gt;
  Usar C(x,y) para la persona x conforme con el contenido del acuerdo y&lt;br /&gt;
       A(x,y) para la persona x apoya el acuerdo y&lt;br /&gt;
       I(x)   para la persona x se inibe de asuntos políticos&lt;br /&gt;
       R(x)   para la persona x participará en el próximo referéndum&lt;br /&gt;
       E(x)   para la persona x es española&lt;br /&gt;
       m      para el acuerdo de Maastricht&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Adrián Guerra&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_11:&lt;br /&gt;
assumes &amp;quot;∀x. ∀y. (C x y ⟶ (A x y ∨ I x))&amp;quot;&lt;br /&gt;
        &amp;quot;∀x. (I x ⟶ ¬(R x))&amp;quot;&lt;br /&gt;
        &amp;quot;∀x. (E x ⟶ (C x m ∧ ¬(A x m)))&amp;quot;&lt;br /&gt;
shows &amp;quot;∀x. (¬(E x) ∨ (C x m ∧ ¬(R x)))&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 12. Formalizar el siguiente argumento&lt;br /&gt;
     Toda persona pobre tiene un padre rico. Por tanto, existe una&lt;br /&gt;
     persona rica que tiene un abuelo rico.&lt;br /&gt;
  Usar R(x) para x es rico&lt;br /&gt;
       p(x) para el padre de x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Adrian Guerra&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_12:&lt;br /&gt;
assumes &amp;quot;∀x. ¬(R x) ⟶ R (p x)&amp;quot;&lt;br /&gt;
shows &amp;quot;∃x. (R x ∧ R(p (p x)))&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 13. Formalizar el siguiente argumento&lt;br /&gt;
     Todo deprimido que estima a un submarinista es listo. Cualquiera&lt;br /&gt;
     que se estime a sí mismo es listo. Ningún deprimido se estima a sí&lt;br /&gt;
     mismo. Por tanto, ningún deprimido estima a un submarinista.&lt;br /&gt;
  Usar D(x)   para x está deprimido&lt;br /&gt;
       E(x,y) para x estima a y&lt;br /&gt;
       L(x)   para x es listo&lt;br /&gt;
       S(x)   para x es submarinista&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Adrián Guerra &lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_13:&lt;br /&gt;
assumes &amp;quot;∀x. ∀y. ((D x ∧ S y ∧ E x y) ⟶ L x)&amp;quot;&lt;br /&gt;
        &amp;quot;∀x. (E x x ⟶ L x)&amp;quot;&lt;br /&gt;
        &amp;quot;¬(∃x. (D x ∧ E x x))&amp;quot;&lt;br /&gt;
shows &amp;quot;¬(∃x. ∃y. (D x ∧ S y ∧ E x y))&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 14. Formalizar el siguiente argumento&lt;br /&gt;
     Todos los robots obedecen a los amigos del programador jefe.&lt;br /&gt;
     Alvaro es amigo del programador jefe, pero Benito no le&lt;br /&gt;
     obedece. Por tanto, Benito no es un robot.&lt;br /&gt;
  Usar R(x)    para x es un robot&lt;br /&gt;
       Ob(x,y) para x obedece a y&lt;br /&gt;
       A(x)    para x es amigo del programador jefe&lt;br /&gt;
       b       para Benito&lt;br /&gt;
       a       para Alvaro&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Adrian Guerra&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_14:&lt;br /&gt;
assumes &amp;quot;∀x. ∀y. ((A x ∧ R y) ⟶ Ob y x)&amp;quot;&lt;br /&gt;
        &amp;quot;A a&amp;quot;&lt;br /&gt;
        &amp;quot;¬(Ob b a)&amp;quot;&lt;br /&gt;
shows &amp;quot;¬(R b)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 15. Formalizar el siguiente argumento&lt;br /&gt;
     En una pecera nadan una serie de peces. Se observa que:&lt;br /&gt;
     * Hay algún pez x que para cualquier pez y, si el pez x no se come&lt;br /&gt;
       al pez y entonces existe un pez z tal que z es un tiburón o bien&lt;br /&gt;
       z protege al pez y. &lt;br /&gt;
     * No hay ningún pez que se coma a todos los demás.&lt;br /&gt;
     * Ningún pez protege a ningún otro.&lt;br /&gt;
     Por tanto, existe algún tiburón en la pecera.&lt;br /&gt;
  Usar C(x,y) para x se come a y &lt;br /&gt;
       P(x,y) para x protege a y&lt;br /&gt;
       T(x)   para x es un tiburón&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Adrián Guerra&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_15:&lt;br /&gt;
assumes &amp;quot;∃x. (∀y. (¬(C x y) ⟶ (∃z. (T z ∨ P z y))))&amp;quot;&lt;br /&gt;
        &amp;quot;¬(∃x. (∀y. C x y))&amp;quot;&lt;br /&gt;
        &amp;quot;¬(∃x. (∃y. P x y))&amp;quot;&lt;br /&gt;
shows &amp;quot;∃x. T x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 16. Formalizar el siguiente argumento&lt;br /&gt;
     Supongamos conocidos los siguientes hechos acerca del número de&lt;br /&gt;
     aprobados de dos asignaturas A y B: &lt;br /&gt;
     * Si todos los alumnos aprueban la asignatura A, entonces todos&lt;br /&gt;
       aprueban la asignatura B.&lt;br /&gt;
     * Si algún delegado de la clase aprueba A y B, entonces todos los &lt;br /&gt;
       alumnos aprueban A.&lt;br /&gt;
     * Si nadie aprueba B, entonces ningún delegado aprueba A.&lt;br /&gt;
     * Si Manuel no aprueba B, entonces nadie aprueba B.&lt;br /&gt;
     Por tanto, si Manuel es un delegado y aprueba la asignatura A,&lt;br /&gt;
     entonces todos los alumnos aprueban las asignaturas A y B.&lt;br /&gt;
  Usar A(x,y) para x aprueba la asignatura y&lt;br /&gt;
       D(x)   para x es delegado&lt;br /&gt;
       m      para Manuel&lt;br /&gt;
       a      para la asignatura A&lt;br /&gt;
       b      para la asignatura B&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Adrián Guerra&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_16:&lt;br /&gt;
assumes &amp;quot;(∀x. (A x a)) ⟶ (∀y.(A x b))&amp;quot;&lt;br /&gt;
        &amp;quot;(∃x. (D x ∧ A x a ∧ A x b)) ⟶ (∀y. A y a)&amp;quot;&lt;br /&gt;
        &amp;quot;¬(∃x. A x b) ⟶ ¬((∃y. (D y ∧ A y a)))&amp;quot;&lt;br /&gt;
        &amp;quot;¬(A m b) ⟶ ¬(∃x. A x b)&amp;quot;&lt;br /&gt;
shows &amp;quot;(D m ∧ A m a) ⟶ (∀x. (A x a ∧ A x b))&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 17. Formalizar el siguiente argumento&lt;br /&gt;
     En cierto país oriental se ha celebrado la fase final del&lt;br /&gt;
     campeonato mundial de fútbol. Cierto diario deportivo ha publicado&lt;br /&gt;
     las siguientes estadísticas de tan magno acontecimiento: &lt;br /&gt;
     * A todos los porteros que no vistieron camiseta negra les marcó un&lt;br /&gt;
       gol algún delantero europeo.  &lt;br /&gt;
     * Algún portero jugó con botas blancas y sólo le marcaron goles&lt;br /&gt;
       jugadores con botas blancas.  &lt;br /&gt;
     * Ningún portero se marcó un gol a sí mismo. &lt;br /&gt;
     * Ningún jugador con botas blancas vistió camiseta negra. &lt;br /&gt;
     Por tanto, algún delantero europeo jugó con botas blancas.&lt;br /&gt;
  Usar P(x)   para x es portero&lt;br /&gt;
       D(x)   para x es delantero europeo &lt;br /&gt;
       N(x)   para x viste camiseta negra&lt;br /&gt;
       B(x)   para x juega con botas blancas &lt;br /&gt;
       M(x,y) para x marcó un gol a y&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 18. Formalizar el siguiente argumento&lt;br /&gt;
     Las relaciones de parentesco verifican la siguientes propiedades&lt;br /&gt;
     generales:  &lt;br /&gt;
     * Si x es hermano de y, entonces y es hermano de x. &lt;br /&gt;
     * Todo el mundo es hijo de alguien. &lt;br /&gt;
     * Nadie es hijo del hermano de su padre. &lt;br /&gt;
     * Cualquier padre de una persona es también padre de todos los&lt;br /&gt;
       hermanos de esa persona. &lt;br /&gt;
     * Nadie es hijo ni hermano de sí mismo. &lt;br /&gt;
     Tenemos los siguientes miembros de la familia Peláez: Don Antonio,&lt;br /&gt;
     Don Luis, Antoñito y Manolito y sabemos que Don Antonio y Don Luis&lt;br /&gt;
     son hermanos, Antoñito y Manolito son hermanos, y Antoñito es hijo&lt;br /&gt;
     de Don Antonio. Por tanto, Don Luis no es el padre de Manolito.&lt;br /&gt;
  Usar A       para Don Antonio&lt;br /&gt;
       He(x,y) para x es hermano de y &lt;br /&gt;
       Hi(x,y) para x es hijo de y  &lt;br /&gt;
       L       para Don Luis&lt;br /&gt;
       a       para Antoñito&lt;br /&gt;
       m       para Manolito&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Adrián Guerra&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_18:&lt;br /&gt;
assumes &amp;quot;∀x. ∀y. (He x y ⟷ He y x)&amp;quot;&lt;br /&gt;
        &amp;quot;∀x. (∃y. Hi y x)&amp;quot;&lt;br /&gt;
        &amp;quot;¬(∃x y z. (He x y ∧ Hi z x ∧ Hi z y))&amp;quot;&lt;br /&gt;
        &amp;quot;∀x y z. ((Hi y x ∧ He y z) ⟶ Hi z x)&amp;quot;&lt;br /&gt;
        &amp;quot;¬(∃x. (He x x ∨ Hi x x))&amp;quot;&lt;br /&gt;
        &amp;quot;He A L&amp;quot;&lt;br /&gt;
        &amp;quot;He a m&amp;quot;&lt;br /&gt;
        &amp;quot;Hi a A&amp;quot;&lt;br /&gt;
shows &amp;quot;¬(Hi m L)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 19. [Problema del apisonador de Schubert (en inglés, &lt;br /&gt;
  &amp;quot;Schubert’s steamroller&amp;quot;)] Formalizar el siguiente argumento &lt;br /&gt;
     Si uno de los miembros del club afeita a algún otro (incluido a&lt;br /&gt;
     sí mismo), entonces todos los miembros del club lo han afeitado&lt;br /&gt;
     a él (aunque no necesariamente al mismo tiempo). Guido, Lorenzo,&lt;br /&gt;
     Petruccio y Cesare pertenecen al club de barberos. Guido ha&lt;br /&gt;
     afeitado a Cesare. Por tanto, Petruccio ha afeitado a Lorenzo.&lt;br /&gt;
  Usar g      para Guido&lt;br /&gt;
       l      para Lorenzo&lt;br /&gt;
       p      para Petruccio&lt;br /&gt;
       c      para Cesare&lt;br /&gt;
       B(x)   para x es un miembro del club de barberos&lt;br /&gt;
       A(x,y) para x ha afeitado a y&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 20. Formalizar el siguiente argumento&lt;br /&gt;
     Carlos afeita a todos los habitantes de Las Chinas que no se&lt;br /&gt;
     afeitan a sí mismo y sólo a ellos. Carlos es un habitante de las&lt;br /&gt;
     Chinas. Por consiguiente, Carlos no afeita a nadie.&lt;br /&gt;
  Usar A(x,y) para x afeita a y&lt;br /&gt;
       C(x)   para x es un habitante de Las Chinas&lt;br /&gt;
       c      para Carlos&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Adrián Guerra&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_20:&lt;br /&gt;
assumes &amp;quot;∀x. ((C x ∧ ¬(A x x)) ⟷  A c x)&amp;quot;&lt;br /&gt;
        &amp;quot;C c&amp;quot;&lt;br /&gt;
shows &amp;quot;¬(∃x. A c x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 21. Formalizar el siguiente argumento&lt;br /&gt;
     Quien desprecia a todos los fanáticos desprecia también a todos los&lt;br /&gt;
     políticos. Alguien no desprecia a un determinado político. Por&lt;br /&gt;
     consiguiente, hay un fanático al que no todo el mundo desprecia.&lt;br /&gt;
   Usar D(x,y) para x desprecia a y&lt;br /&gt;
        F(x)   para x es fanático&lt;br /&gt;
        P(x)   para x es político&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 22. Formalizar el siguiente argumento&lt;br /&gt;
     El hombre puro ama todo lo que es puro. Por tanto, el hombre puro&lt;br /&gt;
     se ama a sí mismo.&lt;br /&gt;
  Usar A(x,y) para x ama a y&lt;br /&gt;
       H(x)   para x es un hombre&lt;br /&gt;
       P(x)   para x es puro&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Adrián Guerra&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_22:&lt;br /&gt;
assumes &amp;quot;∀x. ∀y. ((P x ∧ H y ∧ P y) ⟶ A x y)&amp;quot;&lt;br /&gt;
shows &amp;quot;∀x. ((H x ∧ P x) ⟶ A x x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 23. Formalizar el siguiente argumento&lt;br /&gt;
     Ningún socio del club está en deuda con el tesorero del club. Si&lt;br /&gt;
     un socio del club no paga su cuota está en deuda con el tesorero&lt;br /&gt;
     del club. Por tanto, si el tesorero del club es socio del club,&lt;br /&gt;
     entonces paga su cuota. &lt;br /&gt;
  Usar P(x) para x es socio del club&lt;br /&gt;
       Q(x) para x paga su cuota&lt;br /&gt;
       R(x) para x está en deuda con el tesorero&lt;br /&gt;
       a    para el tesorero del club&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Adrián Guerra&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_23:&lt;br /&gt;
assumes &amp;quot;¬(∃x. (P x ∧ R x))&amp;quot;&lt;br /&gt;
        &amp;quot;∀x. ((P x ∧ ¬(Q x))⟶ R x)&amp;quot;&lt;br /&gt;
shows &amp;quot;P a ⟶ Q a&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 24. Formalizar el siguiente argumento&lt;br /&gt;
     1. Los lobos, zorros, pájaros, orugas y caracoles son animales y&lt;br /&gt;
        existen algunos ejemplares de estos animales. &lt;br /&gt;
     2. También hay algunas semillas y las semillas son plantas. &lt;br /&gt;
     3. A todo animal le gusta o bien comer todo tipo de plantas o bien&lt;br /&gt;
        le gusta comerse a todos los animales más pequeños que él mismo&lt;br /&gt;
        que gustan de comer algunas plantas. &lt;br /&gt;
     4. Las orugas y los caracoles son mucho más pequeños que los&lt;br /&gt;
        pájaros, que son mucho más pequeños que los zorros que a su vez&lt;br /&gt;
        son mucho más pequeños que los lobos. &lt;br /&gt;
     5. A los lobos no les gusta comer ni zorros ni semillas, mientras&lt;br /&gt;
        que a los pájaros les gusta comer orugas pero no caracoles. &lt;br /&gt;
     6. Las orugas y los caracoles gustan de comer algunas plantas. &lt;br /&gt;
     7. Luego, existe un animal al que le gusta comerse un animal al que&lt;br /&gt;
        le gusta comer semillas.  &lt;br /&gt;
  Usar A(x)    para x es un animal&lt;br /&gt;
       Ca(x)   para x es un caracol&lt;br /&gt;
       Co(x,y) para x le gusta comerse a y&lt;br /&gt;
       L(x)    para x es un lobo&lt;br /&gt;
       M(x,y)  para x es más pequeño que y&lt;br /&gt;
       Or(x)   para x es una oruga&lt;br /&gt;
       Pa(x)   para x es un pájaro&lt;br /&gt;
       Pl(x)   para x es una planta&lt;br /&gt;
       S(x)    para x es una semilla&lt;br /&gt;
       Z(x)    para x es un zorro&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 25. Formalizar el siguiente argumento &lt;br /&gt;
     Rosa ama a Curro. Paco no simpatiza con Ana. Quien no simpatiza con&lt;br /&gt;
     Ana ama a Rosa. Si una persona ama a otra, la segunda ama a la&lt;br /&gt;
     primera. Hay como máximo una persona que ama a Rosa. Por tanto,&lt;br /&gt;
     Paco es Curro. &lt;br /&gt;
  Usar A(x,y) para x ama a y &lt;br /&gt;
       S(x,y) para x simpatiza con y &lt;br /&gt;
       a      para Ana&lt;br /&gt;
       c      para Curro&lt;br /&gt;
       p      para Paco &lt;br /&gt;
       r      para Rosa&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 26. Formalizar el siguiente argumento &lt;br /&gt;
     Sólo hay un sofista que enseña gratuitamente, y éste es&lt;br /&gt;
     Sócrates. Sócrates argumenta mejor que ningún otro sofista. Platón&lt;br /&gt;
     argumenta mejor que algún sofista que enseña gratuitamente. Si una&lt;br /&gt;
     persona argumenta mejor que otra segunda, entonces la segunda no&lt;br /&gt;
     argumenta mejor que la primera. Por consiguiente, Platón no es un&lt;br /&gt;
     sofista. &lt;br /&gt;
  Usar G(x)   para x enseña gratuitamente&lt;br /&gt;
       M(x,y) para x argumenta mejor que y&lt;br /&gt;
       S(x)   para x es un sofista&lt;br /&gt;
       p      para Platón&lt;br /&gt;
       s      para Sócrates&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 27. Formalizar el siguiente argumento &lt;br /&gt;
     Todos los filósofos se han preguntado qué es la filosofía. Los que&lt;br /&gt;
     se preguntan qué es la filosofía se vuelven locos. Nietzsche es&lt;br /&gt;
     filósofo. El maestro de Nietzsche no acabó loco. Por tanto,&lt;br /&gt;
     Nietzsche y su maestro son diferentes personas. &lt;br /&gt;
  Usar F(x) para x es filósofo&lt;br /&gt;
       L(x) para x se vuelve loco&lt;br /&gt;
       P(x) para x se ha preguntado qué es la filosofía.&lt;br /&gt;
       m    para el maestro de Nietzsche&lt;br /&gt;
       n    para Nietzsche&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 28. Formalizar el siguiente argumento &lt;br /&gt;
     Los padres son mayores que los hijos. Juan es el padre de Luis. Por&lt;br /&gt;
     tanto, Juan es mayor que Luis.&lt;br /&gt;
  Usar M(x,y) para x es mayor que y&lt;br /&gt;
       p(x)   para el padre de x&lt;br /&gt;
       j      para Juan&lt;br /&gt;
       l      para Luis&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 29. Formalizar el siguiente argumento &lt;br /&gt;
     El esposo de la hermana de Toni es Roberto. La hermana de Toni es&lt;br /&gt;
     María. Por tanto, el esposo de María es Roberto. &lt;br /&gt;
  Usar e(x) para el esposo de x&lt;br /&gt;
       h    para la hermana de Toni&lt;br /&gt;
       m    para María&lt;br /&gt;
       r    para Roberto&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 30. Formalizar el siguiente argumento &lt;br /&gt;
     Luis y Jaime tienen el mismo padre. La madre de Rosa es&lt;br /&gt;
     Eva. Eva ama a Carlos. Carlos es el padre de Jaime. Por tanto,&lt;br /&gt;
     la madre de Rosa ama al padre de Luis.&lt;br /&gt;
  Usar A(x,y) para x ama a y&lt;br /&gt;
       m(x)   para la madre de x&lt;br /&gt;
       p(x)   para el padre de x&lt;br /&gt;
       c      para Carlos&lt;br /&gt;
       e      para Eva&lt;br /&gt;
       j      para Jaime&lt;br /&gt;
       l      para Luis&lt;br /&gt;
       r      para Rosa&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 31. Formalizar el siguiente argumento &lt;br /&gt;
     Si dos personas son hermanos, entonces tienen la misma madre y el&lt;br /&gt;
     mismo padre. Juan es hermano de Luis. Por tanto, la madre del padre&lt;br /&gt;
     de Juan es la madre del padre de Luis.&lt;br /&gt;
  Usar H(x,y) para x es hermano de y&lt;br /&gt;
       m(x)   para la madre de x&lt;br /&gt;
       p(x)   para el padre de x&lt;br /&gt;
       j      para Juan&lt;br /&gt;
       l      para Luis&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 32. Formalizar el siguiente argumento &lt;br /&gt;
     Todos los miembros del claustro son asturianos. El secretario forma&lt;br /&gt;
     parte del claustro. El señor Martínez es el secretario. Por tanto,&lt;br /&gt;
     el señor Martínez es asturiano.&lt;br /&gt;
  Usar C(x) para x es miembro del claustro&lt;br /&gt;
       A(x) para x es asturiano&lt;br /&gt;
       s    para el secretario&lt;br /&gt;
       m    para el señor Martínez&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 33. Formalizar el siguiente argumento &lt;br /&gt;
     Eduardo pudo haber visto al asesino. Antonio fue el primer testigo&lt;br /&gt;
     de la defensa. O Eduardo estaba en clase o Antonio dio falso&lt;br /&gt;
     testimonio. Nadie en clase pudo haber visto al asesino. Luego, el&lt;br /&gt;
     primer testigo de la defensa dio falso testimonio. &lt;br /&gt;
  Usar C(x) para x estaba en clase&lt;br /&gt;
       F(x) para x dio falso testimonio&lt;br /&gt;
       V(x) para x pudo haber visto al asesino&lt;br /&gt;
       a    para Antonio&lt;br /&gt;
       e    para Eduardo&lt;br /&gt;
       p    para el primer testigo de la defensa&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 34. Formalizar el siguiente argumento &lt;br /&gt;
     La luna hoy es redonda. La luna de hace dos semanas tenía forma de&lt;br /&gt;
     cuarto creciente. Luna no hay más que una, es decir, siempre es la&lt;br /&gt;
     misma. Luego existe algo que es a la vez redondo y con forma de&lt;br /&gt;
     cuarto creciente. &lt;br /&gt;
  Usar L(x) para la luna del momento x&lt;br /&gt;
       R(x) para x es redonda&lt;br /&gt;
       C(x) para x tiene forma de cuarto creciente&lt;br /&gt;
       h    para hoy&lt;br /&gt;
       d    para hace dos semanas&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 35. Formalizar el siguiente argumento &lt;br /&gt;
     Juana sólo tiene un marido. Juana está casada con Tomás. Tomás es&lt;br /&gt;
     delgado y Guillermo no. Luego, Juana no está casada con Guillermo. &lt;br /&gt;
  Usar D(x)   para x es delgado&lt;br /&gt;
       C(x,y) para x está casada con y&lt;br /&gt;
       g      para Guillermo&lt;br /&gt;
       j      para Juana&lt;br /&gt;
       t      para Tomás&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 36. Formalizar el siguiente argumento &lt;br /&gt;
     Sultán no es Chitón. Sultán no obtendrá un plátano a menos que&lt;br /&gt;
     pueda resolver cualquier problema. Si el chimpancé Chitón trabaja&lt;br /&gt;
     más que Sultán resolverá problemas que Sultán no puede resolver. &lt;br /&gt;
     Todos los chimpancés distintos de Sultán trabajan más que Sultán. &lt;br /&gt;
     Por consiguiente, Sultán no obtendrá un plátano.&lt;br /&gt;
  Usar Pl(x)  para x obtiene el plátano&lt;br /&gt;
       Pr(x)  para x es un problema&lt;br /&gt;
       R(x,y) para x resuelve y&lt;br /&gt;
       T(x,y) para x trabaja más que y&lt;br /&gt;
       c      para Chitón&lt;br /&gt;
       s      para Sultán&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Relaci%C3%B3n_5_(resuelta)&amp;diff=353</id>
		<title>Relación 5 (resuelta)</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Relaci%C3%B3n_5_(resuelta)&amp;diff=353"/>
		<updated>2018-07-16T12:27:11Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang = &amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* R5: Argumentación en lógica de primer orden *}&lt;br /&gt;
&lt;br /&gt;
theory R5_sol&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  --------------------------------------------------------------------- &lt;br /&gt;
  El objetivo de esta relación es formalizar en lógica de primer orden&lt;br /&gt;
  argumentos expresados en lenguaje natural.&lt;br /&gt;
 &lt;br /&gt;
  Antes de escribir la soluciones, comprobar con APLI2 la corrección de &lt;br /&gt;
  la formalización. &lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 1. Formalizar el siguiente argumento &lt;br /&gt;
     Sócrates es un hombre. &lt;br /&gt;
     Los hombres son mortales. &lt;br /&gt;
     Luego, Sócrates es mortal.&lt;br /&gt;
  Usar s    para Sócrates&lt;br /&gt;
       H(x) para x es un hombre          &lt;br /&gt;
       M(x) para x es mortal&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_1:&lt;br /&gt;
  assumes &amp;quot;H(s)&amp;quot; &lt;br /&gt;
          &amp;quot;∀x. H(x) ⟶ M(x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;M(s)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 2. Formalizar el siguiente argumento &lt;br /&gt;
     Hay estudiantes inteligentes y hay estudiantes trabajadores. Por&lt;br /&gt;
     tanto, hay estudiantes inteligentes y trabajadores.&lt;br /&gt;
  Usar I(x) para x es inteligente&lt;br /&gt;
       T(x) para x es trabajador&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La refutación automática es&amp;quot;&lt;br /&gt;
lemma ejercicio_2:&lt;br /&gt;
  assumes &amp;quot;(∃x. I(x)) ∧ (∃x. T(x))&amp;quot; &lt;br /&gt;
  shows   &amp;quot;∃x. I(x) ∧ T(x)&amp;quot;&lt;br /&gt;
quickcheck&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  El argumento es incorrecto como muestra el siguiente contraejemplo:&lt;br /&gt;
     I = {a1}\&amp;lt;^isub&amp;gt;&lt;br /&gt;
     T = {a2}&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 3. Formalizar el siguiente argumento &lt;br /&gt;
     Todos los participantes son vencedores. Hay como máximo un&lt;br /&gt;
     vencedor. Hay como máximo un participante. Por lo tanto, hay&lt;br /&gt;
     exactamente un participante. &lt;br /&gt;
  Usar P(x) para x es un participante&lt;br /&gt;
       V(x) para x es un vencedor&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La refutación automática es&amp;quot;&lt;br /&gt;
lemma ejercicio_3: &lt;br /&gt;
  assumes &amp;quot;∀x. P(x) ⟶ V(x)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x y. V(x) ∧ V(y) ⟶ x=y&amp;quot; &lt;br /&gt;
          &amp;quot;∀x y. P(x) ∧ P(y) ⟶ x=y&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. P(x) ∧ (∀y. P(y) ⟶ x=y)&amp;quot;&lt;br /&gt;
quickcheck  &lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  El argumento es incorrecto como muestra el siguiente contraejemplo:&lt;br /&gt;
     V = {}&lt;br /&gt;
     P = {}&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 4. Formalizar el siguiente argumento &lt;br /&gt;
     Todo aquel que entre en el país y no sea un VIP será cacheado por&lt;br /&gt;
     un aduanero. Hay un contrabandista que entra en el país y que solo&lt;br /&gt;
     podrá ser cacheado por contrabandistas. Ningún contrabandista es un&lt;br /&gt;
     VIP. Por tanto, algún aduanero es contrabandista.&lt;br /&gt;
  Usar A(x)    para x es aduanero&lt;br /&gt;
       Ca(x,y) para x cachea a y&lt;br /&gt;
       Co(x)   para x es contrabandista&lt;br /&gt;
       E(x)    para x entra en el pais&lt;br /&gt;
       V(x)    para x es un VIP&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejercicio_4:&lt;br /&gt;
  assumes &amp;quot;∀x. E(x) ∧ ¬V(x) ⟶ (∃y. A(y) ∧ Ca(y,x))&amp;quot;&lt;br /&gt;
           &amp;quot;∃x. Co(x) ∧ E(x) ∧ (∀y. Ca(y,x) ⟶ Co(y))&amp;quot;&lt;br /&gt;
           &amp;quot;¬(∃x. Co(x) ∧ V(x))&amp;quot;&lt;br /&gt;
  shows    &amp;quot;∃x. A(x) ∧ Co(x)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 5. Formalizar el siguiente argumento &lt;br /&gt;
     Juan teme a María. Pedro es temido por Juan. Luego, alguien teme a&lt;br /&gt;
     María y a Pedro.&lt;br /&gt;
  Usar j      para Juan  &lt;br /&gt;
       m      para María&lt;br /&gt;
       p      para Pedro&lt;br /&gt;
       T(x,y) para x teme a y&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_5:&lt;br /&gt;
  assumes &amp;quot;T(j,m)&amp;quot; &lt;br /&gt;
          &amp;quot;T(j,p)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. T(x,m) ∧ T(x,p)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 6. Formalizar el siguiente argumento &lt;br /&gt;
     Los hermanos tienen el mismo padre. Juan es hermano de Luis. Carlos&lt;br /&gt;
     es padre de Luis. Por tanto, Carlos es padre de Juan.&lt;br /&gt;
  Usar H(x,y) para x es hermano de y&lt;br /&gt;
       P(x,y) para x es padre de y&lt;br /&gt;
       j      para Juan&lt;br /&gt;
       l      para Luis&lt;br /&gt;
       c      para Carlos&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_6:&lt;br /&gt;
  assumes &amp;quot;∀x y. H(x,y) ⟶ H(y,x)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x y z. H(x,y) ∧ P(z,x) ⟶ P(z,y)&amp;quot;&lt;br /&gt;
          &amp;quot;H(j,l)&amp;quot;&lt;br /&gt;
          &amp;quot;P(c,l)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;P(c,j)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 7. Formalizar el siguiente argumento &lt;br /&gt;
     La existencia de algún canal de TV pública, supone un acicate para&lt;br /&gt;
     cualquier canal de TV privada; el que un canal de TV tenga un&lt;br /&gt;
     acicate, supone una gran satisfacción para cualquiera de sus&lt;br /&gt;
     directivos; en Madrid hay varios canales públicos de TV; TV5 es un&lt;br /&gt;
     canal de TV privada; por tanto, todos los directivos de TV5 están&lt;br /&gt;
     satisfechos. &lt;br /&gt;
  Usar Pu(x)  para x es un canal de TV pública&lt;br /&gt;
       Pr(x)  para x es un canal de TV privada&lt;br /&gt;
       A(x)   para x posee un acicate&lt;br /&gt;
       D(x,y) para x es un directivo del canal y&lt;br /&gt;
       S(x)   para x está satisfecho &lt;br /&gt;
       t      para TV5&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejercicio_7:&lt;br /&gt;
  assumes &amp;quot;(∃x. Pu(x)) ⟶ (∀x. Pr(x) ⟶ A(x))&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. A(x) ⟶ (∀y. D(y,x) ⟶ S(y))&amp;quot;&lt;br /&gt;
          &amp;quot;∃x. Pu(x)&amp;quot;&lt;br /&gt;
          &amp;quot;Pr(t)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. D(x,t) ⟶ S(x)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 8. Formalizar el siguiente argumento &lt;br /&gt;
     Quien intente entrar en un país y no tenga pasaporte, encontrará&lt;br /&gt;
     algún aduanero que le impida el paso. A algunas personas&lt;br /&gt;
     motorizadas que intentan entrar en un país le impiden el paso&lt;br /&gt;
     únicamente personas motorizadas. Ninguna persona motorizada tiene&lt;br /&gt;
     pasaporte. Por tanto, ciertos aduaneros están motorizados.&lt;br /&gt;
  Usar E(x)   para x entra en un país&lt;br /&gt;
       P(x)   para x tiene pasaporte&lt;br /&gt;
       A(x)   para x es aduanero&lt;br /&gt;
       I(x,y) para x impide el paso a y&lt;br /&gt;
       M(x)   para x está motorizada&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejercicio_8:&lt;br /&gt;
  assumes &amp;quot;∀x. E(x) ∧ ¬P(x) ⟶ (∃y. A(y) ∧ I(y,x))&amp;quot;&lt;br /&gt;
          &amp;quot;∃x. M(x) ∧ E(x) ∧ (∀y. I(y,x) ⟶ M(y))&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. M(x) ⟶ ¬P(x)&amp;quot;&lt;br /&gt;
  shows &amp;quot;∃x. A(x) ∧ M(x)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 9. Formalizar el siguiente argumento &lt;br /&gt;
     Los aficionados al fútbol aplauden a cualquier futbolista&lt;br /&gt;
     extranjero. Juanito no aplaude a futbolistas extranjeros. Por&lt;br /&gt;
     tanto, si hay algún futbolista extranjero nacionalizado español,&lt;br /&gt;
     Juanito no es aficionado al fútbol.&lt;br /&gt;
  Usar Af(x)   para x es aficicionado al fútbol&lt;br /&gt;
       Ap(x,y) para x aplaude a y&lt;br /&gt;
       E(x)    para x es un futbolista extranjero&lt;br /&gt;
       N(x)    para x es un futbolista nacionalizado español&lt;br /&gt;
       j       para Juanito&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejercicio_9:&lt;br /&gt;
  assumes &amp;quot;∀x. Af(x) ⟶ (∀y. E(y) ⟶ Ap(x,y))&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. E(x) ⟶ ¬Ap(j,x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(∃x. E(x) ∧ N(x)) ⟶ ¬Af(j)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 10. Formalizar el siguiente argumento &lt;br /&gt;
     Ningún aristócrata debe ser condenado a galeras a menos que sus&lt;br /&gt;
     crímenes sean vergonzosos y lleve una vida licenciosa. En la ciudad&lt;br /&gt;
     hay aristócratas que han cometido crímenes vergonzosos aunque su&lt;br /&gt;
     forma de vida no sea licenciosa. Por tanto, hay algún aristócrata&lt;br /&gt;
     que no está condenado a galeras. &lt;br /&gt;
  Usar A(x)  para x es aristócrata&lt;br /&gt;
       G(x)  para x está condenado a galeras&lt;br /&gt;
       L(x)  para x lleva una vida licenciosa&lt;br /&gt;
       V(x)  para x ha cometido crímenes vergonzoso&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- &amp;quot;La demostración automática es&amp;quot;&lt;br /&gt;
lemma ejercicio_10:&lt;br /&gt;
  assumes &amp;quot;∀x. A(x) ∧ G(x) ⟶ L(x) ∧ V(x)&amp;quot;&lt;br /&gt;
          &amp;quot;∃x. A(x) ∧ V(x) ∧ ¬L(x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. A(x) ∧ ¬G(x)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 11. Formalizar el siguiente argumento &lt;br /&gt;
     Todo individuo que esté conforme con el contenido de cualquier&lt;br /&gt;
     acuerdo internacional lo apoya o se inhibe en absoluto de asuntos&lt;br /&gt;
     políticos. Cualquiera que se inhiba de los asuntos políticos, no&lt;br /&gt;
     participará en el próximo referéndum. Todo español, está conforme&lt;br /&gt;
     con el acuerdo internacional de Maastricht, al que sin embargo no&lt;br /&gt;
     apoya. Por tanto, cualquier individuo o no es español, o en otro&lt;br /&gt;
     caso, está conforme con el contenido del acuerdo internacional de&lt;br /&gt;
     Maastricht y no participará en el próximo referéndum. &lt;br /&gt;
  Usar C(x,y) para la persona x conforme con el contenido del acuerdo y&lt;br /&gt;
       A(x,y) para la persona x apoya el acuerdo y&lt;br /&gt;
       I(x)   para la persona x se inibe de asuntos políticos&lt;br /&gt;
       R(x)   para la persona x participará en el próximo referéndum&lt;br /&gt;
       E(x)   para la persona x es española&lt;br /&gt;
       m      para el acuerdo de Maastricht&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_11:&lt;br /&gt;
  assumes &amp;quot;∀x y. C(x,y) ⟶ A(x,y) ∨ I(x)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. I(x) ⟶ ¬R(x)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. E(x) ⟶ C(x,m) ∧ ¬A(x,m)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. ¬E(x) ∨ (C(x,m) ∧ ¬R(x))&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 12. Formalizar el siguiente argumento &lt;br /&gt;
     Toda persona pobre tiene un padre rico. Por tanto, existe una&lt;br /&gt;
     persona rica que tiene un abuelo rico.&lt;br /&gt;
  Usar R(x) para x es rico&lt;br /&gt;
       p(x) para el padre de x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_12:&lt;br /&gt;
  assumes &amp;quot;∀x. ¬R(x) ⟶ R(p(x))&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. R(x) ∧ R(p(p(x)))&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 13. Formalizar el siguiente argumento &lt;br /&gt;
     Todo deprimido que estima a un submarinista es listo. Cualquiera&lt;br /&gt;
     que se estime a sí mismo es listo. Ningún deprimido se estima a sí&lt;br /&gt;
     mismo. Por tanto, ningún deprimido estima a un submarinista.&lt;br /&gt;
  Usar D(x)   para x está deprimido&lt;br /&gt;
       E(x,y) para x estima a y&lt;br /&gt;
       L(x)   para x es listo&lt;br /&gt;
       S(x)   para x es submarinista&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_13:&lt;br /&gt;
  assumes &amp;quot;∀x. D(x) ∧ (∃y. S(y) ∧ E(x,y)) ⟶ L(x)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. E(x,x) ⟶ L(x)&amp;quot;&lt;br /&gt;
          &amp;quot;¬(∃x. D(x) ∧ E(x,x))&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(∃x. D(x) ∧ (∃y. S(y) ∧ E(x,y)))&amp;quot;&lt;br /&gt;
quickcheck&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  El argumento es incorrecto como muestra el siguiente contraejemplo:&lt;br /&gt;
     Quickcheck found a counterexample:&lt;br /&gt;
     D = {a2}&lt;br /&gt;
     S = {a1}&lt;br /&gt;
     E = {(a2,a1)}&lt;br /&gt;
     L = {a2}&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 14. Formalizar el siguiente argumento &lt;br /&gt;
     Todos los robots obedecen a los amigos del programador jefe.&lt;br /&gt;
     Alvaro es amigo del programador jefe, pero Benito no le&lt;br /&gt;
     obedece. Por tanto, Benito no es un robot.&lt;br /&gt;
  Usar R(x)    para x es un robot&lt;br /&gt;
       Ob(x,y) para x obedece a y&lt;br /&gt;
       A(x)    para x es amigo del programador jefe&lt;br /&gt;
       b       para Benito&lt;br /&gt;
       a       para Alvaro&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_14:&lt;br /&gt;
  assumes &amp;quot;∀x y. R(x) ∧ A(y) ⟶ Ob(x,y)&amp;quot;&lt;br /&gt;
          &amp;quot;A(a)&amp;quot;&lt;br /&gt;
          &amp;quot;¬Ob(b,a)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬R(b)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 15. Formalizar el siguiente argumento &lt;br /&gt;
     En una pecera nadan una serie de peces. Se observa que:&lt;br /&gt;
     * Hay algún pez x que para cualquier pez y, si el pez x no se come&lt;br /&gt;
       al pez y entonces existe un pez z tal que z es un tiburón o bien&lt;br /&gt;
       z protege al pez y. &lt;br /&gt;
     * No hay ningún pez que se coma a todos los demás.&lt;br /&gt;
     * Ningún pez protege a ningún otro.&lt;br /&gt;
     Por tanto, existe algún tiburón en la pecera.&lt;br /&gt;
  Usar C(x,y) para x se come a y &lt;br /&gt;
       P(x,y) para x protege a y&lt;br /&gt;
       T(x)   para x es un tiburón&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_15:&lt;br /&gt;
  assumes &amp;quot;∃x. ∀y. ¬C(x,y) ⟶ (∃z. T(z) ∨ P(z,y))&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. ∃y. ¬C(x,y)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x y. ¬P(x,y)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. T(x)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 16. Formalizar el siguiente argumento &lt;br /&gt;
     Supongamos conocidos los siguientes hechos acerca del número de&lt;br /&gt;
     aprobados de dos asignaturas A y B: &lt;br /&gt;
     * Si todos los alumnos aprueban la asignatura A, entonces todos&lt;br /&gt;
       aprueban la asignatura B.&lt;br /&gt;
     * Si algún delegado de la clase aprueba A y B, entonces todos los &lt;br /&gt;
       alumnos aprueban A.&lt;br /&gt;
     * Si nadie aprueba B, entonces ningún delegado aprueba A.&lt;br /&gt;
     * Si Manuel no aprueba B, entonces nadie aprueba B.&lt;br /&gt;
     Por tanto, si Manuel es un delegado y aprueba la asignatura A,&lt;br /&gt;
     entonces todos los alumnos aprueban las asignaturas A y B.&lt;br /&gt;
  Usar A(x,y) para x aprueba la asignatura y&lt;br /&gt;
       D(x)   para x es delegado&lt;br /&gt;
       m      para Manuel&lt;br /&gt;
       a      para la asignatura A&lt;br /&gt;
       b      para la asignatura B&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_16:&lt;br /&gt;
  assumes &amp;quot;(∀x. A(x,a)) ⟶ (∀x. A(x,b))&amp;quot;&lt;br /&gt;
          &amp;quot;(∃x. D(x) ∧ A(x,a) ∧ A(x,b)) ⟶ (∀x. A(x,a))&amp;quot;&lt;br /&gt;
          &amp;quot;(∀x. ¬A(x,b)) ⟶ (∀x. D(x) ⟶ ¬A(x,a))&amp;quot;&lt;br /&gt;
          &amp;quot;¬A(m,b) ⟶ (∀x. ¬A(x,b))&amp;quot;&lt;br /&gt;
   shows  &amp;quot;D(m) ∧ A(m,a) ⟶ (∀x. A(x,a) ∧ A(x,b))&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 17. Formalizar el siguiente argumento &lt;br /&gt;
     En cierto país oriental se ha celebrado la fase final del&lt;br /&gt;
     campeonato mundial de fútbol. Cierto diario deportivo ha publicado&lt;br /&gt;
     las siguientes estadísticas de tan magno acontecimiento: &lt;br /&gt;
     * A todos los porteros que no vistieron camiseta negra les marcó un&lt;br /&gt;
       gol algún delantero europeo.  &lt;br /&gt;
     * Algún portero jugó con botas blancas y sólo le marcaron goles&lt;br /&gt;
       jugadores con botas blancas.  &lt;br /&gt;
     * Ningún portero se marcó un gol a sí mismo. &lt;br /&gt;
     * Ningún jugador con botas blancas vistió camiseta negra. &lt;br /&gt;
     Por tanto, algún delantero europeo jugó con botas blancas.&lt;br /&gt;
  Usar P(x)   para x es portero&lt;br /&gt;
       D(x)   para x es delantero europeo &lt;br /&gt;
       N(x)   para x viste camiseta negra&lt;br /&gt;
       B(x)   para x juega con botas blancas &lt;br /&gt;
       M(x,y) para x marcó un gol a y&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_17:&lt;br /&gt;
  assumes &amp;quot;∀x. P(x) ∧ ¬N(x) ⟶ (∃y. D(y) ∧ M(y,x))&amp;quot;&lt;br /&gt;
          &amp;quot;∃x. P(x) ∧ B(x) ∧ (∀y. M(y,x) ⟶ B(y))&amp;quot;&lt;br /&gt;
          &amp;quot;¬(∃x. P(x) ∧ M(x,x))&amp;quot;&lt;br /&gt;
          &amp;quot;¬(∃x. B(x) ∧ N(x))&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. D(x) ∧ B(x)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 18. Formalizar el siguiente argumento &lt;br /&gt;
     Las relaciones de parentesco verifican la siguientes propiedades&lt;br /&gt;
     generales:  &lt;br /&gt;
     * Si x es hermano de y, entonces y es hermano de x. &lt;br /&gt;
     * Todo el mundo es hijo de alguien. &lt;br /&gt;
     * Nadie es hijo del hermano de su padre. &lt;br /&gt;
     * Cualquier padre de una persona es también padre de todos los&lt;br /&gt;
       hermanos de esa persona. &lt;br /&gt;
     * Nadie es hijo ni hermano de sí mismo. &lt;br /&gt;
     Tenemos los siguientes miembros de la familia Peláez: Don Antonio,&lt;br /&gt;
     Don Luis, Antoñito y Manolito y sabemos que Don Antonio y Don Luis&lt;br /&gt;
     son hermanos, Antoñito y Manolito son hermanos, y Antoñito es hijo&lt;br /&gt;
     de Don Antonio. Por tanto, Don Luis no es el padre de Manolito.&lt;br /&gt;
  Usar A       para Don Antonio&lt;br /&gt;
       He(x,y) para x es hermano de y &lt;br /&gt;
       Hi(x,y) para x es hijo de y  &lt;br /&gt;
       L       para Don Luis&lt;br /&gt;
       a       para Antoñito&lt;br /&gt;
       m       para Manolito&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_18:&lt;br /&gt;
  assumes &amp;quot;∀x y. He(x,y) ⟶ He(y,x)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. ∃y. Hi(x,y)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x y z. Hi(x,y) ∧ He(z,y) ⟶ ¬Hi(x,z)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x y. Hi(x,y) ⟶ (∀z. He(z,x) ⟶ Hi(z,y))&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. ¬Hi(x,x) ∧ ¬He(x,x)&amp;quot;&lt;br /&gt;
          &amp;quot;He(A,L)&amp;quot;&lt;br /&gt;
          &amp;quot;He(a,m)&amp;quot;&lt;br /&gt;
          &amp;quot;Hi(a,A)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬Hi(m,L)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 19. [Problema del apisonador de Schubert (en inglés, &lt;br /&gt;
  &amp;quot;Schubert’s steamroller&amp;quot;)] Formalizar el siguiente argumento &lt;br /&gt;
     Si uno de los miembros del club afeita a algún otro (incluido a&lt;br /&gt;
     sí mismo), entonces todos los miembros del club lo han afeitado&lt;br /&gt;
     a él (aunque no necesariamente al mismo tiempo). Guido, Lorenzo,&lt;br /&gt;
     Petruccio y Cesare pertenecen al club de barberos. Guido ha&lt;br /&gt;
     afeitado a Cesare. Por tanto, Petruccio ha afeitado a Lorenzo.&lt;br /&gt;
  Usar g      para Guido&lt;br /&gt;
       l      para Lorenzo&lt;br /&gt;
       p      para Petruccio&lt;br /&gt;
       c      para Cesare&lt;br /&gt;
       B(x)   para x es un miembro del club de barberos&lt;br /&gt;
       A(x,y) para x ha afeitado a y&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_19:&lt;br /&gt;
  assumes &amp;quot;∀x. B(x) ∧ (∃y. B(y) ∧ A(x,y)) ⟶ (∀z. B(z) ⟶ A(z,x))&amp;quot;&lt;br /&gt;
          &amp;quot;B(g)&amp;quot; &lt;br /&gt;
          &amp;quot;B(l)&amp;quot; &lt;br /&gt;
          &amp;quot;B(p)&amp;quot; &lt;br /&gt;
          &amp;quot;B(c)&amp;quot;&lt;br /&gt;
          &amp;quot;A(g,c)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;A(p,l)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 20. Formalizar el siguiente argumento &lt;br /&gt;
     Carlos afeita a todos los habitantes de Las Chinas que no se&lt;br /&gt;
     afeitan a sí mismo y sólo a ellos. Carlos es un habitante de las&lt;br /&gt;
     Chinas. Por consiguiente, Carlos no afeita a nadie.&lt;br /&gt;
  Usar A(x,y) para x afeita a y&lt;br /&gt;
       C(x)   para x es un habitante de Las Chinas&lt;br /&gt;
       c      para Carlos&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_20:&lt;br /&gt;
  assumes &amp;quot;∀x. A(c,x) ⟷ C(x) ∧ ¬A(x,x)&amp;quot;&lt;br /&gt;
          &amp;quot;C(c)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(∃x. A(c,x))&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 21. Formalizar el siguiente argumento&lt;br /&gt;
     Quien desprecia a todos los fanáticos desprecia también a todos los&lt;br /&gt;
     políticos. Alguien no desprecia a un determinado político. Por&lt;br /&gt;
     consiguiente, hay un fanático al que no todo el mundo desprecia.&lt;br /&gt;
   Usar D(x,y) para x desprecia a y&lt;br /&gt;
        F(x)   para x es fanático&lt;br /&gt;
        P(x)   para x es político&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_21:&lt;br /&gt;
  assumes &amp;quot;∀x. (∀y. F(y) ⟶ D(x,y)) ⟶  (∀y. P(y) ⟶ D(x,y))&amp;quot;&lt;br /&gt;
          &amp;quot;∃x y. P(y) ∧ ¬D(x,y)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. F(x) ∧ ¬(∀y. D(y,x))&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 22. Formalizar el siguiente argumento&lt;br /&gt;
     El hombre puro ama todo lo que es puro. Por tanto, el hombre puro&lt;br /&gt;
     se ama a sí mismo.&lt;br /&gt;
  Usar A(x,y) para x ama a y&lt;br /&gt;
       H(x)   para x es un hombre&lt;br /&gt;
       P(x)   para x es puro&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_22:&lt;br /&gt;
  assumes &amp;quot;∀x. H(x) ∧ P(x) ⟶ (∀y. P(y) ⟶ A(x,y))&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. H(x) ∧ P(x) ⟶ A(x,x)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 23. Formalizar el siguiente argumento&lt;br /&gt;
     Ningún socio del club está en deuda con el tesorero del club. Si&lt;br /&gt;
     un socio del club no paga su cuota está en deuda con el tesorero&lt;br /&gt;
     del club. Por tanto, si el tesorero del club es socio del club,&lt;br /&gt;
     entonces paga su cuota. &lt;br /&gt;
  Usar P(x) para x es socio del club&lt;br /&gt;
       Q(x) para x paga su cuota&lt;br /&gt;
       R(x) para x está en deuda con el tesorero&lt;br /&gt;
       a    para el tesorero del club&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_23:&lt;br /&gt;
  assumes &amp;quot;¬(∃x. P(x) ∧ R(x))&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. P(x) ∧ ¬Q(x) ⟶ R(x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;P(a) ⟶ Q(a)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 24. Formalizar el siguiente argumento&lt;br /&gt;
     1. Los lobos, zorros, pájaros, orugas y caracoles son animales y&lt;br /&gt;
        existen algunos ejemplares de estos animales. &lt;br /&gt;
     2. También hay algunas semillas y las semillas son plantas. &lt;br /&gt;
     3. A todo animal le gusta o bien comer todo tipo de plantas o bien&lt;br /&gt;
        le gusta comerse a todos los animales más pequeños que él mismo&lt;br /&gt;
        que gustan de comer algunas plantas. &lt;br /&gt;
     4. Las orugas y los caracoles son mucho más pequeños que los&lt;br /&gt;
        pájaros, que son mucho más pequeños que los zorros que a su vez&lt;br /&gt;
        son mucho más pequeños que los lobos. &lt;br /&gt;
     5. A los lobos no les gusta comer ni zorros ni semillas, mientras&lt;br /&gt;
        que a los pájaros les gusta comer orugas pero no caracoles. &lt;br /&gt;
     6. Las orugas y los caracoles gustan de comer algunas plantas. &lt;br /&gt;
     7. Luego, existe un animal al que le gusta comerse un animal al que&lt;br /&gt;
        le gusta comer semillas.  &lt;br /&gt;
  Usar A(x)    para x es un animal&lt;br /&gt;
       Ca(x)   para x es un caracol&lt;br /&gt;
       Co(x,y) para x le gusta comerse a y&lt;br /&gt;
       L(x)    para x es un lobo&lt;br /&gt;
       M(x,y)  para x es más pequeño que y&lt;br /&gt;
       Or(x)   para x es una oruga&lt;br /&gt;
       Pa(x)   para x es un pájaro&lt;br /&gt;
       Pl(x)   para x es una planta&lt;br /&gt;
       S(x)    para x es una semilla&lt;br /&gt;
       Z(x)    para x es un zorro&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_24:&lt;br /&gt;
  assumes&lt;br /&gt;
   &amp;quot;∀x. L(x) ⟶ A(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x. Z(x) ⟶ A(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x. Pa(x) ⟶ A(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x. Or(x) ⟶ A(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x. Ca(x) ⟶ A(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∃x. L(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∃x. Z(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∃x. Pa(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∃x. Or(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∃x. Ca(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∃x. S(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x. S(x) ⟶ Pl(x)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x. A(x) ⟶ &lt;br /&gt;
        (∀y. Pl(y) ⟶ Co(x,y)) ∨ &lt;br /&gt;
        (∀y. A(y) ∧ M(y,x) ∧ (∃z. Pl(z) ∧ Co(y,z)) ⟶ Co(x,y))&amp;quot;&lt;br /&gt;
   &amp;quot;∀x y. Pa(y) ∧ (Ca(x) ∨ Or(x)) ⟶ M(x,y)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x y. Pa(x) ∧ Z(y) ⟶ M(x,y)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x y. Z(x) ∧ L(y) ⟶ M(x,y)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x y. L(x) ∧ (Z(y)∨ S(y)) ⟶ ¬Co(x,y)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x y. Pa(x) ∧ Or(y) ⟶ Co(x,y)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x y. Pa(x) ∧ Ca(y) ⟶ ¬Co(x,y)&amp;quot;&lt;br /&gt;
   &amp;quot;∀x. Or(x) ∨ Ca(x) ⟶ (∃y. Pl(y) ∧ Co(x,y))&amp;quot;&lt;br /&gt;
  shows&lt;br /&gt;
   &amp;quot;∃x y. A(x) ∧ A(y) ∧ (∃z. S(z) ∧ Co(y,z) ∧ Co(x,y))&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by meson&lt;br /&gt;
&lt;br /&gt;
section {* Ejercicios con igualdad *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 25. Formalizar el siguiente argumento &lt;br /&gt;
     Rosa ama a Curro. Paco no simpatiza con Ana. Quien no simpatiza con&lt;br /&gt;
     Ana ama a Rosa. Si una persona ama a otra, la segunda ama a la&lt;br /&gt;
     primera. Hay como máximo una persona que ama a Rosa. Por tanto,&lt;br /&gt;
     Paco es Curro. &lt;br /&gt;
  Usar A(x,y) para x ama a y &lt;br /&gt;
       S(x,y) para x simpatiza con y &lt;br /&gt;
       a      para Ana&lt;br /&gt;
       c      para Curro&lt;br /&gt;
       p      para Paco &lt;br /&gt;
       r      para Rosa&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_25:&lt;br /&gt;
  assumes &amp;quot;A(r,c)&amp;quot; &lt;br /&gt;
          &amp;quot;¬S(p,a)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. ¬S(x,a) ⟶ A(x,r)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x y. A(x,y) ⟶ A(y,x)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x y. A(x,r) ∧ A(y,r) ⟶ x=y&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p = c&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 26. Formalizar el siguiente argumento &lt;br /&gt;
     Sólo hay un sofista que enseña gratuitamente, y éste es&lt;br /&gt;
     Sócrates. Sócrates argumenta mejor que ningún otro sofista. Platón&lt;br /&gt;
     argumenta mejor que algún sofista que enseña gratuitamente. Si una&lt;br /&gt;
     persona argumenta mejor que otra segunda, entonces la segunda no&lt;br /&gt;
     argumenta mejor que la primera. Por consiguiente, Platón no es un&lt;br /&gt;
     sofista. &lt;br /&gt;
  Usar G(x)   para x enseña gratuitamente&lt;br /&gt;
       M(x,y) para x argumenta mejor que y&lt;br /&gt;
       S(x)   para x es un sofista&lt;br /&gt;
       p      para Platón&lt;br /&gt;
       s      para Sócrates&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_26:&lt;br /&gt;
  assumes &amp;quot;∃y. (∀x. S(x) ∧ G(x) ⟷ x=y) ∧ y=s&amp;quot; &lt;br /&gt;
          &amp;quot;∀x. S(x) ∧ x ≠ s ⟶ M(s,x)&amp;quot; &lt;br /&gt;
          &amp;quot;∃x. S(x) ∧ G(x) ∧ M(p,x)&amp;quot;  &lt;br /&gt;
          &amp;quot;∀x y. M(x,y) ⟶ ¬M(y,x)&amp;quot;&lt;br /&gt;
  shows &amp;quot;¬S(p)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 27. Formalizar el siguiente argumento &lt;br /&gt;
     Todos los filósofos se han preguntado qué es la filosofía. Los que&lt;br /&gt;
     se preguntan qué es la filosofía se vuelven locos. Nietzsche es&lt;br /&gt;
     filósofo. El maestro de Nietzsche no acabó loco. Por tanto,&lt;br /&gt;
     Nietzsche y su maestro son diferentes personas. &lt;br /&gt;
  Usar F(x) para x es filósofo&lt;br /&gt;
       L(x) para x se vuelve loco&lt;br /&gt;
       P(x) para x se ha preguntado qué es la filosofía.&lt;br /&gt;
       m    para el maestro de Nietzsche&lt;br /&gt;
       n    para Nietzsche&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_27:&lt;br /&gt;
  assumes &amp;quot;∀x. F(x) ⟶ P(x)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. P(x) ⟶ L(x)&amp;quot;&lt;br /&gt;
          &amp;quot;F(n)&amp;quot;&lt;br /&gt;
          &amp;quot;¬L(m)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;n ≠ m&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 28. Formalizar el siguiente argumento &lt;br /&gt;
     Los padres son mayores que los hijos. Juan es el padre de Luis. Por&lt;br /&gt;
     tanto, Juan es mayor que Luis.&lt;br /&gt;
  Usar M(x,y) para x es mayor que y&lt;br /&gt;
       p(x)   para el padre de x&lt;br /&gt;
       j      para Juan&lt;br /&gt;
       l      para Luis&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_28:&lt;br /&gt;
  assumes &amp;quot;∀x. M(p(x),x)&amp;quot;&lt;br /&gt;
          &amp;quot;j = p(l)&amp;quot;&lt;br /&gt;
shows     &amp;quot;M(j,l)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 29. Formalizar el siguiente argumento &lt;br /&gt;
     El esposo de la hermana de Toni es Roberto. La hermana de Toni es&lt;br /&gt;
     María. Por tanto, el esposo de María es Roberto. &lt;br /&gt;
  Usar e(x) para el esposo de x&lt;br /&gt;
       h    para la hermana de Toni&lt;br /&gt;
       m    para María&lt;br /&gt;
       r    para Roberto&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_29:&lt;br /&gt;
  assumes &amp;quot;e(h) = r&amp;quot;&lt;br /&gt;
          &amp;quot;h = m&amp;quot;&lt;br /&gt;
  shows   &amp;quot;e(m) = r&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 30. Formalizar el siguiente argumento &lt;br /&gt;
     Luis y Jaime tienen el mismo padre. La madre de Rosa es&lt;br /&gt;
     Eva. Eva ama a Carlos. Carlos es el padre de Jaime. Por tanto,&lt;br /&gt;
     la madre de Rosa ama al padre de Luis.&lt;br /&gt;
  Usar A(x,y) para x ama a y&lt;br /&gt;
       m(x)   para la madre de x&lt;br /&gt;
       p(x)   para el padre de x&lt;br /&gt;
       c      para Carlos&lt;br /&gt;
       e      para Eva&lt;br /&gt;
       j      para Jaime&lt;br /&gt;
       l      para Luis&lt;br /&gt;
       r      para Rosa&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_30:&lt;br /&gt;
  assumes &amp;quot;p(l) = p(j)&amp;quot;&lt;br /&gt;
          &amp;quot;m(r) = e&amp;quot;&lt;br /&gt;
          &amp;quot;A(e,c)&amp;quot;&lt;br /&gt;
          &amp;quot;c = p(j)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;A(m(r),p(l))&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 31. Formalizar el siguiente argumento &lt;br /&gt;
     Si dos personas son hermanos, entonces tienen la misma madre y el&lt;br /&gt;
     mismo padre. Juan es hermano de Luis. Por tanto, la madre del padre&lt;br /&gt;
     de Juan es la madre del padre de Luis.&lt;br /&gt;
  Usar H(x,y) para x es hermano de y&lt;br /&gt;
       m(x)   para la madre de x&lt;br /&gt;
       p(x)   para el padre de x&lt;br /&gt;
       j      para Juan&lt;br /&gt;
       l      para Luis&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_31:&lt;br /&gt;
  assumes &amp;quot;∀x y. H(x,y) ⟶ m(x) = m(y) ∧ p(x) = p(y)&amp;quot;&lt;br /&gt;
          &amp;quot;H(j,l)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;m(p(j)) = m(p(l))&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 32. Formalizar el siguiente argumento &lt;br /&gt;
     Todos los miembros del claustro son asturianos. El secretario forma&lt;br /&gt;
     parte del claustro. El señor Martínez es el secretario. Por tanto,&lt;br /&gt;
     el señor Martínez es asturiano.&lt;br /&gt;
  Usar C(x) para x es miembro del claustro&lt;br /&gt;
       A(x) para x es asturiano&lt;br /&gt;
       s    para el secretario&lt;br /&gt;
       m    para el señor Martínez&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_32:&lt;br /&gt;
  assumes &amp;quot;∀x. C(x) ⟶ A(x)&amp;quot;&lt;br /&gt;
          &amp;quot;C(s)&amp;quot;&lt;br /&gt;
          &amp;quot;m = s&amp;quot;&lt;br /&gt;
  shows   &amp;quot;A(m)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 33. Formalizar el siguiente argumento &lt;br /&gt;
     Eduardo pudo haber visto al asesino. Antonio fue el primer testigo&lt;br /&gt;
     de la defensa. O Eduardo estaba en clase o Antonio dio falso&lt;br /&gt;
     testimonio. Nadie en clase pudo haber visto al asesino. Luego, el&lt;br /&gt;
     primer testigo de la defensa dio falso testimonio. &lt;br /&gt;
  Usar C(x) para x estaba en clase&lt;br /&gt;
       F(x) para x dio falso testimonio&lt;br /&gt;
       V(x) para x pudo haber visto al asesino&lt;br /&gt;
       a    para Antonio&lt;br /&gt;
       e    para Eduardo&lt;br /&gt;
       p    para el primer testigo de la defensa&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_33:&lt;br /&gt;
  assumes &amp;quot;V(e)&amp;quot;&lt;br /&gt;
          &amp;quot;a = p&amp;quot;&lt;br /&gt;
          &amp;quot;C(e) ∨ F(a)&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. C(x) ⟶ ¬V(x)&amp;quot;&lt;br /&gt;
   shows  &amp;quot;F(p)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 34. Formalizar el siguiente argumento &lt;br /&gt;
     La luna hoy es redonda. La luna de hace dos semanas tenía forma de&lt;br /&gt;
     cuarto creciente. Luna no hay más que una, es decir, siempre es la&lt;br /&gt;
     misma. Luego existe algo que es a la vez redondo y con forma de&lt;br /&gt;
     cuarto creciente. &lt;br /&gt;
  Usar L(x) para la luna del momento x&lt;br /&gt;
       R(x) para x es redonda&lt;br /&gt;
       C(x) para x tiene forma de cuarto creciente&lt;br /&gt;
       h    para hoy&lt;br /&gt;
       d    para hace dos semanas&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_34:&lt;br /&gt;
  assumes &amp;quot;R(l(h))&amp;quot;&lt;br /&gt;
          &amp;quot;C(l(d))&amp;quot;&lt;br /&gt;
          &amp;quot;∀x y. l(x) = l(y)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. R(x) ∧ C(x)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 35. Formalizar el siguiente argumento &lt;br /&gt;
     Juana sólo tiene un marido. Juana está casada con Tomás. Tomás es&lt;br /&gt;
     delgado y Guillermo no. Luego, Juana no está casada con Guillermo. &lt;br /&gt;
  Usar D(x)   para x es delgado&lt;br /&gt;
       C(x,y) para x está casada con y&lt;br /&gt;
       g      para Guillermo&lt;br /&gt;
       j      para Juana&lt;br /&gt;
       t      para Tomás&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_35:&lt;br /&gt;
  assumes &amp;quot;∃x. ∀y. C(j,y) ⟷ y = x&amp;quot; &lt;br /&gt;
          &amp;quot;C(j,t)&amp;quot; &lt;br /&gt;
          &amp;quot;D(t) ∧ ¬D(g)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬C(j,g)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 36. Formalizar el siguiente argumento &lt;br /&gt;
     Sultán no es Chitón. Sultán no obtendrá un plátano a menos que&lt;br /&gt;
     pueda resolver cualquier problema. Si el chimpancé Chitón trabaja&lt;br /&gt;
     más que Sultán resolverá problemas que Sultán no puede resolver. &lt;br /&gt;
     Todos los chimpancés distintos de Sultán trabajan más que Sultán. &lt;br /&gt;
     Por consiguiente, Sultán no obtendrá un plátano.&lt;br /&gt;
  Usar Pl(x)  para x obtiene el plátano&lt;br /&gt;
       Pr(x)  para x es un problema&lt;br /&gt;
       R(x,y) para x resuelve y&lt;br /&gt;
       T(x,y) para x trabaja más que y&lt;br /&gt;
       c      para Chitón&lt;br /&gt;
       s      para Sultán&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_36:&lt;br /&gt;
  assumes &amp;quot;s ≠ c&amp;quot;&lt;br /&gt;
          &amp;quot;Pl(s) ⟶ (∀x. Pr(x) ⟶ R(s,x))&amp;quot;&lt;br /&gt;
          &amp;quot;T(c,s) ⟶ (∃x. Pr(x) ∧ R(c,x) ∧ ¬R(s,x))&amp;quot; &lt;br /&gt;
          &amp;quot;∀x. x ≠ s ⟶ T(x,s)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬Pl(s)&amp;quot;&lt;br /&gt;
using assms&lt;br /&gt;
by metis&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Relaci%C3%B3n_3&amp;diff=350</id>
		<title>Relación 3</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Relaci%C3%B3n_3&amp;diff=350"/>
		<updated>2018-07-16T12:27:10Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang = &amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* R3: Deducción natural proposicional *}&lt;br /&gt;
&lt;br /&gt;
theory R3&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  --------------------------------------------------------------------- &lt;br /&gt;
  El objetivo de esta relación es demostrar cada uno de los ejercicios&lt;br /&gt;
  usando sólo las reglas básicas de deducción natural de la lógica&lt;br /&gt;
  proposicional (sin usar el método auto).&lt;br /&gt;
&lt;br /&gt;
  Las reglas básicas de la deducción natural son las siguientes:&lt;br /&gt;
  · conjI:      ⟦P; Q⟧ ⟹ P ∧ Q&lt;br /&gt;
  · conjunct1:  P ∧ Q ⟹ P&lt;br /&gt;
  · conjunct2:  P ∧ Q ⟹ Q  &lt;br /&gt;
  · notnotD:    ¬¬ P ⟹ P&lt;br /&gt;
  · notnotI:    P ⟹ ¬¬ P&lt;br /&gt;
  · mp:         ⟦P ⟶ Q; P⟧ ⟹ Q &lt;br /&gt;
  · mt:         ⟦F ⟶ G; ¬G⟧ ⟹ ¬F &lt;br /&gt;
  · impI:       (P ⟹ Q) ⟹ P ⟶ Q&lt;br /&gt;
  · disjI1:     P ⟹ P ∨ Q&lt;br /&gt;
  · disjI2:     Q ⟹ P ∨ Q&lt;br /&gt;
  · disjE:      ⟦P ∨ Q; P ⟹ R; Q ⟹ R⟧ ⟹ R &lt;br /&gt;
  · FalseE:     False ⟹ P&lt;br /&gt;
  · notE:       ⟦¬P; P⟧ ⟹ R&lt;br /&gt;
  · notI:       (P ⟹ False) ⟹ ¬P&lt;br /&gt;
  · iffI:       ⟦P ⟹ Q; Q ⟹ P⟧ ⟹ P = Q&lt;br /&gt;
  · iffD1:      ⟦Q = P; Q⟧ ⟹ P &lt;br /&gt;
  · iffD2:      ⟦P = Q; Q⟧ ⟹ P&lt;br /&gt;
  · ccontr:     (¬P ⟹ False) ⟹ P&lt;br /&gt;
  --------------------------------------------------------------------- &lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Se usarán las reglas notnotI y mt que demostramos a continuación. *}&lt;br /&gt;
&lt;br /&gt;
lemma notnotI: &amp;quot;P ⟹ ¬¬ P&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
lemma mt: &amp;quot;⟦F ⟶ G; ¬G⟧ ⟹ ¬F&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
section {* Implicaciones *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 1. Demostrar&lt;br /&gt;
       p ⟶ q, p ⊢ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_1:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;p&amp;quot;&lt;br /&gt;
  shows &amp;quot;q&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
      show &amp;quot;q&amp;quot; using assms(1) assms(2) by (rule mp)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 2. Demostrar&lt;br /&gt;
     p ⟶ q, q ⟶ r, p ⊢ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_2:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;q ⟶ r&amp;quot;&lt;br /&gt;
          &amp;quot;p&amp;quot; &lt;br /&gt;
  shows &amp;quot;r&amp;quot;&lt;br /&gt;
proof - have 1: &amp;quot;q&amp;quot; using assms(1) assms(3) by (rule mp)&lt;br /&gt;
         show &amp;quot;r&amp;quot; using assms(2) 1 by (rule mp)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 3. Demostrar&lt;br /&gt;
     p ⟶ (q ⟶ r), p ⟶ q, p ⊢ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_3:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ r)&amp;quot;&lt;br /&gt;
          &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;p&amp;quot;&lt;br /&gt;
  shows &amp;quot;r&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    have 1:&amp;quot;q⟶r&amp;quot; using assms(1) assms(3) by (rule mp)&lt;br /&gt;
    have 2:&amp;quot;q&amp;quot; using assms(2) assms(3) by (rule mp)&lt;br /&gt;
    show &amp;quot;r&amp;quot; using 1 2 by (rule mp)&lt;br /&gt;
qed  &lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 4. Demostrar&lt;br /&gt;
     p ⟶ q, q ⟶ r ⊢ p ⟶ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_4:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;q ⟶ r&amp;quot; &lt;br /&gt;
  shows &amp;quot;p ⟶ r&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
proof -&lt;br /&gt;
        {assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
          have 2: &amp;quot;q&amp;quot; using assms(1) 1 by (rule mp)&lt;br /&gt;
          have 3: &amp;quot;r&amp;quot; using assms(2) 2 by (rule mp)}&lt;br /&gt;
          then show &amp;quot;p⟶r&amp;quot;  by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 5. Demostrar&lt;br /&gt;
     p ⟶ (q ⟶ r) ⊢ q ⟶ (p ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_5:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q ⟶ (p ⟶ r)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
 {assume 1: &amp;quot;q&amp;quot;&lt;br /&gt;
   {assume 2: &amp;quot;p&amp;quot;&lt;br /&gt;
     have 3:&amp;quot;q⟶r&amp;quot; using assms(1) 2 by (rule mp)&lt;br /&gt;
     have &amp;quot;r&amp;quot; using 3 1 by (rule mp)}&lt;br /&gt;
   hence  &amp;quot;p⟶r&amp;quot; by (rule impI)}&lt;br /&gt;
 then show &amp;quot;q⟶(p⟶r)&amp;quot; by (rule impI)&lt;br /&gt;
qed  &lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 6. Demostrar&lt;br /&gt;
     p ⟶ (q ⟶ r) ⊢ (p ⟶ q) ⟶ (p ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_6:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ⟶ q) ⟶ (p ⟶ r)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
  {assume 1: &amp;quot;p⟶q&amp;quot;&lt;br /&gt;
    {assume 2: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 3: &amp;quot;q⟶r&amp;quot; using assms(1) 2 by (rule mp)&lt;br /&gt;
      have 4: &amp;quot;q&amp;quot; using 1 2 by (rule mp)&lt;br /&gt;
      have 5: &amp;quot;r&amp;quot; using 3 4 by (rule mp)}&lt;br /&gt;
    hence &amp;quot;p⟶r&amp;quot; by (rule impI)}&lt;br /&gt;
  then show &amp;quot;(p⟶q)⟶(p⟶r)&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 7. Demostrar&lt;br /&gt;
     p ⊢ q ⟶ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_7:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot;  &lt;br /&gt;
  shows   &amp;quot;q ⟶ p&amp;quot;&lt;br /&gt;
proof-&lt;br /&gt;
{assume 1: &amp;quot;q&amp;quot;&lt;br /&gt;
        note `p`}&lt;br /&gt;
      thus &amp;quot;q⟶p&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 8. Demostrar&lt;br /&gt;
     ⊢ p ⟶ (q ⟶ p)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_8:&lt;br /&gt;
  &amp;quot;p ⟶ (q ⟶ p)&amp;quot;&lt;br /&gt;
proof-&lt;br /&gt;
      {assume &amp;quot;p&amp;quot;&lt;br /&gt;
        {assume &amp;quot;q&amp;quot;&lt;br /&gt;
          note `p`}&lt;br /&gt;
        hence &amp;quot;q⟶p&amp;quot; by (rule impI)}&lt;br /&gt;
      thus &amp;quot;p⟶q⟶p&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 9. Demostrar&lt;br /&gt;
     p ⟶ q ⊢ (q ⟶ r) ⟶ (p ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_9:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(q ⟶ r) ⟶ (p ⟶ r)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
  {assume 1: &amp;quot;q⟶r&amp;quot;&lt;br /&gt;
    {assume 2:&amp;quot;p&amp;quot;&lt;br /&gt;
      have 3: &amp;quot;q&amp;quot; using assms(1) 2 by (rule mp)&lt;br /&gt;
      have 4: &amp;quot;r&amp;quot; using 1 3 by (rule mp)}&lt;br /&gt;
    hence &amp;quot;p⟶r&amp;quot; by (rule impI)}&lt;br /&gt;
  thus &amp;quot;(q⟶r)⟶(p⟶r)&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 10. Demostrar&lt;br /&gt;
     p ⟶ (q ⟶ (r ⟶ s)) ⊢ r ⟶ (q ⟶ (p ⟶ s))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_10:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ (r ⟶ s))&amp;quot; &lt;br /&gt;
  shows   &amp;quot;r ⟶ (q ⟶ (p ⟶ s))&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  {assume 1: &amp;quot;r&amp;quot; &lt;br /&gt;
    {assume 2: &amp;quot;q&amp;quot;&lt;br /&gt;
      {assume 3: &amp;quot;p&amp;quot;&lt;br /&gt;
        have 4: &amp;quot;q ⟶ (r ⟶ s)&amp;quot; using assms(1) 3 by (rule mp)&lt;br /&gt;
        have 5: &amp;quot;r⟶s&amp;quot; using 4 2 by (rule mp)&lt;br /&gt;
        have 6: &amp;quot;s&amp;quot; using 5 1 by (rule mp)}&lt;br /&gt;
      hence &amp;quot;p⟶s&amp;quot; by (rule impI)}&lt;br /&gt;
    hence &amp;quot;q⟶(p⟶s)&amp;quot; by (rule impI)}&lt;br /&gt;
  thus &amp;quot;r⟶(q⟶(p⟶s))&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 11. Demostrar&lt;br /&gt;
     ⊢ (p ⟶ (q ⟶ r)) ⟶ ((p ⟶ q) ⟶ (p ⟶ r))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_11:&lt;br /&gt;
  &amp;quot;(p ⟶ (q ⟶ r)) ⟶ ((p ⟶ q) ⟶ (p ⟶ r))&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof- &lt;br /&gt;
  {assume 1: &amp;quot;p⟶(q⟶r)&amp;quot;&lt;br /&gt;
    { assume 2: &amp;quot;p⟶q&amp;quot;&lt;br /&gt;
      {assume 3: &amp;quot;p&amp;quot;&lt;br /&gt;
        have 4: &amp;quot;q⟶r&amp;quot; using 1 3 by (rule mp)&lt;br /&gt;
        have 5: &amp;quot;q&amp;quot; using 2 3 by (rule mp)&lt;br /&gt;
        have 6: &amp;quot;r&amp;quot; using 4 5 by (rule mp)}&lt;br /&gt;
      hence &amp;quot;p⟶r&amp;quot; by (rule impI)}&lt;br /&gt;
    hence &amp;quot;(p⟶q)⟶(p⟶r)&amp;quot; by (rule impI)}&lt;br /&gt;
  thus &amp;quot;(p ⟶ (q ⟶ r)) ⟶ ((p ⟶ q) ⟶ (p ⟶ r))&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 12. Demostrar&lt;br /&gt;
     (p ⟶ q) ⟶ r ⊢ p ⟶ (q ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_12:&lt;br /&gt;
  assumes &amp;quot;(p ⟶ q) ⟶ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ⟶ (q ⟶ r)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
  {assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
    {assume 2: &amp;quot;q&amp;quot;&lt;br /&gt;
     {assume 3:&amp;quot;p&amp;quot;&lt;br /&gt;
       note `q`}&lt;br /&gt;
     hence 4:&amp;quot;p⟶q&amp;quot; by (rule impI)&lt;br /&gt;
     have 5: &amp;quot;r&amp;quot; using assms(1) 4 by (rule mp)}&lt;br /&gt;
    hence &amp;quot;q⟶r&amp;quot; by (rule impI)}&lt;br /&gt;
  thus &amp;quot;p⟶(q⟶r)&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
section {* Conjunciones *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 13. Demostrar&lt;br /&gt;
     p, q ⊢  p ∧ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_13:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot;&lt;br /&gt;
          &amp;quot;q&amp;quot; &lt;br /&gt;
  shows &amp;quot;p ∧ q&amp;quot;&lt;br /&gt;
proof-&lt;br /&gt;
  show &amp;quot;p∧q&amp;quot; using assms(1) assms(2) by (rule conjI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 14. Demostrar&lt;br /&gt;
     p ∧ q ⊢ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_14:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot;  &lt;br /&gt;
  shows   &amp;quot;p&amp;quot;&lt;br /&gt;
proof-&lt;br /&gt;
  show &amp;quot;p&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 15. Demostrar&lt;br /&gt;
     p ∧ q ⊢ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_15:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q&amp;quot;&lt;br /&gt;
proof-&lt;br /&gt;
  show &amp;quot;q&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 16. Demostrar&lt;br /&gt;
     p ∧ (q ∧ r) ⊢ (p ∧ q) ∧ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_16:&lt;br /&gt;
  assumes &amp;quot;p ∧ (q ∧ r)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(p ∧ q) ∧ r&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  have 1: &amp;quot;p&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
  have 2: &amp;quot;q ∧ r&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
  have 3: &amp;quot;q&amp;quot; using 2 by (rule conjunct1)&lt;br /&gt;
  have 4: &amp;quot;r&amp;quot; using 2 by (rule conjunct2)&lt;br /&gt;
  have 5: &amp;quot;p ∧ q&amp;quot; using 1 3 by (rule conjI)&lt;br /&gt;
  show &amp;quot;(p ∧ q) ∧ r&amp;quot; using 5 4 by (rule conjI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 17. Demostrar&lt;br /&gt;
     (p ∧ q) ∧ r ⊢ p ∧ (q ∧ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_17:&lt;br /&gt;
  assumes &amp;quot;(p ∧ q) ∧ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∧ (q ∧ r)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
  have 1: &amp;quot;p ∧ q&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
  have 2: &amp;quot;r&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
  have 3: &amp;quot;p&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
  have 4: &amp;quot;q&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
  have 5: &amp;quot;q ∧ r&amp;quot; using 4 2 by (rule conjI)&lt;br /&gt;
  show &amp;quot;p ∧(q ∧ r)&amp;quot; using 3 5 by (rule conjI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 18. Demostrar&lt;br /&gt;
     p ∧ q ⊢ p ⟶ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_18:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof- &lt;br /&gt;
  {assume &amp;quot;p&amp;quot;&lt;br /&gt;
    have &amp;quot;q&amp;quot; using assms(1) by (rule conjunct2)}&lt;br /&gt;
  thus &amp;quot;p⟶q&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 19. Demostrar&lt;br /&gt;
     (p ⟶ q) ∧ (p ⟶ r) ⊢ p ⟶ q ∧ r   &lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_19:&lt;br /&gt;
  assumes &amp;quot;(p ⟶ q) ∧ (p ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ⟶ q ∧ r&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
  {assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
    have 2: &amp;quot;p⟶q&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
    have 3: &amp;quot;p⟶r&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
    have 4: &amp;quot;q&amp;quot; using 2 1 by (rule mp)&lt;br /&gt;
    have 5: &amp;quot;r&amp;quot; using 3 1 by (rule mp)&lt;br /&gt;
    have 6: &amp;quot;q ∧ r&amp;quot; using 4 5 by (rule conjI)}&lt;br /&gt;
  thus &amp;quot;p⟶(q ∧ r)&amp;quot; by(rule impI)  &lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 20. Demostrar&lt;br /&gt;
     p ⟶ q ∧ r ⊢ (p ⟶ q) ∧ (p ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_20:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q ∧ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ⟶ q) ∧ (p ⟶ r)&amp;quot;&lt;br /&gt;
proof (rule conjI)&lt;br /&gt;
   { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
     have 2: &amp;quot;q ∧ r&amp;quot; using  assms(1) 1 by (rule mp)&lt;br /&gt;
     have 3: &amp;quot;q&amp;quot; using 2 by (rule conjunct1)}&lt;br /&gt;
   thus &amp;quot;p ⟶ q&amp;quot; by (rule impI)&lt;br /&gt;
next &lt;br /&gt;
   { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
     have 2: &amp;quot;q ∧ r&amp;quot; using assms(1) 1 by (rule mp)&lt;br /&gt;
     have 3: &amp;quot;r&amp;quot; using 2 by (rule conjunct2)}&lt;br /&gt;
   thus &amp;quot;p ⟶ r&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 21. Demostrar&lt;br /&gt;
     p ⟶ (q ⟶ r) ⊢ p ∧ q ⟶ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_21:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∧ q ⟶ r&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
   { assume 1: &amp;quot;p ∧ q&amp;quot;&lt;br /&gt;
     have 2: &amp;quot;p&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
     have 3: &amp;quot;q ⟶ r&amp;quot; using assms(1) 2 by (rule mp)&lt;br /&gt;
     have 4: &amp;quot;q&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
     have 5: &amp;quot;r&amp;quot; using 3 4 by (rule mp)}&lt;br /&gt;
   thus &amp;quot;(p ∧ q) ⟶ r&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 22. Demostrar&lt;br /&gt;
     p ∧ q ⟶ r ⊢ p ⟶ (q ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_22:&lt;br /&gt;
  assumes &amp;quot;p ∧ q ⟶ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ⟶ (q ⟶ r)&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
   { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
     {assume 2: &amp;quot;q&amp;quot; &lt;br /&gt;
      have 3: &amp;quot;p ∧ q&amp;quot; using 1 2 by (rule conjI)&lt;br /&gt;
      have 4: &amp;quot;r&amp;quot; using assms(1) 3 by (rule mp)}&lt;br /&gt;
     then have 5: &amp;quot;q ⟶ r&amp;quot; by (rule impI)}&lt;br /&gt;
   thus &amp;quot;p ⟶ (q ⟶ r)&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 23. Demostrar&lt;br /&gt;
     (p ⟶ q) ⟶ r ⊢ p ∧ q ⟶ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_23:&lt;br /&gt;
  assumes &amp;quot;(p ⟶ q) ⟶ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∧ q ⟶ r&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
   { assume 1: &amp;quot;p ∧q&amp;quot;&lt;br /&gt;
     {assume 2: &amp;quot;p&amp;quot;&lt;br /&gt;
     have 3: &amp;quot;q&amp;quot; using 1 by (rule conjunct2)}&lt;br /&gt;
     hence 4: &amp;quot;p ⟶ q&amp;quot; by (rule impI)&lt;br /&gt;
     have 5: &amp;quot;r&amp;quot; using assms(1) 4 by (rule mp)}&lt;br /&gt;
   thus &amp;quot;p ∧ q ⟶ r&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 24. Demostrar&lt;br /&gt;
     p ∧ (q ⟶ r) ⊢ (p ⟶ q) ⟶ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_24:&lt;br /&gt;
  assumes &amp;quot;p ∧ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ⟶ q) ⟶ r&amp;quot;&lt;br /&gt;
proof - &lt;br /&gt;
    { assume 1: &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
      have 2: &amp;quot;p&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
      have 3: &amp;quot;q&amp;quot; using 1 2 by (rule mp)&lt;br /&gt;
      have 4: &amp;quot;q ⟶ r&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
      have 5: &amp;quot;r&amp;quot; using 4 3 by (rule mp)}&lt;br /&gt;
    thus &amp;quot;(p ⟶ q) ⟶ r&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
section {* Disyunciones *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 25. Demostrar&lt;br /&gt;
     p ⊢ p ∨ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_25:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
   show &amp;quot;p ∨ q&amp;quot; using assms(1) by (rule disjI1)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 26. Demostrar&lt;br /&gt;
     q ⊢ p ∨ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_26:&lt;br /&gt;
  assumes &amp;quot;q&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
   show &amp;quot;p ∨ q&amp;quot; using assms(1) by (rule disjI2)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 27. Demostrar&lt;br /&gt;
     p ∨ q ⊢ q ∨ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_27:&lt;br /&gt;
  assumes &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
  shows   &amp;quot;q ∨ p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
   have &amp;quot;p ∨ q&amp;quot; using assms(1) by this&lt;br /&gt;
moreover&lt;br /&gt;
   { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
     have 2: &amp;quot;q ∨ p&amp;quot; using 1 by (rule disjI2)}&lt;br /&gt;
moreover&lt;br /&gt;
   { assume 1: &amp;quot;q&amp;quot;&lt;br /&gt;
     have 2: &amp;quot;q ∨ p&amp;quot; using 1 by (rule disjI1)}&lt;br /&gt;
   ultimately show &amp;quot;q ∨ p&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 28. Demostrar&lt;br /&gt;
     q ⟶ r ⊢ p ∨ q ⟶ p ∨ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_28:&lt;br /&gt;
  assumes &amp;quot;q ⟶ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∨ q ⟶ p ∨ r&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    { assume 1: &amp;quot;p ∨ q&amp;quot; &lt;br /&gt;
      moreover&lt;br /&gt;
      { assume 2: &amp;quot;p&amp;quot;&lt;br /&gt;
        have 3: &amp;quot;p ∨ r&amp;quot; using 2 by (rule disjI1)}&lt;br /&gt;
      moreover&lt;br /&gt;
      { assume 4: &amp;quot;q&amp;quot;&lt;br /&gt;
        have 5: &amp;quot;r&amp;quot; using assms(1) 4 by (rule mp)&lt;br /&gt;
        have 6: &amp;quot;p ∨ r&amp;quot; using 5 by (rule disjI2)}&lt;br /&gt;
       ultimately have &amp;quot;p ∨r&amp;quot;  by (rule disjE)}&lt;br /&gt;
    thus &amp;quot;p ∨ q ⟶ p ∨ r&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 29. Demostrar&lt;br /&gt;
     p ∨ p ⊢ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_29:&lt;br /&gt;
  assumes &amp;quot;p ∨ p&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    have &amp;quot;p ∨ p&amp;quot; using assms(1) by this&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 2: &amp;quot;p&amp;quot; using 1 by this}&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 3: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 4: &amp;quot;p&amp;quot; using 3 by this}&lt;br /&gt;
ultimately show &amp;quot;p&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 30. Demostrar&lt;br /&gt;
     p ⊢ p ∨ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_30:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∨ p&amp;quot;&lt;br /&gt;
proof - &lt;br /&gt;
    show &amp;quot;p ∨ p&amp;quot; using assms(1) by (rule disjI1)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 31. Demostrar&lt;br /&gt;
     p ∨ (q ∨ r) ⊢ (p ∨ q) ∨ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_31:&lt;br /&gt;
  assumes &amp;quot;p ∨ (q ∨ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ∨ q) ∨ r&amp;quot;&lt;br /&gt;
proof - &lt;br /&gt;
   have &amp;quot;p ∨ (q ∨ r)&amp;quot; using assms(1) by this&lt;br /&gt;
moreover &lt;br /&gt;
    { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
       have 2: &amp;quot;p ∨ q&amp;quot; using 1 by (rule disjI1)&lt;br /&gt;
       have 3: &amp;quot;(p ∨ q) ∨ r&amp;quot; using 2 by (rule disjI1)}&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 4: &amp;quot;q ∨ r&amp;quot;&lt;br /&gt;
      moreover&lt;br /&gt;
      { assume 5: &amp;quot;q&amp;quot;&lt;br /&gt;
        have 6: &amp;quot;p ∨ q&amp;quot; using 5 by (rule disjI2)&lt;br /&gt;
        have 7: &amp;quot;(p ∨ q) ∨ r&amp;quot; using 6 by (rule disjI1)}&lt;br /&gt;
      moreover&lt;br /&gt;
      { assume 8: &amp;quot;r&amp;quot;&lt;br /&gt;
        have 9: &amp;quot;(p ∨ q) ∨ r&amp;quot; using 8 by (rule disjI2)}&lt;br /&gt;
      ultimately have &amp;quot;(p ∨ q) ∨ r&amp;quot; by (rule disjE)}&lt;br /&gt;
  ultimately show &amp;quot;(p ∨ q) ∨ r&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 32. Demostrar&lt;br /&gt;
     (p ∨ q) ∨ r ⊢ p ∨ (q ∨ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_32:&lt;br /&gt;
  assumes &amp;quot;(p ∨ q) ∨ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∨ (q ∨ r)&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
   have &amp;quot;(p ∨ q) ∨ r&amp;quot; using assms(1) by this&lt;br /&gt;
moreover&lt;br /&gt;
   { assume 1: &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
     moreover&lt;br /&gt;
     { assume 2: &amp;quot;p&amp;quot;&lt;br /&gt;
       have 3: &amp;quot;p ∨ (q ∨ r)&amp;quot; using 2 by (rule disjI1)}&lt;br /&gt;
     moreover&lt;br /&gt;
     { assume 4: &amp;quot;q&amp;quot;&lt;br /&gt;
       have 5: &amp;quot;q ∨ r&amp;quot; using 4 by (rule disjI1)&lt;br /&gt;
       have 6: &amp;quot;p ∨ (q ∨ r)&amp;quot; using 5 by (rule disjI2)}&lt;br /&gt;
     ultimately have &amp;quot;p ∨ (q ∨ r)&amp;quot; by (rule disjE)}&lt;br /&gt;
moreover&lt;br /&gt;
   { assume 7: &amp;quot;r&amp;quot;&lt;br /&gt;
     have 8: &amp;quot;q ∨ r&amp;quot; using 7 by (rule disjI2)&lt;br /&gt;
     have 9: &amp;quot;p ∨ (q ∨ r)&amp;quot; using 8 by (rule disjI2)}&lt;br /&gt;
ultimately show &amp;quot;p ∨ (q ∨ r)&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 33. Demostrar&lt;br /&gt;
     p ∧ (q ∨ r) ⊢ (p ∧ q) ∨ (p ∧ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_33:&lt;br /&gt;
  assumes &amp;quot;p ∧ (q ∨ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    have 1: &amp;quot;p&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
    have 2: &amp;quot;q ∨ r&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 3: &amp;quot;q&amp;quot;&lt;br /&gt;
      have 4: &amp;quot;p ∧ q&amp;quot; using 1 3 by (rule conjI)&lt;br /&gt;
      have 5: &amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot; using 4 by (rule disjI1)}&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 6: &amp;quot;r&amp;quot;&lt;br /&gt;
      have 7: &amp;quot;p ∧ r&amp;quot; using 1 6 by (rule conjI)&lt;br /&gt;
      have 8: &amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot; using 7 by (rule disjI2)}&lt;br /&gt;
ultimately show &amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 34. Demostrar&lt;br /&gt;
     (p ∧ q) ∨ (p ∧ r) ⊢ p ∧ (q ∨ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_34:&lt;br /&gt;
  assumes &amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∧ (q ∨ r)&amp;quot;&lt;br /&gt;
proof - &lt;br /&gt;
   have &amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot; using assms(1) by this&lt;br /&gt;
moreover&lt;br /&gt;
   { assume 1: &amp;quot;p ∧ q&amp;quot;&lt;br /&gt;
     have 2: &amp;quot;q&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
     have 3: &amp;quot;q ∨ r&amp;quot; using 2 by (rule disjI1)&lt;br /&gt;
     have 4: &amp;quot;p&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
     have 5: &amp;quot;p ∧ (q ∨ r)&amp;quot; using 4 3 by (rule conjI)}&lt;br /&gt;
moreover&lt;br /&gt;
   { assume 6: &amp;quot;p ∧ r&amp;quot;&lt;br /&gt;
     have 7: &amp;quot;r&amp;quot; using 6 by (rule conjunct2)&lt;br /&gt;
     have 8: &amp;quot;q ∨ r&amp;quot; using 7 by (rule disjI2)&lt;br /&gt;
     have 9: &amp;quot;p&amp;quot; using 6 by (rule conjunct1)&lt;br /&gt;
     have 10: &amp;quot;p ∧ (q ∨ r)&amp;quot; using 9 8 by (rule conjI)}&lt;br /&gt;
ultimately show &amp;quot;p ∧ (q ∨ r)&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 35. Demostrar&lt;br /&gt;
     p ∨ (q ∧ r) ⊢ (p ∨ q) ∧ (p ∨ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_35:&lt;br /&gt;
  assumes &amp;quot;p ∨ (q ∧ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ∨ q) ∧ (p ∨ r)&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    have &amp;quot;p ∨ (q ∧ r)&amp;quot; using assms(1) by this&lt;br /&gt;
moreover&lt;br /&gt;
   { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
     have 2: &amp;quot;p ∨ q&amp;quot; using 1 by (rule disjI1)&lt;br /&gt;
     have 3: &amp;quot;p ∨ r&amp;quot; using 1 by (rule disjI1)&lt;br /&gt;
     have 4: &amp;quot;(p ∨ q) ∧ (p ∨ r)&amp;quot; using 2 3 by (rule conjI)}&lt;br /&gt;
moreover&lt;br /&gt;
   { assume 5: &amp;quot;q ∧ r&amp;quot;&lt;br /&gt;
     have 6: &amp;quot;q&amp;quot; using 5 by (rule conjunct1)&lt;br /&gt;
     have 7: &amp;quot;p ∨ q&amp;quot; using 6 by (rule disjI2)&lt;br /&gt;
     have 8: &amp;quot;r&amp;quot; using 5 by (rule conjunct2)&lt;br /&gt;
     have 9: &amp;quot;p ∨ r&amp;quot; using 8 by (rule disjI2)&lt;br /&gt;
     have 10: &amp;quot;(p ∨ q) ∧ (p ∨ r)&amp;quot; using 7 9 by (rule conjI)}&lt;br /&gt;
ultimately show &amp;quot;(p ∨ q) ∧ (p ∨ r)&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 36. Demostrar&lt;br /&gt;
     (p ∨ q) ∧ (p ∨ r) ⊢ p ∨ (q ∧ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_36:&lt;br /&gt;
  assumes &amp;quot;(p ∨ q) ∧ (p ∨ r)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p ∨ (q ∧ r)&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
     have &amp;quot;(p ∨ q)&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 2: &amp;quot;p ∨ (q ∧ r)&amp;quot; using 1 by (rule disjI1)}&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 3: &amp;quot;q&amp;quot; &lt;br /&gt;
      have 4: &amp;quot;p ∨ r&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
      moreover&lt;br /&gt;
      { assume 5: &amp;quot;p&amp;quot; &lt;br /&gt;
        have 6: &amp;quot;p ∨ (q ∧ r)&amp;quot; using 5 by (rule disjI1)}&lt;br /&gt;
      moreover&lt;br /&gt;
      { assume 7: &amp;quot;r&amp;quot;&lt;br /&gt;
        have 8: &amp;quot;q ∧ r&amp;quot; using 3 7 by (rule conjI)&lt;br /&gt;
        have 9: &amp;quot;p ∨ (q ∧ r)&amp;quot; using 8 by (rule disjI2)}&lt;br /&gt;
      ultimately have &amp;quot;p ∨ (q ∧ r)&amp;quot; by (rule disjE)}&lt;br /&gt;
ultimately show &amp;quot;p ∨ (q ∧ r)&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 37. Demostrar&lt;br /&gt;
     (p ⟶ r) ∧ (q ⟶ r) ⊢ p ∨ q ⟶ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_37:&lt;br /&gt;
  assumes &amp;quot;(p ⟶ r) ∧ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∨ q ⟶ r&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    { assume 1: &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
      moreover&lt;br /&gt;
      { assume 2: &amp;quot;p&amp;quot;&lt;br /&gt;
        have 3: &amp;quot;p ⟶ r&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
        have 4: &amp;quot;r&amp;quot; using 3 2 by (rule mp)}&lt;br /&gt;
      moreover&lt;br /&gt;
      { assume 5: &amp;quot;q&amp;quot;&lt;br /&gt;
        have 6: &amp;quot;q ⟶ r&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
        have 7: &amp;quot;r&amp;quot; using 6 5 by (rule mp)}&lt;br /&gt;
      ultimately have &amp;quot;r&amp;quot; by (rule disjE)}&lt;br /&gt;
     thus &amp;quot;(p ∨ q) ⟶ r&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 38. Demostrar&lt;br /&gt;
     p ∨ q ⟶ r ⊢ (p ⟶ r) ∧ (q ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_38:&lt;br /&gt;
  assumes &amp;quot;p ∨ q ⟶ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ⟶ r) ∧ (q ⟶ r)&amp;quot;&lt;br /&gt;
proof (rule conjI)&lt;br /&gt;
    { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 2: &amp;quot;p ∨ q&amp;quot; using 1 by (rule disjI1)&lt;br /&gt;
      have 3: &amp;quot;r&amp;quot; using assms(1) 2 by (rule mp)}&lt;br /&gt;
    thus &amp;quot;p ⟶ r&amp;quot; by (rule impI)&lt;br /&gt;
next&lt;br /&gt;
    { assume 4: &amp;quot;q&amp;quot;&lt;br /&gt;
      have 5: &amp;quot;p ∨ q&amp;quot; using 4 by (rule disjI2)&lt;br /&gt;
      have 6: &amp;quot;r&amp;quot; using assms(1) 5 by (rule mp)}&lt;br /&gt;
    thus &amp;quot;q ⟶ r&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
section {* Negaciones *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 39. Demostrar&lt;br /&gt;
     p ⊢ ¬¬p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_39:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬¬p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    show &amp;quot;¬¬p&amp;quot; using assms(1) by (rule notnotI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 40. Demostrar&lt;br /&gt;
     ¬p ⊢ p ⟶ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_40:&lt;br /&gt;
  assumes &amp;quot;¬p&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
proof - &lt;br /&gt;
    { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 2: &amp;quot;False&amp;quot; using assms(1) 1 by (rule notE)&lt;br /&gt;
      have 3: &amp;quot;q&amp;quot; using 2 by (rule FalseE)}&lt;br /&gt;
    thus &amp;quot;p ⟶ q&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 41. Demostrar&lt;br /&gt;
     p ⟶ q ⊢ ¬q ⟶ ¬p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_41:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬q ⟶ ¬p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    {assume 1: &amp;quot;¬q&amp;quot;&lt;br /&gt;
    have 2: &amp;quot;¬p&amp;quot; using assms(1) 1 by (rule mt)}&lt;br /&gt;
    thus &amp;quot;¬q ⟶ ¬p&amp;quot;  by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 42. Demostrar&lt;br /&gt;
     p∨q, ¬q ⊢ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_42:&lt;br /&gt;
  assumes &amp;quot;p∨q&amp;quot;&lt;br /&gt;
          &amp;quot;¬q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p&amp;quot;&lt;br /&gt;
proof - &lt;br /&gt;
    have &amp;quot;p ∨ q&amp;quot; using assms(1) by this&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 2: &amp;quot;p&amp;quot; using 1 by this}&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 3: &amp;quot;q&amp;quot;&lt;br /&gt;
      have 4: &amp;quot;False&amp;quot; using assms(2) 3 by (rule notE)&lt;br /&gt;
      have 5: &amp;quot;p&amp;quot; using 4 by (rule FalseE)}&lt;br /&gt;
ultimately show &amp;quot;p&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 42. Demostrar&lt;br /&gt;
     p ∨ q, ¬p ⊢ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_43:&lt;br /&gt;
  assumes &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
          &amp;quot;¬p&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    have &amp;quot;p ∨ q&amp;quot; using assms(1) by this&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 2: &amp;quot;False&amp;quot; using assms(2) 1 by (rule notE)&lt;br /&gt;
      have 3: &amp;quot;q&amp;quot; using 2 by (rule FalseE)}&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 4: &amp;quot;q&amp;quot; &lt;br /&gt;
      have 5: &amp;quot;q&amp;quot; using 4 by this}&lt;br /&gt;
ultimately show &amp;quot;q&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 40. Demostrar&lt;br /&gt;
     p ∨ q ⊢ ¬(¬p ∧ ¬q)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_44:&lt;br /&gt;
  assumes &amp;quot;p ∨ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬(¬p ∧ ¬q)&amp;quot;&lt;br /&gt;
proof (rule ccontr)&lt;br /&gt;
    assume 1: &amp;quot;¬¬(¬p ∧ ¬q)&amp;quot;&lt;br /&gt;
    have 2: &amp;quot;¬p ∧ ¬q&amp;quot; using 1 by (rule notnotD)&lt;br /&gt;
    have 3: &amp;quot;p ∨ q&amp;quot; using assms(1) by this&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 4: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 5: &amp;quot;¬p&amp;quot; using 2 by (rule conjunct1)&lt;br /&gt;
      have 6: &amp;quot;False&amp;quot; using 5 4 by (rule notE)}&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 7: &amp;quot;q&amp;quot;&lt;br /&gt;
      have 8: &amp;quot;¬q&amp;quot; using 2 by (rule conjunct2)&lt;br /&gt;
      have 9: &amp;quot;False&amp;quot; using 8 7 by (rule notE)}&lt;br /&gt;
ultimately show &amp;quot;False&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-- Miguel Peña Gallardo&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_44:&lt;br /&gt;
  assumes &amp;quot;p ∨ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬(¬p ∧ ¬q)&amp;quot;&lt;br /&gt;
proof-&lt;br /&gt;
  {assume 1:&amp;quot;¬¬(¬p ∧ ¬q)&amp;quot;&lt;br /&gt;
    have 2: &amp;quot;(¬p ∧ ¬q)&amp;quot; using 1  by (rule notnotD)&lt;br /&gt;
    have 3: &amp;quot;¬p&amp;quot; using 2 by (rule conjunct1)&lt;br /&gt;
    have 4: &amp;quot;¬q&amp;quot; using 2 by (rule conjunct2)&lt;br /&gt;
    have &amp;quot;p∨q&amp;quot; using assms(1) by this&lt;br /&gt;
 moreover &lt;br /&gt;
    {assume 5: &amp;quot;p&amp;quot;&lt;br /&gt;
       have 6: &amp;quot;False&amp;quot; using 3 5 by (rule notE)}&lt;br /&gt;
 moreover&lt;br /&gt;
    {assume 7: &amp;quot;q&amp;quot;&lt;br /&gt;
       have 8: &amp;quot;False&amp;quot; using 4 7 by (rule notE)}&lt;br /&gt;
 ultimately have &amp;quot;False&amp;quot; by (rule disjE)}&lt;br /&gt;
then show  &amp;quot;¬(¬p ∧¬q)&amp;quot; by (rule ccontr)&lt;br /&gt;
&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 45. Demostrar&lt;br /&gt;
     p ∧ q ⊢ ¬(¬p ∨ ¬q)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_45:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬(¬p ∨ ¬q)&amp;quot;&lt;br /&gt;
proof (rule ccontr)&lt;br /&gt;
    assume 1: &amp;quot;¬¬(¬p ∨ ¬q)&amp;quot;&lt;br /&gt;
     have 2: &amp;quot;¬p ∨ ¬q&amp;quot; using 1 by (rule notnotD)&lt;br /&gt;
      moreover&lt;br /&gt;
       {assume 3: &amp;quot;¬p&amp;quot;&lt;br /&gt;
        have 4: &amp;quot;p&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
        have 5: &amp;quot;False&amp;quot; using 3 4 by (rule notE)}&lt;br /&gt;
      moreover &lt;br /&gt;
       { assume 6: &amp;quot;¬q&amp;quot;&lt;br /&gt;
         have 7: &amp;quot;q&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
         have 8: &amp;quot;False&amp;quot; using 6 7 by (rule notE)}&lt;br /&gt;
      ultimately show &amp;quot;False&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--Miguel Peña Gallardo&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_45:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬(¬p ∨ ¬q)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
  have 1: &amp;quot;p&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
  have 2: &amp;quot;q&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
  {assume 3: &amp;quot;¬¬(¬p∨¬q)&amp;quot;&lt;br /&gt;
     have 4: &amp;quot;¬p ∨¬q&amp;quot; using 3 by (rule notnotD)&lt;br /&gt;
     have &amp;quot;¬p ∨¬q&amp;quot; using 4 by this&lt;br /&gt;
    moreover&lt;br /&gt;
     {assume 5: &amp;quot;¬p&amp;quot;&lt;br /&gt;
        have 6: &amp;quot;False&amp;quot; using 5 1 by (rule notE)}&lt;br /&gt;
     moreover&lt;br /&gt;
     {assume 7: &amp;quot;¬q&amp;quot;&lt;br /&gt;
        have 8: &amp;quot;False&amp;quot; using 7 2 by (rule notE)}&lt;br /&gt;
   ultimately have &amp;quot;False&amp;quot; by (rule disjE)}&lt;br /&gt;
 then show &amp;quot;¬(¬p∨¬q)&amp;quot; by (rule ccontr)&lt;br /&gt;
&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 46. Demostrar&lt;br /&gt;
     ¬(p ∨ q) ⊢ ¬p ∧ ¬q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_46:&lt;br /&gt;
  assumes &amp;quot;¬(p ∨ q)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬p ∧ ¬q&amp;quot;&lt;br /&gt;
proof (rule conjI)&lt;br /&gt;
    {assume 1: &amp;quot;¬¬p&amp;quot;&lt;br /&gt;
    have 2: &amp;quot;p&amp;quot; using 1 by (rule notnotD)&lt;br /&gt;
    have 3: &amp;quot;p ∨ q&amp;quot; using 2 by (rule disjI1)&lt;br /&gt;
    have 4: &amp;quot;False&amp;quot; using assms(1) 3 by (rule notE)}&lt;br /&gt;
    thus 5: &amp;quot;¬p&amp;quot; by (rule ccontr)&lt;br /&gt;
next&lt;br /&gt;
   { assume 6: &amp;quot;¬¬q&amp;quot;&lt;br /&gt;
     have 7: &amp;quot;q&amp;quot; using 6 by (rule notnotD)&lt;br /&gt;
     have 8: &amp;quot;p ∨ q&amp;quot; using 7 by (rule disjI2)&lt;br /&gt;
     have 9: &amp;quot;False&amp;quot; using assms(1) 8 by (rule notE)}&lt;br /&gt;
   thus 10: &amp;quot;¬q&amp;quot; by (rule ccontr)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 47. Demostrar&lt;br /&gt;
     ¬p ∧ ¬q ⊢ ¬(p ∨ q)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_47:&lt;br /&gt;
  assumes &amp;quot;¬p ∧ ¬q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬(p ∨ q)&amp;quot;&lt;br /&gt;
proof (rule ccontr)&lt;br /&gt;
    assume 1: &amp;quot;¬¬(p ∨ q)&amp;quot;&lt;br /&gt;
    have 2: &amp;quot;p ∨ q&amp;quot; using 1 by (rule notnotD)&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 3: &amp;quot;p&amp;quot;&lt;br /&gt;
      have 4: &amp;quot;¬p&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
      have 5: &amp;quot;False&amp;quot; using 4 3 by (rule notE)}&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 6: &amp;quot;q&amp;quot;&lt;br /&gt;
      have 7: &amp;quot;¬q&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
      have 8: &amp;quot;False&amp;quot; using 7 6 by (rule notE)}&lt;br /&gt;
ultimately show &amp;quot;False&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 48. Demostrar&lt;br /&gt;
     ¬p ∨ ¬q ⊢ ¬(p ∧ q)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_48:&lt;br /&gt;
  assumes &amp;quot;¬p ∨ ¬q&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(p ∧ q)&amp;quot;&lt;br /&gt;
proof (rule ccontr)&lt;br /&gt;
     assume 1: &amp;quot;¬¬(p ∧ q)&amp;quot; &lt;br /&gt;
     have 2: &amp;quot;(p ∧ q)&amp;quot; using 1 by (rule notnotD)&lt;br /&gt;
     have 3: &amp;quot;¬p ∨ ¬q&amp;quot; using assms(1) by this&lt;br /&gt;
     moreover&lt;br /&gt;
       { assume 4: &amp;quot;¬p&amp;quot;&lt;br /&gt;
         have 5: &amp;quot;p&amp;quot; using 2 by (rule conjunct1)&lt;br /&gt;
         have 6: &amp;quot;False&amp;quot; using 4 5 by (rule notE)}&lt;br /&gt;
     moreover &lt;br /&gt;
       { assume 7: &amp;quot;¬q&amp;quot; &lt;br /&gt;
         have 8: &amp;quot;q&amp;quot; using 2 by (rule conjunct2)&lt;br /&gt;
         have 9: &amp;quot;False&amp;quot; using 7 8 by (rule notE)}&lt;br /&gt;
    ultimately show &amp;quot;False&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 49. Demostrar&lt;br /&gt;
     ⊢ ¬(p ∧ ¬p)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_49:&lt;br /&gt;
  &amp;quot;¬(p ∧ ¬p)&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    {assume 1: &amp;quot;¬¬(p ∧ ¬p)&amp;quot;&lt;br /&gt;
    have 2: &amp;quot;p ∧ ¬p&amp;quot; using 1 by (rule notnotD)&lt;br /&gt;
    have 3: &amp;quot;p&amp;quot; using 2 by (rule conjunct1)&lt;br /&gt;
    have 4: &amp;quot;¬p&amp;quot; using 2 by (rule conjunct2)&lt;br /&gt;
    have 5: &amp;quot;False&amp;quot; using 4 3 by (rule notE)}&lt;br /&gt;
    thus &amp;quot;¬(p ∧ ¬p)&amp;quot; by (rule ccontr)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 50. Demostrar&lt;br /&gt;
     p ∧ ¬p ⊢ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_50:&lt;br /&gt;
  assumes &amp;quot;p ∧ ¬p&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
     have 1: &amp;quot;p&amp;quot; using assms(1) by (rule conjunct1)&lt;br /&gt;
     have 2: &amp;quot;¬p&amp;quot; using assms(1) by (rule conjunct2)&lt;br /&gt;
     have 3: &amp;quot;False&amp;quot; using 2 1 by (rule notE)&lt;br /&gt;
     show 4: &amp;quot;q&amp;quot; using 3 by (rule FalseE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 51. Demostrar&lt;br /&gt;
     ¬¬p ⊢ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_51:&lt;br /&gt;
  assumes &amp;quot;¬¬p&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    show &amp;quot;p&amp;quot; using assms(1) by (rule notnotD)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 52. Demostrar&lt;br /&gt;
     ⊢ p ∨ ¬p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_52:&lt;br /&gt;
  &amp;quot;p ∨ ¬p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    have 1: &amp;quot;¬p ∨ p&amp;quot; by (rule excluded_middle)&lt;br /&gt;
    moreover&lt;br /&gt;
      { assume 2: &amp;quot;¬p&amp;quot;&lt;br /&gt;
        have 3: &amp;quot;p ∨ ¬p&amp;quot; using 2 by (rule disjI2)}&lt;br /&gt;
    moreover&lt;br /&gt;
      { assume 4: &amp;quot;p&amp;quot;&lt;br /&gt;
        have 5: &amp;quot;p ∨ ¬p&amp;quot; using 4 by (rule disjI1)}&lt;br /&gt;
    ultimately show &amp;quot;p ∨ ¬p&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 53. Demostrar&lt;br /&gt;
     ⊢ ((p ⟶ q) ⟶ p) ⟶ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_53:&lt;br /&gt;
  &amp;quot;((p ⟶ q) ⟶ p) ⟶ p&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
     {assume 1: &amp;quot;(p ⟶ q) ⟶ p&amp;quot;&lt;br /&gt;
       { assume 3: &amp;quot;¬p&amp;quot;&lt;br /&gt;
         have 4: &amp;quot;¬(p ⟶ q)&amp;quot; using 1 3 by (rule mt)&lt;br /&gt;
          { assume 5: &amp;quot;p&amp;quot;&lt;br /&gt;
            have 6: &amp;quot;False&amp;quot; using 3 5 by (rule notE)&lt;br /&gt;
            have 7: &amp;quot;q&amp;quot; using 6 by (rule FalseE)}&lt;br /&gt;
         hence 8: &amp;quot;p ⟶ q&amp;quot; by (rule impI)&lt;br /&gt;
         have 9: &amp;quot;False&amp;quot; using 4 8 by (rule notE)}&lt;br /&gt;
         hence 10: &amp;quot;p&amp;quot;  by (rule ccontr)}&lt;br /&gt;
     thus 11: &amp;quot;((p ⟶ q) ⟶ p) ⟶ p&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 54. Demostrar&lt;br /&gt;
     ¬q ⟶ ¬p ⊢ p ⟶ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_54:&lt;br /&gt;
  assumes &amp;quot;¬q ⟶ ¬p&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
proof (rule impI)&lt;br /&gt;
     assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
   have 2: &amp;quot;¬q ∨ q&amp;quot; by (rule excluded_middle)&lt;br /&gt;
   moreover&lt;br /&gt;
    { assume 3: &amp;quot;¬q&amp;quot;&lt;br /&gt;
      have 4: &amp;quot;¬p&amp;quot; using assms(1) 3 by (rule mp)&lt;br /&gt;
      have 5: &amp;quot;False&amp;quot; using 4 1 by (rule notE)&lt;br /&gt;
      have 6: &amp;quot;q&amp;quot; using 5 by (rule FalseE)}&lt;br /&gt;
   moreover&lt;br /&gt;
    { assume 7: &amp;quot;q&amp;quot;&lt;br /&gt;
      have 8: &amp;quot;q&amp;quot; using 7 by this}&lt;br /&gt;
   ultimately show  &amp;quot;q&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 55. Demostrar&lt;br /&gt;
     ¬(¬p ∧ ¬q) ⊢ p ∨ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_55:&lt;br /&gt;
  assumes &amp;quot;¬(¬p ∧ ¬q)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
     have 1: &amp;quot;¬p ∨ p&amp;quot; by (rule excluded_middle)&lt;br /&gt;
moreover&lt;br /&gt;
    { assume 2: &amp;quot;¬p&amp;quot;&lt;br /&gt;
      have 3: &amp;quot;¬q ∨ q&amp;quot; by (rule excluded_middle)&lt;br /&gt;
      moreover&lt;br /&gt;
        { assume 4: &amp;quot;¬q&amp;quot;&lt;br /&gt;
          have 5: &amp;quot;¬p ∧ ¬ q&amp;quot; using 2 4 by (rule conjI)&lt;br /&gt;
          have 6: &amp;quot;False&amp;quot; using assms(1) 5 by (rule notE)&lt;br /&gt;
          have 7: &amp;quot;p ∨ q&amp;quot; using 6 by (rule FalseE)}&lt;br /&gt;
      moreover&lt;br /&gt;
        { assume 8: &amp;quot;q&amp;quot;&lt;br /&gt;
          have 9: &amp;quot;p ∨ q&amp;quot; using 8 by (rule disjI2)}&lt;br /&gt;
      ultimately have &amp;quot;p ∨ q&amp;quot; by (rule disjE)}&lt;br /&gt;
    moreover&lt;br /&gt;
      { assume 10: &amp;quot;p&amp;quot;&lt;br /&gt;
        have 11: &amp;quot;p ∨ q&amp;quot; using 10 by (rule disjI1)}&lt;br /&gt;
   ultimately show &amp;quot;p ∨ q&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 56. Demostrar&lt;br /&gt;
     ¬(¬p ∨ ¬q) ⊢ p ∧ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_56:&lt;br /&gt;
  assumes &amp;quot;¬(¬p ∨ ¬q)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∧ q&amp;quot;&lt;br /&gt;
proof (rule conjI)&lt;br /&gt;
    { assume 1: &amp;quot;¬p&amp;quot;&lt;br /&gt;
    have 2: &amp;quot;¬p ∨ ¬q&amp;quot; using 1 by (rule disjI1)&lt;br /&gt;
    have 3: &amp;quot;False&amp;quot; using assms(1) 2 by (rule notE)}&lt;br /&gt;
    thus 4: &amp;quot;p&amp;quot; by (rule ccontr)&lt;br /&gt;
next &lt;br /&gt;
    { assume 5: &amp;quot;¬q&amp;quot;&lt;br /&gt;
      have 6: &amp;quot;¬p ∨ ¬q&amp;quot; using 5 by (rule disjI2)&lt;br /&gt;
      have 7: &amp;quot;False&amp;quot; using assms(1) 6 by (rule notE)}&lt;br /&gt;
    thus 8: &amp;quot;q&amp;quot; by (rule ccontr)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 57. Demostrar&lt;br /&gt;
     ¬(p ∧ q) ⊢ ¬p ∨ ¬q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_57:&lt;br /&gt;
  assumes &amp;quot;¬(p ∧ q)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬p ∨ ¬q&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
     have 1: &amp;quot;¬p ∨ p&amp;quot; by (rule excluded_middle)&lt;br /&gt;
     moreover&lt;br /&gt;
      { assume 2: &amp;quot;¬p&amp;quot;&lt;br /&gt;
        have 3: &amp;quot;¬p ∨ ¬q&amp;quot; using 2 by (rule disjI1)}&lt;br /&gt;
     moreover&lt;br /&gt;
      { assume 4: &amp;quot;p&amp;quot;&lt;br /&gt;
        have 5: &amp;quot;¬q ∨ q&amp;quot; by (rule excluded_middle)&lt;br /&gt;
        moreover&lt;br /&gt;
         { assume 6: &amp;quot;¬q&amp;quot;&lt;br /&gt;
           have 7: &amp;quot;¬p ∨ ¬q&amp;quot; using 6 by (rule disjI2)}&lt;br /&gt;
         moreover&lt;br /&gt;
          { assume 8: &amp;quot;q&amp;quot;&lt;br /&gt;
            have 9: &amp;quot;p ∧ q&amp;quot; using 4 8 by (rule conjI)&lt;br /&gt;
            have 10: &amp;quot;False&amp;quot; using assms(1) 9 by (rule notE)&lt;br /&gt;
            have 11: &amp;quot;¬p ∨ ¬q&amp;quot; using 10 by (rule FalseE)}&lt;br /&gt;
         ultimately have &amp;quot;¬p ∨ ¬q&amp;quot; by (rule disjE)}&lt;br /&gt;
     ultimately show &amp;quot;¬p ∨ ¬q&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 58. Demostrar&lt;br /&gt;
     ⊢ (p ⟶ q) ∨ (q ⟶ p)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_58:&lt;br /&gt;
  &amp;quot;(p ⟶ q) ∨ (q ⟶ p)&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    have &amp;quot;¬p ∨ p&amp;quot; by (rule excluded_middle)&lt;br /&gt;
    moreover&lt;br /&gt;
     { assume &amp;quot;¬p&amp;quot;&lt;br /&gt;
       { assume &amp;quot;p&amp;quot;&lt;br /&gt;
          with `¬p` have &amp;quot;False&amp;quot; by (rule notE)&lt;br /&gt;
          hence &amp;quot;q&amp;quot; by (rule FalseE)}&lt;br /&gt;
       hence &amp;quot;p ⟶ q&amp;quot; by (rule impI)&lt;br /&gt;
       hence &amp;quot;(p ⟶ q) ∨ (q ⟶ p)&amp;quot; by (rule disjI1)}&lt;br /&gt;
    moreover&lt;br /&gt;
     { assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
        { assume &amp;quot;q&amp;quot;&lt;br /&gt;
           have &amp;quot;p&amp;quot;  using 1 by this}&lt;br /&gt;
        hence &amp;quot;q ⟶ p&amp;quot; by (rule impI)&lt;br /&gt;
        hence &amp;quot;(p ⟶ q) ∨ (q ⟶ p)&amp;quot; by (rule disjI2)}&lt;br /&gt;
   ultimately show &amp;quot;(p ⟶ q) ∨ (q ⟶ p)&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Relaci%C3%B3n_4&amp;diff=351</id>
		<title>Relación 4</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Relaci%C3%B3n_4&amp;diff=351"/>
		<updated>2018-07-16T12:27:10Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang =&amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* R4: Deducción natural de primer orden *}&lt;br /&gt;
&lt;br /&gt;
theory R4&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Demostrar o refutar los siguientes lemas usando sólo las reglas&lt;br /&gt;
  básicas de deducción natural de la lógica proposicional, de los&lt;br /&gt;
  cuantificadores y de la igualdad: &lt;br /&gt;
  · conjI:      ⟦P; Q⟧ ⟹ P ∧ Q&lt;br /&gt;
  · conjunct1:  P ∧ Q ⟹ P&lt;br /&gt;
  · conjunct2:  P ∧ Q ⟹ Q  &lt;br /&gt;
  · notnotD:    ¬¬ P ⟹ P&lt;br /&gt;
  · mp:         ⟦P ⟶ Q; P⟧ ⟹ Q &lt;br /&gt;
  · impI:       (P ⟹ Q) ⟹ P ⟶ Q&lt;br /&gt;
  · disjI1:     P ⟹ P ∨ Q&lt;br /&gt;
  · disjI2:     Q ⟹ P ∨ Q&lt;br /&gt;
  · disjE:      ⟦P ∨ Q; P ⟹ R; Q ⟹ R⟧ ⟹ R &lt;br /&gt;
  · FalseE:     False ⟹ P&lt;br /&gt;
  · notE:       ⟦¬P; P⟧ ⟹ R&lt;br /&gt;
  · notI:       (P ⟹ False) ⟹ ¬P&lt;br /&gt;
  · iffI:       ⟦P ⟹ Q; Q ⟹ P⟧ ⟹ P = Q&lt;br /&gt;
  · iffD1:      ⟦Q = P; Q⟧ ⟹ P &lt;br /&gt;
  · iffD2:      ⟦P = Q; Q⟧ ⟹ P&lt;br /&gt;
  · ccontr:     (¬P ⟹ False) ⟹ P&lt;br /&gt;
  · excluded_middel:(¬P ∨ P) &lt;br /&gt;
&lt;br /&gt;
  · allI:       ⟦∀x. P x; P x ⟹ R⟧ ⟹ R&lt;br /&gt;
  · allE:       (⋀x. P x) ⟹ ∀x. P x&lt;br /&gt;
  · exI:        P x ⟹ ∃x. P x&lt;br /&gt;
  · exE:        ⟦∃x. P x; ⋀x. P x ⟹ Q⟧ ⟹ Q&lt;br /&gt;
&lt;br /&gt;
  · refl:       t = t&lt;br /&gt;
  · subst:      ⟦s = t; P s⟧ ⟹ P t&lt;br /&gt;
  · trans:      ⟦r = s; s = t⟧ ⟹ r = t&lt;br /&gt;
  · sym:        s = t ⟹ t = s&lt;br /&gt;
  · not_sym:    t ≠ s ⟹ s ≠ t&lt;br /&gt;
  · ssubst:     ⟦t = s; P s⟧ ⟹ P t&lt;br /&gt;
  · box_equals: ⟦a = b; a = c; b = d⟧ ⟹ a: = d&lt;br /&gt;
  · arg_cong:   x = y ⟹ f x = f y&lt;br /&gt;
  · fun_cong:   f = g ⟹ f x = g x&lt;br /&gt;
  · cong:       ⟦f = g; x = y⟧ ⟹ f x = g y&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Se usarán las reglas notnotI y mt que demostramos a continuación.&lt;br /&gt;
  *}&lt;br /&gt;
&lt;br /&gt;
lemma notnotI: &amp;quot;P ⟹ ¬¬ P&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
lemma mt: &amp;quot;⟦F ⟶ G; ¬G⟧ ⟹ ¬F&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 1. Demostrar&lt;br /&gt;
       ∀x. P x ⟶ Q x ⊢ (∀x. P x) ⟶ (∀x. Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_1a: &lt;br /&gt;
  assumes &amp;quot;∀x. P x ⟶ Q x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(∀x. P x) ⟶ (∀x. Q x)&amp;quot;&lt;br /&gt;
proof (rule impI)&lt;br /&gt;
assume &amp;quot;∀x. P x&amp;quot;&lt;br /&gt;
  { fix a&lt;br /&gt;
    have &amp;quot;P a ⟶ Q a&amp;quot; using assms by (rule allE)&lt;br /&gt;
    have &amp;quot;P a&amp;quot; using `∀x. P x` by (rule allE)&lt;br /&gt;
    have &amp;quot;Q a&amp;quot; using `P a ⟶ Q a` `P a` by (rule mp)}&lt;br /&gt;
thus &amp;quot;∀x. Q x&amp;quot; by (rule allI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-María Dolores Mateo&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 2. Demostrar&lt;br /&gt;
       ∃x. ¬(P x) ⊢ ¬(∀x. P x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_2a: &lt;br /&gt;
  assumes &amp;quot;∃x. ¬(P x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(∀x. P x)&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
assume &amp;quot;∀x. P x&amp;quot; &lt;br /&gt;
  obtain a where &amp;quot;¬ (P a)&amp;quot; using assms by (rule exE)&lt;br /&gt;
  have &amp;quot;P a&amp;quot; using `∀x. P x` by (rule allE)&lt;br /&gt;
  show &amp;quot;False&amp;quot; using `¬ (P a)` `P a` by (rule notE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-María Dolores Mateo&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 3. Demostrar&lt;br /&gt;
       ∀x. P x ⊢ ∀y. P y&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_3a: &lt;br /&gt;
  assumes &amp;quot;∀x. P x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀y. P y&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
{ fix a&lt;br /&gt;
  show &amp;quot;P a&amp;quot; using assms by (rule allE)}&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-María Dolores Mateo&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 4. Demostrar&lt;br /&gt;
       ∀x. P x ⟶ Q x ⊢ (∀x. ¬(Q x)) ⟶ (∀x. ¬ (P x))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_4: &lt;br /&gt;
  assumes &amp;quot;∀x. P x ⟶ Q x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(∀x. ¬(Q x)) ⟶ (∀x. ¬ (P x))&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
assume &amp;quot;∀x. ¬(Q x)&amp;quot;&lt;br /&gt;
  { fix a&lt;br /&gt;
    have &amp;quot;P a ⟶ Q a&amp;quot; using assms by (rule allE)&lt;br /&gt;
    have &amp;quot;¬ (Q a)&amp;quot; using `∀x. ¬(Q x)` by (rule allE)&lt;br /&gt;
    have &amp;quot;¬(P a)&amp;quot; using `P a ⟶ Q a` `¬ (Q a)` by (rule mt)}&lt;br /&gt;
thus &amp;quot;∀x. ¬ (P x)&amp;quot; by (rule allI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-María Dolores Mateo&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 5. Demostrar&lt;br /&gt;
       ∀x. P x  ⟶ ¬(Q x) ⊢ ¬(∃x. P x ∧ Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_5: &lt;br /&gt;
  assumes &amp;quot;∀x. P x  ⟶ ¬(Q x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(∃x. P x ∧ Q x)&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
assume &amp;quot;∃x. P x ∧ Q x&amp;quot; &lt;br /&gt;
  obtain a where &amp;quot;P a ∧ Q a&amp;quot; using `∃x. P x ∧ Q x` by (rule exE)&lt;br /&gt;
  have &amp;quot;P a&amp;quot; using `P a ∧ Q a` by (rule conjE)&lt;br /&gt;
  have &amp;quot;Q a&amp;quot; using `P a ∧ Q a` by (rule conjE)&lt;br /&gt;
  have &amp;quot;P a  ⟶ ¬(Q a)&amp;quot; using assms by (rule allE)&lt;br /&gt;
  have &amp;quot;¬(Q a)&amp;quot; using `P a  ⟶ ¬(Q a)` `P a` by (rule mp)&lt;br /&gt;
show &amp;quot;False&amp;quot; using `¬(Q a)` `Q a` by (rule notE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-María Dolores Mateo&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 6. Demostrar&lt;br /&gt;
       ∀x y. P x y ⊢ ∀u v. P u v&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_6: &lt;br /&gt;
  assumes &amp;quot;∀x y. P x y&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀u v. P u v&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof (rule allI)+&lt;br /&gt;
fix a b &lt;br /&gt;
have  &amp;quot;∀y. P a y&amp;quot; using assms by (rule allE)&lt;br /&gt;
thus &amp;quot; P a b&amp;quot; by (rule allE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--Jaime Alberto &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_6b: &lt;br /&gt;
  assumes 1: &amp;quot;∀x y. P x y&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀u v. P u v&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
{fix u0 &lt;br /&gt;
 {fix v0&lt;br /&gt;
  have 2: &amp;quot;∀y. P u0 y&amp;quot; using 1  by (rule allE)&lt;br /&gt;
  have 3: &amp;quot;P u0 v0&amp;quot; using 2 by (rule allE)}&lt;br /&gt;
 then have 4: &amp;quot;∀v. P u0 v&amp;quot; by (rule allI)}&lt;br /&gt;
then show &amp;quot;∀u v. P u v&amp;quot; by (rule allI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- Rocio Rodriguez&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 7. Demostrar&lt;br /&gt;
       ∃x y. P x y ⟹ ∃u v. P u v&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_7: &lt;br /&gt;
  assumes &amp;quot;∃x y. P x y&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃u v. P u v&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof -&lt;br /&gt;
obtain a where &amp;quot;∃y. P a y&amp;quot; using assms by (rule exE)&lt;br /&gt;
then obtain b where &amp;quot;P a b&amp;quot; by (rule exE)&lt;br /&gt;
hence &amp;quot;∃v. P a v&amp;quot; by (rule exI)&lt;br /&gt;
thus &amp;quot;∃u v. P u v&amp;quot; by (rule exI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 8. Demostrar&lt;br /&gt;
       ∃x. ∀y. P x y ⊢ ∀y. ∃x. P x y&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_8: &lt;br /&gt;
  assumes &amp;quot;∃x. ∀y. P x y&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀y. ∃x. P x y&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof &lt;br /&gt;
obtain a where &amp;quot;∀y. P a y&amp;quot; using assms by (rule exE)&lt;br /&gt;
fix b &lt;br /&gt;
have &amp;quot;P a b&amp;quot; using `∀y. P a y` by (rule allE)&lt;br /&gt;
thus &amp;quot;∃x. P x b&amp;quot; by (rule exI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 9. Demostrar&lt;br /&gt;
       ∃x. P a ⟶ Q x ⊢ P a ⟶ (∃x. Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_9: &lt;br /&gt;
  assumes &amp;quot;∃x. P a ⟶ Q x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;P a ⟶ (∃x. Q x)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;P a&amp;quot;&lt;br /&gt;
obtain b where &amp;quot;P a ⟶ Q b&amp;quot; using assms by (rule exE)&lt;br /&gt;
have &amp;quot;Q b&amp;quot; using `P a ⟶ Q b` `P a` by (rule mp)&lt;br /&gt;
thus &amp;quot;∃x. Q x&amp;quot; by (rule exI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 10. Demostrar&lt;br /&gt;
       P a ⟶ (∃x. Q x) ⊢ ∃x. P a ⟶ Q x &lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_10a: &lt;br /&gt;
  fixes P Q :: &amp;quot;&amp;#039;b ⇒ bool&amp;quot; &lt;br /&gt;
  assumes &amp;quot;P a ⟶ (∃x. Q x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. P a ⟶ Q x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 11. Demostrar&lt;br /&gt;
       (∃x. P x) ⟶ Q a ⊢ ∀x. P x ⟶ Q a&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_11a: &lt;br /&gt;
  assumes &amp;quot;(∃x. P x) ⟶ Q a&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. P x ⟶ Q a&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof &lt;br /&gt;
fix b&lt;br /&gt;
show &amp;quot;P b ⟶ Q a&amp;quot;  &lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;P b&amp;quot;&lt;br /&gt;
hence &amp;quot;∃x. P x&amp;quot; by (rule exI)&lt;br /&gt;
show &amp;quot;Q a&amp;quot; using assms `∃x. P x` by (rule mp)&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 12. Demostrar&lt;br /&gt;
       ∀x. P x ⟶ Q a ⊢ ∃ x. P x ⟶ Q a&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_12a: &lt;br /&gt;
  assumes &amp;quot;∀x. P x ⟶ Q a&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. P x ⟶ Q a&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof -&lt;br /&gt;
fix b&lt;br /&gt;
have &amp;quot;P b ⟶ Q a&amp;quot; using assms by (rule allE)&lt;br /&gt;
thus &amp;quot;∃x. P x ⟶ Q a&amp;quot; by (rule exI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 13. Demostrar&lt;br /&gt;
       (∀x. P x) ∨ (∀x. Q x) ⊢ ∀x. P x ∨ Q x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_13a: &lt;br /&gt;
  assumes &amp;quot;(∀x. P x) ∨ (∀x. Q x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. P x ∨ Q x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof &lt;br /&gt;
fix a&lt;br /&gt;
show &amp;quot;P a ∨ Q a&amp;quot; using assms&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;∀x. P x&amp;quot;&lt;br /&gt;
hence &amp;quot;P a&amp;quot; by (rule allE)&lt;br /&gt;
thus &amp;quot;P a ∨ Q a&amp;quot; by (rule disjI1)&lt;br /&gt;
next&lt;br /&gt;
assume &amp;quot;∀x. Q x&amp;quot;&lt;br /&gt;
hence &amp;quot;Q a&amp;quot; by (rule allE)&lt;br /&gt;
thus &amp;quot;P a ∨ Q a&amp;quot; by (rule disjI2)&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 14. Demostrar&lt;br /&gt;
       ∃x. P x ∧ Q x ⊢ (∃x. P x) ∧ (∃x. Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_14a: &lt;br /&gt;
  assumes &amp;quot;∃x. P x ∧ Q x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(∃x. P x) ∧ (∃x. Q x)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof&lt;br /&gt;
obtain a where &amp;quot;P a ∧ Q a&amp;quot; using assms by (rule exE)&lt;br /&gt;
hence &amp;quot;P a&amp;quot; by (rule conjunct1)&lt;br /&gt;
thus &amp;quot;∃x. P x&amp;quot; by (rule exI)&lt;br /&gt;
have &amp;quot;Q a&amp;quot; using  `P a ∧ Q a` by (rule conjunct2)&lt;br /&gt;
thus &amp;quot;∃x. Q x&amp;quot; by (rule exI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 15. Demostrar&lt;br /&gt;
       ∀x y. P y ⟶ Q x ⊢ (∃y. P y) ⟶ (∀x. Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_15a: &lt;br /&gt;
  assumes &amp;quot;∀x y. P y ⟶ Q x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(∃y. P y) ⟶ (∀x. Q x)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;∃y. P y&amp;quot;&lt;br /&gt;
then obtain b where &amp;quot;P b&amp;quot; by (rule exE)&lt;br /&gt;
{fix a &lt;br /&gt;
have &amp;quot;∀y. P y ⟶ Q a&amp;quot; using assms by (rule allE)&lt;br /&gt;
hence &amp;quot;P b ⟶ Q a&amp;quot; by (rule allE)&lt;br /&gt;
have &amp;quot;Q a&amp;quot; using `P b ⟶ Q a` `P b` by (rule mp)}&lt;br /&gt;
thus &amp;quot;∀x. Q x&amp;quot; by (rule allI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 16. Demostrar&lt;br /&gt;
       ¬(∀x. ¬(P x)) ⊢ ∃x. P x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_16a: &lt;br /&gt;
  assumes 1:&amp;quot;¬(∀x. ¬(P x))&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. P x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
fix x0&lt;br /&gt;
{assume 2: &amp;quot;¬(∃x. P x)&amp;quot; &lt;br /&gt;
 {fix x1&lt;br /&gt;
  {assume 3: &amp;quot;P x1&amp;quot;&lt;br /&gt;
   have 4: &amp;quot;∃x. P x&amp;quot; using 3 by (rule exI)&lt;br /&gt;
   have 5: &amp;quot;False&amp;quot; using 2 4 by (rule notE)}&lt;br /&gt;
 then have 6: &amp;quot;¬ P x1&amp;quot; by (rule notI)}&lt;br /&gt;
then have 7: &amp;quot;∀x. ¬ P x&amp;quot; by (rule allI)&lt;br /&gt;
have 8: &amp;quot;False&amp;quot; using 1 7 by (rule notE)}&lt;br /&gt;
then show &amp;quot;∃x. P x&amp;quot; by (rule ccontr)&lt;br /&gt;
qed &lt;br /&gt;
&lt;br /&gt;
-- Rocio Rodriguez&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 17. Demostrar&lt;br /&gt;
       ∀x. ¬(P x) ⊢ ¬(∃x. P x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_17a: &lt;br /&gt;
  assumes &amp;quot;∀x. ¬(P x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(∃x. P x)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;∃x. P x&amp;quot;&lt;br /&gt;
then obtain a where &amp;quot;P a&amp;quot; by (rule exE)&lt;br /&gt;
have &amp;quot; ¬ (P a)&amp;quot; using assms by (rule allE)&lt;br /&gt;
show False using `¬(P a)` `P a` by (rule notE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 18. Demostrar&lt;br /&gt;
       ∃x. P x ⊢ ¬(∀x. ¬(P x))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_18a: &lt;br /&gt;
  assumes &amp;quot;∃x. P x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(∀x. ¬(P x))&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof &lt;br /&gt;
assume &amp;quot;∀x. ¬(P x)&amp;quot;&lt;br /&gt;
obtain a where &amp;quot;P a&amp;quot; using assms by (rule exE)&lt;br /&gt;
have &amp;quot;¬(P a)&amp;quot; using `∀x. ¬(P x)`  by (rule allE)&lt;br /&gt;
show False using `¬(P a)` `P a`by (rule notE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 19. Demostrar&lt;br /&gt;
       P a ⟶ (∀x. Q x) ⊢ ∀x. P a ⟶ Q x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_19a: &lt;br /&gt;
  assumes &amp;quot;P a ⟶ (∀x. Q x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. P a ⟶ Q x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof &lt;br /&gt;
fix b&lt;br /&gt;
show &amp;quot;P a ⟶ Q b&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
assume &amp;quot;P a&amp;quot; &lt;br /&gt;
have &amp;quot;∀x. Q x&amp;quot; using assms `P a` by (rule mp)&lt;br /&gt;
thus &amp;quot;Q b&amp;quot; by (rule allE)&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 20. Demostrar&lt;br /&gt;
       {∀x y z. R x y ∧ R y z ⟶ R x z, &lt;br /&gt;
        ∀x. ¬(R x x)}&lt;br /&gt;
       ⊢ ∀x y. R x y ⟶ ¬(R y x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_20a: &lt;br /&gt;
  assumes &amp;quot;∀x y z. R x y ∧ R y z ⟶ R x z&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. ¬(R x x)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;∀x y. R x y ⟶ ¬(R y x)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof (rule allI)+&lt;br /&gt;
fix  a b &lt;br /&gt;
show &amp;quot;R a b ⟶ ¬(R b a )&amp;quot; &lt;br /&gt;
proof &lt;br /&gt;
assume 1:&amp;quot;R a b&amp;quot;&lt;br /&gt;
show&amp;quot;¬(R b a)&amp;quot;&lt;br /&gt;
proof&lt;br /&gt;
assume 2:&amp;quot;R b a&amp;quot; &lt;br /&gt;
have 3:&amp;quot;R a b ∧ R b a&amp;quot; using 1 2..&lt;br /&gt;
have  &amp;quot;∀y z. R a y ∧ R y z ⟶ R a z&amp;quot; using assms(1)..&lt;br /&gt;
hence  &amp;quot;∀z. R a b ∧ R b z ⟶ R a z&amp;quot;..&lt;br /&gt;
hence 4:&amp;quot;R a b ∧ R b a ⟶ R a a&amp;quot;..&lt;br /&gt;
have 5:&amp;quot;R a a&amp;quot; using 4 3..&lt;br /&gt;
have 6:&amp;quot; ¬(R a a)&amp;quot; using assms(2)..&lt;br /&gt;
show False using 6 5..&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
--Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 21. Demostrar&lt;br /&gt;
     {∀x. P x ∨ Q x, ∃x. ¬(Q x), ∀x. R x ⟶ ¬(P x)} ⊢ ∃x. ¬(R x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_21a:&lt;br /&gt;
  assumes &amp;quot;∀x. P x ∨ Q x&amp;quot; &lt;br /&gt;
          &amp;quot;∃x. ¬(Q x)&amp;quot; &lt;br /&gt;
          &amp;quot;∀x. R x ⟶ ¬(P x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. ¬(R x)&amp;quot; &lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
obtain a where &amp;quot;¬(Q a)&amp;quot; using assms(2) by (rule exE)&lt;br /&gt;
have &amp;quot;P a ∨ Q a&amp;quot; using assms(1) by (rule allE)&lt;br /&gt;
show &amp;quot;∃x. ¬(R x)&amp;quot; using `P a ∨ Q a`&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;P a&amp;quot;&lt;br /&gt;
hence 1:&amp;quot;¬¬(P a)&amp;quot; by (rule notnotI)&lt;br /&gt;
have 2:&amp;quot;R a ⟶ ¬(P a)&amp;quot; using assms(3) by (rule allE)&lt;br /&gt;
have &amp;quot;¬(R a)&amp;quot; using 2 1 by (rule mt)&lt;br /&gt;
thus &amp;quot;∃x. ¬(R x)&amp;quot; by (rule exI)&lt;br /&gt;
next&lt;br /&gt;
assume &amp;quot;Q a&amp;quot;&lt;br /&gt;
have False using `¬(Q a)` `Q a` by (rule notE) &lt;br /&gt;
thus &amp;quot;∃x. ¬(R x)&amp;quot; by (rule ccontr)&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 22. Demostrar&lt;br /&gt;
     {∀x. P x ⟶ Q x ∨ R x, ¬(∃x. P x ∧ R x)} ⊢ ∀x. P x ⟶ Q x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_22a:&lt;br /&gt;
  assumes &amp;quot;∀x. P x ⟶ Q x ∨ R x&amp;quot; &lt;br /&gt;
          &amp;quot;¬(∃x. P x ∧ R x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. P x ⟶ Q x&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof&lt;br /&gt;
fix a &lt;br /&gt;
show &amp;quot;P a ⟶ Q a&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
assume 1:&amp;quot;P a&amp;quot;&lt;br /&gt;
have 2:&amp;quot;P a ⟶ Q a ∨ R a&amp;quot; using assms(1) by (rule allE)&lt;br /&gt;
have 3:&amp;quot;Q a ∨ R a&amp;quot; using  2 1 by (rule mp)&lt;br /&gt;
show &amp;quot;Q a&amp;quot; using 3 &lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;Q a&amp;quot;&lt;br /&gt;
next &lt;br /&gt;
assume 4:&amp;quot;R a&amp;quot;&lt;br /&gt;
have &amp;quot;P a ∧ R a&amp;quot; using 1 4 by (rule conjI)&lt;br /&gt;
hence 5:&amp;quot;∃x. P x ∧ R x&amp;quot; by (rule exI)&lt;br /&gt;
have False using assms(2) 5 by (rule notE)&lt;br /&gt;
thus &amp;quot;Q a&amp;quot; by (rule ccontr)&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--Jaime Alberto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 23. Demostrar&lt;br /&gt;
     ∃x y. R x y ∨ R y x ⊢ ∃x y. R x y&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_23a:&lt;br /&gt;
  assumes &amp;quot;∃x y. R x y ∨ R y x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x y. R x y&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof -&lt;br /&gt;
obtain a where &amp;quot;∃y. R a y ∨ R y a &amp;quot; using assms by (rule exE)&lt;br /&gt;
then obtain b where 1:&amp;quot;R a b ∨ R b a&amp;quot; by (rule exE)&lt;br /&gt;
show &amp;quot;∃x y. R x y&amp;quot; using 1&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;R a b&amp;quot;&lt;br /&gt;
hence &amp;quot;∃y. R a y&amp;quot; by (rule exI)&lt;br /&gt;
thus &amp;quot;∃x y. R x y&amp;quot; by (rule exI)&lt;br /&gt;
next&lt;br /&gt;
assume &amp;quot;R b a&amp;quot;&lt;br /&gt;
hence &amp;quot;∃y. R b y&amp;quot; by (rule exI)&lt;br /&gt;
thus &amp;quot;∃x y. R x y&amp;quot; by (rule exI)&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--Jaime Alberto &lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 24. Demostrar&lt;br /&gt;
       (∃x. ∀y. P x y) ⟶ (∀y. ∃x. P x y)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_24a: &lt;br /&gt;
  &amp;quot;(∃x. ∀y. P x y) ⟶ (∀y. ∃x. P x y)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof &lt;br /&gt;
assume &amp;quot;∃x. ∀y. P x y&amp;quot;&lt;br /&gt;
then obtain a where 1:&amp;quot;∀y. P a y&amp;quot; by (rule exE)&lt;br /&gt;
{fix b &lt;br /&gt;
have &amp;quot;P a b&amp;quot; using 1 by (rule allE)&lt;br /&gt;
hence &amp;quot;∃x. P x b&amp;quot; by (rule exI)}&lt;br /&gt;
thus &amp;quot;∀y. ∃x. P x y&amp;quot; by (rule allI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- Jaime Alberto &lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 25. Demostrar&lt;br /&gt;
       (∀x. P x ⟶ Q) ⟷ ((∃x. P x) ⟶ Q)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_25a: &lt;br /&gt;
  &amp;quot;(∀x. P x ⟶ Q) ⟷ ((∃x. P x) ⟶ Q)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof&lt;br /&gt;
assume 1:&amp;quot;∀x. P x ⟶ Q&amp;quot;&lt;br /&gt;
show &amp;quot;(∃x. P x) ⟶ Q&amp;quot;&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;∃x. P x&amp;quot; &lt;br /&gt;
then obtain a where 3:&amp;quot;P a&amp;quot; by (rule exE)&lt;br /&gt;
have 4:&amp;quot;P a ⟶ Q&amp;quot;using 1 by (rule allE)&lt;br /&gt;
show &amp;quot;Q&amp;quot; using 4 3 by (rule mp)&lt;br /&gt;
qed&lt;br /&gt;
next &lt;br /&gt;
assume 5:&amp;quot;(∃x. P x) ⟶ Q&amp;quot;&lt;br /&gt;
show &amp;quot;∀x. P x ⟶ Q&amp;quot;&lt;br /&gt;
proof&lt;br /&gt;
fix a&lt;br /&gt;
show &amp;quot;P a⟶Q&amp;quot;&lt;br /&gt;
proof &lt;br /&gt;
assume &amp;quot;P a&amp;quot;&lt;br /&gt;
hence 6:&amp;quot;∃x. P x&amp;quot; by (rule exI)&lt;br /&gt;
show &amp;quot;Q&amp;quot; using 5 6 by (rule mp)&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--Jaime Alberto&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 26. Demostrar&lt;br /&gt;
       ((∀x. P x) ∧ (∀x. Q x)) ⟷ (∀x. P x ∧ Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_26a: &lt;br /&gt;
  &amp;quot;((∀x. P x) ∧ (∀x. Q x)) ⟷ (∀x. P x ∧ Q x)&amp;quot;&lt;br /&gt;
  &amp;quot;((∀x. P x) ∧ (∀x. Q x)) ⟷ (∀x. P x ∧ Q x)&amp;quot;&lt;br /&gt;
proof&lt;br /&gt;
  assume 0: &amp;quot;(∀x. P x) ∧ (∀x. Q x)&amp;quot;&lt;br /&gt;
  have 1: &amp;quot;∀x. P x&amp;quot; using 0 by (rule conjunct1)&lt;br /&gt;
  have 2: &amp;quot;∀x. Q x&amp;quot; using 0 by (rule conjunct2)&lt;br /&gt;
  {fix a&lt;br /&gt;
    have 3: &amp;quot;P a&amp;quot; using 1 by (rule allE)&lt;br /&gt;
    have 4: &amp;quot;Q a&amp;quot; using 2 by (rule allE)&lt;br /&gt;
    have 5: &amp;quot;P a ∧ Q a&amp;quot; using 3 4 by (rule conjI)}&lt;br /&gt;
  thus &amp;quot;∀x. P x ∧ Q x&amp;quot; by (rule allI)&lt;br /&gt;
next&lt;br /&gt;
  assume 0: &amp;quot;∀x. P x ∧ Q x&amp;quot;&lt;br /&gt;
  {fix a&lt;br /&gt;
    have 1: &amp;quot;P a ∧ Q a&amp;quot; using 0 by (rule allE)&lt;br /&gt;
    have 2: &amp;quot;P a&amp;quot; using 1 by (rule conjunct1)}&lt;br /&gt;
  hence 3: &amp;quot;∀x. P x&amp;quot; by (rule allI)&lt;br /&gt;
 {fix a&lt;br /&gt;
    have 4: &amp;quot;P a ∧ Q a&amp;quot; using 0 by (rule allE)&lt;br /&gt;
    have 5: &amp;quot;Q a&amp;quot; using 4 by (rule conjunct2)}&lt;br /&gt;
  hence 6: &amp;quot;∀x. Q x&amp;quot; by (rule allI)&lt;br /&gt;
show &amp;quot;(∀x. P x) ∧ (∀x. Q x)&amp;quot; using 3 6 by (rule conjI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 27. Demostrar o refutar&lt;br /&gt;
       ((∀x. P x) ∨ (∀x. Q x)) ⟷ (∀x. P x ∨ Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_27a: &lt;br /&gt;
  &amp;quot;((∀x. P x) ∨ (∀x. Q x)) ⟷ (∀x. P x ∨ Q x)&amp;quot;&lt;br /&gt;
proof&lt;br /&gt;
  assume  &amp;quot;(∀x. P x) ∨ (∀x. Q x)&amp;quot;&lt;br /&gt;
    moreover&lt;br /&gt;
      {assume  &amp;quot;∀x. P x&amp;quot;&lt;br /&gt;
        {fix a&lt;br /&gt;
          have &amp;quot;P a&amp;quot; using `∀x. P x` by (rule allE)&lt;br /&gt;
          have  &amp;quot;P a ∨ Q a&amp;quot; using `P a` by (rule disjI1)}&lt;br /&gt;
        hence &amp;quot;∀x. P x ∨ Q x&amp;quot; by (rule allI)}&lt;br /&gt;
      moreover&lt;br /&gt;
        {assume  &amp;quot;∀x. Q x&amp;quot;&lt;br /&gt;
          {fix a&lt;br /&gt;
            have &amp;quot;Q a&amp;quot; using `∀x. Q x` by (rule allE)&lt;br /&gt;
            have  &amp;quot;P a ∨ Q a&amp;quot; using `Q a` by (rule disjI2)}&lt;br /&gt;
        hence &amp;quot;∀x. P x ∨ Q x&amp;quot; by (rule allI)}&lt;br /&gt;
      ultimately show &amp;quot;∀x. P x ∨ Q x&amp;quot; by (rule disjE)&lt;br /&gt;
next&lt;br /&gt;
  assume  &amp;quot;∀x. P x ∨ Q x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text{* &lt;br /&gt;
Consideremos los números naturales, ℕ. Sea P = &amp;quot;Ser par&amp;quot; y Q = &amp;quot;Ser impar&amp;quot;. Claramente &lt;br /&gt;
∀x, P x ∨ Q x, pero es falso  (∀x P x)∨(∀x Q x), pues no todo número es par&lt;br /&gt;
 y no todo número es impar. Por tanto la propiedad, en general, es falsa. Es decir, &lt;br /&gt;
((∀x. P x) ∨ (∀x. Q x)) ⟶ (∀x. P x ∨ Q x) pero en general&lt;br /&gt;
 (∀x. P x ∨ Q x) no implica ((∀x. P x) ∨ (∀x. Q x))&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 28. Demostrar o refutar&lt;br /&gt;
       ((∃x. P x) ∨ (∃x. Q x)) ⟷ (∃x. P x ∨ Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_28a: &lt;br /&gt;
  &amp;quot;((∃x. P x) ∨ (∃x. Q x)) ⟷ (∃x. P x ∨ Q x)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof&lt;br /&gt;
assume 1:&amp;quot;(∃x. P x) ∨ (∃x. Q x)&amp;quot; &lt;br /&gt;
show &amp;quot;∃x. P x ∨ Q x&amp;quot; using 1&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;∃x. P x&amp;quot; &lt;br /&gt;
then obtain a where &amp;quot;P a&amp;quot; by (rule exE)&lt;br /&gt;
hence &amp;quot;P a ∨ Q a&amp;quot; by (rule disjI1)&lt;br /&gt;
thus &amp;quot;∃x. P x ∨ Q x&amp;quot; by (rule exI)&lt;br /&gt;
next&lt;br /&gt;
assume &amp;quot;∃x. Q x&amp;quot; &lt;br /&gt;
then obtain a where &amp;quot;Q a&amp;quot; by (rule exE)&lt;br /&gt;
hence &amp;quot;P a ∨ Q a&amp;quot; by (rule disjI2)&lt;br /&gt;
thus &amp;quot;∃x. P x ∨ Q x&amp;quot; by (rule exI)&lt;br /&gt;
qed&lt;br /&gt;
next&lt;br /&gt;
assume &amp;quot;∃x. P x ∨ Q x&amp;quot; &lt;br /&gt;
then obtain a where 2:&amp;quot;P a ∨ Q a&amp;quot; by (rule exE)&lt;br /&gt;
show &amp;quot;(∃x. P x) ∨ (∃x. Q x)&amp;quot; using 2&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;P a&amp;quot; &lt;br /&gt;
hence &amp;quot;∃x. P x&amp;quot; by (rule exI)&lt;br /&gt;
thus &amp;quot;(∃x. P x) ∨ (∃x. Q x)&amp;quot; by (rule disjI1)&lt;br /&gt;
next&lt;br /&gt;
assume &amp;quot;Q a&amp;quot;&lt;br /&gt;
hence &amp;quot;∃x. Q x&amp;quot; by (rule exI)&lt;br /&gt;
thus &amp;quot;(∃x. P x) ∨ (∃x. Q x)&amp;quot; by (rule disjI2)&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
-- Jaime Alberto &lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 29. Demostrar o refutar&lt;br /&gt;
       (∀x. ∃y. P x y) ⟶ (∃y. ∀x. P x y)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_29: &lt;br /&gt;
&lt;br /&gt;
  &amp;quot;(∀x. ∃y. P x y) ⟶ (∃y. ∀x. P x y)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
text{*&lt;br /&gt;
Propiedad en general falsa. Sean los números naturales, y la propiedad P x y = &amp;quot;x + y es par&amp;quot;. Claramente, para todo x, existe un y tal que P x y se verifica (baste tomar y = x). Pero, sea cual sea el y natural que tomemos, da igual el y que tomemos: no para todo elemento que le sumemos la suma será par. &lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 30. Demostrar o refutar&lt;br /&gt;
       (¬(∀x. P x)) ⟷ (∃x. ¬P x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_30a: &lt;br /&gt;
  &amp;quot;(¬(∀x. P x)) ⟷ (∃x. ¬P x)&amp;quot;&lt;br /&gt;
proof (rule iffI)&lt;br /&gt;
   assume 1: &amp;quot;¬(∀x. P x)&amp;quot;&lt;br /&gt;
   show  &amp;quot;∃x. ¬P x&amp;quot;&lt;br /&gt;
   proof (rule ccontr)&lt;br /&gt;
   assume 2: &amp;quot;¬(∃x. ¬P x)&amp;quot;&lt;br /&gt;
   show &amp;quot;False&amp;quot;&lt;br /&gt;
   proof -&lt;br /&gt;
   { fix a&lt;br /&gt;
     { assume 3: &amp;quot;¬P a&amp;quot;&lt;br /&gt;
       have 4: &amp;quot;∃x.¬ P x&amp;quot; using 3 by (rule exI)&lt;br /&gt;
       have 5: &amp;quot;False&amp;quot; using 2 4 by (rule notE)}&lt;br /&gt;
    hence 6: &amp;quot;P a&amp;quot; by (rule ccontr)}&lt;br /&gt;
   hence 7: &amp;quot;∀x. P x&amp;quot; by (rule allI)&lt;br /&gt;
   show 8: &amp;quot;False&amp;quot; using 1 7 by (rule notE)&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
next&lt;br /&gt;
   assume 9: &amp;quot;∃x. ¬P x&amp;quot;&lt;br /&gt;
   show &amp;quot;¬(∀x. P x)&amp;quot;&lt;br /&gt;
   proof -&lt;br /&gt;
   {assume 10: &amp;quot;¬¬(∀x. P x)&amp;quot;&lt;br /&gt;
    have 11: &amp;quot;∀x. P x&amp;quot; using 10 by (rule notnotD)&lt;br /&gt;
    obtain a where 12: &amp;quot;¬P a&amp;quot; using 9 by (rule exE)&lt;br /&gt;
    have 13: &amp;quot;P a&amp;quot; using 11 by (rule allE)&lt;br /&gt;
    have 14: &amp;quot;False&amp;quot; using 12 13 by (rule notE)}&lt;br /&gt;
   thus 15: &amp;quot;¬(∀x. P x)&amp;quot; by (rule ccontr)&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
section {* Ejercicios sobre igualdad *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 31. Demostrar o refutar&lt;br /&gt;
       P a ⟹ ∀x. x = a ⟶ P x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_31a:&lt;br /&gt;
  assumes &amp;quot;P a&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. x = a ⟶ P x&amp;quot;&lt;br /&gt;
proof (rule allI)&lt;br /&gt;
  fix b&lt;br /&gt;
  show &amp;quot;b = a ⟶ P b&amp;quot;&lt;br /&gt;
  proof (rule impI)&lt;br /&gt;
  assume 1: &amp;quot;b = a&amp;quot;&lt;br /&gt;
  show &amp;quot;P b&amp;quot;&lt;br /&gt;
  proof -&lt;br /&gt;
  have 2: &amp;quot;a = b&amp;quot; using 1 by (rule sym)&lt;br /&gt;
  show 3: &amp;quot;P b&amp;quot; using 2 assms(1) by (rule subst)&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 32. Demostrar o refutar&lt;br /&gt;
       ∃x y. R x y ∨ R y x; ¬(∃x. R x x)⟧ ⟹ ∃x y. x ≠ y&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_32a:&lt;br /&gt;
  fixes R :: &amp;quot;&amp;#039;c ⇒ &amp;#039;c ⇒ bool&amp;quot;&lt;br /&gt;
  assumes &amp;quot;∃x y. R x y ∨ R y x&amp;quot;&lt;br /&gt;
          &amp;quot;¬(∃x. R x x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃(x::&amp;#039;c) y. x ≠ y&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 33. Demostrar o refutar&lt;br /&gt;
     {∀x. P a x x, &lt;br /&gt;
      ∀x y z. P x y z ⟶ P (f x) y (f z)} &lt;br /&gt;
     ⊢ P (f a) a (f a)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_33a:&lt;br /&gt;
  assumes &amp;quot;∀x. P a x x&amp;quot;&lt;br /&gt;
          &amp;quot;∀x y z. P x y z ⟶ P (f x) y (f z)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;P (f a) a (f a)&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    have 1: &amp;quot;P a a a&amp;quot; using assms(1) by (rule allE)&lt;br /&gt;
    have 2: &amp;quot;∀y z. P a y z ⟶ P (f a) y (f z)&amp;quot; using assms(2) by (rule allE)&lt;br /&gt;
    have 3: &amp;quot;∀z. P a a z ⟶ P (f a) a (f z)&amp;quot; using 2 by (rule allE)&lt;br /&gt;
    have 4: &amp;quot;P a a a ⟶ P (f a) a (f a)&amp;quot; using 3 by (rule allE)&lt;br /&gt;
    show 5: &amp;quot;P (f a) a (f a)&amp;quot; using 4 1 by (rule mp)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 34. Demostrar o refutar&lt;br /&gt;
     {∀x. P a x x, &lt;br /&gt;
      ∀x y z. P x y z ⟶ P (f x) y (f z)⟧&lt;br /&gt;
     ⊢ ∃z. P (f a) z (f (f a))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_34a:&lt;br /&gt;
  assumes &amp;quot;∀x. P a x x&amp;quot; &lt;br /&gt;
          &amp;quot;∀x y z. P x y z ⟶ P (f x) y (f z)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃z. P (f a) z (f (f a))&amp;quot;&lt;br /&gt;
proof - &lt;br /&gt;
   have 1: &amp;quot;P a (f a) (f a)&amp;quot; using assms(1) by (rule allE)&lt;br /&gt;
   have 2: &amp;quot;∀y z. P a y z ⟶ P (f a) y (f z)&amp;quot; using assms(2) by (rule allE)&lt;br /&gt;
   have 3: &amp;quot;∀z. P a (f a) z ⟶ P (f a) (f a) (f z)&amp;quot; using 2 by (rule allE)&lt;br /&gt;
   have 4: &amp;quot;P a (f a) (f a) ⟶ P (f a) (f a) (f (f a))&amp;quot; using 3 by (rule allE)&lt;br /&gt;
   have 5: &amp;quot;P (f a) (f a) (f (f a))&amp;quot; using 4 1 by (rule mp)&lt;br /&gt;
   show 6: &amp;quot;∃z. P (f a) z (f (f a))&amp;quot; using 5 by (rule exI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 35. Demostrar o refutar&lt;br /&gt;
     {∀y. Q a y, &lt;br /&gt;
      ∀x y. Q x y ⟶ Q (s x) (s y)} &lt;br /&gt;
     ⊢ ∃z. Qa z ∧ Q z (s (s a))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_35a:&lt;br /&gt;
  assumes &amp;quot;∀y. Q a y&amp;quot; &lt;br /&gt;
          &amp;quot;∀x y. Q x y ⟶ Q (s x) (s y)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;∃z. Q a z ∧ Q z (s (s a))&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
    have 1: &amp;quot;Q a (s a)&amp;quot; using assms(1) by (rule allE)&lt;br /&gt;
    have 2: &amp;quot;∀y. Q a y ⟶ Q (s a) (s y)&amp;quot; using assms(2) by (rule allE)&lt;br /&gt;
    have 3: &amp;quot;Q a (s a) ⟶ Q (s a) (s (s a))&amp;quot; using 2 by (rule allE)&lt;br /&gt;
    have 4: &amp;quot;Q (s a) (s (s a))&amp;quot; using 3 1 by (rule mp)&lt;br /&gt;
    have 5: &amp;quot;Q a (s a) ∧ Q (s a) (s (s a))&amp;quot; using 1 4 by (rule conjI)&lt;br /&gt;
    show 6: &amp;quot;∃z. Q a z ∧ Q z (s (s a))&amp;quot; using 5 by (rule exI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 36. Demostrar o refutar&lt;br /&gt;
     {x = f x, odd (f x)} ⊢ odd x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_36a:&lt;br /&gt;
  assumes &amp;quot;x = f x&amp;quot; and&lt;br /&gt;
          &amp;quot;odd (f x)&amp;quot;&lt;br /&gt;
  shows &amp;quot;odd x&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
  show &amp;quot;odd x&amp;quot; using assms(1) assms(2) by (rule ssubst)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 37. Demostrar o refutar&lt;br /&gt;
     {x = f x, triple (f x) (f x) x} ⊢ triple x x x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
-- Francisco Javier Carmona&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_37a:&lt;br /&gt;
  assumes &amp;quot;x = f x&amp;quot; and&lt;br /&gt;
          &amp;quot;triple (f x) (f x) x&amp;quot;&lt;br /&gt;
  shows &amp;quot;triple x x x&amp;quot;&lt;br /&gt;
proof -&lt;br /&gt;
   show &amp;quot;triple x x x&amp;quot; using assms(1) assms(2) by (rule ssubst)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Rel_4&amp;diff=347</id>
		<title>Rel 4</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Rel_4&amp;diff=347"/>
		<updated>2018-07-16T12:27:09Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang =&amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* R4: Deducción natural de primer orden *}&lt;br /&gt;
&lt;br /&gt;
theory R4&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Demostrar o refutar los siguientes lemas usando sólo las reglas&lt;br /&gt;
  básicas de deducción natural de la lógica proposicional, de los&lt;br /&gt;
  cuantificadores y de la igualdad: &lt;br /&gt;
  · conjI:      ⟦P; Q⟧ ⟹ P ∧ Q&lt;br /&gt;
  · conjunct1:  P ∧ Q ⟹ P&lt;br /&gt;
  · conjunct2:  P ∧ Q ⟹ Q  &lt;br /&gt;
  · notnotD:    ¬¬ P ⟹ P&lt;br /&gt;
  · mp:         ⟦P ⟶ Q; P⟧ ⟹ Q &lt;br /&gt;
  · impI:       (P ⟹ Q) ⟹ P ⟶ Q&lt;br /&gt;
  · disjI1:     P ⟹ P ∨ Q&lt;br /&gt;
  · disjI2:     Q ⟹ P ∨ Q&lt;br /&gt;
  · disjE:      ⟦P ∨ Q; P ⟹ R; Q ⟹ R⟧ ⟹ R &lt;br /&gt;
  · FalseE:     False ⟹ P&lt;br /&gt;
  · notE:       ⟦¬P; P⟧ ⟹ R&lt;br /&gt;
  · notI:       (P ⟹ False) ⟹ ¬P&lt;br /&gt;
  · iffI:       ⟦P ⟹ Q; Q ⟹ P⟧ ⟹ P = Q&lt;br /&gt;
  · iffD1:      ⟦Q = P; Q⟧ ⟹ P &lt;br /&gt;
  · iffD2:      ⟦P = Q; Q⟧ ⟹ P&lt;br /&gt;
  · ccontr:     (¬P ⟹ False) ⟹ P&lt;br /&gt;
  · excluded_middel:(¬P ∨ P) &lt;br /&gt;
&lt;br /&gt;
  · allI:       ⟦∀x. P x; P x ⟹ R⟧ ⟹ R&lt;br /&gt;
  · allE:       (⋀x. P x) ⟹ ∀x. P x&lt;br /&gt;
  · exI:        P x ⟹ ∃x. P x&lt;br /&gt;
  · exE:        ⟦∃x. P x; ⋀x. P x ⟹ Q⟧ ⟹ Q&lt;br /&gt;
&lt;br /&gt;
  · refl:       t = t&lt;br /&gt;
  · subst:      ⟦s = t; P s⟧ ⟹ P t&lt;br /&gt;
  · trans:      ⟦r = s; s = t⟧ ⟹ r = t&lt;br /&gt;
  · sym:        s = t ⟹ t = s&lt;br /&gt;
  · not_sym:    t ≠ s ⟹ s ≠ t&lt;br /&gt;
  · ssubst:     ⟦t = s; P s⟧ ⟹ P t&lt;br /&gt;
  · box_equals: ⟦a = b; a = c; b = d⟧ ⟹ a: = d&lt;br /&gt;
  · arg_cong:   x = y ⟹ f x = f y&lt;br /&gt;
  · fun_cong:   f = g ⟹ f x = g x&lt;br /&gt;
  · cong:       ⟦f = g; x = y⟧ ⟹ f x = g y&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Se usarán las reglas notnotI y mt que demostramos a continuación.&lt;br /&gt;
  *}&lt;br /&gt;
&lt;br /&gt;
lemma notnotI: &amp;quot;P ⟹ ¬¬ P&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
lemma mt: &amp;quot;⟦F ⟶ G; ¬G⟧ ⟹ ¬F&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 1. Demostrar&lt;br /&gt;
       ∀x. P x ⟶ Q x ⊢ (∀x. P x) ⟶ (∀x. Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_1a: &lt;br /&gt;
  assumes &amp;quot;∀x. P x ⟶ Q x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(∀x. P x) ⟶ (∀x. Q x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 2. Demostrar&lt;br /&gt;
       ∃x. ¬(P x) ⊢ ¬(∀x. P x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_2a: &lt;br /&gt;
  assumes &amp;quot;∃x. ¬(P x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(∀x. P x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 3. Demostrar&lt;br /&gt;
       ∀x. P x ⊢ ∀y. P y&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_3a: &lt;br /&gt;
  assumes &amp;quot;∀x. P x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀y. P y&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 4. Demostrar&lt;br /&gt;
       ∀x. P x ⟶ Q x ⊢ (∀x. ¬(Q x)) ⟶ (∀x. ¬ (P x))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_4: &lt;br /&gt;
  assumes &amp;quot;∀x. P x ⟶ Q x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(∀x. ¬(Q x)) ⟶ (∀x. ¬ (P x))&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 5. Demostrar&lt;br /&gt;
       ∀x. P x  ⟶ ¬(Q x) ⊢ ¬(∃x. P x ∧ Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_5: &lt;br /&gt;
  assumes &amp;quot;∀x. P x  ⟶ ¬(Q x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(∃x. P x ∧ Q x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 6. Demostrar&lt;br /&gt;
       ∀x y. P x y ⊢ ∀u v. P u v&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_6: &lt;br /&gt;
  assumes &amp;quot;∀x y. P x y&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀u v. P u v&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 7. Demostrar&lt;br /&gt;
       ∃x y. P x y ⟹ ∃u v. P u v&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_7: &lt;br /&gt;
  assumes &amp;quot;∃x y. P x y&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃u v. P u v&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 8. Demostrar&lt;br /&gt;
       ∃x. ∀y. P x y ⊢ ∀y. ∃x. P x y&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_8: &lt;br /&gt;
  assumes &amp;quot;∃x. ∀y. P x y&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀y. ∃x. P x y&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 9. Demostrar&lt;br /&gt;
       ∃x. P a ⟶ Q x ⊢ P a ⟶ (∃x. Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_9: &lt;br /&gt;
  assumes &amp;quot;∃x. P a ⟶ Q x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;P a ⟶ (∃x. Q x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 10. Demostrar&lt;br /&gt;
       P a ⟶ (∃x. Q x) ⊢ ∃x. P a ⟶ Q x &lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_10a: &lt;br /&gt;
  fixes P Q :: &amp;quot;&amp;#039;b ⇒ bool&amp;quot; &lt;br /&gt;
  assumes &amp;quot;P a ⟶ (∃x. Q x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. P a ⟶ Q x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 11. Demostrar&lt;br /&gt;
       (∃x. P x) ⟶ Q a ⊢ ∀x. P x ⟶ Q a&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_11a: &lt;br /&gt;
  assumes &amp;quot;(∃x. P x) ⟶ Q a&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. P x ⟶ Q a&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 12. Demostrar&lt;br /&gt;
       ∀x. P x ⟶ Q a ⊢ ∃ x. P x ⟶ Q a&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_12a: &lt;br /&gt;
  assumes &amp;quot;∀x. P x ⟶ Q a&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. P x ⟶ Q a&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 13. Demostrar&lt;br /&gt;
       (∀x. P x) ∨ (∀x. Q x) ⊢ ∀x. P x ∨ Q x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_13a: &lt;br /&gt;
  assumes &amp;quot;(∀x. P x) ∨ (∀x. Q x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. P x ∨ Q x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 14. Demostrar&lt;br /&gt;
       ∃x. P x ∧ Q x ⊢ (∃x. P x) ∧ (∃x. Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_14a: &lt;br /&gt;
  assumes &amp;quot;∃x. P x ∧ Q x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(∃x. P x) ∧ (∃x. Q x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 15. Demostrar&lt;br /&gt;
       ∀x y. P y ⟶ Q x ⊢ (∃y. P y) ⟶ (∀x. Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_15a: &lt;br /&gt;
  assumes &amp;quot;∀x y. P y ⟶ Q x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(∃y. P y) ⟶ (∀x. Q x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 16. Demostrar&lt;br /&gt;
       ¬(∀x. ¬(P x)) ⊢ ∃x. P x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_16a: &lt;br /&gt;
  assumes &amp;quot;¬(∀x. ¬(P x))&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. P x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 17. Demostrar&lt;br /&gt;
       ∀x. ¬(P x) ⊢ ¬(∃x. P x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_17a: &lt;br /&gt;
  assumes &amp;quot;∀x. ¬(P x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(∃x. P x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 18. Demostrar&lt;br /&gt;
       ∃x. P x ⊢ ¬(∀x. ¬(P x))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_18a: &lt;br /&gt;
  assumes &amp;quot;∃x. P x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(∀x. ¬(P x))&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 19. Demostrar&lt;br /&gt;
       P a ⟶ (∀x. Q x) ⊢ ∀x. P a ⟶ Q x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_19a: &lt;br /&gt;
  assumes &amp;quot;P a ⟶ (∀x. Q x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. P a ⟶ Q x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 20. Demostrar&lt;br /&gt;
       {∀x y z. R x y ∧ R y z ⟶ R x z, &lt;br /&gt;
        ∀x. ¬(R x x)}&lt;br /&gt;
       ⊢ ∀x y. R x y ⟶ ¬(R y x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_20a: &lt;br /&gt;
  assumes &amp;quot;∀x y z. R x y ∧ R y z ⟶ R x z&amp;quot;&lt;br /&gt;
          &amp;quot;∀x. ¬(R x x)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;∀x y. R x y ⟶ ¬(R y x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 21. Demostrar&lt;br /&gt;
     {∀x. P x ∨ Q x, ∃x. ¬(Q x), ∀x. R x ⟶ ¬(P x)} ⊢ ∃x. ¬(R x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_21a:&lt;br /&gt;
  assumes &amp;quot;∀x. P x ∨ Q x&amp;quot; &lt;br /&gt;
          &amp;quot;∃x. ¬(Q x)&amp;quot; &lt;br /&gt;
          &amp;quot;∀x. R x ⟶ ¬(P x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x. ¬(R x)&amp;quot; &lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 22. Demostrar&lt;br /&gt;
     {∀x. P x ⟶ Q x ∨ R x, ¬(∃x. P x ∧ R x)} ⊢ ∀x. P x ⟶ Q x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_22a:&lt;br /&gt;
  assumes &amp;quot;∀x. P x ⟶ Q x ∨ R x&amp;quot; &lt;br /&gt;
          &amp;quot;¬(∃x. P x ∧ R x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. P x ⟶ Q x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 23. Demostrar&lt;br /&gt;
     ∃x y. R x y ∨ R y x ⊢ ∃x y. R x y&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_23a:&lt;br /&gt;
  assumes &amp;quot;∃x y. R x y ∨ R y x&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃x y. R x y&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 24. Demostrar&lt;br /&gt;
       (∃x. ∀y. P x y) ⟶ (∀y. ∃x. P x y)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_24a: &lt;br /&gt;
  &amp;quot;(∃x. ∀y. P x y) ⟶ (∀y. ∃x. P x y)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 25. Demostrar&lt;br /&gt;
       (∀x. P x ⟶ Q) ⟷ ((∃x. P x) ⟶ Q)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_25a: &lt;br /&gt;
  &amp;quot;(∀x. P x ⟶ Q) ⟷ ((∃x. P x) ⟶ Q)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 26. Demostrar&lt;br /&gt;
       ((∀x. P x) ∧ (∀x. Q x)) ⟷ (∀x. P x ∧ Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_26a: &lt;br /&gt;
  &amp;quot;((∀x. P x) ∧ (∀x. Q x)) ⟷ (∀x. P x ∧ Q x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 27. Demostrar o refutar&lt;br /&gt;
       ((∀x. P x) ∨ (∀x. Q x)) ⟷ (∀x. P x ∨ Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_27a: &lt;br /&gt;
  &amp;quot;((∀x. P x) ∨ (∀x. Q x)) ⟷ (∀x. P x ∨ Q x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 28. Demostrar o refutar&lt;br /&gt;
       ((∃x. P x) ∨ (∃x. Q x)) ⟷ (∃x. P x ∨ Q x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_28a: &lt;br /&gt;
  &amp;quot;((∃x. P x) ∨ (∃x. Q x)) ⟷ (∃x. P x ∨ Q x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 29. Demostrar o refutar&lt;br /&gt;
       (∀x. ∃y. P x y) ⟶ (∃y. ∀x. P x y)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_29: &lt;br /&gt;
&lt;br /&gt;
  &amp;quot;(∀x. ∃y. P x y) ⟶ (∃y. ∀x. P x y)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 30. Demostrar o refutar&lt;br /&gt;
       (¬(∀x. P x)) ⟷ (∃x. ¬P x)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_30a: &lt;br /&gt;
  &amp;quot;(¬(∀x. P x)) ⟷ (∃x. ¬P x)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
section {* Ejercicios sobre igualdad *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 31. Demostrar o refutar&lt;br /&gt;
       P a ⟹ ∀x. x = a ⟶ P x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_31a:&lt;br /&gt;
  assumes &amp;quot;P a&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∀x. x = a ⟶ P x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 32. Demostrar o refutar&lt;br /&gt;
       ∃x y. R x y ∨ R y x; ¬(∃x. R x x)⟧ ⟹ ∃x y. x ≠ y&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_32a:&lt;br /&gt;
  fixes R :: &amp;quot;&amp;#039;c ⇒ &amp;#039;c ⇒ bool&amp;quot;&lt;br /&gt;
  assumes &amp;quot;∃x y. R x y ∨ R y x&amp;quot;&lt;br /&gt;
          &amp;quot;¬(∃x. R x x)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃(x::&amp;#039;c) y. x ≠ y&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 33. Demostrar o refutar&lt;br /&gt;
     {∀x. P a x x, &lt;br /&gt;
      ∀x y z. P x y z ⟶ P (f x) y (f z)} &lt;br /&gt;
     ⊢ P (f a) a (f a)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_33a:&lt;br /&gt;
  assumes &amp;quot;∀x. P a x x&amp;quot;&lt;br /&gt;
          &amp;quot;∀x y z. P x y z ⟶ P (f x) y (f z)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;P (f a) a (f a)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 34. Demostrar o refutar&lt;br /&gt;
     {∀x. P a x x, &lt;br /&gt;
      ∀x y z. P x y z ⟶ P (f x) y (f z)⟧&lt;br /&gt;
     ⊢ ∃z. P (f a) z (f (f a))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_34a:&lt;br /&gt;
  assumes &amp;quot;∀x. P a x x&amp;quot; &lt;br /&gt;
          &amp;quot;∀x y z. P x y z ⟶ P (f x) y (f z)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;∃z. P (f a) z (f (f a))&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 35. Demostrar o refutar&lt;br /&gt;
     {∀y. Q a y, &lt;br /&gt;
      ∀x y. Q x y ⟶ Q (s x) (s y)} &lt;br /&gt;
     ⊢ ∃z. Qa z ∧ Q z (s (s a))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_35a:&lt;br /&gt;
  assumes &amp;quot;∀y. Q a y&amp;quot; &lt;br /&gt;
          &amp;quot;∀x y. Q x y ⟶ Q (s x) (s y)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;∃z. Q a z ∧ Q z (s (s a))&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 36. Demostrar o refutar&lt;br /&gt;
     {x = f x, odd (f x)} ⊢ odd x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_36a:&lt;br /&gt;
  assumes &amp;quot;x = f x&amp;quot; and&lt;br /&gt;
          &amp;quot;odd (f x)&amp;quot;&lt;br /&gt;
  shows &amp;quot;odd x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 37. Demostrar o refutar&lt;br /&gt;
     {x = f x, triple (f x) (f x) x} ⊢ triple x x x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_37a:&lt;br /&gt;
  assumes &amp;quot;x = f x&amp;quot; and&lt;br /&gt;
          &amp;quot;triple (f x) (f x) x&amp;quot;&lt;br /&gt;
  shows &amp;quot;triple x x x&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Rel_5&amp;diff=348</id>
		<title>Rel 5</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Rel_5&amp;diff=348"/>
		<updated>2018-07-16T12:27:09Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang=&amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* R5: Argumentación en lógica de primer orden *}&lt;br /&gt;
&lt;br /&gt;
theory R5_sol&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  --------------------------------------------------------------------- &lt;br /&gt;
  El objetivo de esta relación es formalizar en lógica de primer orden&lt;br /&gt;
  argumentos expresados en lenguaje natural.&lt;br /&gt;
&lt;br /&gt;
  Antes de escribir la soluciones, comprobar con APLI2 la corrección de la&lt;br /&gt;
  formalización. &lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 1. Formalizar el siguiente argumento &lt;br /&gt;
     Sócrates es un hombre. &lt;br /&gt;
     Los hombres son mortales. &lt;br /&gt;
     Luego, Sócrates es mortal.&lt;br /&gt;
  Usar s    para Sócrates&lt;br /&gt;
       H(x) para x es un hombre          &lt;br /&gt;
       M(x) para x es mortal&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 2. Formalizar el siguiente argumento&lt;br /&gt;
     Hay estudiantes inteligentes y hay estudiantes trabajadores. Por&lt;br /&gt;
     tanto, hay estudiantes inteligentes y trabajadores.&lt;br /&gt;
  Usar I(x) para x es inteligente&lt;br /&gt;
       T(x) para x es trabajador&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 3. Formalizar el siguiente argumento&lt;br /&gt;
     Todos los participantes son vencedores. Hay como máximo un&lt;br /&gt;
     vencedor. Hay como máximo un participante. Por lo tanto, hay&lt;br /&gt;
     exactamente un participante. &lt;br /&gt;
  Usar P(x) para x es un participante&lt;br /&gt;
       V(x) para x es un vencedor&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 4. Formalizar el siguiente argumento&lt;br /&gt;
     Todo aquel que entre en el país y no sea un VIP será cacheado por&lt;br /&gt;
     un aduanero. Hay un contrabandista que entra en el país y que solo&lt;br /&gt;
     podrá ser cacheado por contrabandistas. Ningún contrabandista es un&lt;br /&gt;
     VIP. Por tanto, algún aduanero es contrabandista.&lt;br /&gt;
  Usar A(x)    para x es aduanero&lt;br /&gt;
       Ca(x,y) para x cachea a y&lt;br /&gt;
       Co(x)   para x es contrabandista&lt;br /&gt;
       E(x)    para x entra en el pais&lt;br /&gt;
       V(x)    para x es un VIP&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 5. Formalizar el siguiente argumento&lt;br /&gt;
     Juan teme a María. Pedro es temido por Juan. Luego, alguien teme a&lt;br /&gt;
     María y a Pedro.&lt;br /&gt;
  Usar j      para Juan  &lt;br /&gt;
       m      para María&lt;br /&gt;
       p      para Pedro&lt;br /&gt;
       T(x,y) para x teme a y&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 6. Formalizar el siguiente argumento&lt;br /&gt;
     Los hermanos tienen el mismo padre. Juan es hermano de Luis. Carlos&lt;br /&gt;
     es padre de Luis. Por tanto, Carlos es padre de Juan.&lt;br /&gt;
  Usar H(x,y) para x es hermano de y&lt;br /&gt;
       P(x,y) para x es padre de y&lt;br /&gt;
       j      para Juan&lt;br /&gt;
       l      para Luis&lt;br /&gt;
       c      para Carlos&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 7. Formalizar el siguiente argumento&lt;br /&gt;
     La existencia de algún canal de TV pública, supone un acicate para&lt;br /&gt;
     cualquier canal de TV privada; el que un canal de TV tenga un&lt;br /&gt;
     acicate, supone una gran satisfacción para cualquiera de sus&lt;br /&gt;
     directivos; en Madrid hay varios canales públicos de TV; TV5 es un&lt;br /&gt;
     canal de TV privada; por tanto, todos los directivos de TV5 están&lt;br /&gt;
     satisfechos. &lt;br /&gt;
  Usar Pu(x)  para x es un canal de TV pública&lt;br /&gt;
       Pr(x)  para x es un canal de TV privada&lt;br /&gt;
       A(x)   para x posee un acicate&lt;br /&gt;
       D(x,y) para x es un directivo del canal y&lt;br /&gt;
       S(x)   para x está satisfecho &lt;br /&gt;
       t      para TV5&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 8. Formalizar el siguiente argumento&lt;br /&gt;
     Quien intente entrar en un país y no tenga pasaporte, encontrará&lt;br /&gt;
     algún aduanero que le impida el paso. A algunas personas&lt;br /&gt;
     motorizadas que intentan entrar en un país le impiden el paso&lt;br /&gt;
     únicamente personas motorizadas. Ninguna persona motorizada tiene&lt;br /&gt;
     pasaporte. Por tanto, ciertos aduaneros están motorizados.&lt;br /&gt;
  Usar E(x)   para x entra en un país&lt;br /&gt;
       P(x)   para x tiene pasaporte&lt;br /&gt;
       A(x)   para x es aduanero&lt;br /&gt;
       I(x,y) para x impide el paso a y&lt;br /&gt;
       M(x)   para x está motorizada&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 9. Formalizar el siguiente argumento&lt;br /&gt;
     Los aficionados al fútbol aplauden a cualquier futbolista&lt;br /&gt;
     extranjero. Juanito no aplaude a futbolistas extranjeros. Por&lt;br /&gt;
     tanto, si hay algún futbolista extranjero nacionalizado español,&lt;br /&gt;
     Juanito no es aficionado al fútbol.&lt;br /&gt;
  Usar Af(x)   para x es aficicionado al fútbol&lt;br /&gt;
       Ap(x,y) para x aplaude a y&lt;br /&gt;
       E(x)    para x es un futbolista extranjero&lt;br /&gt;
       N(x)    para x es un futbolista nacionalizado español&lt;br /&gt;
       j       para Juanito&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 10. Formalizar el siguiente argumento&lt;br /&gt;
     Ningún aristócrata debe ser condenado a galeras a menos que sus&lt;br /&gt;
     crímenes sean vergonzosos y lleve una vida licenciosa. En la ciudad&lt;br /&gt;
     hay aristócratas que han cometido crímenes vergonzosos aunque su&lt;br /&gt;
     forma de vida no sea licenciosa. Por tanto, hay algún aristócrata&lt;br /&gt;
     que no está condenado a galeras. &lt;br /&gt;
  Usar A(x)  para x es aristócrata&lt;br /&gt;
       G(x)  para x está condenado a galeras&lt;br /&gt;
       L(x)  para x lleva una vida licenciosa&lt;br /&gt;
       V(x)  para x ha cometido crímenes vergonzoso&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 11. Formalizar el siguiente argumento&lt;br /&gt;
     Todo individuo que esté conforme con el contenido de cualquier&lt;br /&gt;
     acuerdo internacional lo apoya o se inhibe en absoluto de asuntos&lt;br /&gt;
     políticos. Cualquiera que se inhiba de los asuntos políticos, no&lt;br /&gt;
     participará en el próximo referéndum. Todo español, está conforme&lt;br /&gt;
     con el acuerdo internacional de Maastricht, al que sin embargo no&lt;br /&gt;
     apoya. Por tanto, cualquier individuo o no es español, o en otro&lt;br /&gt;
     caso, está conforme con el contenido del acuerdo internacional de&lt;br /&gt;
     Maastricht y no participará en el próximo referéndum. &lt;br /&gt;
  Usar C(x,y) para la persona x conforme con el contenido del acuerdo y&lt;br /&gt;
       A(x,y) para la persona x apoya el acuerdo y&lt;br /&gt;
       I(x)   para la persona x se inibe de asuntos políticos&lt;br /&gt;
       R(x)   para la persona x participará en el próximo referéndum&lt;br /&gt;
       E(x)   para la persona x es española&lt;br /&gt;
       m      para el acuerdo de Maastricht&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 12. Formalizar el siguiente argumento&lt;br /&gt;
     Toda persona pobre tiene un padre rico. Por tanto, existe una&lt;br /&gt;
     persona rica que tiene un abuelo rico.&lt;br /&gt;
  Usar R(x) para x es rico&lt;br /&gt;
       p(x) para el padre de x&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 13. Formalizar el siguiente argumento&lt;br /&gt;
     Todo deprimido que estima a un submarinista es listo. Cualquiera&lt;br /&gt;
     que se estime a sí mismo es listo. Ningún deprimido se estima a sí&lt;br /&gt;
     mismo. Por tanto, ningún deprimido estima a un submarinista.&lt;br /&gt;
  Usar D(x)   para x está deprimido&lt;br /&gt;
       E(x,y) para x estima a y&lt;br /&gt;
       L(x)   para x es listo&lt;br /&gt;
       S(x)   para x es submarinista&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 14. Formalizar el siguiente argumento&lt;br /&gt;
     Todos los robots obedecen a los amigos del programador jefe.&lt;br /&gt;
     Alvaro es amigo del programador jefe, pero Benito no le&lt;br /&gt;
     obedece. Por tanto, Benito no es un robot.&lt;br /&gt;
  Usar R(x)    para x es un robot&lt;br /&gt;
       Ob(x,y) para x obedece a y&lt;br /&gt;
       A(x)    para x es amigo del programador jefe&lt;br /&gt;
       b       para Benito&lt;br /&gt;
       a       para Alvaro&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 15. Formalizar el siguiente argumento&lt;br /&gt;
     En una pecera nadan una serie de peces. Se observa que:&lt;br /&gt;
     * Hay algún pez x que para cualquier pez y, si el pez x no se come&lt;br /&gt;
       al pez y entonces existe un pez z tal que z es un tiburón o bien&lt;br /&gt;
       z protege al pez y. &lt;br /&gt;
     * No hay ningún pez que se coma a todos los demás.&lt;br /&gt;
     * Ningún pez protege a ningún otro.&lt;br /&gt;
     Por tanto, existe algún tiburón en la pecera.&lt;br /&gt;
  Usar C(x,y) para x se come a y &lt;br /&gt;
       P(x,y) para x protege a y&lt;br /&gt;
       T(x)   para x es un tiburón&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 16. Formalizar el siguiente argumento&lt;br /&gt;
     Supongamos conocidos los siguientes hechos acerca del número de&lt;br /&gt;
     aprobados de dos asignaturas A y B: &lt;br /&gt;
     * Si todos los alumnos aprueban la asignatura A, entonces todos&lt;br /&gt;
       aprueban la asignatura B.&lt;br /&gt;
     * Si algún delegado de la clase aprueba A y B, entonces todos los &lt;br /&gt;
       alumnos aprueban A.&lt;br /&gt;
     * Si nadie aprueba B, entonces ningún delegado aprueba A.&lt;br /&gt;
     * Si Manuel no aprueba B, entonces nadie aprueba B.&lt;br /&gt;
     Por tanto, si Manuel es un delegado y aprueba la asignatura A,&lt;br /&gt;
     entonces todos los alumnos aprueban las asignaturas A y B.&lt;br /&gt;
  Usar A(x,y) para x aprueba la asignatura y&lt;br /&gt;
       D(x)   para x es delegado&lt;br /&gt;
       m      para Manuel&lt;br /&gt;
       a      para la asignatura A&lt;br /&gt;
       b      para la asignatura B&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 17. Formalizar el siguiente argumento&lt;br /&gt;
     En cierto país oriental se ha celebrado la fase final del&lt;br /&gt;
     campeonato mundial de fútbol. Cierto diario deportivo ha publicado&lt;br /&gt;
     las siguientes estadísticas de tan magno acontecimiento: &lt;br /&gt;
     * A todos los porteros que no vistieron camiseta negra les marcó un&lt;br /&gt;
       gol algún delantero europeo.  &lt;br /&gt;
     * Algún portero jugó con botas blancas y sólo le marcaron goles&lt;br /&gt;
       jugadores con botas blancas.  &lt;br /&gt;
     * Ningún portero se marcó un gol a sí mismo. &lt;br /&gt;
     * Ningún jugador con botas blancas vistió camiseta negra. &lt;br /&gt;
     Por tanto, algún delantero europeo jugó con botas blancas.&lt;br /&gt;
  Usar P(x)   para x es portero&lt;br /&gt;
       D(x)   para x es delantero europeo &lt;br /&gt;
       N(x)   para x viste camiseta negra&lt;br /&gt;
       B(x)   para x juega con botas blancas &lt;br /&gt;
       M(x,y) para x marcó un gol a y&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 18. Formalizar el siguiente argumento&lt;br /&gt;
     Las relaciones de parentesco verifican la siguientes propiedades&lt;br /&gt;
     generales:  &lt;br /&gt;
     * Si x es hermano de y, entonces y es hermano de x. &lt;br /&gt;
     * Todo el mundo es hijo de alguien. &lt;br /&gt;
     * Nadie es hijo del hermano de su padre. &lt;br /&gt;
     * Cualquier padre de una persona es también padre de todos los&lt;br /&gt;
       hermanos de esa persona. &lt;br /&gt;
     * Nadie es hijo ni hermano de sí mismo. &lt;br /&gt;
     Tenemos los siguientes miembros de la familia Peláez: Don Antonio,&lt;br /&gt;
     Don Luis, Antoñito y Manolito y sabemos que Don Antonio y Don Luis&lt;br /&gt;
     son hermanos, Antoñito y Manolito son hermanos, y Antoñito es hijo&lt;br /&gt;
     de Don Antonio. Por tanto, Don Luis no es el padre de Manolito.&lt;br /&gt;
  Usar A       para Don Antonio&lt;br /&gt;
       He(x,y) para x es hermano de y &lt;br /&gt;
       Hi(x,y) para x es hijo de y  &lt;br /&gt;
       L       para Don Luis&lt;br /&gt;
       a       para Antoñito&lt;br /&gt;
       m       para Manolito&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 19. [Problema del apisonador de Schubert (en inglés, &lt;br /&gt;
  &amp;quot;Schubert’s steamroller&amp;quot;)] Formalizar el siguiente argumento &lt;br /&gt;
     Si uno de los miembros del club afeita a algún otro (incluido a&lt;br /&gt;
     sí mismo), entonces todos los miembros del club lo han afeitado&lt;br /&gt;
     a él (aunque no necesariamente al mismo tiempo). Guido, Lorenzo,&lt;br /&gt;
     Petruccio y Cesare pertenecen al club de barberos. Guido ha&lt;br /&gt;
     afeitado a Cesare. Por tanto, Petruccio ha afeitado a Lorenzo.&lt;br /&gt;
  Usar g      para Guido&lt;br /&gt;
       l      para Lorenzo&lt;br /&gt;
       p      para Petruccio&lt;br /&gt;
       c      para Cesare&lt;br /&gt;
       B(x)   para x es un miembro del club de barberos&lt;br /&gt;
       A(x,y) para x ha afeitado a y&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 20. Formalizar el siguiente argumento&lt;br /&gt;
     Carlos afeita a todos los habitantes de Las Chinas que no se&lt;br /&gt;
     afeitan a sí mismo y sólo a ellos. Carlos es un habitante de las&lt;br /&gt;
     Chinas. Por consiguiente, Carlos no afeita a nadie.&lt;br /&gt;
  Usar A(x,y) para x afeita a y&lt;br /&gt;
       C(x)   para x es un habitante de Las Chinas&lt;br /&gt;
       c      para Carlos&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 21. Formalizar el siguiente argumento&lt;br /&gt;
     Quien desprecia a todos los fanáticos desprecia también a todos los&lt;br /&gt;
     políticos. Alguien no desprecia a un determinado político. Por&lt;br /&gt;
     consiguiente, hay un fanático al que no todo el mundo desprecia.&lt;br /&gt;
   Usar D(x,y) para x desprecia a y&lt;br /&gt;
        F(x)   para x es fanático&lt;br /&gt;
        P(x)   para x es político&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 22. Formalizar el siguiente argumento&lt;br /&gt;
     El hombre puro ama todo lo que es puro. Por tanto, el hombre puro&lt;br /&gt;
     se ama a sí mismo.&lt;br /&gt;
  Usar A(x,y) para x ama a y&lt;br /&gt;
       H(x)   para x es un hombre&lt;br /&gt;
       P(x)   para x es puro&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 23. Formalizar el siguiente argumento&lt;br /&gt;
     Ningún socio del club está en deuda con el tesorero del club. Si&lt;br /&gt;
     un socio del club no paga su cuota está en deuda con el tesorero&lt;br /&gt;
     del club. Por tanto, si el tesorero del club es socio del club,&lt;br /&gt;
     entonces paga su cuota. &lt;br /&gt;
  Usar P(x) para x es socio del club&lt;br /&gt;
       Q(x) para x paga su cuota&lt;br /&gt;
       R(x) para x está en deuda con el tesorero&lt;br /&gt;
       a    para el tesorero del club&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 24. Formalizar el siguiente argumento&lt;br /&gt;
     1. Los lobos, zorros, pájaros, orugas y caracoles son animales y&lt;br /&gt;
        existen algunos ejemplares de estos animales. &lt;br /&gt;
     2. También hay algunas semillas y las semillas son plantas. &lt;br /&gt;
     3. A todo animal le gusta o bien comer todo tipo de plantas o bien&lt;br /&gt;
        le gusta comerse a todos los animales más pequeños que él mismo&lt;br /&gt;
        que gustan de comer algunas plantas. &lt;br /&gt;
     4. Las orugas y los caracoles son mucho más pequeños que los&lt;br /&gt;
        pájaros, que son mucho más pequeños que los zorros que a su vez&lt;br /&gt;
        son mucho más pequeños que los lobos. &lt;br /&gt;
     5. A los lobos no les gusta comer ni zorros ni semillas, mientras&lt;br /&gt;
        que a los pájaros les gusta comer orugas pero no caracoles. &lt;br /&gt;
     6. Las orugas y los caracoles gustan de comer algunas plantas. &lt;br /&gt;
     7. Luego, existe un animal al que le gusta comerse un animal al que&lt;br /&gt;
        le gusta comer semillas.  &lt;br /&gt;
  Usar A(x)    para x es un animal&lt;br /&gt;
       Ca(x)   para x es un caracol&lt;br /&gt;
       Co(x,y) para x le gusta comerse a y&lt;br /&gt;
       L(x)    para x es un lobo&lt;br /&gt;
       M(x,y)  para x es más pequeño que y&lt;br /&gt;
       Or(x)   para x es una oruga&lt;br /&gt;
       Pa(x)   para x es un pájaro&lt;br /&gt;
       Pl(x)   para x es una planta&lt;br /&gt;
       S(x)    para x es una semilla&lt;br /&gt;
       Z(x)    para x es un zorro&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 25. Formalizar el siguiente argumento &lt;br /&gt;
     Rosa ama a Curro. Paco no simpatiza con Ana. Quien no simpatiza con&lt;br /&gt;
     Ana ama a Rosa. Si una persona ama a otra, la segunda ama a la&lt;br /&gt;
     primera. Hay como máximo una persona que ama a Rosa. Por tanto,&lt;br /&gt;
     Paco es Curro. &lt;br /&gt;
  Usar A(x,y) para x ama a y &lt;br /&gt;
       S(x,y) para x simpatiza con y &lt;br /&gt;
       a      para Ana&lt;br /&gt;
       c      para Curro&lt;br /&gt;
       p      para Paco &lt;br /&gt;
       r      para Rosa&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 26. Formalizar el siguiente argumento &lt;br /&gt;
     Sólo hay un sofista que enseña gratuitamente, y éste es&lt;br /&gt;
     Sócrates. Sócrates argumenta mejor que ningún otro sofista. Platón&lt;br /&gt;
     argumenta mejor que algún sofista que enseña gratuitamente. Si una&lt;br /&gt;
     persona argumenta mejor que otra segunda, entonces la segunda no&lt;br /&gt;
     argumenta mejor que la primera. Por consiguiente, Platón no es un&lt;br /&gt;
     sofista. &lt;br /&gt;
  Usar G(x)   para x enseña gratuitamente&lt;br /&gt;
       M(x,y) para x argumenta mejor que y&lt;br /&gt;
       S(x)   para x es un sofista&lt;br /&gt;
       p      para Platón&lt;br /&gt;
       s      para Sócrates&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 27. Formalizar el siguiente argumento &lt;br /&gt;
     Todos los filósofos se han preguntado qué es la filosofía. Los que&lt;br /&gt;
     se preguntan qué es la filosofía se vuelven locos. Nietzsche es&lt;br /&gt;
     filósofo. El maestro de Nietzsche no acabó loco. Por tanto,&lt;br /&gt;
     Nietzsche y su maestro son diferentes personas. &lt;br /&gt;
  Usar F(x) para x es filósofo&lt;br /&gt;
       L(x) para x se vuelve loco&lt;br /&gt;
       P(x) para x se ha preguntado qué es la filosofía.&lt;br /&gt;
       m    para el maestro de Nietzsche&lt;br /&gt;
       n    para Nietzsche&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 28. Formalizar el siguiente argumento &lt;br /&gt;
     Los padres son mayores que los hijos. Juan es el padre de Luis. Por&lt;br /&gt;
     tanto, Juan es mayor que Luis.&lt;br /&gt;
  Usar M(x,y) para x es mayor que y&lt;br /&gt;
       p(x)   para el padre de x&lt;br /&gt;
       j      para Juan&lt;br /&gt;
       l      para Luis&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 29. Formalizar el siguiente argumento &lt;br /&gt;
     El esposo de la hermana de Toni es Roberto. La hermana de Toni es&lt;br /&gt;
     María. Por tanto, el esposo de María es Roberto. &lt;br /&gt;
  Usar e(x) para el esposo de x&lt;br /&gt;
       h    para la hermana de Toni&lt;br /&gt;
       m    para María&lt;br /&gt;
       r    para Roberto&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 30. Formalizar el siguiente argumento &lt;br /&gt;
     Luis y Jaime tienen el mismo padre. La madre de Rosa es&lt;br /&gt;
     Eva. Eva ama a Carlos. Carlos es el padre de Jaime. Por tanto,&lt;br /&gt;
     la madre de Rosa ama al padre de Luis.&lt;br /&gt;
  Usar A(x,y) para x ama a y&lt;br /&gt;
       m(x)   para la madre de x&lt;br /&gt;
       p(x)   para el padre de x&lt;br /&gt;
       c      para Carlos&lt;br /&gt;
       e      para Eva&lt;br /&gt;
       j      para Jaime&lt;br /&gt;
       l      para Luis&lt;br /&gt;
       r      para Rosa&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 31. Formalizar el siguiente argumento &lt;br /&gt;
     Si dos personas son hermanos, entonces tienen la misma madre y el&lt;br /&gt;
     mismo padre. Juan es hermano de Luis. Por tanto, la madre del padre&lt;br /&gt;
     de Juan es la madre del padre de Luis.&lt;br /&gt;
  Usar H(x,y) para x es hermano de y&lt;br /&gt;
       m(x)   para la madre de x&lt;br /&gt;
       p(x)   para el padre de x&lt;br /&gt;
       j      para Juan&lt;br /&gt;
       l      para Luis&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 32. Formalizar el siguiente argumento &lt;br /&gt;
     Todos los miembros del claustro son asturianos. El secretario forma&lt;br /&gt;
     parte del claustro. El señor Martínez es el secretario. Por tanto,&lt;br /&gt;
     el señor Martínez es asturiano.&lt;br /&gt;
  Usar C(x) para x es miembro del claustro&lt;br /&gt;
       A(x) para x es asturiano&lt;br /&gt;
       s    para el secretario&lt;br /&gt;
       m    para el señor Martínez&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 33. Formalizar el siguiente argumento &lt;br /&gt;
     Eduardo pudo haber visto al asesino. Antonio fue el primer testigo&lt;br /&gt;
     de la defensa. O Eduardo estaba en clase o Antonio dio falso&lt;br /&gt;
     testimonio. Nadie en clase pudo haber visto al asesino. Luego, el&lt;br /&gt;
     primer testigo de la defensa dio falso testimonio. &lt;br /&gt;
  Usar C(x) para x estaba en clase&lt;br /&gt;
       F(x) para x dio falso testimonio&lt;br /&gt;
       V(x) para x pudo haber visto al asesino&lt;br /&gt;
       a    para Antonio&lt;br /&gt;
       e    para Eduardo&lt;br /&gt;
       p    para el primer testigo de la defensa&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 34. Formalizar el siguiente argumento &lt;br /&gt;
     La luna hoy es redonda. La luna de hace dos semanas tenía forma de&lt;br /&gt;
     cuarto creciente. Luna no hay más que una, es decir, siempre es la&lt;br /&gt;
     misma. Luego existe algo que es a la vez redondo y con forma de&lt;br /&gt;
     cuarto creciente. &lt;br /&gt;
  Usar L(x) para la luna del momento x&lt;br /&gt;
       R(x) para x es redonda&lt;br /&gt;
       C(x) para x tiene forma de cuarto creciente&lt;br /&gt;
       h    para hoy&lt;br /&gt;
       d    para hace dos semanas&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 35. Formalizar el siguiente argumento &lt;br /&gt;
     Juana sólo tiene un marido. Juana está casada con Tomás. Tomás es&lt;br /&gt;
     delgado y Guillermo no. Luego, Juana no está casada con Guillermo. &lt;br /&gt;
  Usar D(x)   para x es delgado&lt;br /&gt;
       C(x,y) para x está casada con y&lt;br /&gt;
       g      para Guillermo&lt;br /&gt;
       j      para Juana&lt;br /&gt;
       t      para Tomás&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 36. Formalizar el siguiente argumento &lt;br /&gt;
     Sultán no es Chitón. Sultán no obtendrá un plátano a menos que&lt;br /&gt;
     pueda resolver cualquier problema. Si el chimpancé Chitón trabaja&lt;br /&gt;
     más que Sultán resolverá problemas que Sultán no puede resolver. &lt;br /&gt;
     Todos los chimpancés distintos de Sultán trabajan más que Sultán. &lt;br /&gt;
     Por consiguiente, Sultán no obtendrá un plátano.&lt;br /&gt;
  Usar Pl(x)  para x obtiene el plátano&lt;br /&gt;
       Pr(x)  para x es un problema&lt;br /&gt;
       R(x,y) para x resuelve y&lt;br /&gt;
       T(x,y) para x trabaja más que y&lt;br /&gt;
       c      para Chitón&lt;br /&gt;
       s      para Sultán&lt;br /&gt;
   ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Relaci%C3%B3n_14&amp;diff=349</id>
		<title>Relación 14</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Relaci%C3%B3n_14&amp;diff=349"/>
		<updated>2018-07-16T12:27:09Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang = &amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* R14: Argumentación y Deducción natural en lógica de primer orden *}&lt;br /&gt;
&lt;br /&gt;
theory R14&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* Ej. 1: Existe un hombre al que todos desprecian. &lt;br /&gt;
   (a) Demostrar que existe al menos un hombre que se desprecia a sí mismo. &lt;br /&gt;
   (b) ¿La conclusión sería cierta en el caso de que sólo supiéramos que &lt;br /&gt;
       existe un hombre al que algunos desprecian? &lt;br /&gt;
&lt;br /&gt;
  Simbología: H(x): x es hombre, D(x,y): x desprecia a y. *}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* Ej. 2: Si todas las medicinas están contaminadas, entonces todos los&lt;br /&gt;
  técnicos negligentes son unos bribones. Si hay medicinas contaminadas,&lt;br /&gt;
  entonces todas las medicinas están contaminadas y son peligrosas. Todos los&lt;br /&gt;
  germicidas son medicinas. Sólo los negligentes son distraídos. &lt;br /&gt;
  (a) Demostrar que si cualquier técnico es distraído y si algunos germicidas &lt;br /&gt;
      están contaminados, los técnicos son bribones. &lt;br /&gt;
  (b) ¿Podemos asegurar lo mismo en el caso de que sólo supiéramos que hay&lt;br /&gt;
      técnicos distraídos?&lt;br /&gt;
&lt;br /&gt;
  Simbología: M(x): x es medicina. C(x): x está contaminada, &lt;br /&gt;
              T(x): x es técnico, N(x): x es un negligente, &lt;br /&gt;
              B(x): x es un bribón, G(x): x es germicida, &lt;br /&gt;
              D(x): x es distraído. *}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* Ej. 3: Ningún individuo que sea candidato será derrotado si hace una&lt;br /&gt;
  buena campaña. Todo individuo que se postula es un candidato. Cualquier&lt;br /&gt;
  candidato que no sea derrotado, será elegido. Todo individuo que sea elegido&lt;br /&gt;
  hace una buena campaña.&lt;br /&gt;
  (a) Demostrar que todo individuo que se postula será elegido si y&lt;br /&gt;
      sólo si hace una buena campaña. &lt;br /&gt;
  (b) Si algún individuo se postula, ¿habrá candidatos que no sean&lt;br /&gt;
      elegidos?&lt;br /&gt;
&lt;br /&gt;
  Simbología: I(x): x es individuo, C(x): x es candidato,&lt;br /&gt;
              D(x): x es derrotado, B(x): x hace una buena campaña, &lt;br /&gt;
              P(x): x se postula, E(x): x es elegido. *}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* Ej. 4: Todo ejecutivo que sea poeta es un hombre&lt;br /&gt;
  imaginativo. Todo hombre imaginativo es amante del riesgo. Si todo&lt;br /&gt;
  amante del riesgo no es poeta, entonces, ningún poeta es amante del&lt;br /&gt;
  riesgo. &lt;br /&gt;
  (a) Demostrar que si todo hombre imaginativo no es poeta, entonces, &lt;br /&gt;
      ningún ejecutivo es poeta. &lt;br /&gt;
  (b) ¿Es cierto el recíproco?&lt;br /&gt;
&lt;br /&gt;
  Simbología: E(x): x es ejecutivo, P(x): x es poeta, I(x): x es imaginativo, &lt;br /&gt;
  R(x): x es amante del riesgo. *}&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Ejercicio_5_(a)&amp;diff=343</id>
		<title>Ejercicio 5 (a)</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Ejercicio_5_(a)&amp;diff=343"/>
		<updated>2018-07-16T12:27:08Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang=&amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* Examen de Lógica Matemática y Fundamentos (6 de abril de 2015) *}&lt;br /&gt;
&lt;br /&gt;
theory e5_1_sol&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Apellidos:&lt;br /&gt;
  Nombre: &lt;br /&gt;
*} &lt;br /&gt;
&lt;br /&gt;
text {* Sustituye la palabra uvus por tu usuario de la Universidad de&lt;br /&gt;
  Sevilla y graba el fichero con dicho usuario .thy&lt;br /&gt;
*} &lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Demostrar o refutar los siguientes lemas usando sólo las reglas&lt;br /&gt;
  básicas de deducción natural de la lógica proposicional, de los&lt;br /&gt;
  cuantificadores y de la igualdad: &lt;br /&gt;
  · conjI:      ⟦P; Q⟧ ⟹ P ∧ Q&lt;br /&gt;
  · conjunct1:  P ∧ Q ⟹ P&lt;br /&gt;
  · conjunct2:  P ∧ Q ⟹ Q  &lt;br /&gt;
  · notnotD:    ¬¬ P ⟹ P&lt;br /&gt;
  · mp:         ⟦P ⟶ Q; P⟧ ⟹ Q &lt;br /&gt;
  · impI:       (P ⟹ Q) ⟹ P ⟶ Q&lt;br /&gt;
  · disjI1:     P ⟹ P ∨ Q&lt;br /&gt;
  · disjI2:     Q ⟹ P ∨ Q&lt;br /&gt;
  · disjE:      ⟦P ∨ Q; P ⟹ R; Q ⟹ R⟧ ⟹ R &lt;br /&gt;
  · FalseE:     False ⟹ P&lt;br /&gt;
  · notE:       ⟦¬P; P⟧ ⟹ R&lt;br /&gt;
  · notI:       (P ⟹ False) ⟹ ¬P&lt;br /&gt;
  · iffI:       ⟦P ⟹ Q; Q ⟹ P⟧ ⟹ P = Q&lt;br /&gt;
  · iffD1:      ⟦Q = P; Q⟧ ⟹ P &lt;br /&gt;
  · iffD2:      ⟦P = Q; Q⟧ ⟹ P&lt;br /&gt;
  · ccontr:     (¬P ⟹ False) ⟹ P&lt;br /&gt;
  . excluded_middle:(¬P ∨ P) &lt;br /&gt;
&lt;br /&gt;
  · allE:       ⟦∀x. P x; P x ⟹ R⟧ ⟹ R&lt;br /&gt;
  · allI:       (⋀x. P x) ⟹ ∀x. P x&lt;br /&gt;
  · exI:        P x ⟹ ∃x. P x&lt;br /&gt;
  · exE:        ⟦∃x. P x; ⋀x. P x ⟹ Q⟧ ⟹ Q&lt;br /&gt;
&lt;br /&gt;
  · refl:       t = t&lt;br /&gt;
  · subst:      ⟦s = t; P s⟧ ⟹ P t&lt;br /&gt;
  · trans:      ⟦r = s; s = t⟧ ⟹ r = t&lt;br /&gt;
  · sym:        s = t ⟹ t = s&lt;br /&gt;
  · not_sym:    t ≠ s ⟹ s ≠ t&lt;br /&gt;
  · ssubst:     ⟦t = s; P s⟧ ⟹ P t&lt;br /&gt;
  · box_equals: ⟦a = b; a = c; b = d⟧ ⟹ a: = d&lt;br /&gt;
  · arg_cong:   x = y ⟹ f x = f y&lt;br /&gt;
  · fun_cong:   f = g ⟹ f x = g x&lt;br /&gt;
  · cong:       ⟦f = g; x = y⟧ ⟹ f x = g y&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Se usarán las reglas notnotI y mt que demostramos a continuación.&lt;br /&gt;
  *}&lt;br /&gt;
&lt;br /&gt;
lemma notnotI: &amp;quot;P ⟹ ¬¬ P&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
lemma mt: &amp;quot;⟦F ⟶ G; ¬G⟧ ⟹ ¬F&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
lemma Ejercicio5:&lt;br /&gt;
  shows &amp;quot;(∃x. ∀y. ¬(P(y) ⟶ R(x,y)))  ⟶ ¬(∀x. P(x) ⟶ R(x,x))&amp;quot;&lt;br /&gt;
proof (rule impI)&lt;br /&gt;
  assume &amp;quot;∃x. ∀y. ¬(P(y) ⟶ R(x,y))&amp;quot;&lt;br /&gt;
  then obtain a where &amp;quot;∀y. ¬(P(y) ⟶ R(a,y))&amp;quot; by (rule exE)&lt;br /&gt;
  show &amp;quot;¬(∀x. P(x) ⟶ R(x,x))&amp;quot;&lt;br /&gt;
  proof (rule notI)&lt;br /&gt;
     assume &amp;quot;∀x. P(x) ⟶ R(x,x)&amp;quot;&lt;br /&gt;
     then have &amp;quot;P(a) ⟶ R(a,a)&amp;quot; by (rule allE)&lt;br /&gt;
     have &amp;quot;¬(P(a) ⟶ R(a,a))&amp;quot; using `∀y. ¬(P(y) ⟶ R(a,y))` by (rule allE)&lt;br /&gt;
     then show False using `P(a) ⟶ R(a,a)` by (rule notE)&lt;br /&gt;
  qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Ejercicio_5_(b)&amp;diff=344</id>
		<title>Ejercicio 5 (b)</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Ejercicio_5_(b)&amp;diff=344"/>
		<updated>2018-07-16T12:27:08Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang=&amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* Examen de Lógica Matemática y Fundamentos (6 de abril de 2015) *}&lt;br /&gt;
&lt;br /&gt;
theory e5_2_sol&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Apellidos:&lt;br /&gt;
  Nombre: &lt;br /&gt;
*} &lt;br /&gt;
&lt;br /&gt;
text {* Sustituye la palabra uvus por tu usuario de la Universidad de&lt;br /&gt;
  Sevilla y graba el fichero con dicho usuario .thy&lt;br /&gt;
*} &lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Demostrar o refutar los siguientes lemas usando sólo las reglas&lt;br /&gt;
  básicas de deducción natural de la lógica proposicional, de los&lt;br /&gt;
  cuantificadores y de la igualdad: &lt;br /&gt;
  · conjI:      ⟦P; Q⟧ ⟹ P ∧ Q&lt;br /&gt;
  · conjunct1:  P ∧ Q ⟹ P&lt;br /&gt;
  · conjunct2:  P ∧ Q ⟹ Q  &lt;br /&gt;
  · notnotD:    ¬¬ P ⟹ P&lt;br /&gt;
  · mp:         ⟦P ⟶ Q; P⟧ ⟹ Q &lt;br /&gt;
  · impI:       (P ⟹ Q) ⟹ P ⟶ Q&lt;br /&gt;
  · disjI1:     P ⟹ P ∨ Q&lt;br /&gt;
  · disjI2:     Q ⟹ P ∨ Q&lt;br /&gt;
  · disjE:      ⟦P ∨ Q; P ⟹ R; Q ⟹ R⟧ ⟹ R &lt;br /&gt;
  · FalseE:     False ⟹ P&lt;br /&gt;
  · notE:       ⟦¬P; P⟧ ⟹ R&lt;br /&gt;
  · notI:       (P ⟹ False) ⟹ ¬P&lt;br /&gt;
  · iffI:       ⟦P ⟹ Q; Q ⟹ P⟧ ⟹ P = Q&lt;br /&gt;
  · iffD1:      ⟦Q = P; Q⟧ ⟹ P &lt;br /&gt;
  · iffD2:      ⟦P = Q; Q⟧ ⟹ P&lt;br /&gt;
  · ccontr:     (¬P ⟹ False) ⟹ P&lt;br /&gt;
  . excluded_middle:(¬P ∨ P) &lt;br /&gt;
&lt;br /&gt;
  · allE:       ⟦∀x. P x; P x ⟹ R⟧ ⟹ R&lt;br /&gt;
  · allI:       (⋀x. P x) ⟹ ∀x. P x&lt;br /&gt;
  · exI:        P x ⟹ ∃x. P x&lt;br /&gt;
  · exE:        ⟦∃x. P x; ⋀x. P x ⟹ Q⟧ ⟹ Q&lt;br /&gt;
&lt;br /&gt;
  · refl:       t = t&lt;br /&gt;
  · subst:      ⟦s = t; P s⟧ ⟹ P t&lt;br /&gt;
  · trans:      ⟦r = s; s = t⟧ ⟹ r = t&lt;br /&gt;
  · sym:        s = t ⟹ t = s&lt;br /&gt;
  · not_sym:    t ≠ s ⟹ s ≠ t&lt;br /&gt;
  · ssubst:     ⟦t = s; P s⟧ ⟹ P t&lt;br /&gt;
  · box_equals: ⟦a = b; a = c; b = d⟧ ⟹ a: = d&lt;br /&gt;
  · arg_cong:   x = y ⟹ f x = f y&lt;br /&gt;
  · fun_cong:   f = g ⟹ f x = g x&lt;br /&gt;
  · cong:       ⟦f = g; x = y⟧ ⟹ f x = g y&lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Se usarán las reglas notnotI y mt que demostramos a continuación.&lt;br /&gt;
  *}&lt;br /&gt;
&lt;br /&gt;
lemma notnotI: &amp;quot;P ⟹ ¬¬ P&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
lemma mt: &amp;quot;⟦F ⟶ G; ¬G⟧ ⟹ ¬F&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
lemma Ejercicio5: &lt;br /&gt;
  shows &amp;quot;(∀x. P(x) ⟶ R(x,x)) ⟶ (∀x. ∃y. R(x,y) ∨ ¬P(y))&amp;quot;&lt;br /&gt;
proof (rule impI)&lt;br /&gt;
  assume &amp;quot;∀x. P(x) ⟶ R(x,x)&amp;quot;&lt;br /&gt;
  show &amp;quot;∀x. ∃y. R(x,y) ∨ ¬P(y)&amp;quot;&lt;br /&gt;
  proof (rule allI)&lt;br /&gt;
    fix a&lt;br /&gt;
    have &amp;quot;¬P(a) ∨ P(a)&amp;quot; ..&lt;br /&gt;
    then show &amp;quot;∃y. R(a,y) ∨ ¬P(y)&amp;quot;&lt;br /&gt;
    proof (rule disjE)&lt;br /&gt;
      assume &amp;quot;¬P(a)&amp;quot;&lt;br /&gt;
      then have &amp;quot;R(a,a) ∨ ¬P(a)&amp;quot; by (rule disjI2)&lt;br /&gt;
      then show &amp;quot;∃y. R(a,y) ∨ ¬P(y)&amp;quot; by (rule exI)&lt;br /&gt;
    next&lt;br /&gt;
      assume &amp;quot;P(a)&amp;quot;  &lt;br /&gt;
      have &amp;quot;P(a) ⟶ R(a,a)&amp;quot; using `∀x. P(x) ⟶ R(x,x)` by (rule allE)&lt;br /&gt;
      then have &amp;quot;R(a,a)&amp;quot; using `P(a)` by (rule mp)&lt;br /&gt;
      then have &amp;quot;R(a,a) ∨ ¬P(a)&amp;quot; by (rule disjI1)&lt;br /&gt;
      then show &amp;quot;∃y. R(a,y) ∨ ¬P(y)&amp;quot; by (rule exI)&lt;br /&gt;
    qed &lt;br /&gt;
  qed&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=R14&amp;diff=345</id>
		<title>R14</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=R14&amp;diff=345"/>
		<updated>2018-07-16T12:27:08Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang = &amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* R14: Argumentación y Deducción natural en lógica de primer orden *}&lt;br /&gt;
&lt;br /&gt;
theory R14&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* Ej. 1: Existe un hombre al que todos desprecian. &lt;br /&gt;
   (a) Demostrar que existe al menos un hombre que se desprecia a sí mismo. &lt;br /&gt;
   (b) ¿La conclusión sería cierta en el caso de que sólo supiéramos que &lt;br /&gt;
       existe un hombre al que algunos desprecian? &lt;br /&gt;
&lt;br /&gt;
  Simbología: H(x): x es hombre, D(x,y): x desprecia a y. *}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* Ej. 2: Si todas las medicinas están contaminadas, entonces todos los&lt;br /&gt;
  técnicos negligentes son unos bribones. Si hay medicinas contaminadas,&lt;br /&gt;
  entonces todas las medicinas están contaminadas y son peligrosas. Todos los&lt;br /&gt;
  germicidas son medicinas. Sólo los negligentes son distraídos. &lt;br /&gt;
  (a) Demostrar que si cualquier técnico es distraído y si algunos germicidas &lt;br /&gt;
      están contaminados, los técnicos son bribones. &lt;br /&gt;
  (b) ¿Podemos asegurar lo mismo en el caso de que sólo supiéramos que hay&lt;br /&gt;
      técnicos distraídos?&lt;br /&gt;
&lt;br /&gt;
  Simbología: M(x): x es medicina. C(x): x está contaminada, &lt;br /&gt;
              T(x): x es técnico, N(x): x es un negligente, &lt;br /&gt;
              B(x): x es un bribón, G(x): x es germicida, &lt;br /&gt;
              D(x): x es distraído. *}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* Ej. 3: Ningún individuo que sea candidato será derrotado si hace una&lt;br /&gt;
  buena campaña. Todo individuo que se postula es un candidato. Cualquier&lt;br /&gt;
  candidato que no sea derrotado, será elegido. Todo individuo que sea elegido&lt;br /&gt;
  hace una buena campaña.&lt;br /&gt;
  (a) Demostrar que todo individuo que se postula será elegido si y&lt;br /&gt;
      sólo si hace una buena campaña. &lt;br /&gt;
  (b) Si algún individuo se postula, ¿habrá candidatos que no sean&lt;br /&gt;
      elegidos?&lt;br /&gt;
&lt;br /&gt;
  Simbología: I(x): x es individuo, C(x): x es candidato,&lt;br /&gt;
              D(x): x es derrotado, B(x): x hace una buena campaña, &lt;br /&gt;
              P(x): x se postula, E(x): x es elegido. *}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* Ej. 27: Todo ejecutivo que sea poeta es un hombre&lt;br /&gt;
  imaginativo. Todo hombre imaginativo es amante del riesgo. Si todo&lt;br /&gt;
  amante del riesgo no es poeta, entonces, ningún poeta es amante del&lt;br /&gt;
  riesgo. &lt;br /&gt;
  (a) Demostrar que si todo hombre imaginativo no es poeta, entonces, &lt;br /&gt;
      ningún ejecutivo es poeta. &lt;br /&gt;
  (b) ¿Es cierto el recíproco?&lt;br /&gt;
&lt;br /&gt;
  Simbología: E(x): x es ejecutivo, P(x): x es poeta, I(x): x es imaginativo, &lt;br /&gt;
  R(x): x es amante del riesgo. *}&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Rel_3&amp;diff=346</id>
		<title>Rel 3</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=Rel_3&amp;diff=346"/>
		<updated>2018-07-16T12:27:08Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Texto reemplazado: «isar» por «isabelle»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;source lang = &amp;quot;isabelle&amp;quot;&amp;gt;&lt;br /&gt;
header {* R3: Deducción natural proposicional *}&lt;br /&gt;
&lt;br /&gt;
theory R3&lt;br /&gt;
imports Main &lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  --------------------------------------------------------------------- &lt;br /&gt;
  El objetivo de esta relación es demostrar cada uno de los ejercicios&lt;br /&gt;
  usando sólo las reglas básicas de deducción natural de la lógica&lt;br /&gt;
  proposicional (sin usar el método auto).&lt;br /&gt;
&lt;br /&gt;
  Las reglas básicas de la deducción natural son las siguientes:&lt;br /&gt;
  · conjI:      ⟦P; Q⟧ ⟹ P ∧ Q&lt;br /&gt;
  · conjunct1:  P ∧ Q ⟹ P&lt;br /&gt;
  · conjunct2:  P ∧ Q ⟹ Q  &lt;br /&gt;
  · notnotD:    ¬¬ P ⟹ P&lt;br /&gt;
  · notnotI:    P ⟹ ¬¬ P&lt;br /&gt;
  · mp:         ⟦P ⟶ Q; P⟧ ⟹ Q &lt;br /&gt;
  · mt:         ⟦F ⟶ G; ¬G⟧ ⟹ ¬F &lt;br /&gt;
  · impI:       (P ⟹ Q) ⟹ P ⟶ Q&lt;br /&gt;
  · disjI1:     P ⟹ P ∨ Q&lt;br /&gt;
  · disjI2:     Q ⟹ P ∨ Q&lt;br /&gt;
  · disjE:      ⟦P ∨ Q; P ⟹ R; Q ⟹ R⟧ ⟹ R &lt;br /&gt;
  · FalseE:     False ⟹ P&lt;br /&gt;
  · notE:       ⟦¬P; P⟧ ⟹ R&lt;br /&gt;
  · notI:       (P ⟹ False) ⟹ ¬P&lt;br /&gt;
  · iffI:       ⟦P ⟹ Q; Q ⟹ P⟧ ⟹ P = Q&lt;br /&gt;
  · iffD1:      ⟦Q = P; Q⟧ ⟹ P &lt;br /&gt;
  · iffD2:      ⟦P = Q; Q⟧ ⟹ P&lt;br /&gt;
  · ccontr:     (¬P ⟹ False) ⟹ P&lt;br /&gt;
  --------------------------------------------------------------------- &lt;br /&gt;
*}&lt;br /&gt;
&lt;br /&gt;
text {*&lt;br /&gt;
  Se usarán las reglas notnotI y mt que demostramos a continuación. *}&lt;br /&gt;
&lt;br /&gt;
lemma notnotI: &amp;quot;P ⟹ ¬¬ P&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
lemma mt: &amp;quot;⟦F ⟶ G; ¬G⟧ ⟹ ¬F&amp;quot;&lt;br /&gt;
by auto&lt;br /&gt;
&lt;br /&gt;
section {* Implicaciones *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 1. Demostrar&lt;br /&gt;
       p ⟶ q, p ⊢ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_1:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;p&amp;quot;&lt;br /&gt;
  shows &amp;quot;q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 2. Demostrar&lt;br /&gt;
     p ⟶ q, q ⟶ r, p ⊢ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_2:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;q ⟶ r&amp;quot;&lt;br /&gt;
          &amp;quot;p&amp;quot; &lt;br /&gt;
  shows &amp;quot;r&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 3. Demostrar&lt;br /&gt;
     p ⟶ (q ⟶ r), p ⟶ q, p ⊢ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_3:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ r)&amp;quot;&lt;br /&gt;
          &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;p&amp;quot;&lt;br /&gt;
  shows &amp;quot;r&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 4. Demostrar&lt;br /&gt;
     p ⟶ q, q ⟶ r ⊢ p ⟶ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_4:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
          &amp;quot;q ⟶ r&amp;quot; &lt;br /&gt;
  shows &amp;quot;p ⟶ r&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 5. Demostrar&lt;br /&gt;
     p ⟶ (q ⟶ r) ⊢ q ⟶ (p ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_5:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q ⟶ (p ⟶ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 6. Demostrar&lt;br /&gt;
     p ⟶ (q ⟶ r) ⊢ (p ⟶ q) ⟶ (p ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_6:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ⟶ q) ⟶ (p ⟶ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 7. Demostrar&lt;br /&gt;
     p ⊢ q ⟶ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_7:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot;  &lt;br /&gt;
  shows   &amp;quot;q ⟶ p&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 8. Demostrar&lt;br /&gt;
     ⊢ p ⟶ (q ⟶ p)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_8:&lt;br /&gt;
  &amp;quot;p ⟶ (q ⟶ p)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 9. Demostrar&lt;br /&gt;
     p ⟶ q ⊢ (q ⟶ r) ⟶ (p ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_9:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(q ⟶ r) ⟶ (p ⟶ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 10. Demostrar&lt;br /&gt;
     p ⟶ (q ⟶ (r ⟶ s)) ⊢ r ⟶ (q ⟶ (p ⟶ s))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_10:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ (r ⟶ s))&amp;quot; &lt;br /&gt;
  shows   &amp;quot;r ⟶ (q ⟶ (p ⟶ s))&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 11. Demostrar&lt;br /&gt;
     ⊢ (p ⟶ (q ⟶ r)) ⟶ ((p ⟶ q) ⟶ (p ⟶ r))&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_11:&lt;br /&gt;
  &amp;quot;(p ⟶ (q ⟶ r)) ⟶ ((p ⟶ q) ⟶ (p ⟶ r))&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 12. Demostrar&lt;br /&gt;
     (p ⟶ q) ⟶ r ⊢ p ⟶ (q ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_12:&lt;br /&gt;
  assumes &amp;quot;(p ⟶ q) ⟶ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ⟶ (q ⟶ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
section {* Conjunciones *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 13. Demostrar&lt;br /&gt;
     p, q ⊢  p ∧ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_13:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot;&lt;br /&gt;
          &amp;quot;q&amp;quot; &lt;br /&gt;
  shows &amp;quot;p ∧ q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 14. Demostrar&lt;br /&gt;
     p ∧ q ⊢ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_14:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot;  &lt;br /&gt;
  shows   &amp;quot;p&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 15. Demostrar&lt;br /&gt;
     p ∧ q ⊢ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_15:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 16. Demostrar&lt;br /&gt;
     p ∧ (q ∧ r) ⊢ (p ∧ q) ∧ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_16:&lt;br /&gt;
  assumes &amp;quot;p ∧ (q ∧ r)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;(p ∧ q) ∧ r&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 17. Demostrar&lt;br /&gt;
     (p ∧ q) ∧ r ⊢ p ∧ (q ∧ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_17:&lt;br /&gt;
  assumes &amp;quot;(p ∧ q) ∧ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∧ (q ∧ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 18. Demostrar&lt;br /&gt;
     p ∧ q ⊢ p ⟶ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_18:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 19. Demostrar&lt;br /&gt;
     (p ⟶ q) ∧ (p ⟶ r) ⊢ p ⟶ q ∧ r   &lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_19:&lt;br /&gt;
  assumes &amp;quot;(p ⟶ q) ∧ (p ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ⟶ q ∧ r&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 20. Demostrar&lt;br /&gt;
     p ⟶ q ∧ r ⊢ (p ⟶ q) ∧ (p ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_20:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q ∧ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ⟶ q) ∧ (p ⟶ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 21. Demostrar&lt;br /&gt;
     p ⟶ (q ⟶ r) ⊢ p ∧ q ⟶ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_21:&lt;br /&gt;
  assumes &amp;quot;p ⟶ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∧ q ⟶ r&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 22. Demostrar&lt;br /&gt;
     p ∧ q ⟶ r ⊢ p ⟶ (q ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_22:&lt;br /&gt;
  assumes &amp;quot;p ∧ q ⟶ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ⟶ (q ⟶ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 23. Demostrar&lt;br /&gt;
     (p ⟶ q) ⟶ r ⊢ p ∧ q ⟶ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_23:&lt;br /&gt;
  assumes &amp;quot;(p ⟶ q) ⟶ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∧ q ⟶ r&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 24. Demostrar&lt;br /&gt;
     p ∧ (q ⟶ r) ⊢ (p ⟶ q) ⟶ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_24:&lt;br /&gt;
  assumes &amp;quot;p ∧ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ⟶ q) ⟶ r&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
section {* Disyunciones *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 25. Demostrar&lt;br /&gt;
     p ⊢ p ∨ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_25:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 26. Demostrar&lt;br /&gt;
     q ⊢ p ∨ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_26:&lt;br /&gt;
  assumes &amp;quot;q&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 27. Demostrar&lt;br /&gt;
     p ∨ q ⊢ q ∨ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_27:&lt;br /&gt;
  assumes &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
  shows   &amp;quot;q ∨ p&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 28. Demostrar&lt;br /&gt;
     q ⟶ r ⊢ p ∨ q ⟶ p ∨ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_28:&lt;br /&gt;
  assumes &amp;quot;q ⟶ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∨ q ⟶ p ∨ r&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 29. Demostrar&lt;br /&gt;
     p ∨ p ⊢ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_29:&lt;br /&gt;
  assumes &amp;quot;p ∨ p&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 30. Demostrar&lt;br /&gt;
     p ⊢ p ∨ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_30:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∨ p&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 31. Demostrar&lt;br /&gt;
     p ∨ (q ∨ r) ⊢ (p ∨ q) ∨ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_31:&lt;br /&gt;
  assumes &amp;quot;p ∨ (q ∨ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ∨ q) ∨ r&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 32. Demostrar&lt;br /&gt;
     (p ∨ q) ∨ r ⊢ p ∨ (q ∨ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_32:&lt;br /&gt;
  assumes &amp;quot;(p ∨ q) ∨ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∨ (q ∨ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 33. Demostrar&lt;br /&gt;
     p ∧ (q ∨ r) ⊢ (p ∧ q) ∨ (p ∧ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_33:&lt;br /&gt;
  assumes &amp;quot;p ∧ (q ∨ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 34. Demostrar&lt;br /&gt;
     (p ∧ q) ∨ (p ∧ r) ⊢ p ∧ (q ∨ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_34:&lt;br /&gt;
  assumes &amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∧ (q ∨ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 35. Demostrar&lt;br /&gt;
     p ∨ (q ∧ r) ⊢ (p ∨ q) ∧ (p ∨ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_35:&lt;br /&gt;
  assumes &amp;quot;p ∨ (q ∧ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ∨ q) ∧ (p ∨ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 36. Demostrar&lt;br /&gt;
     (p ∨ q) ∧ (p ∨ r) ⊢ p ∨ (q ∧ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_36:&lt;br /&gt;
  assumes &amp;quot;(p ∨ q) ∧ (p ∨ r)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p ∨ (q ∧ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 37. Demostrar&lt;br /&gt;
     (p ⟶ r) ∧ (q ⟶ r) ⊢ p ∨ q ⟶ r&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_37:&lt;br /&gt;
  assumes &amp;quot;(p ⟶ r) ∧ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∨ q ⟶ r&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 38. Demostrar&lt;br /&gt;
     p ∨ q ⟶ r ⊢ (p ⟶ r) ∧ (q ⟶ r)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_38:&lt;br /&gt;
  assumes &amp;quot;p ∨ q ⟶ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ⟶ r) ∧ (q ⟶ r)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
section {* Negaciones *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 39. Demostrar&lt;br /&gt;
     p ⊢ ¬¬p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_39:&lt;br /&gt;
  assumes &amp;quot;p&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬¬p&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 40. Demostrar&lt;br /&gt;
     ¬p ⊢ p ⟶ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_40:&lt;br /&gt;
  assumes &amp;quot;¬p&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 41. Demostrar&lt;br /&gt;
     p ⟶ q ⊢ ¬q ⟶ ¬p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_41:&lt;br /&gt;
  assumes &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬q ⟶ ¬p&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 42. Demostrar&lt;br /&gt;
     p∨q, ¬q ⊢ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_42:&lt;br /&gt;
  assumes &amp;quot;p∨q&amp;quot;&lt;br /&gt;
          &amp;quot;¬q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 42. Demostrar&lt;br /&gt;
     p ∨ q, ¬p ⊢ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_43:&lt;br /&gt;
  assumes &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
          &amp;quot;¬p&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 40. Demostrar&lt;br /&gt;
     p ∨ q ⊢ ¬(¬p ∧ ¬q)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_44:&lt;br /&gt;
  assumes &amp;quot;p ∨ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬(¬p ∧ ¬q)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 45. Demostrar&lt;br /&gt;
     p ∧ q ⊢ ¬(¬p ∨ ¬q)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_45:&lt;br /&gt;
  assumes &amp;quot;p ∧ q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬(¬p ∨ ¬q)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 46. Demostrar&lt;br /&gt;
     ¬(p ∨ q) ⊢ ¬p ∧ ¬q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_46:&lt;br /&gt;
  assumes &amp;quot;¬(p ∨ q)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬p ∧ ¬q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 47. Demostrar&lt;br /&gt;
     ¬p ∧ ¬q ⊢ ¬(p ∨ q)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_47:&lt;br /&gt;
  assumes &amp;quot;¬p ∧ ¬q&amp;quot; &lt;br /&gt;
  shows   &amp;quot;¬(p ∨ q)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 48. Demostrar&lt;br /&gt;
     ¬p ∨ ¬q ⊢ ¬(p ∧ q)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_48:&lt;br /&gt;
  assumes &amp;quot;¬p ∨ ¬q&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬(p ∧ q)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 49. Demostrar&lt;br /&gt;
     ⊢ ¬(p ∧ ¬p)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_49:&lt;br /&gt;
  &amp;quot;¬(p ∧ ¬p)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 50. Demostrar&lt;br /&gt;
     p ∧ ¬p ⊢ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_50:&lt;br /&gt;
  assumes &amp;quot;p ∧ ¬p&amp;quot; &lt;br /&gt;
  shows   &amp;quot;q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 51. Demostrar&lt;br /&gt;
     ¬¬p ⊢ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_51:&lt;br /&gt;
  assumes &amp;quot;¬¬p&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 52. Demostrar&lt;br /&gt;
     ⊢ p ∨ ¬p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_52:&lt;br /&gt;
  &amp;quot;p ∨ ¬p&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 53. Demostrar&lt;br /&gt;
     ⊢ ((p ⟶ q) ⟶ p) ⟶ p&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_53:&lt;br /&gt;
  &amp;quot;((p ⟶ q) ⟶ p) ⟶ p&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 54. Demostrar&lt;br /&gt;
     ¬q ⟶ ¬p ⊢ p ⟶ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_54:&lt;br /&gt;
  assumes &amp;quot;¬q ⟶ ¬p&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 55. Demostrar&lt;br /&gt;
     ¬(¬p ∧ ¬q) ⊢ p ∨ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_55:&lt;br /&gt;
  assumes &amp;quot;¬(¬p ∧ ¬q)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 56. Demostrar&lt;br /&gt;
     ¬(¬p ∨ ¬q) ⊢ p ∧ q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_56:&lt;br /&gt;
  assumes &amp;quot;¬(¬p ∨ ¬q)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∧ q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 57. Demostrar&lt;br /&gt;
     ¬(p ∧ q) ⊢ ¬p ∨ ¬q&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_57:&lt;br /&gt;
  assumes &amp;quot;¬(p ∧ q)&amp;quot;&lt;br /&gt;
  shows   &amp;quot;¬p ∨ ¬q&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 58. Demostrar&lt;br /&gt;
     ⊢ (p ⟶ q) ∨ (q ⟶ p)&lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_58:&lt;br /&gt;
  &amp;quot;(p ⟶ q) ∨ (q ⟶ p)&amp;quot;&lt;br /&gt;
oops&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=MediaWiki:Common.css&amp;diff=342</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=MediaWiki:Common.css&amp;diff=342"/>
		<updated>2018-07-16T12:26:16Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Página creada con «/* Los estilos CSS colocados aquí se aplicarán a todas las apariencias */ @import url(&amp;quot;/~jalonso/font-awesome-4.7.0/css/font-awesome.min.css&amp;quot;);»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Los estilos CSS colocados aquí se aplicarán a todas las apariencias */&lt;br /&gt;
@import url(&amp;quot;/~jalonso/font-awesome-4.7.0/css/font-awesome.min.css&amp;quot;);&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=L%C3%B3gica_matem%C3%A1tica_y_fundamentos_(2014-15)&amp;diff=4</id>
		<title>Lógica matemática y fundamentos (2014-15)</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=L%C3%B3gica_matem%C3%A1tica_y_fundamentos_(2014-15)&amp;diff=4"/>
		<updated>2015-02-07T11:11:45Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Página creada con &amp;#039;== Relaciones de ejercicios == En esta página se publicarán las relaciones de ejercicios y sus soluciones colaborativas.&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Relaciones de ejercicios ==&lt;br /&gt;
En esta página se publicarán las relaciones de ejercicios y sus soluciones colaborativas.&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=MediaWiki:Mainpage&amp;diff=3</id>
		<title>MediaWiki:Mainpage</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=MediaWiki:Mainpage&amp;diff=3"/>
		<updated>2015-02-07T11:10:30Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Página creada con &amp;#039;Lógica matemática y fundamentos (2014-15)&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Lógica matemática y fundamentos (2014-15)&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2015/index.php?title=MediaWiki:Sidebar&amp;diff=2</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2015/index.php?title=MediaWiki:Sidebar&amp;diff=2"/>
		<updated>2015-02-07T11:09:42Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Página creada con &amp;#039;* navigation ** mainpage|mainpage-description ** recentchanges-url|recentchanges * SEARCH * TOOLBOX * LANGUAGES&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* navigation&lt;br /&gt;
** mainpage|mainpage-description&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
</feed>