Ce module a été développé afin de rendre le site Efrei accessible au plus grand nombre.

Si malgré notre vigilance, vous rencontriez le moindre problème d’accessibilité sur notre site, n’hésitez pas à nous contacter à l’adresse site-groupe@efrei.fr ou par téléphone au +33 188 289 000.



Head of Department :

Prof. Helen Kassel



Program Description 

Building on and strengthening student’s numerical background, the undergraduate Mathematics program has a triple objective:

  • to provide tools,
  • teach concepts,
  • develop skills.

The goal is, ultimately,

  • to reinforce the techniques of calculation,
  • to teach structured methods for acquisition of knowledge,
  • to lay the foundations for the application of knowledge and autonomous critical thinking.  

Modules such as Numbers and StructuresFinite and Infinite Calculations and Functions and Variations complete and consolidate the mathematical concepts acquired in high school by providing student with a stable conceptual framework open to future developments.

The modules Linear AlgebraProbability  and StatisticsData Analysis and Real Mathematics (functions of several variables) complete these initial modules by extending in to « less immediate » but essential areas of Mathematics applications.  

In the second and third year of undergraduate cycle, Mathematics modules for computing, Group Theory and Applications, Discrete Optimization and Graph Theory are introduced in order to complement the range of student’s mathematical tools.

Since the goal is to train engineers, the acquisition of concepts systematically targets new methods and modes of application. For example, the linear algebra module ends with the study of elementary Markov chains in the context of the matrix diagonalization or when group theory is used to understand RSA encryption.

Learning Objectives  

  • To be able to structure reasoning and argumentation: discover, analyze, transform or simplify a problem, and experiment on examples. 
  • To be able to calculate, using symbolic language: manipulate expressions containing symbols, organize the various stages of a complex calculation, perform automated calculations by hand or with a tool (calculator, software …) control the results. 
  • To be able to communicate orally and in writing: including an understanding of mathematical statements written by others, writing a rigorous problem solution, present and defend mathematical work.

Computer Science

Program Description 

The computer science department offers students a wide range of modules that allow them to tackle complex problems. At the end of the undergraduate cycle, students become designers and developers able to solve a diverse range of problems using appropriate algorithms and adapted programming languages, including object-oriented languages. 

Computer Science, or the science of information processing, performs algorithmic treatment of data organized in structured sets. These treatment processes are programs, written with programming languages, and implemented on technical architectures (machines, network, computing resources).

The programs and applications are designed in accordance with these structures as well as the expected results. Thus, depending on the particular problem, analysts will adapt the structures, the methods and the technical choices of language, and platforms, in order to realize a program, an application. 

Students are introduced to group work and projects learning from a definition of problem specification, to the production of software. All projects ends with a defense during which instructors assume the role of the client. 

The undergraduate Computer Science modules consolidate the basic mastery of various domains of computing (algorithmic and data structures, databases, networks, operating systems, Web programming, object-based programming …) allowing students to choose a major specialization. 

Learning Objectives  

  • Ability to analyze a problem 
  • Capacity to develop a problem resolution strategy 
  • Demonstrate an ability to formalize this strategy in an algorithm 

These core skills will enable students to gain a broad understanding of coding in and of itself, while thinking in terms of solutions and IT performance. 

At the end of the undergraduate cycle,

  • Students will have mastered several programming languages: Python, C, C ++, Java, HTML, SQL …
  • They will have the control of the programming by object and will be able to use the classes, the inheritance and polymorphism.
  • Students also master the process programming by object and be able to use classes, inheritance and polymorphism. 
  • Students will be able to situate themselves within the technological universe and the protocols of Web programming in a client-server, and will master in particular HTML and CSS standards. 
  • Students will understand the internal mechanisms of an operating system (in particular the algorithms used for process, memory and file system management), and will control the operation of IP data networks and switching technologies.  
  • Students will be able to design a standardized database schema and use a DBMS to fully exploit and administer the database.
  • Students will know the principles governing the internal organization of computers and will have notions of programming assembly including interactions between hardware and software, and will be better able to understand the concepts of Concurrent Programming and Parallel Programming. 
  • Finally, students will be introduced to the main concepts of cybersecurity.