WQuestions

Parte V · En la práctica

25

Música, química, fútbol, contratos

Un modelo que solo se prueba en lo cómodo no se ha probado. Aquí lo llevamos a cuatro mundos que no se parecen entre sí ni se parecen a un negocio: una partitura, una llama, una cancha y un contrato. Cada uno empuja un eje distinto hasta que cruje. Veremos dónde cede con elegancia y dónde deja una grieta anotada.

En una sala de ensayo, a las once de la mañana, una pianista repite por séptima vez los primeros nueve compases de una sonata. La obra que toca fue escrita hace más de dos siglos y no le pertenece a nadie; el sonido que llena la sala, en cambio, existe solo ahora, sale de sus manos y se apagará en segundos. A trescientos kilómetros, en un banco de pruebas, un inyector descarga una bocanada de metano que se enciende sin que nadie la encienda: no hay autor, solo condiciones que se cumplieron. Esa misma tarde, en un estadio, veintidós personas corren a la vez y, de toda esa simultaneidad, un sistema deberá conservar apenas lo que importa. Y en una notaría, un papel firmado dispone qué está permitido y qué no durante los próximos doce meses, mucho antes de que ocurra ninguno de los hechos que regula.

Cuatro escenas, cuatro mundos. Ninguno es una venta, una historia clínica ni un expediente administrativo. Y, sin embargo, todos pretendemos describirlos con las mismas siete preguntas. Si el modelo de WQuestions es lo que dice ser (un sistema de coordenadas universal) tiene que aguantar aquí. Este capítulo lo somete a los cuatro a propósito, buscando la grieta.

Por qué los dominios incómodos

Hasta este punto, la Parte V recorrió ocho dominios industriales (del spa al banco, de la universidad a la mina) y el modelo aguantó con poca fricción. Eso es alentador, pero también es sospechoso: todos esos dominios, por exigentes que fueran, compartían un aire de familia. Son comerciales, clínicos o administrativos; tienen personas que deciden, transacciones que se registran, fechas que se anotan. Un modelo puede encajar bien en ocho variantes de la misma forma y romperse en la novena que rompe el molde.

Por eso elegimos cuatro dominios cualitativamente distintos, cada uno escogido porque tensa una parte distinta del modelo hasta el punto de fractura. No buscamos modelar cada uno en profundidad (eso ya lo hicimos con los ocho industriales); buscamos, de cada mundo, su fricción más característica, ponerla bajo la lupa y ver qué pasa. La estrategia es la de un ingeniero de estructuras que no admira el puente terminado, sino que lo carga con camiones hasta oír dónde rechina.

Los cuatro ejes de estrés

Cada dominio empuja una zona distinta de la arquitectura:

🎼 Música · recursión categórica, K denso, sin agente humano del lado de la obra 🔥 Química · agencia contextual al extremo (sin agente), plantilla + instancia con escala Fútbol · concurrencia masiva, doble reloj, estado derivado 📜 Contratos · lo normativo por encima de lo factual, vigencia y argumento explícito

Conviene adelantar la conclusión para leer el capítulo sin suspenso falso: el esqueleto no se quiebra en ninguno de los cuatro. Algunos casos se resuelven con limpieza; otros piden un rol de dominio que extiende el catálogo; unos pocos dejan un pendiente que dejamos señalado. Ese balance (mucha cobertura, pocas grietas y todas conocidas) es justo lo que distingue una propuesta probada de una promesa.

K 🎼 Música recursión categórica La obra vive en K (atemporal); la interpretación, en O (situada). K es un árbol denso, no una lista. sonata → movimiento → frase → nota Q 🔥 Química agencia contextual (D5) al límite No hay agente: nadie hace la reacción. El rol Q queda vacío y el grafo lo acepta. Plantilla en K + instancia en O con escala. K · plantilla O · instancia T N ⚽ Fútbol concurrencia y estado derivado Dos relojes: T absoluto y N minuto de juego. 22 acciones a la vez: se guarda lo significativo. El marcador no se afirma: se deriva de los goles. goles → Σ → "2 - 1" (estado derivado) T = 21:14:07Z ‖ N = minuto 67 M 📜 Contratos lo normativo por encima de lo factual Cada cláusula tiene vigencia propia (D6). Condición → consecuente, reificado. El argumento se obliga vía justificado_por (D7). rescisión — justificado_por → cláusula la cadena de razón queda en el grafo
Figura 25.1. Los cuatro dominios incómodos y la zona del modelo que cada uno tensa. La música estira el eje K hasta volverlo un árbol recursivo; la química vacía el rol del agente (Q tachado) y exige la pareja plantilla–instancia; el fútbol duplica el reloj (T + N) y convierte el marcador en estado derivado; los contratos hacen del eje M (los predicados del porqué) el centro de gravedad.

Música: cuando la categoría se vuelve un árbol

Empecemos por la sala de ensayo. El objeto a modelar es una composición musical (tomemos la Sonata para piano n.º 14, «Claro de luna», op. 27 n.º 2, de Beethoven) junto con una interpretación concreta: la que da la pianista Hélène Renaud el 12 de junio de 2026 en la Sala Devereux. Queremos poder preguntar tanto por la obra abstracta («¿cuántos movimientos tiene?») como por esa noche particular («¿quién la tocó y dónde?»). Son dos preguntas sobre dos cosas distintas que comparten un nombre.

Y ahí está la primera tensión. Una composición es una entidad atemporal: fue creada en 1801, sí, pero no ocurre en ningún instante; persiste como objeto cultural, idéntica a sí misma se toque o no se toque. Una interpretación, en cambio, ocurre: tiene fecha, lugar, intérprete y se desvanece. El reflejo ingenuo es colocar la obra en el eje del tiempo (un patrón temporal abstracto) pero el modelo lo rechaza: el eje T es para momentos y rangos, no para entidades estables. La obra vive en K, lo categórico y atemporal; la interpretación vive en O, lo situado. Es exactamente la separación que el capítulo de la clase fijó como D1 (los conceptos atemporales habitan K, las entidades creadas y situadas habitan O) y aquí encuentra su caso límite más nítido.

tripletas
(claro_de_luna)        ∈ K
  subtipo_de:          sonata_para_piano
  compositor:          beethoven
  anio_composicion:    1801
  movimientos:         [adagio_sostenuto, allegretto, presto_agitato]   ← otros K

(interpretacion_5512)  ∈ O
  instancia_de:        accion_interpretar
  agente:              helene_renaud          ∈ M(O→Q)
  obra_interpretada:   claro_de_luna          ∈ M(O→K)
  lugar_de:            sala_devereux          ∈ M(O→L)
  momento:             2026-06-12T20:30Z      ∈ M(O→T)
  duracion_min:        16                     ∈ M(O→N)

Mira la línea obra_interpretada. Su signatura es M(O→K): conecta un evento situado con una categoría atemporal. El rol genérico tema del catálogo no servía, porque su signatura es O→O y rechaza valores en K. El prototipo obligó a usar un rol de dominio (un predicado declarado para este caso) que apunta de O hacia K. No es un parche aislado: es exactamente la forma que reaparecerá con el medicamento que se prescribe (un evento O apuntando al fármaco K) y con el plan que se contrata. La música no es excepcional; es la primera vez que el patrón «evento que refiere a una categoría» asoma, y por eso lo nombramos aquí.

La recursión categórica

La segunda tensión es más estructural. Una sonata se compone de movimientos; cada movimiento, de secciones; cada sección, de frases; cada frase, de motivos; cada motivo, de notas. Son cinco niveles de jerarquía anidada, y todos viven en K. Esto rompe una expectativa cómoda: que el eje de las categorías sea una lista plana de etiquetas. No lo es. Es un árbol denso, con dos relaciones internas que conviene distinguir: subtipo_de (una sonata es un tipo de obra) y compuesto_por (una sonata se arma con tres movimientos). La primera es taxonómica; la segunda, de composición.

claro_de_lunaK compuesto_porM(K→K) adagio_sostenutoK compuesto_porM(K→K) frase_aK

Con esa estructura, una consulta como «¿qué obras de Beethoven contienen un movimiento en forma de adagio?» deja de ser una búsqueda por igualdad y pasa a ser un recorrido transitivo: bajar por compuesto_por hasta encontrar un nodo cuyo subtipo_de sea movimiento_adagio. El eje K, que en el spa o el taxi parecía una simple etiqueta de clasificación, aquí muestra su otra cara: la de una ontología navegable con profundidad arbitraria.

Lo nuevo que aportó la música

El eje K no es una lista de etiquetas: es un grafo de categorías con jerarquía interna. Dos relaciones lo estructuran —subtipo_de (taxonomía) y compuesto_por (composición)— y las consultas interesantes son recorridos transitivos, no comparaciones de igualdad. Cualquier dominio con todo–partes conceptuales (un plan de estudios, una norma con artículos, una receta con subrecetas) hereda esta forma.

Lo que la música deja pendiente

El tiempo musical (los compases, los pulsos, el tempo) no es tiempo absoluto y no entra en T. Por ahora se modela como K (compas_4_4, figura_negra) o se reifica en O cuando hace falta hablar de un compás concreto de una interpretación. Funciona, pero es una solución de compromiso: un sistema de patrones temporales relativos, finos y periódicos, es trabajo documentado y pendiente en la hoja de ruta. No rompe nada operativamente; el tratamiento de primera clase está por construir.

Química: una reacción que nadie hace

Pasemos al banco de pruebas. El objeto es la combustión del metano: la reacción que ocurre cuando hay metano, oxígeno y energía de activación suficiente, y que produce dióxido de carbono y agua. Modelarla somete al sistema a presiones que ningún dominio comercial ejerce, y la primera es brutal en su simplicidad.

¿Quién hizo la reacción?La pregunta que no tiene respuesta

La respuesta honesta es: nadie. Una reacción química no la hace ningún agente en sentido intencional; ocurre porque las condiciones físicas se cumplieron. No hay vendedor, ni conductor, ni motor antifraude detrás. Esto pone a prueba, sin red de seguridad, la decisión que el capítulo de las situaciones llamó D5: la agencia contextual. Esa decisión establece que el rol agente no es obligatorio (solo lo es si el verbo lo exige) y que, cuando lo es, puede ocuparlo un humano, una organización, un programa o un sensor. La química es el caso donde el rol queda sencillamente vacío, y el grafo lo acepta sin marcar un error.

La plantilla y la instancia

La segunda presión es más rica. La química distingue con naturalidad dos cosas que el lenguaje cotidiano confunde. Por un lado, la combustión del metano en general: una entidad categórica que describe la estequiometría invariante (un mol de CH₄ más dos moles de O₂ producen un mol de CO₂ y dos moles de H₂O). Por otro, esta combustión concreta que ocurrió en el cilindro número tres a las 14:32, con cantidades reales y a una escala determinada. El modelo necesita capturar las dos y, sobre todo, conectar la instancia con su plantilla.

tripletas
(combustion_metano)    ∈ K          ← la plantilla, atemporal
  reactivos_esteq:     [{ch4: 1}, {o2: 2}]
  productos_esteq:     [{co2: 1}, {h2o: 2}]
  energia_activacion:  kj_por_mol

(reaccion_3187)        ∈ O          ← la instancia, situada
  instancia_de:        combustion_metano    ∈ M(O→K)
  factor_escala:       0.5                  ← la mitad de la estequiometría
  insumo:              n_0_5mol_ch4         (multi)   ∈ M(O→N)
  insumo:              n_1mol_o2            (multi)   ∈ M(O→N)
  lugar_de:            cilindro_3           ∈ M(O→L)
  momento:             2026-05-16T14:32Z    ∈ M(O→T)
  — agente:            ∅  (D5: el verbo no lo exige)

El puente entre ambas es la línea instancia_de más el factor_escala. La plantilla guarda las proporciones puras; la instancia guarda cuánto de esas proporciones se consumió realmente. Con eso, todas las cantidades concretas se derivan multiplicando la estequiometría por el factor, y un evaluador puede verificar el balance de masa sin que nadie lo haya tecleado dos veces.

K combustion_metano la plantilla · atemporal 1 CH₄ + 2 O₂ 1 CO₂ + 2 H₂O reactivos_esteq · productos_esteq proporciones puras, sin cantidades se interpreta una vez, se reusa siempre instancia_de M(O→K) O reaccion_3187 la instancia · situada factor_escala = 0.5 × ½ insumo 0.5 mol CH₄ insumo 1.0 mol O₂ cilindro_3 2026-05-16T14:32Z cantidades reales = esteq × factor
Figura 25.2. El patrón plantilla–instancia. La reacción genérica vive en K con su estequiometría invariante (las proporciones, en tono N); cada reacción concreta vive en O con cantidades reales obtenidas multiplicando la plantilla por un factor_escala. La flecha instancia_de (un cable del eje M) las une. El mismo molde sirve para sonata→interpretación, receta→preparación y regla→aplicación.

Durante el modelado quedaron registradas dos fricciones que aún persisten, y conviene nombrarlas con precisión:

Uno · el rol paciente es demasiado estrecho. En química, «el paciente» de la reacción es el metano: una cantidad N ligada a una categoría K, no un agente Q. El rol canónico paciente tiene signatura O→Q y rechaza esto. La solución por ahora es un rol de dominio insumo: O→N (múltiple), que cubre el caso con limpieza. Pero deja en evidencia que la signatura canónica podría tener que ensancharse.

Dos · reactivo y producto no están en el catálogo. El catálogo canónico (lo que el capítulo del lexicon llamó D8) no los incluye. La política liberal del modelo permite registrarlos como roles de dominio sin pedir permiso, así que el dominio funciona hoy. Pero queda anotado el parche de canonizarlos algún día, porque el patrón es universal: toda transformación tiene entradas y salidas, no solo las químicas.

Lo nuevo que aportó la química

La pareja plantilla en K + instancia en O + factor de escala resultó ser un patrón general, no un truco químico. La sonata es plantilla y la interpretación su instancia; la receta es plantilla y la preparación su instancia; el procedimiento operativo estándar de una fábrica es plantilla y cada corrida su instancia; la guía clínica es plantilla y cada atención su instancia. La química fue, sencillamente, donde el molde se hizo nítido.

Fútbol: dos relojes y un marcador que no se afirma

Vamos al estadio. El objeto es un partido concreto: en nuestra reconstrucción, un clásico de eliminatorias en el que la delantera Mara Solís marca al minuto 67 con un remate de zurda, tras una asistencia de Tania Ojeda. Modelar un partido trae complicaciones que el spa y el taxi jamás presentaron, y la primera es la concurrencia.

En cada instante del partido hay veintidós jugadoras haciendo cosas a la vez, más la árbitra, los cuerpos técnicos y el público. Registrarlo todo sería absurdo e inútil. Aquí conviene una aclaración importante: esto no es una fricción del modelo, es una decisión de granularidad. Lo que se modela es solo lo significativo (los goles, las tarjetas, los cambios, las jugadas clave) y el resto queda implícito. El mérito del modelo es que no obliga a registrar lo que no importa: no exige llenar un campo por cada jugadora en cada segundo. Y, en efecto, no lo hace.

El doble reloj

La segunda complicación es más sutil: en un partido conviven dos tiempos. El tiempo absoluto (la hora del reloj de pared, 2026-09-14T21:14:07Z) y el minuto de partido (el «minuto 67», que vive en una escala relativa al pitazo inicial y que se detiene en el entretiempo). No son el mismo eje. El modelo los absorbe con un doble registro: cada evento lleva un momento: T absoluto y, opcionalmente, un minuto_partido: N relativo. Así, dos consultas distintas conviven sin pisarse: «¿qué pasó a las 21:14 hora local?» recorre el eje T, y «¿qué pasó al minuto 67?» recorre el eje N.

tripletas
(gol_4471)             ∈ O
  instancia_de:        evento_gol
  agente:              mara_solis           ∈ M(O→Q)
  asistente:           tania_ojeda          ∈ M(O→Q)
  equipo:              seleccion_sur        ∈ M(O→O)
  momento:             2026-09-14T21:14:07Z ∈ M(O→T)   ← reloj absoluto
  minuto_partido:      67                   ∈ M(O→N)   ← reloj de juego
  parte_de:            clasico_4471         ∈ M(O→O)

El marcador es estado derivado

La tercera complicación es la más instructiva del capítulo entero. El «Selección Sur 2 – Selección Norte 1» no es un hecho que alguien afirma: es la conclusión de agregar todos los goles registrados. Nadie escribe el marcador como dato; el marcador se deriva. Es exactamente la misma forma estructural que la fidelidad del spa (siete sesiones acumuladas dan una gratis) y que el costo total de un viaje en el taxi: el modelo almacena los hechos primitivos (cada gol como evento reificado) y un evaluador externo recorre el grafo y agrega. El modelo no calcula marcadores; los prepara para que cualquier evaluador lo haga.

python
goles_sur = count(u, Pattern(
    fixed={"equipo": seleccion_sur},
    type_constraint=u.ind("evento_gol"),
))
goles_norte = count(u, Pattern(
    fixed={"equipo": seleccion_norte},
    type_constraint=u.ind("evento_gol"),
))
marcador = f"{goles_sur} - {goles_norte}"   # el estado, derivado al vuelo

Durante el modelado apareció una fricción concreta, una sola. El rol partes aplicado a un partido (sus dos equipos) traía la signatura T→Q, que asume que las partes son agentes. Pero un equipo es más cómodo como O: un colectivo compuesto, no un agente individual. El parche propuesto es generalizar partes a O→V (admitiendo cualquier eje de valor como rango). El prototipo confirmó la fricción y la sorteó con un rol de dominio (parte: O→O), pero la canonización del parche es trabajo pendiente real, no resuelto.

Hechos primitivos y estado derivado

Hecho primitivo: algo que ocurrió y se afirma directamente (un gol, un pago, un diagnóstico). Se almacena. Estado derivado: una conclusión obtenida agregando hechos primitivos (un marcador, un saldo, una fidelidad acumulada). No se almacena: se calcula por consulta cuando se necesita. WQuestions guarda la historia de los cambios y deriva el estado; no guarda el estado y olvida la historia.

Lo nuevo que aportó el fútbol

La distinción entre hechos primitivos y estado derivado quedó nítida aquí, y rompe una expectativa que casi todos los sistemas relacionales arrastran: la de almacenar el «estado actual» como tal. El precio de derivar es que el evaluador externo debe existir. La ganancia es enorme: el pasado nunca se pierde. Siempre se puede reconstruir el marcador al minuto 30, porque los goles siguen ahí, fechados.

Contratos: cuando lo normativo manda sobre lo factual

Última escena, la notaría. El objeto es un contrato de alquiler a doce meses, con cláusulas, obligaciones recíprocas, una cláusula de rescisión por impago y (llegado el caso) una rescisión efectiva. Es el dominio donde lo factual (lo que pasó) queda en segundo plano frente a lo normativo (lo que está permitido, exigido o prohibido). El contrato existe y obliga antes de que ocurra ningún hecho que regule.

La primera tensión es la vigencia (del contrato entero y de cada cláusula por separado). Algunas cláusulas valen durante todo el plazo; otras solo en ventanas específicas (la de actualización del alquiler aplica únicamente en el aniversario). El modelo absorbe esto con la decisión que el capítulo de las situaciones llamó D6 (la vigencia: las propiedades que cambian se reifican con un rango de inicio/fin). Al implementarlo se vuelve evidente que la bitemporalidad completa sería lo ideal: no solo registrar cuándo algo es cierto, sino también cuándo lo afirmamos. Esa segunda mitad queda documentada como pendiente.

Condición, consecuente y argumento

La segunda tensión son los condicionales. Una cláusula tiene la forma «si X, entonces Y»: si el inquilino impaga dos meses, el arrendador puede rescindir. El modelo la trata reificando la cláusula como una situación con dos cables, condicion y consecuente:

tripletas
(clausula_14)          ∈ O
  instancia_de:        clausula_contrato
  parte_de:            contrato_alq_2208    ∈ M(O→O)
  condicion:           impago_2_meses
  consecuente:         rescision_autorizada
  vigencia:            [2026-01-01 .. 2026-12-31]   (D6)

Cuando una rescisión efectivamente ocurre, no se dispara sola. Un evaluador (humano o algorítmico) verifica que la condición se cumpla y emite la rescisión como un hecho nuevo, que apunta a la cláusula con el cable justificado_por:

rescision_2208O justificado_porM(O→O) clausula_14O

Ese cable no es decorativo. El capítulo sobre el porqué mostró que no existe un eje «por qué»: el porqué se reparte en cuatro cables distintos (causado_por, motivado_por, con_finalidad y justificado_por), y esa decisión es D7. En lo normativo, el cable que importa es el último: la justificación. La auditoría legal («¿bajo qué autoridad se rescindió este contrato?») se reduce a seguir justificado_por hasta la cláusula, y de la cláusula al contrato. La cadena de razonamiento entera está en el grafo, no en la cabeza de un abogado.

La tercera tensión es la mutabilidad. ¿Qué ocurre cuando una cláusula se renegocia? La regla del modelo es severa y deliberada: los hechos son inmutables. Una renegociación no edita el hecho viejo; es una situación nueva que lo rectifica o lo cancela. El historial se preserva entero y el «estado actual» se reconstruye por consulta (exactamente lo que vimos en la clínica con un rediagnóstico y en el taxi con una cancelación).

En lo normativo, el sistema no debe producir solo el resultado; debe producir la cadena de razones que lo justifica.La lección del contrato

Lo que el contrato deja pendiente

Uno · bitemporalidad completa. Tenemos el tiempo de validez (cuándo algo es cierto) pero no el de transacción (cuándo lo afirmamos). Para un litigio que pregunte «¿qué sabía el sistema en mayo de 2024?» hace falta agregar tx_inicio/tx_fin a cada hecho. El prototipo ya guarda un tx_time, pero todavía no lo expone como parámetro de consulta.

Dos · reglas de derivación versionadas. Si la ley cambia y un contrato firmado antes debe leerse bajo la ley vieja, el evaluador necesita saber qué versión de qué regla aplicar. La regla misma se versiona con D6, pero la mecánica de evaluación versionada queda como trabajo de la capa superior, el motor de inferencia.

Lo nuevo que aportó el contrato

La importancia de la estructura argumentativa explícita. En un dominio normativo, el producto valioso no es el veredicto («rescindido» o «no rescindido»), sino la cadena de razones que lo sostiene. Al exigir un justificado_por que apunte a una cláusula, el modelo obliga a producir esa cadena. No es opcional: un hecho normativo sin justificación queda visiblemente incompleto.

Lo que emergió de los cuatro

Vistos en serie, los cuatro dominios incómodos dejan tres lecciones que trascienden a cada uno y que conviene grabar.

🧩

El molde plantilla–instancia es universal

Apareció en química (reacción genérica frente a concreta), en música (sonata frente a interpretación) y antes en clínica (protocolo frente a atención) y en taxi (tarifa estándar frente a aplicada). No pertenece a ningún dominio: es un patrón de modelado tan central como la reificación, y merece figurar como convención explícita en el lexicon de cualquier proyecto.

⚙️

El evaluador externo es estructural

Marcador del fútbol, fidelidad del spa, precio dinámico del taxi, evaluación de cláusulas del contrato, conteo de visitas para un diagnóstico: todo el estado derivado es trabajo del evaluador. El modelo guarda los hechos primitivos y prepara el grafo; el razonamiento se construye encima. Es un principio arquitectónico, no una simplificación postergada.

🔧

Las grietas son pocas y conocidas

Tras ocho dominios (los cuatro de aquí más los cuatro previos), las fricciones reales son cuatro: roles canónicos del catálogo D8 algo estrechos (paciente, partes, tema); bitemporalidad completa; tiempo musical y patrones temporales finos; y reglas de derivación versionadas. Cuatro pendientes documentados, ningún punto de quiebre.

Esa última lección es la que más importa para un lector escéptico. Un modelo que nunca falla en público suele ser un modelo que no se ha probado en serio; un modelo que declara con precisión sus cuatro grietas (y muestra que ninguna lo derrumba) es un modelo que ha pasado por el banco de pruebas. Las cuatro pendientes son el mapa de hasta dónde llega hoy la arquitectura y qué le falta para llegar más lejos.

Y como cada gol, cada reacción y cada cláusula son situaciones del mismo tipo, la pregunta que de verdad importa deja de ser «¿quién marcó el gol 4471?» para volverse «¿quién encabeza la tabla de goleadores?» o «¿cuántos contratos siguen sin entrar en vigencia?»: el ranking no es una pieza aparte, es ordenar lo que ya contamos.

El balance de la Parte V

El modelo se sostuvo a lo largo de los doce dominios del libro (ocho industriales y cuatro de estrés) apoyado en un prototipo en Python de unas 2.250 líneas y un catálogo canónico de 38 roles. Donde hubo fricción, hubo parche o un pendiente documentado. En ninguno de los doce el esqueleto se quebró. Esa es, en una frase, la evidencia que la Parte V se propuso reunir.

Con esto cierra la sala de máquinas. Hemos cargado el puente con camiones hasta oírlo rechinar en cuatro lugares distintos, y los cuatro chirridos están anotados en el plano. Queda una pregunta que recorre todo el libro por debajo y que la siguiente parte pone al frente: si las preguntas son un vocabulario común, ¿qué cambia para las máquinas que hoy aprenden a hablar (los grandes modelos de lenguaje) cuando ese vocabulario existe? A eso vamos.