¿Por qué iOS no autocorrige la letra s por sí sola?

Toda mi respuesta es solo una conjetura basada en cómo parece funcionar, porque no programé la función de autocorrección, así que no sé cómo es realmente su implementación.

TLDR; “s” es muy poca información para tomar decisiones. Es posible que haya querido escribir “s” y, en este caso, se enojaría si intentara autocorregir “s” a otra cosa cada vez que escribiera eso. Además, necesita al menos dos letras para saber si desea cambiar una palabra existente o agregar una nueva, por lo que si borra “s” y luego escribe “a”, no es lógicamente posible reemplazar “s” en un diccionario con “a” porque ambas son palabras válidas diferentes por sí mismas, y no estás “editando ‘cambiando’ a ‘a'”, estás reemplazando una palabra por otra.

Explicación completa
Autocorrección utiliza dos palabras simultáneas para la predicción: palabra actual y palabra anterior. Esto es lo que hace posible arreglar “SERIO-SOLO” (dos palabras separadas por un espacio) con “EN SERIO”. También solo corrige las palabras una vez que haya terminado de editarlo (cuando escribe espacio, abre / cierra paréntesis, etc., pero NO un asterisco *)

* Cuando usa un asterisco, la autocorrección piensa: “está bien, así es como se debe deletrear la palabra. La agregaré a mi diccionario y ya no corregiré más esta palabra porque ahora es una palabra válida”. Puede deshacer esto borrando el asterisco y fijando la palabra a una palabra de diccionario válida.

Además, la autocorrección comienza a aprender una palabra nueva cada vez que borra una letra de la palabra actual. Si escribe la palabra SPEL (falta una L) y sigue escribiendo (presione la barra espaciadora y continúe), la cambiará a SPELL (con dos L). Pero si lo escribe mal y luego borra 1 carácter, la autocorrección tendrá el siguiente comportamiento:

  1. Usted borró parte de la palabra autocorrección cambiada, por lo que comienza a suponer “tal vez estoy equivocado y él quiere deletrear esta palabra de otra manera”.
  2. Mantendrá la palabra que escribió de la forma en que la dejó (si está mal, la mantendrá mal porque borró su corrección; si es correcta, pensará “bueno, resulta que estaba en lo correcto, seguiré corrigiendo esto palabra”)
  3. Si lo dejó mal y luego escribió la siguiente palabra correctamente, y sabe que la combinación de la palabra actual + la palabra anterior se suponía que era correcta, puede, dependiendo de su algoritmo y de sus patrones de escritura, corregir la palabra anterior o mantenerla mal escrito
  4. En caso de que corrija la palabra nuevamente y ya no te metas con ella, la autocorrección mantendrá ambas versiones de la palabra: mal escritas y correctamente escritas, pero elige cada una según el contexto (esta palabra por sí sola puede o no se corregirá, pero se corregirá la palabra incorrecta más otra palabra que sabe que debe seguir de esta manera).

Ejemplo:

Escribes:
SPEL- –
Se corrige a:
DELETREAR- –
Lo borras de nuevo a:
SPEL- –
Aprenderá “SPEL” y la probabilidad de corregirlo nuevamente será mucho menor.
Pero luego escribes:
SPEL- -CORRECTY- –
Verificará el diccionario para ambas palabras juntas y encontrará que “hechizo” debe tener dos L, y “correctamente” le falta una L, por lo que lo arreglará nuevamente:
HECHIZO -CORRECTAMENTE- –
Si ya no juegas con él, “SPEL” por sí solo tiene un ~ 50% de posibilidades de ser corregido, y “deletrear correctamente” siempre será corregido. Las probabilidades se reducen significativamente de acuerdo con la forma en que escribe y con qué frecuencia usa “hechizo” sin una L.

Hay mucho más de lo que expliqué ahora, pero creo que no tiene sentido explicarlo cuando Apple está mejorando constantemente sus algoritmos y puede verlo usted mismo simplemente escribiendo en su teléfono.