Learn to apply formal methods to systematically develop correct, loop-based programs, an essential skill for computer programmers.
This course is made available through the eLearnAfrica and Edx partnership.
Is my program correct? Will it give the right output for all possible permitted inputs? Computers are now essential in everyday life. Incorrect programs lead to frustration in the best case and disaster in the worst. Thus, knowing how to construct correct programs is a skill that all who program computers must strive to master.
In this computer science course, we will presents "goal oriented programming" the way Edsger Dijkstra, one of the most influential computer scientists, intended. You will learn how to derive programs hand-in-hand with their proofs of correctness. The course presents a methodology that illustrates goal-oriented programming, starting with the formalization of what is to be computed, and then growing the program hand-in-hand with its proof of correctness. The methodology demonstrates that, for a broad class of matrix operations, the development, implementation, and establishment of correctness of a program can be made systematic.
Since this technique focuses on program specifications, it often leads to clearer, correct programs in less time. The approach rapidly yields a family of algorithms from which you can then pick the algorithm that has desirable properties, such as attaining better performance on a given architecture.
The audience of this MOOC extends beyond students and scholars interested in the domains of linear algebra algorithms and scientific computing. This course shows how to make the formal derivation of algorithms practical and will leave you pondering how our results might extend to other domains.
As a result of support from MathWorks, learners will be granted access to MATLAB for the duration of the course.
Certificate cost may vary. You will be redirected to the host page for cost and payment options.
Getting Started
edX Basics
Certificates
I passed my course and am on the verified track! Where can I find my certificate?
What is the deadline to upgrade to the verified certificate?
Will my Professional Education course have a different certificate?
Can I start on the audit track and pay and upgrade later in a course?
MicroMasters
Can anyone enroll in a MicroMasters program? Are there any eligibility requirements?
Does every MicroMasters program have a capstone exam or project?
Account
The Courses
How can I get help or support with my course? How do I contact course staff?
Can I mark a place in a course so I can come back later? Like a bookmark?
Financial Assistance
For more information, please visit the edX FAQ page.
The University of Texas at Austin is the top-ranked public university in a nearly 1,000-mile radius, and is ranked in the top 25 universities in the world. Students have been finding their passion in life at UT Austin for more than 130 years, and it has been a member of the prestigious AAU since 1929. UT Austin combines the academic depth and breadth of a world research institute (regularly ranking within the top three producers of doctoral degrees in the country) with the fun and excitement of a big-time collegiate experience. It is currently the fifth-largest university in America, with more than 50,000 students and 3,000 professors across 17 colleges and schools. UT Austin will be opening the Dell Medical School in 2016.
This institution is available on eLearnAfrica through partnership with Edx.
By enrolling in a course on or through eLearnAfrica, you are joining a special worldwide community of learners. The aspiration of eLearnAfrica is to provide anyone with an internet connection access to courses from the best universities and institutions in the world and to provide our learners the best educational experience internet technology enables. You are a part of the community that will help eLearnAfrica achieve this goal. eLearnAfrica depends upon your motivation to learn the material and to do so with honesty and academic integrity. In order to participate in eLearnAfrica, you must agree to the Honor Code below and any additional terms specific to a class.
By enrolling in a course, program, or degree hosted on the eLearnAfrica App or Site, I agree that I will:
Complete all tests and assignments on my own, unless collaboration on an assignment is explicitly permitted.
Maintain only one user account and not let anyone else use my username and/or password.
Not engage in any activity that would dishonestly improve my results, or improve or hurt the results of others.
Not post answers to problems that are being used to assess student performance.
Abide by any and all requirements of the eLearnAfrica Participants as may regard the expectations of civil or academic behavior or of community standards.
If you are found in violation of the Terms and Conditions or Honor Code, you may be subject to one or more of the following actions:
Receiving a zero or no credit for an assignment;
Having any certificate earned in the course withheld or revoked;
Being unenrolled from a course, learning program or degree program; or
Termination of your use of the App and/or Site.
Additional actions may be taken at the sole discretion of eLearnAfrica and eLearnAfrica course providers.
No refunds will be issued in the case of any corrective action for such violations.
Honor code violations will be determined at the sole discretion of eLearnAfrica, the Partners, or Members. You will be notified if a determination has been made that you have violated this honor code and you will be informed of the corresponding action to be taken as a result of the violation.
Please note that we review and may make changes to this Honor Code from time to time. Any changes to this Honor Code will be effective immediately upon posting on this page, with an updated effective date. By accessing the App and/or Site after any changes have been made, you signify your agreement on a prospective basis to the modified Honor Code and any changes contained therein. Be sure to return to this page periodically to ensure familiarity with the most current version of this Honor Code.
Effective Date: September 22, 2016