On Sat, Jul 12, 2008 at 8:03 AM, Brian Harvey <[EMAIL PROTECTED]> wrote:
>> But how isomorphic are the domains of maths and programming - and how >> accessible to most kids... questions I wonder about ... Ken Iverson put in a lot of work on reducing the distance, and wrote an Algebra textbook for an IBM project to introduce programming along with arithmetic starting in first grade. One teaches a tiny subset of the language to begin with, just enough to cover the ideas and manipulations to be taught. Something like this. So you can type (user input indented, computer output flush left) 1+2 3 1-2 _1 With the notation for negative numbers and the subtraction function use different symbols. He used the standard times and divide signs, which the XO provides (×÷) 3÷2 1.5 If I write p for a polynomial evaluation function (also suitable for mixed radix number notation), then we can represent (x^2)+2x+1, or (x+1)^2 by its vector of coefficients 1 2 1. 1 2 1 p 0 1 1 2 1 p 1 4 1 2 1 p 2 9 1 2 1 p 10 121 and so on through. Iverson also wrote Arithmetic and Calculus textbooks for the project. They are available to be put into electronic form and CC-licensed. The software is also available for GPLing. I can say this because I control the licenses, from having led a free reimplementation of the software, and from receiving Ken's books and others, with the rights, from the original publisher. > I agree that in the current test-heavy educational climate this is going to > be a hard sell -- one reason I'm teaching an after-school class, where you > don't have to worry about tests. The distinction is between mathematical > facts (4+7=11, the square root of 2 is irrational, the angle bisectors of a > triangle meet at a point) and mathematical ways of thinking (manipulating a > formal symbol system according to strict rules, generalizing from examples, > etc.). It's hard to test the latter, but they're much more important in > the long run, after the kids have forgotten all the specific facts they learn > in school. It goes much deeper than that. Mathematics is not calculation and proof, or even manipulations and generalizations. Those are just basic tools. Mathematics is a deep study of patterns, in particular the way in which the same pattern will appear in different domains, like place number notation and polynomial evaluation. The proof of Fermat's Last Theorem (FLT) depends strongly on this, in particular on the Taniyama-Shimura conjecture that the spaces of elliptic functions and modular forms have isomorphic structures. That means, in part, that to every elliptic function corresponds exactly one modular form according to a general rule. Once we know that, we know that all elliptic functions are modular. But if FLT is false, and there are two Nth powers that add to another Nth power for some fairly large N, then we can use the numbers from the counterexample to build a non-modular elliptic function. But we can't, so there isn't, so it's true, QED. The Taniyama-Shimura conjecture is proved using quite advanced mathematical tools, but the rest of the proof is well within the capabilities of college students and some high-school students. > California, where I live, has just made a rule that all 8th graders will be > tested on algebra, starting in a few years, and there's a lot of controversy > about this because people in schools think many of the kids just aren't > cognitively ready for algebra yet and will fail. Even though a variable in a > programming language is a very different thing from a variable in algebra Part of the problem is that there are many kinds of variables in both programming and math, including algebraic variables, logical variables, set variables, and "random variables" in math, and global vs. local variables vs. objects in programming. None of them are defined correctly in typical schoolbooks. I had a friend who couldn't do algebra for many years because she had been told that a variable "is a number that can change its value." Since numbers are constants, none of it from that point on made any sense to her. I explained that a variable name is a pronoun that can refer to different numbers at different times, just as any personal pronoun can refer to different people. She went off for half an hour and tried it, and came back saying that she could do it now, and needed no more assistance. In some programming languages, such as FORTH, a variable is the name of a memory location. In others, variables can take on values like trees. In strict functional programming, variables are immutable. A value can be given to a variable once, and never changed after that. (But if a variable has a stream for its value, it returns a different value each time it is queried.) So when we are evaluating polynomials and other functions, or solving equations, or writing programs, we use variable names, but there are no variables. Just names paired with numbers, or sets, or data structures, or whatever we can define. If we understand this, there is no harm in using the term "variable" when it is more strictly accurate to say "variable name" and also to specify what kinds of object the name can refer to. A group of Yale math professors taught in the New Haven middle schools one year, and reported that many children had deep questions about the foundations of mathematics that their teachers had never heard of and had no idea what to do with. Typically children who ask difficult questions are labeled troublemakers, or even called stupid for not understanding the (incorrect) explanation in the textbook. > (the latter doesn't really /vary/ when you're trying to solve an equation), Exactly. Solving an equation means asking which values of the variable (numbers that we can call by that name) are solutions to the equation, and then following an algorithm to find the answers. Varying a variable is what you do when you draw graphs. > it seems possible to me that computer programming experience might help kids > get ready for algebra. This has been verified. In fact, we can go much further. Some physicists say that you don't really understand any idea unless you have six different models for it. > Someone with more energy than I should get a grant > to do a research project about this. I'll help, but I have too much on my plate to do this. > _______________________________________________ > Its.an.education.project mailing list > [EMAIL PROTECTED] > http://lists.lo-res.org/mailman/listinfo/its.an.education.project -- Don't panic.--HHGTTG, Douglas Adams fivethirtyeight.com, 3bluedudes.com Obama still ahead in EC! http://www.obamapedia.org/ Join us! http://wiki.sugarlabs.org/go/User:Mokurai For the children _______________________________________________ IAEP -- It's An Education Project (not a laptop project!) [email protected] http://lists.sugarlabs.org/listinfo/iaep
