# Project in computer science and mathematics.

My background

I'm a third year student. I study mathematics combined with computer science (with focus on modeling, simulations and visualization). In order to get my degree, I have to make a half-year project where I combine mathematics with computer science.

What I want to do

I am in love with algebra and group theory. But I don't know how it would fit with the interdisciplinary project, where I have to combine it with computer science. Someone suggested cryptology, but I don't know alot about it (any thoughts? and useful references?).

My problem/question

Is it possible to combine computer science with algebra? I also need project ideas (I would also like references).

-

1
I believe the standard answer to this type of question is, "Don't you have an adviser of some sort you should talk to, for example, whoever is in charge of "grading" this project?" – Graphth Oct 2 '12 at 18:15

1
There is such a thing as "computational group theory", but I don't think it is a very fruitful subject, though I could be wrong. – akkkk Oct 2 '12 at 18:17

1
"Don't you have an adviser of some sort you should talk to, for example, whoever is in charge of "grading" this project?" Yes, I have and I will talk to him. But I would like to know others thoughts and ideas. – whoisitnow Oct 2 '12 at 18:18
@whoisitnow Okay, sounds good :) – Graphth Oct 2 '12 at 20:12

## 3 Answers

This is a bit challengeing, but who known that you won't like that? Homotopy type theory has definite connections to algebra (the groupoid model) but also to computer science (implementations in Coq). Take a peek at http://homotopytypetheory.org/

Maybe you can find something more suitable in denotational semantics (http://en.wikipedia.org/wiki/Denotational_semantics). This is an application of algebra to the study of programming languages.

-

Perhaps a project using Sage?

http://www.sagemath.org/doc/thematic_tutorials/group_theory.html

-

You may consider this old hat, but you could write a solver/simulator for a Rubik's Cube or some other puzzle that can be described with groups.

As for cryptography, there have been proposals for cryptosystems based on braid groups (an overview). I believe they use the conjugacy search problem or something similar as the trap door (i.e. given $a$ and $b$ that are conjugate, find $x$ such that $a=xbx^{-1}$). You might be able to visualize the way the computer manipulates the braids (puts them into normal form and such).

-
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 4, "mathjax_display_tex": 0, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.18, "absolute_threshold": 10, "end_threshold": 15, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "github"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "english_confidence": 0.9468888640403748, "perplexity_flag": "middle"}