En muchos lenguajes de programación la instrucción a^b indica “a elevado a b”. La potencia de toda la vida, vaya. Así ocurre en R, por ejemplo.

Sin embargo, en Python, esto se escribe como a**b (dos asteriscos).

Hasta aquí, pues vale. ¡Pero sigue leyendo!⬇️⬇️
Hoy, en clase, una alumna me preguntó algo en lo que no había caído antes:

- Julio, pero entonces ¿qué resultado devuelve a^b en Python? Porque no da error. ¡Da un número!
Ahí he pensado “¿en serio?¿Y no da error? No sé, a saber…”.

Medio sorprendido, medio escéptico, le he respondido:

- Ahora no te lo sé decir, lo miro y os lo comento en las historias de Instagram (julio.mulero, por cierto).
Porque sí. No te sorprendas. Si quieres que se enteren de algo rápidamente, Instagram funciona a las mil maravillas.

Ni Twitter, ni ná (que me perdone Twitter 🙏). No sé los vuestros/as, pero los míos/as están en esa red social.
Total, que he llegado a casa y me he puesto comprobarlo con calma.

Y, efectivamente, por ejemplo, 3^5 devuelve 6 que obviamente no es “3 elevado a 5” (que sería 243). Pero tampoco habría sabido deducirlo.

¿Qué narices es?
Después de unas cuantas búsquedas, he llegado a lo que quería.

He de decir que no ha sido inmediato. De hecho, mi alumna también me lo advirtió. ¡Yo no lo he encontrado!
En primer lugar, debemos acudir a la representación binaria de los dos números (3 y 5) con los mismos cifras (poniendo ceros delante si es necesario). En particular, si tomamos tres cifras,

3 = 011 (en binario),
5 = 101 (en binario).
En segundo lugar, vamos comparando las cifras (0 ó 1) de cada número, posición a posición, y construiremos nuestro resultado.

Si las dos cifras son iguales, nuestro resultado tendrá un 0. En caso contrario, tendrá un 1.
Por ejemplo, las cifras más a la izquierda son:

Para el 3, un 0.
Para el 5, un 1.

Nuestro resultado tendrá un 1 en esa posición.
Para las cifras en la posición intermedia:

El 3 tiene un 1.
El 5 tiene un 0.

Nuestro resultado tendrá un 1 en esa posición.
Por último, las cifras más a la derecha son:

Para el 3, un 1.
Para el 5, un 1.

Nuestro resultado tendrá un 0 en esa posición.
Es decir, en binario, el resultado buscado se escribe como:

110.

Y aquí tenemos el 6.

6 = 110 (en binario).
Ok, pues muy bien. Al menos ya tenía la explicación por la que 3^5 vale 6 en Python.

Ahora bien, ¿qué es esto?
Bueno, sin entrar en muchos detalles, es un operador lógico bit a bit.

Un operador lógico actúa sobre dos operandos que pueden ser verdaderos o falsos y devuelve como resultado verdadero o falso. Habitualmente, 1 indica verdadero y 0, falso.
Existen muchos operadores lógicos. Por ejemplo:

x AND y: Devuelve verdadero si x e y son verdaderos.
x OR y: Devuelve verdadero si al menos uno de los dos es verdadero.
x XOR y: Devuelve verdadero solo si exactamente uno de los dos es verdadero.
De aquí salen las típicas tablas de verdad, considerando las dos opciones posibles para x e y:

1: Verdadero.
0: Falso.
El resultado de x^y está relacionado con el operador XOR. En concreto, se aplica este operador bit a bit.

Por eso, para las cifras más a la izquierda (o intermedias), que son un 0 y un 1, el resultado es 1.

Y para las cifras más a la derecha, que son 1 y 1, el resultado es 0.
En resumen, en Python,

3^5 = 6.

Y esto se debe a un operador lógico (XOR) bit a bit.
Así que hoy, último lunes lectivo del año 2021, he aprendido algo nuevo gracias a mis alumnos/as.

Y ellos, desde este mediodía, lo tienen en Instagram y, desde este momento, en Twitter.
No dejemos de atender sus dudas porque, al fin y al cabo, ellos/as son el mejor combustible para que, como docentes, sigamos aprendiendo.
Y que conste que sigo sin ser ningún experto en esto. De hecho, si he metido alguna gamba, disculpadme.

Seguro que vosotros/as podéis enriquecer más este tema. ¡Y yo seguiré aprendiendo!

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Julio Mulero

Julio Mulero Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @juliomulero

12 Nov
Según la @RAEinforma, “inferir” es deducir algo o sacarlo como conclusión de otra cosa y, precisamente, este es uno de los objetivos de la estadística.

Los primeros pasos de la media muestral en inferencia (tratando de evitar el rigor exagerado) es la siguiente…

Abro hilo ⬇️
Imagina, por ejemplo, que quieres conocer la media de una variable medida sobre cierta población.

La estatura, por ejemplo, de los habitantes de una ciudad con un millón de personas.
Si dicha media fuera conocida, ¿para qué calentarse la cabeza?

Pero, por desgracia, no dispones del millón de estaturas. Es más, no tienes ni tiempo, ni ganas, ni dinero, para hacer el correspondiente censo.
Read 29 tweets
10 Dec 20
10 de diciembre de 1934. Seis jóvenes se reúnen en el Café Capoulade (París). Sobre la mesa, un objetivo: revitalizar las matemáticas.

Así "nació" #Bourbaki, uno de los matemáticos más influyentes y polémicos del siglo XX.

Dentro HILO ⬇️⬇️

#EnHebrasMatemáticas
Lo que allí se habló fue el germen de una revolución en las matemáticas.

Tanto es así que, en la década de los 70, las pizarras de nuestras aulas se rindieron a los conjuntos, anillos, aplicaciones… ¿Alguien lo recuerda?

El juicio sobre su idoneidad se deja como ejercicio.
A fin de entender por qué ese giro hacia los cimientos abstractos de las matemáticas que, a juicio de muchos/as, complicaron en demasía la enseñanza de las matemáticas, tenemos que entender quiénes eran, qué pretendían hacer, y quién o qué fue Bourbaki.

¡Allá vamos!
Read 48 tweets
26 Nov 20
Imagina que deseas estudiar si alguna variable presenta diferencias en ciertos grupos de individuos, animales, plantas o cosas. Este es el origen del análisis de la varianza (o ANOVA).

¿No dicen que “las diferencias siempre suman”? Pues déjame que te cuente...

Dentro HILO ⬇️⬇️
Imagina que deseas realizar un estudio de ciertas especies de pájaros 🦉🦜🐦 que son de similar naturaleza y comparten un medio común:

el malviz pardo, el cuelliamarillo común y el towhee.

Cada una de ellas conforma una población diferente.
Una característica de interés es su canto, ya que cada especie presenta sus particularidades y debes analizar, por ejemplo, su duración (en segundos).

No sin dificultades has obtenido tres conjuntos de datos: doce datos de malvices; nueve, de cuelliamarillos; y once, de towhees.
Read 38 tweets
12 Nov 20
#TalDíaComoHoy, pero de 1927, nació Yutaka #Taniyama.

Sus ideas, materializadas en la Conjetura de Taniyama-Shimura, jugó un papel importante en la demostración del Último Teorema de Fermat por parte de Andrew Wiles.

Sin embargo, él nunca llegó a verlo...

⤵️⤵️
Yutaka nació en Kisai, en la prefectura de Saitama (Japón), al norte de Tokyo.

Su nombre, en realidad, era Toyo, pero muchos le llamaban Yutaka por ser una lectura más común del carácter 豊.
Yutaka era una persona sencilla, no demasiado preocupado por los aspectos superfluos y materiales de la vida.

Estudió en la Universidad de Tokyo y allí conoció a Goro #Shimura, junto con quien estableció su famosa conjetura sobre las curvas elípticas.
Read 12 tweets
8 Nov 20
#TalDíaComoHoy, pero en 1868, nació Felix #Hausdorff.

Se le debe el concepto de espacio topológico en sentido moderno, si bien lo que Hausdorff llamó “espacio topológico” actualmente se conoce como “espacio de Hausdorff” (algo más restrictivo).

⤵️⤵️
En un espacio topológico los entornos de un punto miden, en cierta manera, el grado de proximidad del resto de puntos del espacio.

En este sentido, un espacio es de Hausdorff si dos puntos distintos tienen siempre entornos disjuntos.
Para quienes hemos estudiado matemáticas este concepto es muy familiar.

Sin embargo, y como casi siempre, solemos ignorar su historia personal.
Read 11 tweets
8 Oct 20
Si hay una pregunta clave en combinatoria es ¿cuántos/as…? La combinatoria trata de contar el número de configuraciones distintas que se pueden formar con los elementos de un conjunto. Así, criterios como el orden y la posibilidad de repetición son cruciales.

Dentro hilo ⬇️⬇️
Por ejemplo, dado un conjunto de siete letras distintas...

¿De cuántas formas se pueden ordenar? ¿Cuántas palabras de cuatro letras se pueden formar (tengan o no sentido)? ¿De cuántas formas se pueden escoger tres de ellas?
A fin de encontrar respuestas, debemos prestar atención a:

a) Los elementos de que disponemos.
b) Los elementos que debe contener cada grupo.
c) La posibilidad (o no) de repetir elementos.
d) La importancia o indiferencia en cuanto al orden en que aparecen los elementos.
Read 39 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(