Est-ce qu'ils ont trouvé un algorithme révolutionnaire?
Non. Pas mal d'algorithmes pour ceci ont été trouvés par les mathématiciens et les informaticiens au fil du temps. Il y a des algorithmes déterministes, des algorithmes probabilistes, chacun ayant sa zone d'utilisabilité (les algorithmes naïfs deviennent vite très lents quand la taille augmente). Wikipedia, et des sites/forums plus spécialisés, seront des ressources plus complètes et plus pédagogiques

Notons que déterminer la primalité, et factoriser un composé, sont deux choses très différentes. La première est beaucoup plus facile que la deuxième, surtout avec une détermination probabiliste de primalité. On connaît un algorithme polynômial de détermination de primalité (AKS), même s'il est rarement utilisé; la factorisation est une autre paire de manches (NP-complet, au mieux), rapidement pénible pour des particuliers (factoriser RSA-512 est trivial, mais factoriser RSA-640 l'est déjà nettement moins pour des particuliers; l'état de l'art est à 768 bits, sachant que 896 ou même 1024 est probablement en cours).
Si oui quel est celui utilisé, et sinon, peut être que ce n'est pas le même langage?
Seul TI pourrait indiquer sans trop d'effort quels algorithmes sont utilisés par le CAS de la Nspire. Même si on sait comment s'y prendre pour trouver en gros les blocs de code qui s'occupent du test de primalité (trouver primary_tag_list et descendre - c'est exactement pareil que sur TI-68k, les structures de données au coeur du CAS de la Nspire restent très similaire à celles utilisées par le CAS des premières TI-92 de 1995-1996), il faudrait reconnaître les algorithmes à partir du désassemblage, ce qui peut être désagréable.
J'avais lu une fois que les TI-68k utilisaient un algorithme déterministe au début, puis probabiliste pour des nombres plus grands, mais je serais bien en peine de retrouver la référence, si tant est qu'elle existe encore (l'endroit où je pense l'avoir lu ayant été partiellement détruit par un cracker).
Les fonctions natives seraient donc codées en ASM ou en C/C++ ?
Bien entendu - toutes les fonctions natives du BASIC sont codées en C (sur TI-68k, c'est clairement du C, parce que même un programmeur ASM relativement incompétent ne produirait jamais certaines conneries que le compilo de merde utilisé par TI a commis - et puis de toute façon, développer en ASM pur prend beaucoup trop de temps et coûte donc beaucoup trop cher)

Et puis le BASIC est implémenté de façon lente, ce qui n'aide pas à l'implémentation d'algorithmes de test de primalité...