Saltar al contenido
The Lumenary
Preescolar a 2.ºDe 5 a 8 años 20 min

Colecciones

Clasificar, pertenecer y la sorprendente caja vacía — las primeras ideas sobre los conjuntos.

Verificado formalmente · 5 LeanProbado computacionalmente · 1 PythonRedactado con IA · pendiente de revisión humanaRevisado matemáticamente: Pendiente de revisión humana

Tus guías: Chloe, Margaret, Gideon

Esta es una traducción en borrador generada automáticamente. Todavía no la ha revisado ninguna persona ni ningún matemático.

Ayuda a traducir →
MotivaciónH

Una cesta del mercado

Amara y su abuelo han vuelto del mercado con una cesta grande. Hay plátanos y limones, manzanas y fresas, un pepino, una pera, una naranja y una zanahoria.

—Vamos a guardarlo todo —dice el abuelo—. Pero ¿dónde va cada cosa?

Para ordenar, Amara necesita una regla: una manera de decidir a dónde pertenece cada cosa. Los matemáticos hacen esto todo el tiempo. Reúnen cosas en colecciones.

Explorar

Clasifica la cesta

Prueba a clasificar la cesta por tu cuenta. Primero clasifica por color. Luego vuelve a empezar y clasifica por forma.

El juego de clasificar del mercado

Elige algo de la cesta y luego elige la caja a la que pertenece.

Clasificar por:

La cesta

Elige algo de la cesta.

¿Te fijaste en la caja de las cosas azules? No entró nada en ella. ¿Sigue siendo una colección? ¡Sigue leyendo para descubrirlo!

DefinicionesH

Grandes ideas

Definición— colección

Una colección es un grupo de cosas en las que pensamos a la vez. Las cosas que están en una colección se llaman sus miembros.

Cuando algo está en una colección, decimos que pertenece a la colección. El plátano pertenece a la colección de las cosas amarillas. La manzana no.

Definición— la misma colección

Dos colecciones son la misma cuando tienen exactamente los mismos miembros. No importa en qué orden estén los miembros.

Definición— la colección vacía

Una colección sin ningún miembro se llama la colección vacía. La caja de las cosas azules está vacía, ¡pero sigue siendo una colección!

Ejemplos resueltosH

Practiquemos juntos

Ejemplo— ¿Pertenece?

Aquí tienes una colección: 🍎 🍌 🍐.

  • ¿Es el 🍌 un miembro? Sí: está justo ahí.
  • ¿Es el 🍋 un miembro? No: mira con atención. No hay ningún limón.

Ejemplo— ¿Iguales o diferentes?

La caja de Kenji tiene 🍎 y 🍌. La caja de Lucía tiene 🍌 y 🍎.

Tienen los mismos miembros, solo que en otro orden. Así que son la misma colección.

Ejemplo— ¿Cuántos hay?

Cuenta la colección 🍊 🍋 🍎 🍓. Toca cada uno una vez y di un número: uno, dos, tres, cuatro. Hay 4 miembros.

Ahora cuéntalos empezando por la fresa. ¡Sigues obteniendo 4!

ExplicaciónH

Por qué contar siempre da la misma respuesta

Cuando contamos, emparejamos cada cosa con exactamente una palabra de contar: uno, dos, tres, cuatro. Cada cosa recibe una palabra, y ninguna palabra se usa dos veces.

Si empiezas en otro sitio, haces un emparejamiento distinto, pero sigues gastando las mismas palabras de contar, porque hay exactamente tantas cosas como antes. No se añadió nada y no se quitó nada.

Para adultos · en qué se convierte esta idea

La idea de que «contar es emparejar» es la semilla de una idea profunda de las matemáticas: dos colecciones tienen el mismo número de miembros exactamente cuando sus miembros se pueden emparejar uno a uno. Mucho más adelante, esta idea de emparejar permite a los matemáticos comparar los tamaños de colecciones infinitas.

Matemática formalF

El juego del sí o no de Gideon

A Gideon le gustan los enunciados que son claramente verdaderos o claramente falsos. Mira la colección de las cosas amarillas: 🍌 🍋. ¿Cada enunciado es verdadero o falso?

  1. «El plátano pertenece a la colección amarilla». — Verdadero.
  2. «Todos los miembros de la colección amarilla son alargados». — ¡Falso! El limón es redondo. Un solo ejemplo que rompe una regla basta para mostrar que el enunciado es falso.
  3. «Hay un miembro en la colección azul». — Falso. La colección azul está vacía.
Para adultos · las mismas ideas en Lean, un verificador de demostraciones

Los asistentes de demostración por computadora, como Lean, pueden comprobar enunciados como estos. Abajo, una cesta se escribe como una lista de Lean. Lean comprueba que el mango pertenece a la cesta, que la cesta tiene 3 miembros y que nada pertenece a la lista vacía.

mango_in_basketLean 4Demostrado aquí a partir de hechos básicosVerificado formalmente
/-- There is a mango in the basket: it is the very first thing in the list. -/
theorem mango_in_basket : "mango" ∈ basket :=
  List.Mem.head ["orange", "banana"]
Axiomas utilizados: Ningún axiomaformal/Lumenary/Collections.leanPruébalo en el editor web de Lean
basket_countLean 4Demostrado aquí a partir de hechos básicosVerificado formalmente
/-- The basket holds three pieces of fruit. Lean counts them itself, so `rfl` is enough. -/
theorem basket_count : basket.length = 3 := rfl
Axiomas utilizados: Ningún axiomaformal/Lumenary/Collections.leanPruébalo en el editor web de Lean
nothing_in_emptyLean 4Demostrado aquí a partir de hechos básicosVerificado formalmente
/-- The empty list has no members at all. -/
theorem nothing_in_empty : ∀ x : String, x ∉ ([] : List String) := by
  intro x h
  -- A proof of `x ∈ []` would have to come from one of the ways of building membership,
  -- but none of them produces an empty list, so there is no case left to consider.
  cases h
Axiomas utilizados: Ningún axiomaformal/Lumenary/Collections.leanPruébalo en el editor web de Lean

Las listas recuerdan el orden, así que Lean dice que la lista [1, 2] es distinta de [2, 1], aunque tienen exactamente los mismos miembros. Una colección que olvida el orden es lo que los matemáticos llaman un conjunto, el tema de la próxima lección.

order_matters_for_listsLean 4Demostrado aquí a partir de hechos básicosVerificado formalmente
/-- For lists, order matters: `[1, 2]` and `[2, 1]` are different lists.
`decide` asks Lean to compare the two lists element by element. -/
theorem order_matters_for_lists : ([1, 2] : List Nat) ≠ [2, 1] := by decide
Axiomas utilizados: Ningún axiomaformal/Lumenary/Collections.leanPruébalo en el editor web de Lean
same_membersLean 4Demostrado aquí a partir de hechos básicosVerificado formalmente
/-- …but `[1, 2]` and `[2, 1]` have exactly the same members. As *sets* they would be equal;
as *lists* they are not (see `order_matters_for_lists`). -/
theorem same_members : ∀ x : Nat, x ∈ [1, 2] ↔ x ∈ [2, 1] := by
  intro x
  -- Being in a list means being equal to one of its entries:
  -- `x ∈ [1, 2]` unfolds to `x = 1 ∨ x = 2`, and `x ∈ [2, 1]` to `x = 2 ∨ x = 1`.
  simp only [List.mem_cons, List.not_mem_nil, or_false]
  -- "or" does not care about order.
  exact Or.comm
Axiomas utilizados: propextformal/Lumenary/Collections.leanPruébalo en el editor web de Lean
CálculoC

Margaret cuenta la cesta del mercado

Para adultos · El programa de Margaret

Este programa en Python clasifica una cesta del mercado por tipo y por color, y cuenta cada grupo. Pulsa Ejecutar para probarlo en tu navegador. También prueba los 720 órdenes de una cesta de 6 cosas. Eso comprueba solo esta cesta; la explicación de arriba nos dice por qué funciona para cualquier cesta.

Sorting and counting a market basketPythonCálculo exactoComprobación finita exhaustivaProbado computacionalmente
"""Sorting and counting a market basket.

A *collection* here is a basket of items. Two mangoes are two different items
that happen to share a name, so the basket is a list (order and repeats are
recorded), not a set. We sort the basket by a property, count each group, and
check that the counts do not depend on the order in which the items were
picked.

Runs unchanged in the browser (Pyodide) using only the standard library.
"""

from collections import Counter
from itertools import permutations
from math import factorial
import textwrap

#: The basket, in the order the items were picked. Each item is
#: (name, kind, colour). Repeated names are separate items.
BASKET = (
    ("mango", "fruit", "yellow"),
    ("okra", "vegetable", "green"),
    ("banana", "fruit", "yellow"),
    ("lime", "fruit", "green"),
    ("carrot", "vegetable", "orange"),
    ("mango", "fruit", "yellow"),
    ("aubergine", "vegetable", "purple"),
    ("orange", "fruit", "orange"),
    ("lime", "fruit", "green"),
    ("yam", "vegetable", "brown"),
)

#: Positions of each property inside an item tuple.
PROPERTIES = {"name": 0, "kind": 1, "colour": 2}

def value(item, prop):
    """Return the value of property ``prop`` ("name", "kind" or "colour") of an item."""
    try:
        return item[PROPERTIES[prop]]
    except KeyError:
        raise ValueError(f"unknown property {prop!r}; expected one of {sorted(PROPERTIES)}") from None

def sort_by(items, *props):
    """Return a new list of the items sorted by the given properties, in priority order.

    The original collection is not changed. With no properties, items are sorted
    by (name, kind, colour) as plain tuples.
    """
    if not props:
        return sorted(items)
    return sorted(items, key=lambda item: tuple(value(item, p) for p in props))

def group_by(items, prop):
    """Group items by a property: return {value: [items with that value]} with keys sorted."""
    groups = {}
    for item in items:
        groups.setdefault(value(item, prop), []).append(item)
    return {key: groups[key] for key in sorted(groups)}

def count_by(items, prop):
    """Count how many items have each value of ``prop``: {value: count}, keys sorted."""
    counts = Counter(value(item, prop) for item in items)
    return {key: counts[key] for key in sorted(counts)}

def distinct_values(items, prop):
    """Return the set of different values of ``prop`` that occur in the collection."""
    return {value(item, prop) for item in items}

def counts_same_in_every_order(items, prop):
    """Check every ordering of ``items``: do the group counts by ``prop`` ever change?

    Returns ``(orders_checked, all_same)``. The number of orders is n!, so this
    is only practical for small collections (n <= 8 or so).
    """
    items = list(items)
    reference = count_by(items, prop)
    checked = 0
    for order in permutations(items):
        checked += 1
        if count_by(order, prop) != reference:
            return checked, False
    return checked, True

def format_counts(counts):
    """Format {value: count} as 'a 2, b 3' with the total in brackets."""
    parts = ", ".join(f"{key} {n}" for key, n in counts.items())
    return f"{parts}   (total {sum(counts.values())})"

def main():
    basket = list(BASKET)
    print(f"A market basket of {len(basket)} items, in the order they were picked:")
    print("  " + ", ".join(value(item, "name") for item in basket))
    print()
    print("Sorted by kind, then colour, then name:")
    print(f"  {'kind':<10} {'colour':<8} name")
    for item in sort_by(basket, "kind", "colour", "name"):
        print(f"  {value(item, 'kind'):<10} {value(item, 'colour'):<8} {value(item, 'name')}")
    print()
    by_kind = count_by(basket, "kind")
    by_colour = count_by(basket, "colour")
    print("Counts by kind:   " + format_counts(by_kind))
    print("Counts by colour: " + format_counts(by_colour))
    sums = " + ".join(str(n) for n in by_kind.values())
    print(f"Every item lands in exactly one group, so the groups add up: {sums} = {len(basket)}.")
    names = distinct_values(basket, "name")
    print(f"Different names: {len(names)} (two mangoes are two items with one name).")
    print()
    small = basket[:6]
    n_orders = factorial(len(small))
    print(f"Does order matter? Take the first {len(small)} items and try all {len(small)}! = {n_orders} orders:")
    for prop in ("kind", "colour"):
        checked, same = counts_same_in_every_order(small, prop)
        print(f"  counts by {prop:<6} identical in all {checked} orders: {same}")
    print()
    print(textwrap.fill(
        "Epistemic status: the counts above are exact, and all "
        f"{n_orders} orders of the 6-item basket were checked, which proves "
        "order-independence for that basket only. Why it holds for every finite "
        "collection (counting pairs items with 1, 2, 3, ...) is explained in the "
        "lesson, not by this program.",
        width=78,
    ))

if __name__ == "__main__":
    main()
Se ejecuta por completo en tu navegador, en un proceso aislado. No se envía nada a ningún servidor.
Ejercicios

Te toca a ti

Tómate tu tiempo. Puedes pedir una pista siempre que quieras.

1. Colecciones

CalentamientoHumano

Aquí tienes una colección: 🍎 🍌 🍐. ¿Cuál de estas cosas es un miembro de esta colección?

Elige una opción

2. Colecciones

CalentamientoHumano

¿Cuántos miembros tiene esta colección? 🍊 🥕 🍋 🍎 🍐

3. Colecciones

EsencialHumano

La caja de Kenji tiene 🍎 🍌 🍐. La caja de Lucía tiene 🍐 🍎 🍌. ¿Son la misma colección?

Elige una opción

4. Colecciones

EsencialHumano

La caja de la fruta azul está vacía. ¿Cuántos miembros tiene la colección vacía?

5. Colecciones

EsencialFormal

El juego de Gideon: la colección es 🍌 🍋 🥒. ¿Este enunciado es verdadero o falso? «Todos los miembros de esta colección son amarillos».

Elige una opción

6. Colecciones

DesafíoHumano

Para niños mayores: entre la manzana (apple), el plátano (banana), la fresa (strawberry) y el limón (lemon), escribe la colección de las cosas rojas. Usa las palabras en inglés que aparecen como código, separadas por comas, como {kiwi, plum}.

Escribe los elementos separados por comas. El orden y las repeticiones no importan, ¡igual que en un conjunto!

Errores frecuentesH

Cosas que confunden a la gente

Idea errónea

«Una caja vacía no es una colección». ¡Sí lo es! La colección vacía es una colección de verdad; simplemente no tiene miembros. A los matemáticos les resulta muy útil.

Idea errónea

«Si cambio las cosas de sitio, obtengo otra colección». Mover los miembros cambia el orden, no la colección. Mismos miembros significa misma colección.

Idea errónea

«Las cosas más grandes cuentan más». Un coco grande y una fresa pequeña cuentan cada uno como un miembro.

Senderos del Asombro

Para seguir asombrándote

¿Se puede meter una caja dentro de otra caja? ¿Qué hay dentro de una caja que solo contiene una caja vacía? Sigue este sendero si sientes curiosidad; es totalmente opcional.

Sendero del Asombro · Opcional · nunca se calificaBoxes inside boxesWhat is inside a box that contains only an empty box? Is it empty? And can every description you can think of make a collection?Seguir el sendero
Conexión con la teoría de conjuntosH

Adónde llevan las colecciones

En la próxima lección, las colecciones reciben un nombre de mayores: conjuntos. Los matemáticos escriben un conjunto entre llaves, como {plaˊtano,limoˊn}\{\text{plátano}, \text{limón}\}, y escriben el conjunto vacío como ∅\varnothing.

La regla «dos colecciones son la misma cuando tienen los mismos miembros» es una de las reglas más importantes sobre los conjuntos. Se llama principio de extensionalidad.

Para adultos · las reglas de clasificación son funciones

Una regla de clasificación que envía cada cosa a exactamente una caja es un ejemplo de función, el tema de la lección 4. Las funciones, y las maneras en que se componen, conducen con el tiempo a la teoría de categorías. Los niños pequeños no necesitan ninguna de estas palabras; con clasificar basta.

Historia y contexto mundial

Contar alrededor del mundo, hace mucho tiempo

Las personas llevan muchísimo tiempo contando colecciones.

  • En el sur de África, un hueso de babuino con muescas talladas —el hueso de Lebombo— tiene más de cuarenta mil años. Algunos investigadores creen que las muescas eran marcas para contar, aunque nadie lo sabe con certeza.
  • En los Andes de Sudamérica, los registradores incas usaban quipus (khipu): cordones con nudos para registrar cantidades de personas, animales y bienes.
  • Muchas culturas contaban con los dedos de las manos y de los pies, con piedrecitas y con nudos. La palabra calcular viene de la palabra latina que significa «piedrecita».
Lecturas complementarias

Para adultos: lecturas complementarias

  • Paul R. Halmos, Naive Set Theory (1960): una introducción clásica y amena a los conjuntos para adultos. Existe traducción al español con el título Teoría intuitiva de los conjuntos.
  • En muchos sitios educativos gratuitos se pueden encontrar actividades de clasificación y conteo para niños pequeños, como la colección para los primeros años de NRICH (nrich.maths.org, en inglés).
Reflexión cristiana opcional · cada uno cuenta

Una reflexión de la tradición cristiana que inspira The Lumenary. No forma parte de las matemáticas y puedes omitirla con toda libertad.

En una de las parábolas de Jesús, un pastor tiene cien ovejas. Cuando una se extravía, él se da cuenta —porque conoce a su rebaño, oveja por oveja— y sale a buscarla (Lucas 15:3–7). En esa historia, contar es una forma de cuidar: cada miembro de la colección importa. Las matemáticas enseñan ese mismo hábito de atención, y cada estudiante, en cualquier lugar, cuenta.