Algèbre abstraite pour les informaticiens théoriques


19

J'ai une éducation mathématique de premier cycle raisonnable, mais je n'ai jamais été à 100% à l'aise avec l'algèbre abstraite (les mathématiques des groupes, des anneaux, des champs, etc.). Je pense que c'était en partie parce que j'avais besoin de voir des applications et toutes celles que je pouvais trouver étaient en physique, pas en CS. Comme je m'intéresse vraiment au CS, existe-t-il actuellement des documents (projets en ligne, notes de cours, vidéos, livres) qui couvrent l'algèbre abstraite du point de vue des applications en CS et en particulier les algorithmes / théorie? Je suis heureux que ces applications soient entièrement théoriques, mais elles ne devraient pas supposer de connaissances en algèbre abstraite préexistantes.

Je suis à peu près sûr que si ces ressources existaient, elles seraient appréciées par un grand nombre de chercheurs en sciences sociales.


4
stackexchange donne de nombreuses questions «connexes» aux vôtres dans la barre de droite. Veuillez les lire d'abord, en particulier les structures algébriques en informatique .
Uday Reddy

1
@UdayReddy Merci. Je les lis et certains des liens contiennent de bonnes choses. Cependant, idéalement, je recherche un cours intitulé "Une introduction à l'algèbre abstraite pour les informaticiens théoriques" (comme un exemple fictif aléatoire) plutôt qu'une liste de résultats CS où l'algèbre abstraite a été cruciale. Je m'intéresse vraiment aux algorithmes / théorie et loin de la théorie des catégories, par exemple.
Majid

Réponses:


17

Vous pouvez essayer les notes du cours de Madhu Soudan: Algèbre et Calcul


Cela répond très bien à la question. Il est dommage que les cours de "Mathématiques pour l'informatique" comme le 6.042 du MIT ne semblent pas couvrir d'algèbre abstraite. Du moins pas ceux que j'ai vus.
Majid

11

Une voie possible vers l'algèbre abstraite pourrait être de la regarder du point de vue de la cryptographie, qui concerne les algorithmes sur champ fini. Les champs sont des anneaux, et les champs sont également deux groupes couplés par des lois simples. La théorie des champs utilise des espaces vectoriels en position dominante (théorie de Galois), donc cet angle devrait couvrir beaucoup d'algèbre abstraite. Le livre

Une introduction informatique à la théorie des nombres et à l'algèbre par V. Shoup

pourrait donc présenter un intérêt.

Ma recommandation personnelle serait d'ignorer les candidatures et d'étudier un texte de base de mathématiques de premier cycle sur l'algèbre abstraite. Ils ne manquent pas. Ayez juste confiance que toutes ces choses sont utiles et que l'utilisation se révélera plus facilement une fois que vous aurez une compréhension de base du matériel.

La plupart des algèbres de base sont constructives et vous pouvez facilement implémenter des concepts de base pour mieux comprendre, par exemple des algorithmes qui vérifient si une table de multiplication est un groupe, un résolveur d'équations dans un groupe, un programme qui vérifie si deux structures algébriques sont isomorphes, etc. de ces problèmes ont des solutions de force brute qui sont faciles à mettre en œuvre, mais lentes. Plus vous en apprenez sur l'algèbre, plus vous pouvez créer de raccourcis algorithmiques pour accélérer vos programmes. Par exemple les fameux tests de primalité Miller-Rabin et AKS .


1

Consultez ce livre de Rudolf Lidl et Harald Niederreiter: Introduction to Finite Fields and its Applications (2e édition, 1994) http://www.amazon.com/Introduction-Finite-Fields-their-Applications/dp/0521460948

Citant la description du livre en Amazonie: "La théorie des champs finis est une branche de l'algèbre moderne qui est apparue ces dernières années en raison de ses diverses applications dans des domaines tels que la combinatoire, la théorie du codage, la cryptologie et l'étude mathématique des circuits de commutation. . "


-1

Outre la cryptographie, une très bonne application pratique de l'algèbre en informatique est peut-être l'implémentation de fractions, où le numérateur et le dénominateur sont de type intégral ou "grand entier" et la longueur de codage est petite en réduisant les fractions (c'est-à-dire en éliminant le plus grand commun diviseur du numérateur et du dénominateur).

Concernant les types de données "big integer", un résultat intéressant est le soi-disant "théorème du reste chinois" qui permet la parallélisation des opérations entières une fois qu'une représentation en tant que facteurs premiers des arguments est connue.

De plus, la plupart des éléments trouvés en algèbre peuvent être esthétiques (juste un point de vue personnel).


2
Je ne vois pas comment cela répond à la question?
András Salamon
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.