Studies in Computer Science toward a Dual-Disciplinary Degree

At least 72 credits, including at least 42 credits in Computer Science, of which at least 12 are advanced credits

Basic courses: required – 30 credits

Level

Credits

Discrete Mathematics: Set Theory, Combinatorics and Graph Theory (20476)*

intermediate

4

Linear Algebra I (20109)

intermediate

6

Infinitesimal Calculus I (20106)

intermediate

6

Differential and Integral Calculus II (20423)**

intermediate

6

Probability for Computer Science Students (20425)

intermediate

4

Logic for Computer Science (20466)

intermediate

4


*

or Discrete Mathematics: Set Theory, Combinatorics and Logic (20283), which is no longer offered.

**

or both courses: Infinitesimal Calculus II (20212) and Infinitesimal Calculus III (20224).

Computer Science – 42 credits

Required courses – 34 credits1

Level

Credits

Introduction to Computer Science Using Java (20441)2

intermediate

6

Data Structures and Introduction to Algorithms (20407)

intermediate

6

Algorithms (20417)

intermediate

4

Automata Theory and Formal Languages (20440)

intermediate

4

System Programming Laboratory (20465)3

intermediate

3

Introduction to the Theory of Computation and Complexity (20585)4

advanced

4

Operating Systems (20594)1,5

advanced

4

Seminar or workshop in Computer Science 6

adv. seminar

3

Electives – 8 credits,1,7,8 including at least 6 advanced credits

Digital Design (20272)

intermediate

3

Computer Organization (20471)9

intermediate

3

Database Systems (20277)

intermediate

3

Principles of Information Systems Development (20436)

intermediate

4

Algorithmics: The Foundations of Computer Science (20290)

intermediate

4

Introduction to Coding Theory (20296)

intermediate

3

Numerical Analysis I (20462)

intermediate

4

Advanced Programming with Java (20554)

advanced

4

Prolog and Artificial Intelligence (20596)10

advanced

4

Introduction to Artificial Intelligence (20551)

advanced

4

Biological Computation (20581)

advanced

4

Introduction to Computer Networks (20582)

advanced

6

Computer Graphics (20562)

advanced

4

Introduction to Cryptography (20580)

advanced

4

Compilation (20364)

advanced

4

Programming Languages (20905)

advanced

4

Database Systems Implementation (20574)

advanced

4

Data Mining (20595)

advanced

4

Seminar requirements

One seminar or workshop in Computer Science.11


1

Operating Systems (20594) is a required course for students who began their studies since Fall 2012. Students who began their studies prior to that semester and do not take the course may accumulate only 30 credits in required courses and must take 12 elective credits, among them 6 advanced credits.

2

or both Introduction to Computer Science Using Java I (20453, 3 cr.) and Introduction to Computer Science Using Java II (20454, 3 cr.). Students who took Introduction to Computer Science (20427), which is no longer offered, are exempt from this course.

3

or Introduction to System Programming with C (20386), which is no longer offered.

4

or Computational Complexity (20545, 4 cr.), which is no longer offered.

5

or Principles of Operating Systems (20354, 6 cr.), which is no longer offered.

6

The list of seminars and workshops can be found in the Course Catalog.

7

For students who took Software Engineering: Abstraction and Object-Oriented Design (20442), which is no longer offered, the course counts as an elective in Computer Science.

8

Students who plan to continue to graduate studies in Computer Science are advised to take the following courses among the electives in Computer Science: Digital Design (20272) and Computer Organization (20471).

9

or Computer Organization and Programming (20420), which is no longer offered.

10

or Prolog and Artificial Intelligence (20284, 3 inter. + 3 adv. cr.), which is no longer offered.

11

As detailed in the requirements above.

General Requirements for a dual-disciplinary degree

Fulfilling all requirements as detailed here.

  • Accumulating credits required for the degree

  • Fulfilling all requirements in both disciplines

  • English language proficiency

  • Bibliographic instruction

Before enrolling in any course, students must ensure that they have taken all the prerequisites for it, even when the prerequisites are not included among the courses listed above.

Degrees awarded when combining two fields

When combining Computer Science with any field in the Sciences, the degree awarded is a B.Sc.

When combining Computer Science with any field in the Humanities or the Social Sciences, the degree awarded is a B.A.

General note regarding combining two fields

When combining fields in a dual-disciplinary program, students are required to take the basic studies in both fields. If a course is required in both fields, taking it fulfills the requirements of both. If a course is required in one field and is an elective in the other, it can only be taken as a required course in the relevant field. If a course is an elective in both fields, it will only grant credits in one of the fields.

For specific requirements when combining fields, see the individual combinations of fields (in Hebrew).