Monday, September 14, 2009
Suppose you write a program and you send the source code to two of your friends, and . Your two friends read the code and when they finish, A errors are detected by , B errors are detected by , and C errors are detected by both. So, in total, A+B-C errors are detected [...]
Also filed in Computing Science, Education, Mathematics, Programming, Science
|
Tagged Algorithms, calculational, Education, Mathematics, polya, probabilities, probability, Programming, proof, proofreading, proofs, Science
|
Sir Tony Hoare on the future of Computing Science (CACM, March 2009):
I expect the future to be as wonderful as the past has been. There’s still an enormous amount of interesting work to do. As far as the fundamental science is concerned, we still certainly do not know how to prove programs correct. We need [...]
In graph theory, the degree of a vertex A, d.A, is the number of edges incident with the vertex A, counting loops twice. So, considering graph 0 below, we have d.A=3, d.B=3, d.C=1, d.D=3, and d.E=2.
A well-known property is that every undirected graph contains an even number of vertices with odd degree. The result first [...]
Also filed in Computing Science, Education, Mathematics, Methodology
|
Tagged calculational, goal-oriented, graph, graph theory, Mathematics, Methodology, Programming, proof, quantifiers, vertex
|
Tuesday, January 22, 2008
A recent article written by Dr. Robert B.K. Dewar and Dr. Edmond Schonberg (both from AdaCore Inc.) is generating some discussion on the state of Computer Science (CS) education in the United States. In “Computer Science Education: Where Are the Software Engineers of Tomorrow?“, Dewar and Schonberg claim that U.S. universities are training unqualified and [...]
Also filed in Education, Mathematics, Methodology, Opinion, Programming
|
Tagged Algorithms, Education, Mathematics, Methodology, Opinion, Programming, university
|
Last November I have solved Problem 15 of Project Euler (a counting problem involving paths in square grids), and, although the problem admits a simple solution, some of the solutions presented in their forums are very complicated. Thus, I thought it would be a good idea to present my solution, as I consider it very [...]
Programming is one of the most difficult branches of applied mathematics; the poorer mathematicians had better remain pure mathematicians.
It was Edsger W. Dijkstra, the famous computer scientist, who wrote these words in his note named “How do we tell truths that might hurt?“. I am sure that many people didn’t like to read them, and [...]
In my previous post I have promised that I would put here some of my technical notes (JFFs). Today I am posting JFF1, which presents a very well-known problem in a non-traditional way. The problem is how to swap the values of two variables without using another temporary one.
I start by presenting the properties involved [...]
That’s true: the last post was exactly 5 months ago, but I’m still alive! A lot of new stuff happened during these 5 months. Two days after writing the last post, I went with my group (Foundations of Programming) to a very nice hotel in Ruddington, where, during two days, each member had to present [...]
In the last post I have presented some historical context about programming and mathematical methodology. If you read it, then you should have an idea when and why programmers started to investigate on mathematical methodology. However, I haven’t mentioned any aspects of mathematical methodology that can help us to improve our programming or mathematical skills.
In [...]
Thursday, December 28, 2006
First of all, welcome to my new blog. Being this my first post, I will present myself, give you some background on what I am doing and explain what are my intentions about this blog. My name is João Fernando Ferreira and I am a research student at the Foundations of Programming research group at [...]