<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>https://www.glc.us.es/~jalonso/LMF2016/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=WikiSysop</id>
	<title>Lógica Matemática y fundamentos (2015-16) - Contribuciones del usuario [es]</title>
	<link rel="self" type="application/atom+xml" href="https://www.glc.us.es/~jalonso/LMF2016/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=WikiSysop"/>
	<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2016/index.php/Especial:Contribuciones/WikiSysop"/>
	<updated>2026-07-18T13:56:54Z</updated>
	<subtitle>Contribuciones del usuario</subtitle>
	<generator>MediaWiki 1.31.14</generator>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2016/index.php?title=Relaci%C3%B3n_5&amp;diff=245</id>
		<title>Relación 5</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2016/index.php?title=Relaci%C3%B3n_5&amp;diff=245"/>
		<updated>2018-07-16T12:41: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 {* R5: Argumentación en lógica de primer orden *}&lt;br /&gt;
&lt;br /&gt;
theory R5&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;
  Una vez formalizadas, probar que el razonamiento es correcto, o refutarlo&lt;br /&gt;
  mediante un contraejemplo. &lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 1. 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;
lemma ejercicio1&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 2. 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 ejercicio2:&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;
quickcheck&lt;br /&gt;
oops&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 3. 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;
lemma ejercicio_3:&lt;br /&gt;
 assumes &amp;quot;∀x. (A x ∧ G x ⟶ V x ∧ L 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;
proof-&lt;br /&gt;
obtain b where 1 : &amp;quot;A b ∧ V b ∧ ¬L b&amp;quot; using assms(2) by (rule exE)&lt;br /&gt;
have 2 : &amp;quot;A b ∧ G b ⟶ V b ∧ L b&amp;quot; using assms(1) by (rule allE)&lt;br /&gt;
{assume 3 : &amp;quot;G b&amp;quot;&lt;br /&gt;
have 4 : &amp;quot;A b&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
have 5 : &amp;quot;A b ∧ G b&amp;quot; using 4 3 by (rule conjI)&lt;br /&gt;
have 6 : &amp;quot;V b ∧ L b&amp;quot; using 2 5 by (rule mp)&lt;br /&gt;
have 7 : &amp;quot;L b&amp;quot; using 6 by (rule conjunct2)&lt;br /&gt;
have 8 : &amp;quot;V b ∧ ¬L b&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
have 9 : &amp;quot;¬L b&amp;quot; using 8 by (rule conjunct2)&lt;br /&gt;
have &amp;quot;False&amp;quot; using 9 7 by (rule notE)}&lt;br /&gt;
hence 10 : &amp;quot;¬G b&amp;quot; by (rule notI)&lt;br /&gt;
have 11 : &amp;quot;A b&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
have 12 : &amp;quot;A b ∧ ¬G b&amp;quot; using 11 10 by (rule conjI)&lt;br /&gt;
show &amp;quot;∃x. (A x ∧ ¬G x)&amp;quot; using 12 by (rule exI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 4. 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;
lemma ejercicio_4:&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;
proof-&lt;br /&gt;
{assume 1 : &amp;quot;R b&amp;quot;&lt;br /&gt;
have 2 : &amp;quot;∀y. R b ∧ A y ⟶ Ob b y&amp;quot; using assms(1) by (rule allE)&lt;br /&gt;
have 3 : &amp;quot;R b ∧ A a ⟶ Ob b a&amp;quot; using 2 by (rule allE)&lt;br /&gt;
have 4 : &amp;quot;R b ∧ A a&amp;quot; using 1 assms(2) by (rule conjI)&lt;br /&gt;
have 5 : &amp;quot;Ob b a&amp;quot; using 3  4 by (rule mp)&lt;br /&gt;
have &amp;quot;False&amp;quot; using assms(3) 5 by (rule notE)}&lt;br /&gt;
thus &amp;quot;¬R b&amp;quot; by (rule notI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 5. 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;
lemma ejercicio_5:&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;
proof-&lt;br /&gt;
{assume 1 : &amp;quot;P a&amp;quot;&lt;br /&gt;
 {assume 2 : &amp;quot;¬Q a&amp;quot;&lt;br /&gt;
  have 3 : &amp;quot;P a ∧ ¬Q a ⟶ R a&amp;quot; using assms(2) by (rule allE)&lt;br /&gt;
  have 4 : &amp;quot;P a ∧ ¬Q a&amp;quot; using 1 2 by (rule conjI)&lt;br /&gt;
  have 5 : &amp;quot;R a&amp;quot; using 3 4 by (rule mp)&lt;br /&gt;
  have 6 : &amp;quot;P a ∧ R a&amp;quot; using 1 5 by (rule conjI)&lt;br /&gt;
  have 7 : &amp;quot;∃x. P x ∧ R x&amp;quot; using 6 by (rule exI)&lt;br /&gt;
  have &amp;quot;False&amp;quot; using assms(1) 7 by (rule notE)}&lt;br /&gt;
hence &amp;quot;Q a&amp;quot; by (rule ccontr)}&lt;br /&gt;
thus &amp;quot;P a ⟶ Q a&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 6. 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;
lemma ejercicio6&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 7. 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 ejercicio7:&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;
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;
section {* Ejercicios con igualdad *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 8. 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 9. 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;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 10. 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;
&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/LMF2016/index.php?title=Rel_5&amp;diff=243</id>
		<title>Rel 5</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2016/index.php?title=Rel_5&amp;diff=243"/>
		<updated>2018-07-16T12:41:07Z</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&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;
  Una vez formalizadas, probar que el razonamiento es correcto, o refutarlo&lt;br /&gt;
  mediante un contraejemplo. &lt;br /&gt;
  ------------------------------------------------------------------ *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 1. 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 2. 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 3. 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 4. 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;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 5. 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 6. 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;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 7. 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;
&lt;br /&gt;
section {* Ejercicios con igualdad *}&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 8. 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 9. 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;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 10. 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;
&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/LMF2016/index.php?title=Relaci%C3%B3n_4&amp;diff=244</id>
		<title>Relación 4</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2016/index.php?title=Relaci%C3%B3n_4&amp;diff=244"/>
		<updated>2018-07-16T12:41:07Z</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 1: &amp;quot;∀x. P x&amp;quot; &lt;br /&gt;
    show &amp;quot;∀x. Q x&amp;quot;&lt;br /&gt;
     proof (rule allI)&lt;br /&gt;
     {fix a &lt;br /&gt;
      have 2: &amp;quot;P(a)&amp;quot; using 1 by (rule allE)&lt;br /&gt;
      have 3: &amp;quot;P(a)⟶Q(a)&amp;quot; using assms by (rule allE)&lt;br /&gt;
      show &amp;quot;Q a&amp;quot; using 3 2 by (rule mp)}&lt;br /&gt;
      qed&lt;br /&gt;
qed&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-&lt;br /&gt;
{assume 1 : &amp;quot;∀x. P x&amp;quot;&lt;br /&gt;
 {fix a &lt;br /&gt;
  have 2 : &amp;quot;P a&amp;quot; using 1 by (rule allE)&lt;br /&gt;
  have 3 : &amp;quot;P a ⟶ Q a&amp;quot; using assms by (rule allE)&lt;br /&gt;
  have 4 : &amp;quot;Q a&amp;quot; using 3 2 by (rule mp)}&lt;br /&gt;
hence 5 : &amp;quot;∀x. Q x&amp;quot; by (rule allI)}&lt;br /&gt;
thus &amp;quot;(∀x. P x) ⟶ (∀x. Q x)&amp;quot; by (rule impI)&lt;br /&gt;
qed&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;
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 1 : &amp;quot;∀x. P x&amp;quot;&lt;br /&gt;
 obtain a where 2 : &amp;quot;¬ (P a)&amp;quot; using assms by (rule exE)&lt;br /&gt;
 have 3 : &amp;quot;P a&amp;quot; using 1 by (rule allE)&lt;br /&gt;
 have 4 : &amp;quot;False&amp;quot; using 2 3 by (rule notE)}&lt;br /&gt;
thus &amp;quot;¬(∀x. P x)&amp;quot; by (rule notI)&lt;br /&gt;
qed&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;
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;
have 1 : &amp;quot;P a&amp;quot; using assms by (rule allE)}&lt;br /&gt;
thus &amp;quot;∀y. P y&amp;quot; by (rule allI)&lt;br /&gt;
qed&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;
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 1 : &amp;quot;∀x. ¬(Q x)&amp;quot;&lt;br /&gt;
 {fix a &lt;br /&gt;
  have 2 : &amp;quot;P a ⟶ Q a&amp;quot; using assms by (rule allE)&lt;br /&gt;
  have 3 : &amp;quot;¬(Q a)&amp;quot; using 1 by (rule allE)&lt;br /&gt;
  have 4 : &amp;quot;¬(P a)&amp;quot; using 2 3 by (rule mt)}&lt;br /&gt;
hence &amp;quot;∀x. ¬ (P x)&amp;quot; by (rule allI)}&lt;br /&gt;
thus &amp;quot;(∀x. ¬(Q x)) ⟶ (∀x. ¬ (P x))&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--*&lt;br /&gt;
proof(rule impI)&lt;br /&gt;
assume 1: &amp;quot;∀x. ¬(Q x)&amp;quot;&lt;br /&gt;
show &amp;quot;∀x. ¬(P x)&amp;quot;&lt;br /&gt;
 proof-&lt;br /&gt;
 {fix a&lt;br /&gt;
 have 2: &amp;quot;P a ⟶ Q a&amp;quot; using assms by ( rule allE)&lt;br /&gt;
 have 3: &amp;quot; ¬( Q a)&amp;quot; using 1 by ( rule allE)&lt;br /&gt;
 have 4: &amp;quot; ¬( P a)&amp;quot; using 2 3 by ( rule mt)}&lt;br /&gt;
 thus &amp;quot;∀x. ¬(P x)&amp;quot; by ( rule allI)&lt;br /&gt;
qed&lt;br /&gt;
qed&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;
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 1 : &amp;quot;∃x. P x ∧ Q x&amp;quot;&lt;br /&gt;
obtain a where 2 : &amp;quot;P a ∧ Q a&amp;quot; using 1 by (rule exE)&lt;br /&gt;
have 3 : &amp;quot;P a ⟶ ¬(Q a)&amp;quot; using assms by (rule allE)&lt;br /&gt;
have 4 : &amp;quot;P a&amp;quot; using 2 by (rule conjunct1)&lt;br /&gt;
have 5 : &amp;quot;Q a&amp;quot; using 2 by (rule conjunct2)&lt;br /&gt;
have 6 : &amp;quot;¬(Q a)&amp;quot; using 3 4 by (rule mp)&lt;br /&gt;
have 7 : &amp;quot;False&amp;quot; using 6 5 by (rule notE)}&lt;br /&gt;
thus &amp;quot;¬(∃x. P x ∧ Q x)&amp;quot; by (rule notI)&lt;br /&gt;
qed&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;
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;
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;
proof-&lt;br /&gt;
{fix a &lt;br /&gt;
 {fix b&lt;br /&gt;
  have 1 : &amp;quot; ∀y. P a y&amp;quot; using assms by (rule allE)&lt;br /&gt;
  have 2 : &amp;quot;P a b&amp;quot; using 1 by (rule allE)}&lt;br /&gt;
hence &amp;quot;∀v. P a v&amp;quot; by (rule allI)}&lt;br /&gt;
thus &amp;quot;∀u v. P u v&amp;quot; by (rule allI)&lt;br /&gt;
qed&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;
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;
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;
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;
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;
proof-&lt;br /&gt;
obtain a where 1 : &amp;quot;∀y. P a y&amp;quot; using assms by (rule exE)&lt;br /&gt;
 {fix b &lt;br /&gt;
  have 2 : &amp;quot;P a b&amp;quot; using 1 by (rule allE)&lt;br /&gt;
  have 3 : &amp;quot;∃x. P x b&amp;quot; using 2 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;
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;
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;
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;
proof-&lt;br /&gt;
{assume 1 : &amp;quot;P a&amp;quot;&lt;br /&gt;
obtain b where 2 : &amp;quot;P a ⟶ Q b&amp;quot; using assms by (rule exE)&lt;br /&gt;
have 3 : &amp;quot;Q b&amp;quot; using 2 1 by (rule mp)&lt;br /&gt;
have 4 : &amp;quot;∃x. Q x&amp;quot; using 3 by (rule exI)}&lt;br /&gt;
thus &amp;quot;P a ⟶ (∃x. Q x)&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 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;
proof-&lt;br /&gt;
have 1 : &amp;quot;¬(P a) ∨ P a&amp;quot; by (rule excluded_middle)&lt;br /&gt;
moreover&lt;br /&gt;
{assume 2 : &amp;quot;¬(P a)&amp;quot;&lt;br /&gt;
 {assume 3 : &amp;quot;P a&amp;quot;&lt;br /&gt;
 have 4 : &amp;quot;Q b&amp;quot; using 2 3 by (rule notE)}&lt;br /&gt;
hence 5 : &amp;quot;P a ⟶ Q b&amp;quot; by (rule impI)&lt;br /&gt;
have 6 : &amp;quot;∃x. P a ⟶ Q x&amp;quot; using 5  by (rule exI)}&lt;br /&gt;
moreover&lt;br /&gt;
{assume 7 : &amp;quot;P a&amp;quot;&lt;br /&gt;
have 8 : &amp;quot;∃x. Q x&amp;quot; using assms 7 by (rule mp)&lt;br /&gt;
obtain b where 9 : &amp;quot;Q b&amp;quot; using 8 by (rule exE)&lt;br /&gt;
 {assume 10 : &amp;quot;P a&amp;quot;&lt;br /&gt;
  have 11 : &amp;quot;Q b&amp;quot; using 9 by this}&lt;br /&gt;
hence 12 : &amp;quot;P a ⟶ Q b&amp;quot; by (rule impI)&lt;br /&gt;
have 13 : &amp;quot;∃x. P a ⟶ Q x&amp;quot; using 12  by (rule exI)}&lt;br /&gt;
ultimately show &amp;quot;∃x. P a ⟶ Q x&amp;quot; by (rule disjE)&lt;br /&gt;
qed&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;
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;
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;
proof-&lt;br /&gt;
{fix b&lt;br /&gt;
 {assume 1 : &amp;quot;P b&amp;quot;&lt;br /&gt;
  have 2 : &amp;quot;∃x. P x&amp;quot; using 1 by (rule exI)&lt;br /&gt;
  have 3 : &amp;quot;Q a&amp;quot; using assms 2 by (rule mp)}&lt;br /&gt;
hence &amp;quot;P b ⟶ Q a&amp;quot; by (rule impI) }&lt;br /&gt;
thus &amp;quot;∀x. P x ⟶ Q a&amp;quot; by (rule allI)&lt;br /&gt;
qed&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;
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;
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;
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;
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;
proof-&lt;br /&gt;
have &amp;quot;(∀x. P x) ∨ (∀x. Q x)&amp;quot; using assms by this&lt;br /&gt;
moreover&lt;br /&gt;
{assume 1 : &amp;quot;∀x. P x&amp;quot;&lt;br /&gt;
 {fix a&lt;br /&gt;
  have 2 :&amp;quot;P a&amp;quot; using 1 by (rule allE)&lt;br /&gt;
  have 3 : &amp;quot;P a ∨ Q a&amp;quot; using 2 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 4 : &amp;quot;∀x. Q x&amp;quot;&lt;br /&gt;
 {fix a&lt;br /&gt;
  have 5 :&amp;quot;Q a&amp;quot; using 4 by (rule allE)&lt;br /&gt;
  have 6 : &amp;quot;P a ∨ Q a&amp;quot; using 5 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;
qed&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;
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;
&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;
proof-&lt;br /&gt;
obtain a where 1 : &amp;quot;P a ∧ Q a&amp;quot; using assms by (rule exE)&lt;br /&gt;
have 2 : &amp;quot;P a&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
have 3 : &amp;quot;∃x. P x&amp;quot; using 2 by (rule exI)&lt;br /&gt;
have 4 : &amp;quot;Q a&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
have 5 : &amp;quot;∃x. Q x&amp;quot; using 4 by (rule exI)&lt;br /&gt;
show  &amp;quot;(∃x. P x) ∧ (∃x. Q x)&amp;quot; using 3 5 by (rule conjI)&lt;br /&gt;
qed&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;
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;
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;
proof-&lt;br /&gt;
{assume 1 : &amp;quot;∃y. P y&amp;quot;&lt;br /&gt;
 {fix a&lt;br /&gt;
  obtain b where 2 : &amp;quot;P b&amp;quot; using 1 by (rule exE)&lt;br /&gt;
  have 3 : &amp;quot;∀y. P y ⟶ Q a&amp;quot; using assms by (rule allE)&lt;br /&gt;
  have 4 : &amp;quot;P b ⟶ Q a&amp;quot; using 3 by (rule allE)&lt;br /&gt;
  have 5 : &amp;quot;Q a&amp;quot; using 4 2 by (rule mp)}&lt;br /&gt;
hence &amp;quot;∀x. Q x&amp;quot; by (rule allI)}&lt;br /&gt;
thus &amp;quot;(∃y. P y) ⟶ (∀x. Q x)&amp;quot; by (rule impI)&lt;br /&gt;
qed&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;
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;
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;
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;
proof-&lt;br /&gt;
{assume 1 : &amp;quot;∃x. P x&amp;quot;&lt;br /&gt;
obtain a where 2 : &amp;quot;P a&amp;quot; using 1 by (rule exE)&lt;br /&gt;
have 3 : &amp;quot;¬(P a)&amp;quot; using assms by (rule allE)&lt;br /&gt;
have 4 : &amp;quot;False&amp;quot; using 3 2 by (rule notE)}&lt;br /&gt;
thus &amp;quot;¬(∃x. P x)&amp;quot; by (rule notI)&lt;br /&gt;
qed&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;
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;
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;
proof-&lt;br /&gt;
{assume 1 : &amp;quot;∀x. ¬(P x)&amp;quot;&lt;br /&gt;
obtain a where 2 : &amp;quot;P a&amp;quot; using assms by (rule exE)&lt;br /&gt;
have 3 : &amp;quot;¬(P a)&amp;quot; using 1 by (rule allE)&lt;br /&gt;
have 4 : &amp;quot;False&amp;quot; using 3 2 by (rule notE)}&lt;br /&gt;
thus &amp;quot;¬(∀x. ¬(P x))&amp;quot; by (rule notI)&lt;br /&gt;
qed&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;
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;
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;
proof-&lt;br /&gt;
{fix b&lt;br /&gt;
 {assume 1 : &amp;quot;P a&amp;quot;&lt;br /&gt;
  have 2 : &amp;quot;∀x. Q x&amp;quot; using assms 1 by (rule mp)&lt;br /&gt;
  have 3 : &amp;quot;Q b&amp;quot; using 2 by (rule allE)}&lt;br /&gt;
hence 4 : &amp;quot;P a ⟶ Q b&amp;quot; by (rule impI)}&lt;br /&gt;
thus &amp;quot;∀x. P a ⟶ Q x&amp;quot; by (rule allI)&lt;br /&gt;
qed&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;
&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;
&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;
proof-&lt;br /&gt;
{fix a&lt;br /&gt;
 {fix b&lt;br /&gt;
  {assume 1 : &amp;quot;R a b&amp;quot;&lt;br /&gt;
   {assume 2 : &amp;quot;R b a&amp;quot;&lt;br /&gt;
    have 3 : &amp;quot;∀y z. R a y ∧ R y z ⟶ R a z&amp;quot; using assms(1) by (rule allE)&lt;br /&gt;
    have 4 : &amp;quot;∀z. R a b ∧ R b z ⟶ R a z&amp;quot; using 3 by (rule allE)&lt;br /&gt;
    have 5 : &amp;quot;R a b ∧ R b a ⟶ R a a&amp;quot; using 4 by (rule allE)&lt;br /&gt;
    have 6 : &amp;quot; R a b ∧ R b a&amp;quot; using 1 2 by (rule conjI)&lt;br /&gt;
    have 7 : &amp;quot;R a a&amp;quot; using 5 6 by (rule mp)&lt;br /&gt;
    have 8 : &amp;quot;¬(R a a)&amp;quot; using assms(2) by (rule allE)&lt;br /&gt;
    have &amp;quot;False&amp;quot; using 8 7 by (rule notE)}&lt;br /&gt;
   hence &amp;quot;¬(R b a)&amp;quot; by (rule notI)}&lt;br /&gt;
  hence &amp;quot;R a b ⟶ ¬(R b a)&amp;quot; by (rule impI)}&lt;br /&gt;
hence  &amp;quot;∀y. R a y ⟶ ¬(R y a)&amp;quot; by (rule allI)}&lt;br /&gt;
thus  &amp;quot;∀x y. R x y ⟶ ¬(R y x)&amp;quot; by (rule allI)&lt;br /&gt;
qed&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;
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;
&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;
proof-&lt;br /&gt;
obtain a where 1 : &amp;quot;¬Q(a)&amp;quot; using assms(2) by (rule exE)&lt;br /&gt;
have 2 : &amp;quot;P a ∨ Q a&amp;quot; using assms(1) by (rule allE)&lt;br /&gt;
have  &amp;quot;P a ∨ Q a&amp;quot; using 2 by this&lt;br /&gt;
moreover&lt;br /&gt;
{assume 3 : &amp;quot;P a&amp;quot;&lt;br /&gt;
have 4 : &amp;quot;R a ⟶ ¬(P a)&amp;quot; using assms(3) by (rule allE)&lt;br /&gt;
have 5 : &amp;quot;¬¬(P a)&amp;quot; using 3 by (rule notnotI)&lt;br /&gt;
have 6 : &amp;quot;¬(R a)&amp;quot; using 4 5 by (rule mt)&lt;br /&gt;
have &amp;quot;∃x. ¬(R x)&amp;quot; using 6 by (rule exI)}&lt;br /&gt;
moreover &lt;br /&gt;
{assume 7 : &amp;quot;Q a&amp;quot;&lt;br /&gt;
have &amp;quot;∃x. ¬(R x)&amp;quot;  using 1 7 by (rule notE)}&lt;br /&gt;
ultimately show &amp;quot;∃x. ¬(R x)&amp;quot; by (rule disjE)&lt;br /&gt;
qed&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;
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;
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;
proof-&lt;br /&gt;
{fix a&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;
 moreover&lt;br /&gt;
 {assume 4 : &amp;quot;Q a&amp;quot;&lt;br /&gt;
  have &amp;quot;Q a&amp;quot; using 4 by this}&lt;br /&gt;
 moreover&lt;br /&gt;
 {assume 5 : &amp;quot;R a&amp;quot;&lt;br /&gt;
 have 6 : &amp;quot;P a ∧ R a&amp;quot; using 1 5 by (rule conjI)&lt;br /&gt;
 have 7 : &amp;quot;∃x. P x ∧ R x&amp;quot; using 6 by (rule exI)&lt;br /&gt;
 have &amp;quot;Q a&amp;quot; using assms(2) 7 by (rule notE)}&lt;br /&gt;
 ultimately have &amp;quot;Q a&amp;quot; by (rule disjE)}&lt;br /&gt;
hence &amp;quot;P a ⟶ Q a&amp;quot; by (rule impI)}&lt;br /&gt;
thus &amp;quot;∀x. P x ⟶ Q x&amp;quot; by (rule allI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
&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;
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;
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;
proof-&lt;br /&gt;
obtain a where 1 : &amp;quot;∃y. R a y ∨ R y a&amp;quot; using assms by (rule exE)&lt;br /&gt;
obtain b where 2: &amp;quot;R a b ∨ R b a&amp;quot; using 1 by (rule exE)&lt;br /&gt;
moreover&lt;br /&gt;
{assume 3 : &amp;quot;R a b&amp;quot;&lt;br /&gt;
have 4 : &amp;quot;∃y. R a y&amp;quot; using 3 by (rule exI)&lt;br /&gt;
have 5 : &amp;quot;∃x y. R x y&amp;quot; using 4 by (rule exI)}&lt;br /&gt;
moreover&lt;br /&gt;
{assume 6 : &amp;quot;R b a&amp;quot;&lt;br /&gt;
have 7 : &amp;quot;∃y. R b y&amp;quot; using 6 by (rule exI)&lt;br /&gt;
have 8 : &amp;quot;∃x y. R x y&amp;quot; using 7 by (rule exI)}&lt;br /&gt;
ultimately show &amp;quot;∃x y. R x y&amp;quot; by (rule disjE)&lt;br /&gt;
qed&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;
proof-&lt;br /&gt;
{assume 1 : &amp;quot;∃x. ∀y. P x y&amp;quot;&lt;br /&gt;
obtain a where 2 : &amp;quot;∀y. P a y&amp;quot; using 1 by (rule exE)&lt;br /&gt;
 {fix b&lt;br /&gt;
  have 3 : &amp;quot;P a b&amp;quot; using 2 by (rule allE)&lt;br /&gt;
  have 4 : &amp;quot;∃x. P x b&amp;quot; using 3 by (rule exI)}&lt;br /&gt;
hence 5 : &amp;quot;∀y. ∃x. P x y&amp;quot; by (rule allI)}&lt;br /&gt;
thus &amp;quot;(∃x. ∀y. P x y) ⟶ (∀y. ∃x. P x y)&amp;quot; by (rule impI)&lt;br /&gt;
qed&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;
proof (rule iffI)&lt;br /&gt;
{assume 1 : &amp;quot;∀x. P x ⟶ Q&amp;quot;&lt;br /&gt;
 {assume 2 : &amp;quot;∃x. P x&amp;quot;&lt;br /&gt;
  obtain a where 3 : &amp;quot;P a&amp;quot; using 2 by (rule exE)&lt;br /&gt;
  have 4 : &amp;quot;P a ⟶ Q&amp;quot; using 1 by (rule allE)&lt;br /&gt;
  have 5 : &amp;quot;Q&amp;quot; using 4 3 by (rule mp)}&lt;br /&gt;
thus &amp;quot;(∃x. P x) ⟶ Q&amp;quot;  by (rule impI)}&lt;br /&gt;
next&lt;br /&gt;
{assume 6 : &amp;quot;(∃x. P x) ⟶ Q&amp;quot;&lt;br /&gt;
 {fix a&lt;br /&gt;
  {assume 7 : &amp;quot;P a&amp;quot;&lt;br /&gt;
   have 8 : &amp;quot;∃x. P x&amp;quot; using 7 by (rule exI)&lt;br /&gt;
   have 9 : &amp;quot;Q&amp;quot; using 6 8 by (rule mp)}&lt;br /&gt;
 hence &amp;quot;P a ⟶ Q&amp;quot; by (rule impI)}&lt;br /&gt;
thus &amp;quot;∀x. P x ⟶ Q&amp;quot; by (rule allI)}&lt;br /&gt;
qed&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;
proof (rule iffI)&lt;br /&gt;
{assume 1 : &amp;quot;(∀x. P x) ∧ (∀x. Q x)&amp;quot;&lt;br /&gt;
 {fix a&lt;br /&gt;
  have 2 : &amp;quot;∀x. P x&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
  have 3 : &amp;quot;P a&amp;quot; using 2 by (rule allE)&lt;br /&gt;
  have 4 : &amp;quot;∀x. Q x&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
  have 5 : &amp;quot;Q a&amp;quot; using 4 by (rule allE)&lt;br /&gt;
  have &amp;quot;P a ∧ Q a&amp;quot; using 3 5 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 6 : &amp;quot;∀x. P x ∧ Q x&amp;quot;&lt;br /&gt;
 {fix a&lt;br /&gt;
 have 7 : &amp;quot;P a ∧ Q a&amp;quot; using 6 by (rule allE)&lt;br /&gt;
 have 8 : &amp;quot;P a&amp;quot; using 7 by (rule conjunct1)}&lt;br /&gt;
hence 9 : &amp;quot;∀x. P x&amp;quot; by (rule allI)&lt;br /&gt;
 {fix a&lt;br /&gt;
 have 10 : &amp;quot;P a ∧ Q a&amp;quot; using 6 by (rule allE)&lt;br /&gt;
 have 11 : &amp;quot; Q a&amp;quot; using 10 by (rule conjunct2)}&lt;br /&gt;
hence 12: &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 9 12 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;
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;
proof(rule iffI)&lt;br /&gt;
{assume 1 : &amp;quot;(∃x. P x) ∨ (∃x. Q x)&amp;quot;&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 2 : &amp;quot;∃x. P x&amp;quot;&lt;br /&gt;
  obtain a where 3 : &amp;quot;P a&amp;quot; using 2 by (rule exE)&lt;br /&gt;
  have 4 : &amp;quot;P a ∨ Q a&amp;quot; using 3 by (rule disjI1)&lt;br /&gt;
  have 5 : &amp;quot;∃x. P x ∨  Q x&amp;quot; using 4 by (rule exI)}&lt;br /&gt;
moreover &lt;br /&gt;
 {assume 6 : &amp;quot;∃x. Q x&amp;quot;&lt;br /&gt;
  obtain a where 7 : &amp;quot;Q a&amp;quot; using 6 by (rule exE)&lt;br /&gt;
  have 8 : &amp;quot;P a ∨ Q a&amp;quot; using 7 by (rule disjI2)&lt;br /&gt;
  have 9 : &amp;quot;∃x. P x ∨  Q x&amp;quot; using 8 by (rule exI)}&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 10 : &amp;quot;∃x. P x ∨ Q x&amp;quot;&lt;br /&gt;
obtain a where 11 : &amp;quot;P a ∨ Q a&amp;quot; using 10 by (rule exE)&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 12 : &amp;quot;P a&amp;quot;&lt;br /&gt;
  have 13 : &amp;quot;∃x. P x&amp;quot; using 12 by (rule exI)&lt;br /&gt;
  have &amp;quot;(∃x. P x) ∨ (∃x. Q x)&amp;quot; using 13 by (rule disjI1)}&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 14 : &amp;quot;Q a&amp;quot;&lt;br /&gt;
  have 15 : &amp;quot;∃x. Q x&amp;quot; using 14 by (rule exI)&lt;br /&gt;
  have &amp;quot;(∃x. P x) ∨ (∃x. Q x)&amp;quot; using 15 by (rule disjI2)}&lt;br /&gt;
ultimately show &amp;quot;(∃x. P x) ∨ (∃x. Q x)&amp;quot; by (rule disjE)}&lt;br /&gt;
qed&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;
  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;
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;
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;
 {assume 2 : &amp;quot;¬(∃x. ¬P x)&amp;quot;&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 &amp;quot;P a&amp;quot; by (rule ccontr)}&lt;br /&gt;
 hence 6 : &amp;quot;∀x. P x&amp;quot; by (rule allI)&lt;br /&gt;
 have &amp;quot;False&amp;quot; using 1  6 by (rule notE)}&lt;br /&gt;
thus &amp;quot;∃x. ¬P x&amp;quot; by (rule ccontr)}&lt;br /&gt;
next&lt;br /&gt;
{assume 7 : &amp;quot;∃x. ¬P x&amp;quot;&lt;br /&gt;
 {assume 8 : &amp;quot;∀x. P x&amp;quot;&lt;br /&gt;
  obtain a where 9 : &amp;quot;¬P a&amp;quot; using 7 by (rule exE)&lt;br /&gt;
  have 10 : &amp;quot;P a&amp;quot; using 8 by (rule allE)&lt;br /&gt;
  have &amp;quot;False&amp;quot; using 9 10 by (rule notE)}&lt;br /&gt;
thus &amp;quot;¬(∀x. P x)&amp;quot; by (rule notI)}&lt;br /&gt;
qed&lt;br /&gt;
 &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;
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;
&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-&lt;br /&gt;
{fix b&lt;br /&gt;
 {assume 1 : &amp;quot;b = a&amp;quot;&lt;br /&gt;
  have 3 : &amp;quot;P b&amp;quot; using 1 assms by (rule ssubst)}&lt;br /&gt;
hence &amp;quot;b = a ⟶ P b&amp;quot; by (rule impI)}&lt;br /&gt;
thus &amp;quot;∀x. x = a ⟶ P x&amp;quot; by (rule allI)&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;
proof-&lt;br /&gt;
obtain a where 1 : &amp;quot;∃y. R a y ∨ R y a&amp;quot; using assms(1) by (rule exE)&lt;br /&gt;
obtain b where 2 : &amp;quot;R a b ∨ R b a&amp;quot; using 1 by (rule exE)&lt;br /&gt;
{assume 3 : &amp;quot;a = b&amp;quot;&lt;br /&gt;
have &amp;quot;R a b ∨ R b a&amp;quot;  using 2 by this&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 4 : &amp;quot;R a b&amp;quot;&lt;br /&gt;
  have 5 : &amp;quot;R b b&amp;quot; using 3 4 by (rule subst)&lt;br /&gt;
  have 6 : &amp;quot;∃x. R x x&amp;quot; using 5 by (rule exI)&lt;br /&gt;
  have &amp;quot;False&amp;quot; using assms(2) 6 by (rule notE)}&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 7 : &amp;quot;R b a&amp;quot;&lt;br /&gt;
  have 8 : &amp;quot;R b b&amp;quot; using 3 7 by (rule subst)&lt;br /&gt;
  have 9 : &amp;quot;∃x. R x x&amp;quot; using  8 by (rule exI)&lt;br /&gt;
  have &amp;quot;False&amp;quot; using assms(2) 9 by (rule notE)}&lt;br /&gt;
ultimately have &amp;quot;False&amp;quot; by (rule disjE)}&lt;br /&gt;
hence 10 : &amp;quot;¬(a = b)&amp;quot; by (rule notI)&lt;br /&gt;
have 11 : &amp;quot;∃y. ¬(a = y)&amp;quot; using 10 by (rule exI)&lt;br /&gt;
show &amp;quot;∃(x::&amp;#039;c) y. x ≠ y&amp;quot; using 11 by (rule exI)&lt;br /&gt;
qed&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;
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;
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;
&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;
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;
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;
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;
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;
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;
&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;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2016/index.php?title=Rel_4&amp;diff=242</id>
		<title>Rel 4</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2016/index.php?title=Rel_4&amp;diff=242"/>
		<updated>2018-07-16T12:41:06Z</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/LMF2016/index.php?title=L%C3%B3gica_matem%C3%A1tica_y_fundamentos_(2015-16)&amp;diff=241</id>
		<title>Lógica matemática y fundamentos (2015-16)</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2016/index.php?title=L%C3%B3gica_matem%C3%A1tica_y_fundamentos_(2015-16)&amp;diff=241"/>
		<updated>2018-07-16T12:40:27Z</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;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;: Cuestiones. ([[R9 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 10&amp;#039;&amp;#039;&amp;#039;: Tableros semánticos en lógica de primer orden.([[R10 |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 11&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 12&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 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;: Resolución proposicional en Haskell. ([[Media:ResolucionProposicional.hs |Enunciado]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 15&amp;#039;&amp;#039;&amp;#039;: Ejercicios de Lógica proposicional. ([[R15 sol | Una solución ]]).&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 sol | Una solución ]]).&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2016/index.php?title=Relaci%C3%B3n_3&amp;diff=240</id>
		<title>Relación 3</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2016/index.php?title=Relaci%C3%B3n_3&amp;diff=240"/>
		<updated>2018-07-16T12:38: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;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;
&lt;br /&gt;
proof -&lt;br /&gt;
show &amp;quot;q&amp;quot; using assms(1,2) by (rule mp)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_1_b:&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;
&lt;br /&gt;
proof-&lt;br /&gt;
have 1: &amp;quot;q&amp;quot; using assms(1,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;
&lt;br /&gt;
proof-&lt;br /&gt;
have 1: &amp;quot;q&amp;quot; using assms(2,3) by (rule mp) &lt;br /&gt;
have 2: &amp;quot;q⟶r&amp;quot; using assms(1,3) by (rule mp)&lt;br /&gt;
show &amp;quot;r&amp;quot; using 2 1 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;
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 ..&lt;br /&gt;
have 3: &amp;quot;r&amp;quot; using assms(2) 2 ..}&lt;br /&gt;
thus &amp;quot;p⟶r&amp;quot; by (rule impI)&lt;br /&gt;
qed&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;
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;
thus &amp;quot;p⟶r&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
---**&lt;br /&gt;
&lt;br /&gt;
proof(rule impI)&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;
show &amp;quot;r&amp;quot; using assms(2) 2 by (rule mp)&lt;br /&gt;
qed&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;
&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 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;
thus &amp;quot;(q⟶(p⟶r))&amp;quot; by (rule impI)&lt;br /&gt;
qed&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;
&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 2 by (rule mp)&lt;br /&gt;
have 4: &amp;quot;q&amp;quot; using 1 2 by (rule mp)&lt;br /&gt;
have &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;
thus &amp;quot;(p⟶q)⟶(p⟶r)&amp;quot; by (rule impI)&lt;br /&gt;
qed &lt;br /&gt;
&lt;br /&gt;
---**&lt;br /&gt;
proof(rule impI)&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;
then show&amp;quot;p⟶r&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
  &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;
&lt;br /&gt;
proof-&lt;br /&gt;
{assume 1: &amp;quot;q&amp;quot;&lt;br /&gt;
have &amp;quot;p&amp;quot; using assms .}&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 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;
&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&amp;quot; using 1 .}&lt;br /&gt;
hence &amp;quot;q⟶p&amp;quot; ..}&lt;br /&gt;
thus &amp;quot;p⟶(q⟶p)&amp;quot; ..&lt;br /&gt;
qed&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 1 : &amp;quot;p&amp;quot;&lt;br /&gt;
{assume 2 : &amp;quot;q&amp;quot;&lt;br /&gt;
have 3 : &amp;quot;p&amp;quot; using 1 .}&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;
lemma ejercicio_8:&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;
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 2 .. &lt;br /&gt;
have &amp;quot;r&amp;quot; using 1 3 ..}&lt;br /&gt;
hence &amp;quot;p⟶r&amp;quot; ..}&lt;br /&gt;
thus &amp;quot;(q⟶r)⟶(p⟶r) &amp;quot; ..&lt;br /&gt;
qed&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;
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;
--**&lt;br /&gt;
proof(rule impI)&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 2 by (rule mp)&lt;br /&gt;
have 4: &amp;quot;r&amp;quot; using 1 3 by (rule mp)}&lt;br /&gt;
then show &amp;quot;p⟶r&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
--**&lt;br /&gt;
(* aunque sé que hay algunos pasos innecesarios pero es otra forma de verlo.*)&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;
{assume 3: &amp;quot;¬r&amp;quot;&lt;br /&gt;
have 4: &amp;quot;¬q&amp;quot; using 1 3 by (rule mt)&lt;br /&gt;
have 5: &amp;quot;q&amp;quot; using assms(1) 2 by (rule mp)&lt;br /&gt;
have 7: &amp;quot;False&amp;quot; using 4 5 by (rule notE)}&lt;br /&gt;
hence 6: &amp;quot;r&amp;quot;  by (rule ccontr)}&lt;br /&gt;
hence 8 : &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;
&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 3 ..&lt;br /&gt;
have 5: &amp;quot;r⟶s&amp;quot; using 4 2 ..&lt;br /&gt;
have 6: &amp;quot;s&amp;quot; using 5 1 ..}&lt;br /&gt;
hence &amp;quot;p⟶s&amp;quot; ..}&lt;br /&gt;
hence &amp;quot;q⟶(p⟶s)&amp;quot; ..}&lt;br /&gt;
thus &amp;quot;r⟶(q⟶(p⟶s))&amp;quot; ..&lt;br /&gt;
qed &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 (rule impI)&lt;br /&gt;
 assume  3: &amp;quot;p⟶(q⟶r)&amp;quot;&lt;br /&gt;
 show &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;
  show &amp;quot;p⟶r&amp;quot;&lt;br /&gt;
  proof (rule impI)&lt;br /&gt;
    assume   1: &amp;quot;p&amp;quot;&lt;br /&gt;
    have 4:&amp;quot;q&amp;quot; using 2 1 ..&lt;br /&gt;
    have 5:&amp;quot;q⟶r&amp;quot; using 3 1 .. &lt;br /&gt;
    show &amp;quot;r&amp;quot; using 5 4 .. &lt;br /&gt;
    qed&lt;br /&gt;
  qed&lt;br /&gt;
qed&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;
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;
&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 3:&amp;quot;q&amp;quot;&lt;br /&gt;
      have 4:&amp;quot;p&amp;quot; using 1 .&lt;br /&gt;
      have 5:&amp;quot;q&amp;quot; using 3 .&lt;br /&gt;
      then have 6:&amp;quot;p⟶q&amp;quot; ..&lt;br /&gt;
      have &amp;quot;r&amp;quot; using assms 6 ..}&lt;br /&gt;
    hence &amp;quot;q⟶r&amp;quot; ..}&lt;br /&gt;
thus &amp;quot;p⟶(q⟶r)&amp;quot; ..&lt;br /&gt;
qed &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;
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;
have 4 : &amp;quot;q&amp;quot; using 2 .}&lt;br /&gt;
hence 5 : &amp;quot;p⟶q&amp;quot; by (rule impI)&lt;br /&gt;
have 6 : &amp;quot;r&amp;quot; using assms(1) 5 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;
&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;
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,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;
&lt;br /&gt;
proof-&lt;br /&gt;
show &amp;quot;p&amp;quot; using assms by (rule conjunct1)&lt;br /&gt;
qed&lt;br /&gt;
 &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;
&lt;br /&gt;
proof-&lt;br /&gt;
show &amp;quot;q&amp;quot; using assms 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;
&lt;br /&gt;
proof-&lt;br /&gt;
have 1:&amp;quot;p&amp;quot; using assms by (rule conjunct1)&lt;br /&gt;
have 2:&amp;quot;q∧r&amp;quot; using assms by (rule conjunct2)&lt;br /&gt;
then have 3:&amp;quot;q&amp;quot; by (rule conjunct1)&lt;br /&gt;
have 4:&amp;quot;r&amp;quot; using 2 by (rule conjunct2)&lt;br /&gt;
have &amp;quot;p∧q&amp;quot; using 1 3 by (rule conjI)&lt;br /&gt;
then show &amp;quot;(p∧q)∧r&amp;quot; using 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 by (rule conjunct1)&lt;br /&gt;
have 2:&amp;quot;r&amp;quot; using assms 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;
proof-&lt;br /&gt;
have 1:&amp;quot;p&amp;quot; using assms ..&lt;br /&gt;
have 2:&amp;quot;q&amp;quot; using assms ..&lt;br /&gt;
then show &amp;quot;p⟶q&amp;quot; ..&lt;br /&gt;
qed&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;
proof-&lt;br /&gt;
{assume &amp;quot;p&amp;quot;&lt;br /&gt;
have &amp;quot;q&amp;quot; using assms by (rule conjunct2)}&lt;br /&gt;
thus &amp;quot;p⟶q&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&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;
proof(rule impI)&lt;br /&gt;
assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
show &amp;quot;q&amp;quot; using assms by (rule conjunct2)&lt;br /&gt;
qed&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;
proof-&lt;br /&gt;
have 1:&amp;quot;p⟶q&amp;quot; using assms ..&lt;br /&gt;
have 2:&amp;quot;p⟶r&amp;quot; using assms ..&lt;br /&gt;
{assume 3:&amp;quot;p&amp;quot;&lt;br /&gt;
have 4:&amp;quot;q&amp;quot; using 1 3 ..&lt;br /&gt;
have 5:&amp;quot;r&amp;quot; using 2 3 ..&lt;br /&gt;
have 6:&amp;quot;q∧r&amp;quot; using 4 5 ..}&lt;br /&gt;
thus &amp;quot;p ⟶ q ∧ r&amp;quot;  ..&lt;br /&gt;
qed&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;
proof-&lt;br /&gt;
{assume 1 : &amp;quot;p&amp;quot;&lt;br /&gt;
have 2 : &amp;quot;p⟶q&amp;quot; using assms by (rule conjunct1)&lt;br /&gt;
have 3 : &amp;quot;p⟶r&amp;quot; using assms 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;
&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;
&lt;br /&gt;
proof-&lt;br /&gt;
{assume 1: p&lt;br /&gt;
have 2:&amp;quot;q∧r&amp;quot; using assms 1 ..&lt;br /&gt;
have &amp;quot;r&amp;quot; using 2 ..}&lt;br /&gt;
hence 1:&amp;quot;p⟶r&amp;quot; ..&lt;br /&gt;
{assume 1: p&lt;br /&gt;
have 2:&amp;quot;q∧r&amp;quot; using assms 1 ..&lt;br /&gt;
have &amp;quot;q&amp;quot; using 2 ..}&lt;br /&gt;
hence 2:&amp;quot;p⟶q&amp;quot; ..&lt;br /&gt;
then show &amp;quot;(p ⟶ q) ∧ (p ⟶ r)&amp;quot; using 1 ..&lt;br /&gt;
qed &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-&lt;br /&gt;
{assume 1 : &amp;quot;p&amp;quot; &lt;br /&gt;
have 2 : &amp;quot;q ∧ r&amp;quot; using assms 1 by (rule mp)&lt;br /&gt;
have 3 : &amp;quot;q&amp;quot; using 2 by (rule conjunct1)}&lt;br /&gt;
hence 4 : &amp;quot;p⟶q&amp;quot; by (rule impI)&lt;br /&gt;
{assume 5 : &amp;quot;p&amp;quot; &lt;br /&gt;
have 6 : &amp;quot;q ∧ r&amp;quot; using assms 5 by (rule mp)&lt;br /&gt;
have 7 : &amp;quot;r&amp;quot; using 6 by (rule conjunct2)}&lt;br /&gt;
hence 8 : &amp;quot;p⟶r&amp;quot; by (rule impI)&lt;br /&gt;
show &amp;quot;(p ⟶ q) ∧ (p ⟶ r)&amp;quot; using 4 8 by (rule conjI)&lt;br /&gt;
qed&lt;br /&gt;
&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;
&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 ..&lt;br /&gt;
have 3:&amp;quot;q⟶r&amp;quot; using assms 2 ..&lt;br /&gt;
have 4: &amp;quot;q&amp;quot; using 1 ..&lt;br /&gt;
have &amp;quot;r&amp;quot; using 3 4 ..}&lt;br /&gt;
thus &amp;quot;p∧q ⟶r&amp;quot; ..&lt;br /&gt;
qed&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&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
have 4 : &amp;quot;q⟶r&amp;quot; using assms 2 by (rule mp)&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;
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;
&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 ..&lt;br /&gt;
have &amp;quot;r&amp;quot; using assms 3 ..}&lt;br /&gt;
hence &amp;quot;q⟶r&amp;quot; ..}&lt;br /&gt;
thus &amp;quot;p⟶(q⟶r)&amp;quot; ..  &lt;br /&gt;
qed&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 3 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;
lemma ejercicio_22:&lt;br /&gt;
  assumes 1:&amp;quot;p ∧ q ⟶ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ⟶ (q ⟶ r)&amp;quot;&lt;br /&gt;
proof (rule impI)&lt;br /&gt;
  assume 2:&amp;quot;p&amp;quot;&lt;br /&gt;
  show &amp;quot;q ⟶ r&amp;quot;&lt;br /&gt;
    proof (rule impI)&lt;br /&gt;
     assume 3:&amp;quot;q&amp;quot;&lt;br /&gt;
       have 4:&amp;quot;p ∧ q&amp;quot; using 2 3 by (rule conjI)&lt;br /&gt;
       show &amp;quot;r&amp;quot; using 1 4 by (rule mp)&lt;br /&gt;
    qed&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;
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;
&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 ..&lt;br /&gt;
{assume &amp;quot;p&amp;quot;&lt;br /&gt;
have 3: &amp;quot;q&amp;quot; using 1 ..}&lt;br /&gt;
hence 4:&amp;quot;p⟶q&amp;quot; ..&lt;br /&gt;
have &amp;quot;r&amp;quot; using assms 4 ..}&lt;br /&gt;
thus &amp;quot;p∧q ⟶r&amp;quot; ..&lt;br /&gt;
qed&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 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;
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;
&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 ..&lt;br /&gt;
have 3:&amp;quot;q⟶r&amp;quot; using assms..&lt;br /&gt;
have 4:&amp;quot;q&amp;quot; using 1 2 ..&lt;br /&gt;
have &amp;quot;r&amp;quot; using 3 4 ..}&lt;br /&gt;
thus &amp;quot;(p⟶q)⟶r&amp;quot; ..&lt;br /&gt;
qed&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 by (rule conjunct1)&lt;br /&gt;
have 3 : &amp;quot;q⟶r&amp;quot; using assms by (rule conjunct2)&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;
thus &amp;quot;(p⟶q)⟶r&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_24:&lt;br /&gt;
  assumes 1:&amp;quot;p ∧ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ⟶ q) ⟶ r&amp;quot;&lt;br /&gt;
proof (rule impI)&lt;br /&gt;
  assume 2:&amp;quot;p ⟶ q&amp;quot; &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 2 3 by (rule mp) &lt;br /&gt;
    have 5:&amp;quot;q ⟶ r&amp;quot; using 1   by (rule conjunct2)&lt;br /&gt;
    show &amp;quot;r&amp;quot; using 5 4 by (rule mp)&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;
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;
&lt;br /&gt;
proof-&lt;br /&gt;
show &amp;quot;p∨q&amp;quot; using assms 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;
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;
&lt;br /&gt;
proof-&lt;br /&gt;
show &amp;quot;p∨q&amp;quot; using assms 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;
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;
&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;
lemma ejercicio_27:&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 4:&amp;quot;q&amp;quot;&lt;br /&gt;
    show &amp;quot;q ∨ p&amp;quot; using 4 by (rule disjI1)}         &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;
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  &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
  moreover&lt;br /&gt;
  { assume 1:&amp;quot;p&amp;quot;&lt;br /&gt;
    have &amp;quot;p ∨ r&amp;quot;  using 1 by (rule disjI1)}&lt;br /&gt;
  moreover &lt;br /&gt;
  { assume 2:&amp;quot;q&amp;quot;&lt;br /&gt;
    have 3:&amp;quot;r&amp;quot; using assms 2 by (rule mp)&lt;br /&gt;
    have &amp;quot;p ∨ r&amp;quot; using 3 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;
lemma ejercicio_28:&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;
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;
&lt;br /&gt;
proof-&lt;br /&gt;
have 1: &amp;quot;p ∨ p&amp;quot; using assms by this&lt;br /&gt;
moreover&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;
moreover&lt;br /&gt;
 {assume 2:&amp;quot;p&amp;quot;&lt;br /&gt;
  have  &amp;quot;p&amp;quot; using 2 by this}&lt;br /&gt;
ultimately show  &amp;quot;p&amp;quot; by (rule disjE)&lt;br /&gt;
&lt;br /&gt;
qed&lt;br /&gt;
text{* Otra forma:&lt;br /&gt;
using assms&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;p&amp;quot;&lt;br /&gt;
thus &amp;quot;p&amp;quot; .&lt;br /&gt;
qed}&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 by this&lt;br /&gt;
moreover&lt;br /&gt;
{assume 1 : &amp;quot;p&amp;quot;&lt;br /&gt;
have &amp;quot;p&amp;quot; using 1 .}&lt;br /&gt;
moreover&lt;br /&gt;
{assume 2 : &amp;quot;p&amp;quot;&lt;br /&gt;
have &amp;quot;p&amp;quot; using 2 .}&lt;br /&gt;
ultimately show &amp;quot;p&amp;quot; by (rule disjE)&lt;br /&gt;
qed*}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_29:&lt;br /&gt;
  assumes 1:&amp;quot;p ∨ p&amp;quot;&lt;br /&gt;
  shows     &amp;quot;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;p&amp;quot; using 2 by this}&lt;br /&gt;
next&lt;br /&gt;
  {assume 3:&amp;quot;p&amp;quot;&lt;br /&gt;
    show &amp;quot;p&amp;quot; using 3 by this}&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;
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 by (rule disjI1)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text{* Otra forma:&lt;br /&gt;
using assms&lt;br /&gt;
proof&lt;br /&gt;
qed}&lt;br /&gt;
 &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;
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{* Otra forma:&lt;br /&gt;
using assms&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;p&amp;quot;&lt;br /&gt;
then have &amp;quot;p∨q&amp;quot; ..&lt;br /&gt;
thus &amp;quot;(p∨q)∨r&amp;quot; ..&lt;br /&gt;
next&lt;br /&gt;
assume 1:&amp;quot;q∨r&amp;quot;&lt;br /&gt;
thus &amp;quot;(p ∨ q) ∨ r&amp;quot;&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;q&amp;quot;&lt;br /&gt;
then have &amp;quot;p∨q&amp;quot; ..&lt;br /&gt;
thus 1: &amp;quot;(p ∨ q) ∨ r&amp;quot; ..&lt;br /&gt;
next&lt;br /&gt;
assume &amp;quot;r&amp;quot;&lt;br /&gt;
then have 2:&amp;quot;(p∨q)∨r&amp;quot; ..&lt;br /&gt;
then have &amp;quot;q∨r⟶(p ∨ q) ∨ r&amp;quot; .. &lt;br /&gt;
thus &amp;quot;(p ∨ q) ∨ r&amp;quot; using 1 ..&lt;br /&gt;
qed}*}&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_31:&lt;br /&gt;
  assumes 1:&amp;quot;p ∨ (q ∨ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ∨ q) ∨ r&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;
    have  3:&amp;quot;p ∨ q&amp;quot; using 2 by (rule disjI1)&lt;br /&gt;
    show  &amp;quot;(p ∨ q) ∨ r&amp;quot; using 3 by (rule disjI1)}&lt;br /&gt;
next&lt;br /&gt;
   {assume 4:&amp;quot;q ∨ r&amp;quot;&lt;br /&gt;
     thus &amp;quot;(p ∨ q) ∨ r&amp;quot;&lt;br /&gt;
      proof (rule disjE)&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;
           show &amp;quot;(p ∨ q) ∨ r&amp;quot; using 6 by (rule disjI1)}&lt;br /&gt;
      next&lt;br /&gt;
        {assume 7:&amp;quot;r&amp;quot;&lt;br /&gt;
           show &amp;quot;(p ∨ q) ∨ r&amp;quot; using 7 by (rule disjI2)}&lt;br /&gt;
      qed}&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;
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;
lemma ejercicio_32:&lt;br /&gt;
  assumes 1:&amp;quot;(p ∨ q) ∨ r&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∨ (q ∨ r)&amp;quot;&lt;br /&gt;
using 1&lt;br /&gt;
proof (rule disjE)&lt;br /&gt;
  {assume 2:&amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
    thus &amp;quot;p ∨ (q ∨ 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 ∨ (q ∨ 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;q ∨ r&amp;quot;    using 4 by (rule disjI1)&lt;br /&gt;
         show &amp;quot;p ∨ (q ∨ r)&amp;quot; using 5 by (rule disjI2)} &lt;br /&gt;
       qed}&lt;br /&gt;
next&lt;br /&gt;
  {assume 6:&amp;quot;r&amp;quot;&lt;br /&gt;
     have 7:&amp;quot;q ∨ r&amp;quot; using 6 by (rule disjI2)&lt;br /&gt;
     show &amp;quot;p ∨ (q ∨ r)&amp;quot; using 7 by (rule disjI2)}&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;
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;
lemma ejercicio_33:&lt;br /&gt;
  assumes 1:&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 2:&amp;quot;p&amp;quot;     using 1 by (rule conjunct1)&lt;br /&gt;
  have 3:&amp;quot;q ∨ r&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
  thus &amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot; &lt;br /&gt;
    proof (rule disjE)&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;
         show &amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot; using 5 by (rule disjI1)}&lt;br /&gt;
    next&lt;br /&gt;
      {assume 6:&amp;quot;r&amp;quot;&lt;br /&gt;
         have 7:&amp;quot;p ∧ r&amp;quot; using 2 6 by (rule conjI)&lt;br /&gt;
         show &amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot; using 7 by (rule disjI2)}&lt;br /&gt;
    qed&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;
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;
lemma ejercicio_34:&lt;br /&gt;
  assumes 1:&amp;quot;(p ∧ q) ∨ (p ∧ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∧ (q ∨ r)&amp;quot;&lt;br /&gt;
using 1&lt;br /&gt;
proof (rule disjE)&lt;br /&gt;
  {assume 2:&amp;quot;p ∧ q&amp;quot;&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 5:&amp;quot;q ∨ r&amp;quot; using 4 by (rule disjI1)&lt;br /&gt;
     show &amp;quot;p ∧ (q ∨ r)&amp;quot; using 3 5 by (rule conjI)}&lt;br /&gt;
next&lt;br /&gt;
  {assume 6:&amp;quot;p ∧ r&amp;quot;&lt;br /&gt;
     have 7:&amp;quot;p&amp;quot;     using 6 by (rule conjunct1)&lt;br /&gt;
     have 8:&amp;quot;r&amp;quot;     using 6 by (rule conjunct2)&lt;br /&gt;
     have 9:&amp;quot;q ∨ r&amp;quot; using 8 by (rule disjI2)&lt;br /&gt;
     show &amp;quot;p ∧ (q ∨ r)&amp;quot; using 7 9 by (rule conjI)}&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;
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;
lemma ejercicio_35:&lt;br /&gt;
  assumes 1:&amp;quot;p ∨ (q ∧ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;(p ∨ q) ∧ (p ∨ r)&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;
     have 3:&amp;quot;p ∨ q&amp;quot; using 2 by (rule disjI1)&lt;br /&gt;
     have 4:&amp;quot;p ∨ r&amp;quot; using 2 by (rule disjI1)&lt;br /&gt;
     show &amp;quot;(p ∨ q) ∧ (p ∨ r)&amp;quot; using 3 4 by (rule conjI)}&lt;br /&gt;
next&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;r&amp;quot;     using 5 by (rule conjunct2)&lt;br /&gt;
     have 8:&amp;quot;p ∨ q&amp;quot; using 6 by (rule disjI2)&lt;br /&gt;
     have 9:&amp;quot;p ∨ r&amp;quot; using 7 by (rule disjI2)&lt;br /&gt;
     show &amp;quot;(p ∨ q) ∧ (p ∨ r)&amp;quot; using 8 9 by (rule conjI)}&lt;br /&gt;
qed&lt;br /&gt;
&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;
proof-&lt;br /&gt;
have &amp;quot;(p ∨ q)&amp;quot; using assms by (rule conjunct1)&lt;br /&gt;
moreover&lt;br /&gt;
   {assume 1:&amp;quot;p&amp;quot;&lt;br /&gt;
    have &amp;quot;p ∨ (q ∧ r)&amp;quot; using 1 by (rule disjI1) }&lt;br /&gt;
moreover&lt;br /&gt;
    {assume 1:&amp;quot;q&amp;quot;&lt;br /&gt;
    have &amp;quot;(p ∨ r)&amp;quot; using assms by (rule conjunct2)&lt;br /&gt;
    moreover &lt;br /&gt;
    {assume 2:&amp;quot;p&amp;quot;&lt;br /&gt;
      have &amp;quot;p ∨ (q ∧ r)&amp;quot; using 2 by (rule disjI1)}&lt;br /&gt;
    moreover &lt;br /&gt;
    {assume 2:&amp;quot;r&amp;quot;&lt;br /&gt;
      have 3:&amp;quot;(q ∧ r)&amp;quot; using 1 2 by (rule conjI)&lt;br /&gt;
      have &amp;quot;p ∨ (q ∧ r)&amp;quot; using 3 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;
------------------- ----------&lt;br /&gt;
&lt;br /&gt;
 proof-&lt;br /&gt;
have 1: &amp;quot;p∨q&amp;quot; using assms by (rule conjunct1)&lt;br /&gt;
thus &amp;quot;p∨(q∧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∨(q∧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;p∨r&amp;quot; using assms by (rule conjunct2)&lt;br /&gt;
thus &amp;quot;p∨(q∧r)&amp;quot;&lt;br /&gt;
proof(rule disjE)&lt;br /&gt;
{assume 6: &amp;quot;p&amp;quot;&lt;br /&gt;
show &amp;quot;p∨(q∧r)&amp;quot; using 6 by (rule disjI1)}&lt;br /&gt;
next&lt;br /&gt;
{assume 7: &amp;quot;r&amp;quot;&lt;br /&gt;
have 8: &amp;quot;q∧r&amp;quot; using 4 7 by (rule conjI)&lt;br /&gt;
show &amp;quot;p∨(q∧r)&amp;quot; using 8 by (rule disjI2)}&lt;br /&gt;
qed}&lt;br /&gt;
qed&lt;br /&gt;
qed&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;
proof-&lt;br /&gt;
{assume  &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
moreover &lt;br /&gt;
 {assume 1:&amp;quot;p&amp;quot;&lt;br /&gt;
  have 2:&amp;quot;(p ⟶ r)&amp;quot; using assms by (rule conjunct1)&lt;br /&gt;
  have &amp;quot;r&amp;quot; using 2 1 by (rule mp)}&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 1:&amp;quot;q&amp;quot;&lt;br /&gt;
  have 2:&amp;quot;(q ⟶ r)&amp;quot; using assms by (rule conjunct2)&lt;br /&gt;
  have &amp;quot;r&amp;quot; using 2 1 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;
lemma ejercicio_37:&lt;br /&gt;
  assumes 1:&amp;quot;(p ⟶ r) ∧ (q ⟶ r)&amp;quot; &lt;br /&gt;
  shows   &amp;quot;p ∨ q ⟶ 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;r&amp;quot;&lt;br /&gt;
    proof (rule disjE)&lt;br /&gt;
      {assume 3:&amp;quot;p&amp;quot;&lt;br /&gt;
         have 4:&amp;quot;p ⟶ r&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
         show &amp;quot;r&amp;quot;       using 4 3 by (rule mp)}&lt;br /&gt;
    next&lt;br /&gt;
     {assume 5:&amp;quot;q&amp;quot;&lt;br /&gt;
        have 6:&amp;quot;q ⟶ r&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
        show &amp;quot;r&amp;quot;       using 6 5 by (rule mp)}&lt;br /&gt;
   qed&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;
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-&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 2 by (rule mp)}&lt;br /&gt;
hence 4 : &amp;quot;p⟶r&amp;quot; by (rule impI)&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;r&amp;quot; using assms 6 by (rule mp)}&lt;br /&gt;
hence 8 : &amp;quot;q⟶r&amp;quot; by (rule impI)&lt;br /&gt;
show &amp;quot;(p ⟶ r) ∧ (q ⟶ r)&amp;quot; using 4 8 by (rule conjI)&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;
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 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;
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;
&lt;br /&gt;
proof-&lt;br /&gt;
{assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
have &amp;quot;q&amp;quot; using assms 1 ..}&lt;br /&gt;
thus &amp;quot;p⟶q&amp;quot; ..&lt;br /&gt;
qed&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 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;
------------------------------ &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;
&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 by (rule notE)}&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;
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 &amp;quot;¬p&amp;quot; using assms 1 by (rule mt)}&lt;br /&gt;
thus &amp;quot;¬q ⟶ ¬p&amp;quot; ..&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;
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;
&lt;br /&gt;
using assms(1)&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;p&amp;quot;&lt;br /&gt;
thus &amp;quot;p&amp;quot; .&lt;br /&gt;
next&lt;br /&gt;
assume 1:&amp;quot;q&amp;quot;&lt;br /&gt;
show &amp;quot;p&amp;quot; using assms(2) 1 ..&lt;br /&gt;
qed  &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 .}&lt;br /&gt;
moreover&lt;br /&gt;
{assume 3 : &amp;quot;q&amp;quot;&lt;br /&gt;
have 4 : &amp;quot;¬q&amp;quot; using assms(2) .&lt;br /&gt;
have 5 : &amp;quot;False&amp;quot; using 4 3 by (rule notE)&lt;br /&gt;
have 6 : &amp;quot;p&amp;quot; using 5 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;
--------**---&lt;br /&gt;
using assms(1)&lt;br /&gt;
proof(rule disjE)&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;
next&lt;br /&gt;
{assume 2: &amp;quot;q&amp;quot;&lt;br /&gt;
show &amp;quot;p&amp;quot; using assms(2) 2 by (rule notE)}&lt;br /&gt;
qed &lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 43. 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;
&lt;br /&gt;
using assms(1)&lt;br /&gt;
proof&lt;br /&gt;
assume &amp;quot;q&amp;quot;&lt;br /&gt;
thus &amp;quot;q&amp;quot; .&lt;br /&gt;
next&lt;br /&gt;
assume 1:&amp;quot;p&amp;quot;&lt;br /&gt;
show &amp;quot;q&amp;quot; using assms(2) 1 ..&lt;br /&gt;
qed  &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;¬p&amp;quot; using assms(2) .&lt;br /&gt;
have 3 : &amp;quot;False&amp;quot; using 2 1 by (rule notE)&lt;br /&gt;
have 4 : &amp;quot;q&amp;quot; using 3 by (rule FalseE)}&lt;br /&gt;
moreover&lt;br /&gt;
{assume 5 : &amp;quot;q&amp;quot;&lt;br /&gt;
have 6 : &amp;quot;q&amp;quot; using 5 .}&lt;br /&gt;
ultimately show &amp;quot;q&amp;quot; by (rule disjE)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
---**--&lt;br /&gt;
using assms(1)&lt;br /&gt;
proof(rule disjE)&lt;br /&gt;
assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
show &amp;quot;q&amp;quot; using assms(2) 1 by (rule notE)&lt;br /&gt;
next&lt;br /&gt;
assume 2:&amp;quot;p&amp;quot;&lt;br /&gt;
have &amp;quot;p&amp;quot; using 2 by this&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
text {* --------------------------------------------------------------- &lt;br /&gt;
  Ejercicio 44. 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;
proof-&lt;br /&gt;
{assume 1 : &amp;quot;¬p ∧ ¬q&amp;quot;&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 3 : &amp;quot;¬p&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
  have 4 : &amp;quot;False&amp;quot; using 3 2 by (rule notE)}&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 5 : &amp;quot;q&amp;quot; &lt;br /&gt;
  have 6 : &amp;quot;¬q&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
  have 7 : &amp;quot;False&amp;quot; using 6 5 by (rule notE)}&lt;br /&gt;
ultimately have 8 : &amp;quot;False&amp;quot; by (rule disjE)}&lt;br /&gt;
thus &amp;quot;¬(¬p ∧ ¬q)&amp;quot;  by (rule notI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
---**&lt;br /&gt;
proof(rule notI)&lt;br /&gt;
assume 2 :&amp;quot;¬p∧¬q&amp;quot;&lt;br /&gt;
show False &lt;br /&gt;
using assms&lt;br /&gt;
proof(rule disjE)&lt;br /&gt;
{assume 1: &amp;quot;p&amp;quot; &lt;br /&gt;
have 3: &amp;quot;¬p&amp;quot; using 2 by (rule conjunct1)&lt;br /&gt;
show False using 3 1 by (rule notE)}&lt;br /&gt;
{assume 4: &amp;quot;q&amp;quot;&lt;br /&gt;
have 5: &amp;quot;¬q&amp;quot; using 2 by (rule conjunct2)&lt;br /&gt;
show False using 5 4 by (rule notE)}&lt;br /&gt;
qed&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;
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-&lt;br /&gt;
{assume 1 : &amp;quot;¬p ∨ ¬q&amp;quot;&lt;br /&gt;
have &amp;quot;¬p ∨ ¬q&amp;quot; using 1 by this&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 2 : &amp;quot;¬p&amp;quot;&lt;br /&gt;
  have 3 : &amp;quot;p&amp;quot; using assms by (rule conjunct1)&lt;br /&gt;
  have 4 : &amp;quot;False&amp;quot; using 2 3 by (rule notE)}&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 5 : &amp;quot;¬q&amp;quot;&lt;br /&gt;
  have 6 : &amp;quot;q&amp;quot; using assms by (rule conjunct2)&lt;br /&gt;
  have 7 : &amp;quot;False&amp;quot; using 5 6 by (rule notE)}&lt;br /&gt;
ultimately have &amp;quot;False&amp;quot; by (rule disjE)}&lt;br /&gt;
thus &amp;quot;¬(¬p ∨ ¬q)&amp;quot; by (rule notI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
---**&lt;br /&gt;
&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 (rule notI)&lt;br /&gt;
assume 1: &amp;quot;¬p∨¬q&amp;quot;&lt;br /&gt;
show False &lt;br /&gt;
using 1&lt;br /&gt;
proof(rule disjE)&lt;br /&gt;
assume 2:  &amp;quot;¬p&amp;quot;&lt;br /&gt;
have 3: &amp;quot;p&amp;quot; using assms by (rule conjunct1)&lt;br /&gt;
show False using 2 3 by (rule notE)&lt;br /&gt;
next&lt;br /&gt;
assume 4: &amp;quot;¬q&amp;quot;&lt;br /&gt;
have 5: &amp;quot;q&amp;quot; using assms by (rule conjunct2)&lt;br /&gt;
show False using 4 5 by (rule notE)&lt;br /&gt;
qed&lt;br /&gt;
qed&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;
proof-&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 2 by (rule notE)}&lt;br /&gt;
hence 4 : &amp;quot;¬p&amp;quot; by (rule notI)&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 6 by (rule notE)}&lt;br /&gt;
hence 8 : &amp;quot;¬q&amp;quot; by (rule notI)&lt;br /&gt;
show &amp;quot;¬p ∧ ¬q&amp;quot; using 4 8 by (rule conjI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
(*Otra opción para usar tercio excluso*)&lt;br /&gt;
&lt;br /&gt;
lemma ejercicio_46_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 1:&amp;quot;¬p | p&amp;quot; by (rule excluded_middle)&lt;br /&gt;
  show &amp;quot;¬p &amp;amp; ¬q&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;
      have 3:&amp;quot;¬q | q&amp;quot; by (rule excluded_middle)&lt;br /&gt;
      show &amp;quot;¬p &amp;amp; ¬q&amp;quot;&lt;br /&gt;
      using 3&lt;br /&gt;
      proof (rule disjE)&lt;br /&gt;
        {assume 4:&amp;quot;¬q&amp;quot;&lt;br /&gt;
          with 2 show &amp;quot;¬p &amp;amp; ¬q&amp;quot; by (rule conjI)}&lt;br /&gt;
        next&lt;br /&gt;
        {assume &amp;quot;q&amp;quot;&lt;br /&gt;
          then have &amp;quot;p | q&amp;quot; by (rule disjI2)&lt;br /&gt;
          with assms show &amp;quot;¬p &amp;amp; ¬q&amp;quot; by (rule notE)}&lt;br /&gt;
      qed&lt;br /&gt;
      }&lt;br /&gt;
    next&lt;br /&gt;
    {assume 5:&amp;quot;p&amp;quot;&lt;br /&gt;
      then have &amp;quot;p | q&amp;quot; by (rule disjI1)&lt;br /&gt;
      with assms show &amp;quot;¬p &amp;amp; ¬q&amp;quot; by (rule notE)&lt;br /&gt;
      }&lt;br /&gt;
  qed&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;
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-&lt;br /&gt;
{assume 1 : &amp;quot;p ∨ q&amp;quot;&lt;br /&gt;
have &amp;quot;p ∨ q&amp;quot; using 1 by this&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 2 : &amp;quot;p&amp;quot;&lt;br /&gt;
  have 3 : &amp;quot;¬p&amp;quot; using assms by (rule conjunct1)&lt;br /&gt;
  have 4 : &amp;quot;False&amp;quot; using 3 2 by (rule notE)}&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 5 : &amp;quot;q&amp;quot;&lt;br /&gt;
  have 6 : &amp;quot;¬q&amp;quot; using assms by (rule conjunct2)&lt;br /&gt;
  have 6 : &amp;quot;False&amp;quot; using 6 5 by (rule notE)}&lt;br /&gt;
ultimately have &amp;quot;False&amp;quot; by (rule disjE)}&lt;br /&gt;
thus &amp;quot;¬(p ∨ q)&amp;quot; by (rule notI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
---**&lt;br /&gt;
&lt;br /&gt;
proof(rule notI)&lt;br /&gt;
assume 1: &amp;quot;p∨q&amp;quot;&lt;br /&gt;
show False&lt;br /&gt;
using 1 &lt;br /&gt;
proof(rule disjE)&lt;br /&gt;
{assume 2:&amp;quot;p&amp;quot;&lt;br /&gt;
have 3:&amp;quot;¬p&amp;quot; using assms by (rule conjunct1)&lt;br /&gt;
show &amp;quot;False&amp;quot; using 3 2 by (rule notE)}&lt;br /&gt;
next&lt;br /&gt;
{assume 5:&amp;quot;q&amp;quot;&lt;br /&gt;
have 6:&amp;quot;¬q&amp;quot; using assms by (rule conjunct2)&lt;br /&gt;
show &amp;quot;False&amp;quot; using 6 5 by (rule notE)}&lt;br /&gt;
qed&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;
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-&lt;br /&gt;
{assume 1 : &amp;quot;p ∧ q&amp;quot;&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 3 : &amp;quot;p&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
  have 4 : &amp;quot;False&amp;quot; using 2 3 by (rule notE)}&lt;br /&gt;
moreover&lt;br /&gt;
 {assume 5 : &amp;quot;¬q&amp;quot;&lt;br /&gt;
  have 6 : &amp;quot;q&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
  have 7 : &amp;quot;False&amp;quot; using 5 6 by (rule notE)}&lt;br /&gt;
ultimately have &amp;quot;False&amp;quot; by (rule disjE)}&lt;br /&gt;
thus &amp;quot;¬(p ∧ q)&amp;quot; by (rule notI)&lt;br /&gt;
qed&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;
&lt;br /&gt;
proof(rule notI)&lt;br /&gt;
assume 1:&amp;quot;p∧q&amp;quot;&lt;br /&gt;
show False&lt;br /&gt;
using assms&lt;br /&gt;
proof(rule disjE)&lt;br /&gt;
assume 2:&amp;quot;¬p&amp;quot;&lt;br /&gt;
have 3: &amp;quot;p&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
show False using 2 3 by (rule notE)&lt;br /&gt;
next&lt;br /&gt;
assume 4: &amp;quot;¬q&amp;quot;&lt;br /&gt;
have 5: &amp;quot;q&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
show False using 4 5 by (rule notE)&lt;br /&gt;
qed&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;
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&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
have 3 : &amp;quot;¬p&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
have 4 : &amp;quot;False&amp;quot; using 3 2 by (rule notE)}&lt;br /&gt;
thus &amp;quot;¬(p ∧ ¬p)&amp;quot; by (rule notI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
---**&lt;br /&gt;
&lt;br /&gt;
proof(rule notI)&lt;br /&gt;
assume 1: &amp;quot;p∧¬p&amp;quot;&lt;br /&gt;
have 2: &amp;quot;p&amp;quot; using 1 by (rule conjunct1)&lt;br /&gt;
have 3: &amp;quot;¬p&amp;quot; using 1 by (rule conjunct2)&lt;br /&gt;
show False using 3 2 by (rule notE)&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;
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;
&lt;br /&gt;
proof-&lt;br /&gt;
have 1 : &amp;quot;p&amp;quot; using assms by (rule conjunct1)&lt;br /&gt;
have 2 : &amp;quot;¬p&amp;quot; using assms by (rule conjunct2)&lt;br /&gt;
show &amp;quot;q&amp;quot; using 2 1 by (rule notE)&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;
lemma ejercicio_51:&lt;br /&gt;
  assumes &amp;quot;¬¬p&amp;quot;&lt;br /&gt;
  shows   &amp;quot;p&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
show &amp;quot;p&amp;quot; using assms by (rule notnotD)&lt;br /&gt;
qed&lt;br /&gt;
&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;
proof(rule ccontr)&lt;br /&gt;
assume 1: &amp;quot;¬p&amp;quot;&lt;br /&gt;
show False using assms 1 by (rule notE)&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;
lemma ejercicio_52:&lt;br /&gt;
  &amp;quot;p ∨ ¬p&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
have 1: &amp;quot;¬p∨p&amp;quot; by (rule excluded_middle)&lt;br /&gt;
have 2: &amp;quot;¬p∨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∨¬p&amp;quot; using 3 by (rule disjI2)}&lt;br /&gt;
moreover&lt;br /&gt;
{assume 5: &amp;quot;p&amp;quot;&lt;br /&gt;
have 6: &amp;quot;p∨¬p&amp;quot; using 5 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;
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 2 : &amp;quot;¬p&amp;quot;&lt;br /&gt;
  have 3 : &amp;quot;¬(p⟶q)&amp;quot; using 1 2 by (rule mt)&lt;br /&gt;
    {assume 4 : &amp;quot;p&amp;quot;&lt;br /&gt;
     have 5 : &amp;quot;q&amp;quot; using 2 4 by (rule notE)}&lt;br /&gt;
  hence 6 : &amp;quot;p⟶q&amp;quot; by (rule impI)&lt;br /&gt;
  have 7 : &amp;quot;False&amp;quot; using 3 6 by (rule notE)}&lt;br /&gt;
hence 8 : &amp;quot;p&amp;quot; by (rule ccontr)}&lt;br /&gt;
thus  &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;
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-&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&amp;quot; using assms 2 by (rule mp)&lt;br /&gt;
  have 4 : &amp;quot;False&amp;quot; using 3 1 by (rule notE)}&lt;br /&gt;
hence 5 : &amp;quot;q&amp;quot; by (rule ccontr)}&lt;br /&gt;
thus &amp;quot;p⟶q&amp;quot; by (rule impI)&lt;br /&gt;
qed&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
---**&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
proof(rule impI)&lt;br /&gt;
assume 1: &amp;quot;p&amp;quot;&lt;br /&gt;
have 2 : &amp;quot;¬¬p&amp;quot; using 1 by (rule notnotI)&lt;br /&gt;
have 3: &amp;quot;¬¬q&amp;quot; using assms 2 by (rule mt)&lt;br /&gt;
show  &amp;quot;q&amp;quot; using 3 by (rule notnotD)&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;
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;
have &amp;quot;¬p ∨ p&amp;quot; using 1 by this&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;
have &amp;quot;¬q ∨ q&amp;quot; using 3 by this&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 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;
(*Otra forma*)&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;
show &amp;quot;p | q&amp;quot; using 1&lt;br /&gt;
  proof (rule disjE)&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;
      show &amp;quot;p | q&amp;quot; using 3&lt;br /&gt;
        proof (rule disjE)&lt;br /&gt;
          {assume &amp;quot;q&amp;quot;&lt;br /&gt;
            thus &amp;quot;p | q&amp;quot; by (rule disjI2)}&lt;br /&gt;
          next&lt;br /&gt;
          {assume &amp;quot;¬q&amp;quot;&lt;br /&gt;
            with 2 have 4:&amp;quot;¬p &amp;amp; ¬q&amp;quot; by (rule conjI)&lt;br /&gt;
            show &amp;quot;p | q&amp;quot; using assms 4 by (rule notE)}&lt;br /&gt;
        qed}&lt;br /&gt;
    next&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;
  qed&lt;br /&gt;
qed&lt;br /&gt;
&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;
proof-&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 2 by (rule notE)}&lt;br /&gt;
hence 4 : &amp;quot;p&amp;quot; by (rule ccontr)&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 6 by (rule notE)}&lt;br /&gt;
hence 8 : &amp;quot;q&amp;quot; by (rule ccontr)&lt;br /&gt;
show &amp;quot;p ∧ q&amp;quot; using 4 8 by (rule conjI)&lt;br /&gt;
qed&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 1 by (rule disjI1)&lt;br /&gt;
have 3: &amp;quot;False&amp;quot; using assms 2 by (rule notE)}&lt;br /&gt;
hence 8: &amp;quot;p&amp;quot; by (rule ccontr)&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;False&amp;quot; using assms 5 by (rule notE)}&lt;br /&gt;
hence 9: &amp;quot;q&amp;quot; by (rule ccontr)&lt;br /&gt;
show &amp;quot;p∧q&amp;quot; using 8 9 by (rule conjI)&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;
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;
have &amp;quot;¬p ∨ p&amp;quot; using 1 by this&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;
have &amp;quot;¬q ∨ q&amp;quot; using 5 by this&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 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;
lemma ejercicio_58:&lt;br /&gt;
  &amp;quot;(p ⟶ q) ∨ (q ⟶ p)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
proof-&lt;br /&gt;
have 1 : &amp;quot;¬(p ⟶ q) ∨ (p ⟶ q)&amp;quot; by (rule excluded_middle)&lt;br /&gt;
have &amp;quot;¬(p ⟶ q) ∨ (p ⟶ q)&amp;quot; using 1 by this&lt;br /&gt;
moreover&lt;br /&gt;
{assume 2 : &amp;quot;¬(p ⟶ q)&amp;quot;&lt;br /&gt;
 {assume 3 : &amp;quot;q&amp;quot;&lt;br /&gt;
  {assume 4 : &amp;quot;p&amp;quot;&lt;br /&gt;
   have 5 : &amp;quot;q&amp;quot; using 3 .}&lt;br /&gt;
  hence 6 : &amp;quot;p⟶q&amp;quot; by (rule impI)&lt;br /&gt;
  have 7 : &amp;quot;p&amp;quot; using 2 6 by (rule notE)}&lt;br /&gt;
hence 8 : &amp;quot;q⟶p&amp;quot; by (rule impI)&lt;br /&gt;
have 9 : &amp;quot;(p ⟶ q) ∨ (q ⟶ p)&amp;quot; using 8 by (rule disjI2)}&lt;br /&gt;
moreover&lt;br /&gt;
{assume 10 : &amp;quot;p ⟶ q&amp;quot;&lt;br /&gt;
have 11 : &amp;quot;(p ⟶ q) ∨ (q ⟶ p)&amp;quot; using 10 by (rule disjI1)}&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;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2016/index.php?title=Rel_3&amp;diff=239</id>
		<title>Rel 3</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2016/index.php?title=Rel_3&amp;diff=239"/>
		<updated>2018-07-16T12:38:07Z</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;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2016/index.php?title=MediaWiki:Common.css&amp;diff=238</id>
		<title>MediaWiki:Common.css</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2016/index.php?title=MediaWiki:Common.css&amp;diff=238"/>
		<updated>2018-07-16T12:37:24Z</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/LMF2016/index.php?title=L%C3%B3gica_matem%C3%A1tica_y_fundamentos_(2015-16)&amp;diff=4</id>
		<title>Lógica matemática y fundamentos (2015-16)</title>
		<link rel="alternate" type="text/html" href="https://www.glc.us.es/~jalonso/LMF2016/index.php?title=L%C3%B3gica_matem%C3%A1tica_y_fundamentos_(2015-16)&amp;diff=4"/>
		<updated>2016-02-16T11:39:26Z</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;&amp;#039;&amp;#039;Relación 1(a)&amp;#039;&amp;#039;&amp;#039;: Iniciación a la programació...&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;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]] y [[Relación 1 |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 1(b)&amp;#039;&amp;#039;&amp;#039;: Tema 1. ([[R2 |Enunciado]] y [[Relación 2 |Solución colaborativa]]).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&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]], [[Relación 2a |Solución colaborativa]] y [[R2a sol | Una solución]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 2(b)&amp;#039;&amp;#039;&amp;#039;: Tema 1:  cuestiones ([[R2b |Enunciado]] y [[Relación 2b |Solución colaborativa]]).&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]] y [[Relación 3 |Solución colaborativa]]).&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]] y [[Relación 4 |Solución colaborativa]]).&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]] y [[Relación 5 |Solución colaborativa]]).&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]] y [[Relación 6 |Solución colaborativa]]).&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]], [[Relación 7 |Solución colaborativa]] y [[R7 sol | Una solución ]]).&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]] y [[Relación 8 |Solución colaborativa]]).&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]],[[Relación 9 |Solución colaborativa]] y [[Una solución | una solución]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 10&amp;#039;&amp;#039;&amp;#039;: Cuestiones. ([[R10 |Enunciado]] y [[Relación 10 |Solución colaborativa]]).&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]], [[Relación 11 |Solución colaborativa]]).&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]], [[Relación 12 |Solución colaborativa]] y [[R12 sol | Una solución ]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 13&amp;#039;&amp;#039;&amp;#039;: Cuestiones. ([[R13 |Enunciado]] y [[Relación 13 |Solución colaborativa]]).&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]] y [[Relación 14 |Solución colaborativa]]).&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]] y [[Relación 15 |Solución colaborativa]]).&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]] y [[Relación 16 |Solución colaborativa]]).&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;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 4&amp;#039;&amp;#039;&amp;#039;: Argumentación proposicional con Isabelle/HOL. ([[Rel_4 |Enunciado]] y [[Relación 4 |Solución colaborativa]]).&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]] y [[Relación 5 |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 6&amp;#039;&amp;#039;&amp;#039;: Deducción natural en lógica de primer con Isabelle/HOL. ([[Rel_6 |Enunciado]] y [[Relación 6 |Solución colaborativa]]).&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 8&amp;#039;&amp;#039;&amp;#039;: Formas normales en lógica proposicional en Haskell ([[Media:FormasNormales.hs |Enunciado]] y [[Relación 8 |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 9&amp;#039;&amp;#039;&amp;#039;: Cláusulas proposicionales en Haskell. ([[Media:Clausulas.hs |Enunciado]], [[Relación 9 |Solución colaborativa]] y [[Media:Clausulas_sol.hs | una solución]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 10&amp;#039;&amp;#039;&amp;#039;: Resolución proposicional en Haskell. ([[Media:ResolucionProposicional.hs |Enunciado]], [[Relación 10 |Solución colaborativa]] y [[Media:ResolucionProposicional_sol.hs | una solución]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 11&amp;#039;&amp;#039;&amp;#039;: Razonamiento sobre programas con Isabelle/HOL. ([[R11.thy |Enunciado]], [[Relación 11 |Solución colaborativa]] y [[Solución Relación 11 |Una solución]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 12&amp;#039;&amp;#039;&amp;#039;: Cuantificadores sobre listas en Isabelle/HOL. ([[R12.thy |Enunciado]], [[Relación 12 |Solución colaborativa]] y [[Solución Relación 12 |Una solución]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 13&amp;#039;&amp;#039;&amp;#039;: Recorridos de árboles. ([[R13.thy |Enunciado]], [[Relación 13 |Solución colaborativa]] y [[Solución Relación 13 |Una solución]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Examen 2&amp;#039;&amp;#039;&amp;#039;: Soluciones ([[Media:ex-30-b.hs |Primera parte]] y [[Segunda parte |Segunda parte]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Examen 3&amp;#039;&amp;#039;&amp;#039;: Soluciones ([[Media:ex3_sol.hs |Primera parte]], [[Media:Sintaxis.hs |Sintaxis]] y [[Segunda parte (ex.3) |Segunda parte (ex3)]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Examen 4&amp;#039;&amp;#039;&amp;#039;: Soluciones ([[Media:ex4_sol.hs |Primera parte]] y [[Segunda parte (ex.4) |Segunda parte (ex. 4)]]).&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 13&amp;#039;&amp;#039;&amp;#039;: [[Tema 13 | Razonamiento sobre programas con Isabelle/HOL]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Tema 14&amp;#039;&amp;#039;&amp;#039;: [[Tema 14 | Razonamiento por casos y por inducción]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Tema 15&amp;#039;&amp;#039;&amp;#039;: [[Tema 15 | Verificación de la ordenación por inserción]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Tema 16&amp;#039;&amp;#039;&amp;#039;: [[Tema 16 | Verificación de un compilador de expresiones aritméticas]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 4&amp;#039;&amp;#039;&amp;#039;: Argumentación proposicional con Isabelle/HOL. ([[Rel_4 |Enunciado]] y [[Relación 4 |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 5&amp;#039;&amp;#039;&amp;#039;: Eliminación de conectivas. ([[Rel_5 |Enunciado]] y [[Relación 5 |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 6&amp;#039;&amp;#039;&amp;#039;: Formalización de argumentos en lógica de primer orden. ([[Rel_6 |Enunciado]] y [[Relación 6 |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 7&amp;#039;&amp;#039;&amp;#039;: Deducción natural en lógica de primer con Isabelle/HOL. ([[Rel_7 |Enunciado]] y [[Relación 7 |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 8&amp;#039;&amp;#039;&amp;#039;: Tableros semánticos proposicionales en Haskell. ([[Media:Rel_8.hs |Enunciado]] y [[Relación 8 |Solución colaborativa]]).&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]] y [[Relación 9 |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 10&amp;#039;&amp;#039;&amp;#039;: Cláusulas proposicionales en Haskell. ([[Media:Clausulas.hs |Enunciado]] y [[Relación 10 |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 11&amp;#039;&amp;#039;&amp;#039;: Resolución proposicional en Haskell. ([[Media:ResolucionProposicional.hs |Enunciado]] y [[Relación 11 |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 12&amp;#039;&amp;#039;&amp;#039;: Aplicaciones de la Lógica Proposicional en Haskell. ([[Media:AplicacionesLP.hs |Enunciado]] y [[AplicacionesLP |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 13&amp;#039;&amp;#039;&amp;#039;: Programación funcional en Isabelle/HOL. ([[Media:R13.thy |Enunciado]] y [[Relación 13 |Solución colaborativa]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Relación 14&amp;#039;&amp;#039;&amp;#039;: Razonamiento sobre programas con Isabelle/HOL. ([[Media:R14.thy |Enunciado]] y [[Relación 14 |Solución colaborativa]]).&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 14&amp;#039;&amp;#039;&amp;#039;: [[Tema 14 | Programación funcional en Isabelle/HOL]] ([[Media:T14.thy |Teoría]]).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Tema 15&amp;#039;&amp;#039;&amp;#039;: [[Tema 15 | Razonamiento sobre programas con Isabelle/HOL]] ([[Media:T15.thy |Teoría]]).&lt;br /&gt;
&lt;br /&gt;
=== Ejercicios evaluables ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Ejercicio 1&amp;#039;&amp;#039;&amp;#039;: [[Relación 3 | Deducción natural en lógica proposicional con Isabelle/HOL]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Ejercicio 2&amp;#039;&amp;#039;&amp;#039;: [[Ejercicio 2 |Deducción natural en lógica de primer orden con Isabelle/HOL]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Nota al ejercicio 2&amp;#039;&amp;#039;&amp;#039;: los lemas auxiliares que se usen en una demostración por deducción natural han de ser probados de forma no automática. Se amplía el plazo hasta el viernes 3 de mayo para que se envíe el ejercicio 2 teniendo en cuenta esta aclaración.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Ejercicio 3&amp;#039;&amp;#039;&amp;#039;: [[Ejercicio 3 |Argumentación, deducción natural en lógica de primer orden con Isabelle/HOL y tableros semánticos]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Ejercicio 4&amp;#039;&amp;#039;&amp;#039;: [[Ejercicio 4 | Algoritmos de lógica proposicional en Haskell]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Ejercicio 5 (opcional)&amp;#039;&amp;#039;&amp;#039;: [[Ejercicio 5 | Formas normales condicionales (Haskell e Isabelle/HOL)]].&lt;br /&gt;
&lt;br /&gt;
=== Problemas semanales ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Problema 1&amp;#039;&amp;#039;&amp;#039;: [[Problema 1 | Inducción sobre fórmulas]].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Problema 2&amp;#039;&amp;#039;&amp;#039;: [[Problema 2 | Subconjuntos inconsistentes]].&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2016/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/LMF2016/index.php?title=MediaWiki:Mainpage&amp;diff=3"/>
		<updated>2016-02-16T11:38:08Z</updated>

		<summary type="html">&lt;p&gt;WikiSysop: Página creada con &amp;#039;Lógica matemática y fundamentos (2015-16)&amp;#039;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Lógica matemática y fundamentos (2015-16)&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://www.glc.us.es/~jalonso/LMF2016/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/LMF2016/index.php?title=MediaWiki:Sidebar&amp;diff=2"/>
		<updated>2016-02-16T11:37:20Z</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>