The courses in this category are under graduate course will number part of their codes ranging from 100 to 599. The courses are assigned as follows: 

  1. CSC Computer Engineering
  2. CSC Computer Science
  3. CIS Computing and Intelligent System
  4. CIT Computing in Indigenous Tradition 
Other course codes, when created will be included. Please see your course coordinator for further details.

There are lots of question that the modern computing instruments have been used to answer. Majority of the questions that computing system have been used to answer are those that can be reduced into problem. The problem is then solved and the solution is then used to inform the answer the question. The activity in AI attempt to go beyond this by considering the possibility of creating machines that can directly answer the question, that than the problem rendered version of it. A number of questions arises in respect of the enterprise of AI. These include, but not limited to: Can we make the computer to think like humans? What is intelligence and how can we make a computer to manifest? Will such machine be conscious? Indeed, these are questions with which computing and intelligent system discourses have been concerned. The discourses of AI are also of the interesting subject-matter in a number of fields including, philosophy, human  language process and psychology as well as other related fields.

We will be discussing a number of the challenging topics relating to intelligence and consider perhaps whether and how we can craft out machines to mimic it.



In this course, we will be investigating and discussing the most important concept in computing, and perhaps, human society: Language. Indeed language had been the subject-matter of most of the fascinating issues in human discourse since the recorded history. To appreciate the importance of language, imagine a ``world without language''. What do you think it will be like? (e.g. possibility of thinking and sharing the outcomes of our thoughts and feelings with others). Now, also imagine a world where each ``individual speaks a unique language'' (Tower of Babel?). Your answers to these questions will lead you to the realisation of the important roles that language play in individual human and social activities. Language can be loosely defined as an instrument for abstracting and giving expression to human mental states and activities. In the minimum, a language functions as an instrument for formulating and communication messages. Human languages are those used among humans to achieve the abstraction and communication tasks. Some languages spoken by humans include Yorùbá, Hausa, Igbo and English. Human languages manifest in many different forms of expressions such speech, written text (orthography), gaits, signing and other formation such as Àrokò and other indigenous symbol system.

The languages use to programe machines are not the subject-matter of this course though the applications that will be demonstrated  in this course will be developed using programming languages such as Python. 

This is sessional undergraduate students' project course. During this course, you will be required to carry out focused, organised and informative study on a project of your choice. You may also be assigned a project by your supervisor. Specifically you will be expected to: (i) Select a topic in an area of computing and its applications, (ii) Carry out a review of the literature in the area. (iii) Craft our a project aim, (iv) State the specific objectives for achieving the aim, (v) construct the methodology to achieve the objective (vi) Carry out the activities in the methodology and (vii) document the activities in (i) through (vi). You will be guided by your supervisor to achieve this during this course. The purpose of the project is for you to demonstrate your ability to give expression to all you have learnt since Part one to the present. You will need to demonstrate your ability to carry out your selected project in line with the standard best practices in computing and intelligent systems. It various stages during the project, you will be called upon to present seminar and defend your work.

You are welcome to one of the core, and perhaps most interesting, subjects in modern computing: Numerical Computations. This course is core to modern engineering and scientific enterprise for a number of reasons. First, important tasks and activities involved in modern scientific investigations depend on evidences encoded as numerical data. Second, computing techniques are the principal instrument for the rendering, collection and processing of data. Third, all stages in the development of modern engineering devices or mechanisms depend on the use of computing instruments to support their representation, presentation and interpretation. Finally, it is well established that computational formulation of scientific and engineering problems provides the most effective approach to their practical solutions. Despite the power and versatility of modern computing instruments, however, their usefulness depends on the skills of humans to program and apply them appropriately. Such skills include the ability to exercise good judgement in the selection of effective numerical methods and the employment of appropriate computing technique for realising desired solution. It also include a strong awareness of the limits of the power of computing instrument in terms of what a machine can be programmed to do and how exactly the machine does it.

You are welcome to Automata Theory and  Computability.  This is the foundation, fundamental, and perhaps the canonical, subject in computing. The subject matter of this course permeates the entire field of computing. This is because the roots of the tree, from which the fundamental concept of the principles and theories underlying all computing instruments and artefacts emerges, are grounded in subject matter of this course. Specifically, the concepts and principles that we shall be considering in this course are key to the conceptualisation, formulation, design, implementation and evaluation of ideal and abstract computing processes or systems: from the very simple to the most complex. In this course, therefore, we will be examining some fundamental theoretical and
practical interpretations of the concepts underpinning computing. We shall, first of all, demonstrate that the purpose of computing is problem-solving.

Then we shall be discussing the set of criteria, theories and principles that are key to determining:

  1. What can be conceptually computed?
  2. How computed concepts be precisely and completely expressed?
  3. To what extent can  computable concepts be realised materially?


This is a continuation of CSC201,  introductory programming course. Further concept of computing problem-solving will be presented. Solution formulation, specification and design. Algorithm and pseudo-code  tools of solution design will be presented. Program development will be demonstrated using the Python programming language. Various programming techniques and constructs will be demonstrated. Constants, variables, list, tuple, dictionary, etc. will be presented. Iteration and recursive process implementation will be demonstrated.

This is an introductory programming course. Basic concept of computing problem-solving will be presented. Solution formulation, specification and design. Algorithm and pseudo-code  tools of solution design will be presented. Program development will be demonstrated using the Python programming language. Various programming techniques and constructs will be demonstrated. Constants, variables, list, tuple, dictionary, etc. will be presented. Iteration and recursive process implementation will be demonstrated.

This is an introductory computing course. During this course, we shall discourse basic and fundamental  concepts in computing. This include definition of basic terms, history of computing, the language of computing, basic structure of computing systems, categories of computing equipment, modern computing applications.

This is the continuation of  CSC 101: Introduction to computing I. In this course, we will expand on our discussions of the topics treated in CSC 101. Specifically, we wll review the definition of concepts given in CSC 101 in the context of their uses in computing.