lunes, 27 de diciembre de 2021

La buena ordenación

Se dice que un conjunto no vacío está bien ordenado si todos sus subconjuntos no vacíos tienen mínimo, esto es: si la mayor de las cotas inferiores ( o ínfimo ) de cada uno de ellos está incluida en el respectivo subconjunto. Esta propiedad de la buena ordenación es muy importante en los números naturales, pues en ella se sustenta el principio de inducción.

En efecto, el conjunto de los números naturales $\mathbb{N}$ está bien ordenado. No lo está, sin embargo, el conjunto de los números enteros $\mathbb{Z}$ y, por consiguiente, tampoco lo está el de los racionales $\mathbb{Q}$ ni el de los reales $\mathbb{R}$.

Para demostrar que el conjunto de los números naturales $\mathbb{N}$ está bien ordenado expondré una sencilla y bonita demostración que puede encontrarse en muchos manuales y que contribuye a mostrar la belleza de las matemáticas. Deberemos probar pues que todos los subconjuntos no vacíos del conjunto de los números naturales tienen mínimo.

Sea $(\mathbb{N},\le)$ el conjunto de los números naturales con la relación de orden $\le$.
Sea $A$ un subconjunto no vacío cualquiera de $\mathbb{N}$, entonces cabe hacer distinción entre los siguientes casos:

(a) Si $1 \in A$, hemos terminado ya que cualquier número natural es mayor o igual que $1$, que es el menor número natural y, por tanto, el mínimo de $A$.
(b) Si $1 \notin A$, demostraremos que tiene elemento mínimo, procediendo por el método de contradicción. Sea $B$ el conjunto formado por todos los números naturales estrictamente menores que cualquier elemento de $A$ y partamos de la siguiente hipótesis: la menor de las cotas inferiores de $A$ (que denotamos por $m$) está en $B$. De dicha hipótesis se deduce que $m+1 \in A$. Por otra parte, al ser $m$ estrictamente menor que cualquier elemento $a \in A$, podemos escribir $m+1 \le a$, esto es: $m+1 \in B$, luego $m+1 \notin A$, llegando así a una contradicción y debiendo por tanto negar la hipótesis de partida, luego $m \in A$ y esto ocurre para cualquier subconjunto no vacío de $\mathbb{N}$, luego dicho conjunto posee buena ordenación.   $\square$


Números complejos con GNU MAXIMA

  • [ 1 | 2 | 3 ]

Programación con GNU MAXIMA


Estadística descriptiva de una variables con GNU MAXIMA


Desarrollo de Taylor de funciones con GNU Maxima

Cálculo de integrales indefinidas y definidas con GNU MAXIMA

Cálculo de límites con GNU MAXIMA

Listas y conjuntos con GNU MAXIMA



Archivos y listas con GNU MAXIMA


Multiplicación de matrices con MAXIMA

domingo, 26 de diciembre de 2021

El problema de Apolonio sobre las circunferencias tangentes

El problema de Apolonio (Apolonio de Pérgamo, c. 262-190 adC, el matemático griego que dio nombre a los tres tipos de cónicas: elipse, parábola e hipérbola), consiste en determinar una circunferencia que sea tangente a tres circunferencias dadas. Aunque Apolonio dio ya una solución al problema que él mismo planteó, muchos siglos después, el matemático francés Joseph Diaz Gergonne (1771-1859), al trabajar con dicho problema buscando nuevos enfoques, empleó también la noción de centro radical de tres circunferencias y la de eje radical de dos circunferencias, y, por tanto, también la noción de potencia de un punto respecto de una circunferencia. Además, de conceptos modernos (s XIX) - propios de la geometría proyectiva, como es la noción de inversión del plano; resultó de todo ello una demostración muy elegante los detalles de la cual se pueden leer en este artículo (Wikipedia).


En esta figura se muestran las ocho soluciones al problema. Fuente: http://upload.wikimedia.org/wikipedia/commons/a/a7/Apolloniuscircle.gif. La noción de potencia d'un punto respecto de una circunferencia es una pieza clave en la resolución de problemas de tangencia. En matemática aplicada, son de enorme interés en ingeniería mecánica. $\square$

Proposiciones recíproca, contrarrecíproca, e inversa


El llenguatge col·loquial, a vegades, ens pot jugar alguna mala passada. L'altre dia vaig escoltar una conversa entre dues persones. Una li deia a l'altra “ (...) així, tots els elefants són mamífers, però la (sic) inversa no es pot pas validar(...)”. De seguida vaig notar alguna cosa que no anava bé en allò que s'estava dient. En arribar a casa, rumiant més acuradament, me'n vaig adonar del que no estava bé. I és que, sovint, es confon la proposició inversa amb la proposició recíproca. De fet, la persona que havia parlat hauria hagut de dir: (...) així, tots els elefants són mamífers, però la recíproca (no pas inversa) no es pot pas validar (...)”, perquè, probablement, estava confonent proposició recíproca amb proposició inversa.

Naturalment, la proposició inversa – la inversa de veritat – diria: “tot animal que no sigui un elefant no és un mamífer” que, clarament, no és pas certa; hi una ha infinitat de contra exemples (gossos, gats, dofins, etcètera). Val a dir, però que la proposició contra recíproca sí que és vàlida, però: “tot animal que no sigui mamífer no és un elefant”.





Considerem una proposició donada de la forma A implica B la qual entendrem com a "proposició directa". A partir d'aquesta distingirem entre les següents proposicions associades:

  • recíproca: B implica A
  • inversa: no A implica no B
  • contra recíproca: no B implica no A


  • Vegem un altre exemple:
    Considerem la proposició directa: plou, per tant hi ha núvols (proposició certa, és clar). Associada amb aquesta hi ha tres proposicions més, de les quals, dues no es poden validar:
    • recíproca: hi ha núvols, per tant plou (no es pot validar)
    • inversa: no plou, per tant no hi ha núvols (no es pot validar )
    • contra recíproca: no hi ha núvols, per tant no plou (és certa)

    I el terme viceversa ? Per altra banda, aprofito per comentar que, a vegades, i de forma gens apropiada, es fa servir viceversa com a sinònim de inversa o de recíproca en les proposicions condicionals, la qual cosa crea, molt sovint, una nova font de confusió i error, ja que viceversa es refereix a la inversió de l'ordre dels termes (diccionari IEC). Sí que és apropiat el seu ús, per tant, per fer referència als sentits oposats d'una acció, per exemple, "Josep passa la pilota a Marta, i viceversa" (i Marta la passa a Josep). $\square$

    miércoles, 22 de diciembre de 2021

    Algunas de mis herramientas de cálculo favoritas

    Mis herramientas favoritas

    Lenguajes de programación y asistentes de cálculo:
        Hoja de cálculo ( herramienta generalista, muy versátil; está integrada en muchas otras herramientas )
        R ( estadística, probabilidad, y cálculo numérico )
        Octave ( cálculo y análisis numérico )
        Maxima ( Un clásico CAS - cálculo simbólico - )
        Python ( lenguaje de propósito general, orientación a objetos; muy adecuado para los trabajos de modelización )
        C/C++ ( lenguaje de propósito general, orientación a objetos; muy adecuado para los proyectos de ingeniería y electrónica )
        Processing ( lenguaje muy apropiado para la elaboración de gráficos, orientación a objetos. También sirve como interfaz para la adquisición de datos mediante la intervención de una placa microcontroladora )
        Julia ( cálculo numérico, cálculo paralelo, un proyecto interesantísimo )
        JavaScript ( lenguaje orientado a objetos muy adecuado para preparar utilidades interactivas en una página web )

    Herramientas de mucha utilidad didáctica para las matemáticas en e. secundaria:
        GeoGebra ( multiherramienta: hoja de cálculo, cálculo simbólico, gráficos en 2 y 3 dimensiones, ...)
        Logo ( un clásico didáctico del MIT )
        Scratch ( programación visual, muy apropiada para aprender a programar, hereda la filosofía de los científicos que concibieron el lenguaje Logo, pero con eficaces interfaces gráficos que facilitan el aprendizaje )

    Calculadoras científicas, gráficas, programables ...:
        Casio fx 82 MS ( humilde calculadora científica, pero muy buena )
        Casio fx 850P ( un clásico entrañable de los años 80 del siglo pasado, programable en Casio Basic, con una gran librería de utilidades ). Se me estropeó hace unos años (era muy viejecita)
        TI 92 II ( un calculadora gráfica de los años 90 del siglo pasado, programable en TI Basic; entre otras herramientas, incorpora un módulo CAS con Derive, todo un clásico )
        TI Voyage 200 ( es la evolución de la TI92, con algunas mejoras, todo un clásico de la primera década del actual siglo )
        NumWorks ( calculadora gráfica y programable del siglo XXI, muy rápida y con mucha capacidad de memorai, con un enfoque novedoso por tratarse de un proyecto colaborativo: software y hardware abiertos. Es programable en Python. Presenta una buena conectividad a través de la página web del fabricante. El software se puede actualizar periódicamente y se desarrolla de forma continua, cada vez es mejor. )

    Herramientas de edición:
        Bloc de notas ( por su sencillez y pocos recursos necesarios, cualquiera sirve. Una herramienta humilde, pero necesaria. Aparece integrada en todos los sitemas operativos )
        LaTeX ( sistema de composición de documentos, muy apropiado para la tipografía científica )
        LibreOffice ( conjunto de herramientas ofimáticas )
        LyX ( procesador de textos híbrido WYSIWYG - LaTex )
        HTML ( un lenguaje de marcas ( 'tags' ) para editar trabajos en la www: un clásico fundamental )

    Electrónica:
        Fritzing ( programa para el diseño de circuitos electrónicos: por si os gusta experimentar en el taller, trastear y soldar )
    nbsp   Scratch ( programación visual, puede utilizarse en proyectos de robótica )
        MBlock ( programación visual, similar a Scratch y especialmente útil en proyectos de robótica )

    Astronomía: ( programas de ayuda para la localización de astros y para obtener sus coordenadas )
        Stellarium
        Cartes du Ciel

    «A un cerezo subí, que cerezas tenía ...»

    ENUNCIADO. A un cerezo subí, que cerezas tenía; cerezas no cogí, y cerezas en el cerezo no dejé. ¿Cuántas cerezas había en el cerezo antes de subir?

    SOLUCIÓN. De la frase cerezas tenía (se habla de cerezas), se deduce que el número de cerezas que tenía el cerezo era mayor que $1$. Por otra parte, de la frase cerezas no cogí (no cogí más de una cereza), se deduce que cogí $1$ o bien $0$ cerezas; pero, teniendo en cuenta, además, la frase cerezas en el cerezo no dejé (no quedó en el cerezo más de una cereza), tuve que coger exactamente $1$ cereza y dejar de coger exactamente $1$ cereza. Necesariamente, debí coger alguna cereza, pues, de lo contrario (de no haber cogido ninguna), habría quedado alguna cereza en el cerezo, en contra de lo que se dice en la tercera frase. Por consiguiente, en el cerezo había exactamente $2$ cerezas. $\square$

    viernes, 17 de diciembre de 2021

    Un problema de raonament ...

    En Jan, un excursionista, caminant per un viarany que solca un bosc frondós, fa via cap al refugi. Arriba en un punt on el viarany es bifurca. A la vora del camí hi ha una masia on sap que hi viuen dos germans. Un és sincer – li direm S – i l'altre és un mentider – l'anomenarem M -. En Jan ja havia estat advertit per un company que es trobaria amb el dilema d'haver de formular una pregunta a una persona que tant podria dir sempre la veritat, com de topar-se amb el seu germà, que diu sempre coses falses.

    Evidentment no serviria de res fer la pregunta que li faria a una persona sincera perquè senzillament la probabilitat que aquesta persona fos S és del 50%. No hi ha manera de saber amb certesa si Jan es trobarà amb S o bé amb M. Més aviat, pensa Jan, hauria de deduir el camí correcte a partir de la resposta que li fos donada a la pregunta que formulés, fos qui fos qui es trobés, el germà S o bé el germà M. Jan s'aturà davant la porta de la masia. De seguida va sortir un dels germans que, com que Jan no sap quins dels dos és, aquí l'anomerarem G.

            Jan: Bon dia ! - saludà en Jan alegrement.
            G: I bona hora – el respongué l'home.
            Jan: Voldria fer-vos una pregunta molt important per a mi en aquest moment
            G: Feu-me-la, bon home.
            Jan: Podríeu dir-me quin és el camí que diria el vostre germà que he de prendre per anar cap al refugi ? El de la dreta o el de l'esquerra ?.
            G: Ell diria, sens dubte, el de la dreta.
    (...)

    Jan en va tenir prou per decidir quin era el camí del refugi amb total certesa: prengué el de l'esquerra. Al vespre, a la llum del foc, explicà l'anècdota a d'altres estadants i el per què d'haver de decidir prendre el camí contrari a l'indicat per G (...)

            Jan: Mireu. Si la persona a qui vaig preguntar hagués sigut S (el sincer), aquesta hauria contestat amb sinceritat allò que hauria contestat M, el mentider: el camí que no era; per tant, és lògic que prengués el camí contrari del que em deia. Per altra banda, si la persona a qui vaig preguntar hagués sigut M, hauria contestat el contrari del que el seu germà S hauria contestat (el camí correcte), per tant, també hagués hagut de prendre el camí contrari que m'indicava. En qualsevol cas ... em cal1ia prendre el camí contrari a l'indicat !.

    lunes, 13 de diciembre de 2021

    Introducción al cálculo simbólico con GNU MAXIMA

    Una bona manera d'engrescar-nos en la manipulació simbòlica fent ús d'un eina CAS es començar a fer unes proves ben senzilles. Vegeu a continuació un exemple.

    Els primers passos programan amb GNU MAXIMA

    Els primers passos programant amb MAXIMA
    Primera cosa ...

    Editem la funció que anomenem "programa_extremadament_senzill"
    (%i5) programa_extremadament_senzill():=
    (print("hola")
    )$
    Depurem els possibles errors i fem actuar la funció escrivint l'entrada
    (%i6) programa_extremadament_senzill();
    Obtenint ...
    hola
    (%o6) hola

    Observem que les entrades de l'usuari es designen amb el símbol del sistema %i i les sortides amb el símbol %o, convenientment numerades.

    Exemple 1 (totes les variables són globals)

    (%i3) programa_senzill_1(a,b):=
    (
    s:a+b,
    print("suma de a i b =",s)
    )$
    (%i4) programa_senzill_1(2,3);
    suma de a i b = 5
    (%o4) 5


    Exemple 2 (els paràmetres d'entrada a i b són variables globals, mentre que el resultat s és una variable local)

    (%i1) programa_senzill_2():=
    block([s],
    a:read("entreu el primer sumand"),
    b:read("entreu el segon sumand"),
    s:a+b,
    print("suma de a i b =",s)
    )$

    (%i2) programa_senzill_2();
    entreu el primer sumand 1;
    entreu el segon sumand 2;
    suma de a i b = 3
    (%o2) 3

    Observem que les variables locals d'una funció (aquí, "programa_senzill_2") - en aquest, l'única variable local és s - apareixen, després de block( entre claudàtors - block([s],... -, separades per comes si n'hi ha més d'una. El parèntesi "(" amb què hem començat el "block" - "block(" - cal tancar-lo necessàriament al final. El símbol de l'acabament "$" indica a l'interpret que no volem eco del sistema - llevat de la comunicació dels possibles errors - un cop hàgim validat la funció

    Exemple 3 (totes les variables són locals)

    (%i1) programa_senzill_3():=
    block([s,
    a:read("entreu el primer sumand"),
    b:read("entreu el segon sumand")],
    s:a+b,
    print("suma de a i b =",s)
    )$

    (%i2) programa_senzill_3();
    entreu el primer sumand 1;
    entreu el segon sumand 2;
    suma de a i b = 3
    (%o2) 3

    Treballant amb fitxers de funcions que prèviament hem programat
    Podem fer servir un bloc de notes per editar codi font de les funcions
    que volem fer servir en una sessió de càlcul amb MAXIMA, a més, naturalment,
    de les moltes que ja té incorporades. A mode d'exemple,
    he escrit el codi de dues funcions molt simples,
    funcio_que_multiplica() i funcio_potencial(), en un mateix fitxer de text amb extensió .mac: prod.mac
    Juntament amb el codi font de les funcions, podem posar comentaris abastant una o vàries línies, a l'estil de C o Java; per exemple, /* això només és un comentari */, és a dir, obrint amb "/*" i tancant amb "*/"

    (contingut del fitxer prod.mac)

    /* multiplicació de dos nombres */
    funcio_que_multiplica():=
    block([p,
    a:read("entreu el primer factor"),
    b:read("entreu el segon factor")],
    p:a*b,
    print("a x b =",p)
    )

    /* potència de dos nombres */
    funcio_potencial():=
    block([w,
    a:read("entreu la base de la potència"),
    b:read("entreu l'exponent")],
    w:a^b,
    print("a^b =",w)
    )


    Per fer ús d'aquest fitxer amb les funcions que hem programat, carreguem el fitxer prod.mac des d'una sessió de MAXIMA
    (%i8) load("e:/taller_maxima/ex_160807/prod.mac");
    (%o8) e:/taller_maxima/ex_160807/prod.mac

    I, si s'escau, després de depurar el codi, emprem les funcions que conté:

    (%i9) funcio_que_multiplica();
    entreu el primer factor 4;
    entreu el segon factor 2;
    a x b = 8
    (%o9) 8

    (%i10) funcio_potencial();
    entreu la base de la potència 2;
    entreu l'exponent 3;
    a^b = 8
    (%o10) 8

    Ejemplos de gráficas con GNU MAXIMA

    Ejemplo de uso de Gráficas de funciones con MAXIMA
    Consideremos el problema de resolver la ecuación trascendente $\sin{x}+x^2=0$, esto es, el de resolver la ecuación $\sin{x}=-x^2$,
    que podemos resolver, de forma aproximada, representado las gráficas de las funciones de ambos miembros, encontrando los puntos de intersección:
    (%i7) plot2d ([sin(x),-x^2], [x, -2*%pi, 2*%pi])


    Ejemplo de gràfics de superficies con MAXIMA
    Sea una superficie en $\mathbb{R}^3$ como, por ejemplo, la bada de Möbius; podemos visualizarla tecleando:
    (%i1) plot3d([cos(x)*(3+y*cos(x/2)),sin(x)*(3+y*cos(x/2)),y*sin(x/2)],[x,-%pi,%pi],[y,-1,1],[grid,50,15]);


    Una película sobre Hypatia d'Alexandria

    El director de cinema Alejandro Amenabar va dirigir una pel·lícula ambientada en els temps convulsos que li va tocar viure a la matemàtica, astrònoma, i filosofa neoplatònica Hypatia (Alexandria, en els darrers temps de la famosa biblioteca, segles IV-V d. C.). El paper d'Hypatia el representa l'actriu Rachel Weisz.
        Després de més mil cinc-cents anys, en un temps - el nostre - on el fanatisme, l'ànsia de poder i les guerres dissortadament continuen existint, la pel·lícula és – mal ens pesi – d'una actualitat renovada. Però, sens dubte, és també un homenatge al rigor, a l'ètica, al valor, i a la inquietud matemàtica i científica d'una dona sàvia, honesta, i valenta: Hypatia (Alexandria, ~370-415 d.C.)


        En una bon nombre d'escenes apareixen disquisicions sobre el sistema de Ptolomeu (el sistema geocèntric): reflexions sobre els seus avantatges i les seves llacunes, de la qual cosa, per descomptat, se'n tenia consciència, malgrat pesessin més les bondats del model que no pas les seves incoherències de base. El director, els guionistes, i els assessors científics i històrics aconsegueixen també escenificar prou bé el rigor del raonament lògic emprat pels grecs a la llum dels Elements d'Euclides (segle III a. C.) i les reflexions filosòfiques sobre el moviment i les dificultats per superar la trava intel·lectual de la idea de “perfecció” de les formes – atribuïda a la circumferència – que, per als clàssics grecs, havia d'anar forçosament lligada als moviments i formes dels astres. En astronomia, els treballs sobre les trajectòries còniques – les corbes/seccions còniques [d'un con] estudiades ja pels matemàtics grecs que van precedir Hypatia (Apoloni de Perge, , segles III-II a. C.) [i tal com es mostra amb molta elegància en una escena de la pel·lícula] - no estarien a punt de substituir el model geocèntrica de Ptolomeu de manera clara fins a finals del segle XVI gràcies als treballs de l'astrònom Johannes Kepler (1571-1630), ajustant-se – com és ben sabut - molt millor a la realitat i, el que és més importat, fent possible la substitució del model subtil i artificiós de Ptolomeu pel mòdel heliocèntric, ja postulat de forma poc precisa i sense desenvolupar per Aristarc de Samos (segle III a. C.).

        Cap de les obres d'Hypatia es va salvar, però gràcies als comentaris d'alguns dels seus deixebles (Sinesi de Cirene i Hesiqui d'Alexandria), de les obres dels quals sí que se'n té proves, hom sap que va escriure uns comentaris a les Seccions Còniques d'Apoloni de Perge -sobre la paràbola, l'el·lipse, i la hipèrbola -; va fer també una revisió de les taules astronòmiques de Ptolomeu; una compilació pròpia d'efemèrides astronòmiques; i es va cuidar de l'edició del comentari del seu pare Teó d'Alexandria (matemàtic i astrònom) als Elements d'Euclides; també va escriure obres sobre el que avui entenem per teoria de nombres: un comentari a l'Aritmètica de Diofant d'Alexandria (segle III d.C.); elaborà planisferis i va treballar en el camp de la mecànica i la hidrostàtica.$\square$