2

Jugando un poco con el diccionario, veo que hay algunas raíces que producen verbos para dos terminaciones:

Pero de momento no he conseguido dar con ninguna raíz que produzca los verbos correspondientes a cada una de las tres terminaciones posibles. ¿Existe tal raíz?

5

¡Hay una!

En List of words tenemos un enlace a una lista de unas 80 mil palabras y haciendo algo de scripting* obtuve ese resultado.

Encuentro algunas otras combinaciones interesantes:


*Cogí la lista y extraje solamente las que terminan en "r". Ese fichero lo procesé con Python:

def lee():
    """Lee el fichero y guarda las raíces en conjuntos, 
    para poder buscar después coincidencias."""

    lineas = []
    bloques = {
        'ar': set(),
        'er': set(),
        'ir': set()
    }

    with open('verbos.txt', 'r') as f:
        for linea in f:
            linea = linea.rstrip()
            lineas.append(linea)
            terminacion = linea[-2:]  # coge la terminación
            stem = linea[:-2]  # coge la raíz de la palabra
            bloques[terminacion].add(stem)

    return lineas, bloques

def busca_majas(ar, er, ir):
    """Detecta intersecciones entre las raíces."""

    print("ar - er:", ar.intersection(er))
    print("ar - ir:", ar.intersection(ir))
    print("er - ir:", er.intersection(ir))
    print("total:", ar.intersection(er).intersection(ir))


if __name__ == '__main__':
    lineas, bloques = lee()
    ar = bloques['ar']
    er = bloques['er']
    ir = bloques['ir']
    busca_majas(ar, er, ir)

Si se guarda este script en un fichero algocharlie.py, se puede ejecutar con:

grep -E '(ar|er|ir)$' lista_palabras.txt > verbos.txt
python algocharlie.py
| improve this answer | |
  • Mola, la segunda pregunta que hago en el sitio que se resuelve con un algoritmo... :-D – Charlie Apr 4 '18 at 9:56
  • ¿Qué me dices del caso de que la raíz se base en el sonido de la palabra? Ejemplo inventado: me podría servir "danzar", "dancer" y "dancir". Por motivos ortográficos la "z" se transformaría en "c" en las otras terminaciones. Lo mismo con verbos que acaben en "gar", "guer", "guir" (¿existen de estos dos últimos?), o en "jar", "ger/jer" "gir/jir". – Charlie Apr 4 '18 at 10:05
2

rendar, render, rendir

(rendir y render son sinónimos)


Código de SQL ( tiempo de ejecución: 11028ms ):

SELECT * FROM 
(SELECT word FROM verbs WHERE WORD LIKE "%er") AS x
JOIN
(SELECT word FROM verbs WHERE WORD LIKE "%ar") AS y
JOIN 
(SELECT word FROM verbs WHERE WORD LIKE "%ir") AS z

ON  SUBSTR(x.word, 1,LENGTH(x.word)-2) = SUBSTR(y.word, 1,LENGTH(y.word)-2)
AND SUBSTR(x.word, 1,LENGTH(x.word)-2) = SUBSTR(z.word, 1,LENGTH(z.word)-2)
| improve this answer | |
  • ¡Gracias, ukemi! Lástima que fedorqui encontrara esta misma respuesta cinco minutos antes que tú, así que le di a él la marca de respuesta correcta. – Charlie Apr 4 '18 at 10:26
  • Ah, demasiado lento esta vez... haha – brazofuerte Apr 4 '18 at 10:29
  • Por curiosidad, ¿con qué base de datos trabajas? – fedorqui 'SO stop harming' Apr 4 '18 at 10:35
  • 1
    @fedorqui bcbl.eu/databases/espal – brazofuerte Apr 4 '18 at 10:38
  • Tremendo recurso, no lo conocía ukemi. No consigo enterar en la zona de ejecutar código SQL. ¿Te apetece añadir el recurso en Resources for learning Spanish con una pequeñísima guía de uso? – fedorqui 'SO stop harming' Apr 4 '18 at 10:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.