Recursion: Smaller Sibling Pyramids

1 467 Download(s)

Lesson synopsis

humanRecursion, Iteration (Looping), and Concurrency. In the first of two sessions (at most an hour each), students are asked to calculate a simple summation by themselves, based on a procedure they are given. Then, through a guided role-playing procedure, students are asked to do the same problem by pushing a sub-problem off onto a ‘little sibling’. In the second session, they use a divide-and-conquer approach to understand a simple formula for summation. During this session they also talk about the big ideas behind these three problem solving methods.

Age Levels

8 - 13 years

Objectives

Introduce students to:
how arithmetic sequences solve real world problems
tail-end recursive algorithms for arithmetic series
a divide and conquer approach that leads to a simple formula
informal ideas about time complexity.

Anticipated learner outcomes

Students will be able to describe how to solve an arithmetic sequence summation problem:
by doing it again and again (non-concurrent iteration)
with a smaller sibling (tail-end recursively)
articulate that both methods take the same number of steps, but recursion is less work for the individual
divide and conquer has a surprising outcome – namely a formula that can be calculated in only a few steps.

Optional Writing Activity

This activity introduced the idea of how to efficiently calculate an arithmetic series, such as 1+2+3+4. This could be used to calculate the simple human pyramid where one person is added as support for each layer. Invent your own problem that produces a different arithmetic pattern such as 1,5,9,13,17. Ask someone in your class to solve it by simple addition, by recursion, and to see if they can come up with a formula based on divide and conquer.
Turing machine
Alan Mathison Turing
Alan Mathison Turing

Did you know that computing has been used in military espionage and has even influenced the outcome of major wars? Alan Mathison Turing designed the code breaking machine that enabled the deciphering of German communications during WWII. As per the words of Winston Churchill, this would remain the single largest contribution to victory. In addition, he laid the groundwork for visionary fields such as automatic computing engines, artificial intelligence and morphogenesis. Despite his influential work in the field of computing, Turing experienced extreme prejudice during his lifetime regarding his sexual orientation. There is no doubt that computers are ubiquitously part of our lives due to the infusion of Turing’s contributions.

First computer mouse
Douglas Engelbart
Douglas Engelbart

In 1967, Douglas Engelbart applied for a patent for an "X-Y position indicator for a display system," which he and his team developed at the Stanford Research Institute (SRI) in Menlo Park, California. The device, a small, wooden box with two metal wheels, was nicknamed a "mouse" because a cable trailing out of the one end resembled a tail.

In addition to the first computer mouse, Engelbart’s team developed computer interface concepts that led to the GUI interface, and were integral to the development of ARPANET--the precursor to today’s Internet. Engelbart received his bachelor’s degree in electrical engineering from Oregon State University in 1948, followed by an MS in 1953 and a Ph.D. in 1955 both from the University of California, Berkeley.

@ symbol
Ray Tomlinson
Ray Tomlinson

Have you ever considered that someone, at some point, was in a position to choose what symbol would be used separate the user from their location in an email address? That person, it turns out, was Ray Tomlinson, and in 1971 he chose "@". Tomlinson is credited with demonstrating the first email sent between computers on a network, and when asked what inspired him to make this selection he said, “Mostly because it seemed like a neat idea.”

After completing his Master’s degree at MIT in 1965, Ray joined the Information Sciences Division of Bolt Beranek and Newman Inc. of Cambridge, Massachusetts. Since then he has made many notable contributions to the world of network computing. He was a co-developer of the TENEX computer system that was popular in the earliest days of the Internet; he developed the packet radio protocols used in the earliest internetworking experiments; he created the first implementation of TCP; and he was the principle designer of the first workstation attached to the Internet.

Liz Gerber - Image credit Lisa Beth Anderson
Liz Gerber
Liz Gerber - Image credit Lisa Beth Anderson

Liz Gerber earned her MS and PhD in Product Design and Management Science and Engineering at Stanford. She specializes in design and human-computer interaction, particularly how social computing supports the innovation process. Her current research investigates crowd-funding as a mechanism for reducing disparities in entrepreneurship.
Gerber's work funded by the US National Science Foundation and the National Collegiate Inventors and Innovators Alliance has appeared in peer-reviewed journals, including Transactions on Computer Human Interactions, Design Studies, and Organization Science.
As an award-winning teacher and researcher, Liz has touched the lives of more than 6,000 students through her teaching at Northwestern's Segal Design Institute and Stanford University's Hasso Plattner's Institute of Design and through her paradigm-shifting creation, Design for America, a national network of students using design to tackle social challenges.

Image credit - Lisa Beth Anderson

Punch card from a COBOL program
Jean Sammet

Jean E. Sammet was one of the first developers and researchers in programming languages. During the 1950’s - 1960’s she supervised the first scientific programming group for Sperry Gyroscope Co. and served as a key member of the original COBOL (COmmon Business-Oriented Language) committee at Sylvania Electric Products. She also taught one of the first graduate programming courses in the country at Adelphi College. After joining IBM in 1961, she developed and directed the first FORMAC (FORmula MAnipulation Compiler). This was the first widely used general language and system for manipulating nonnumeric algebraic expressions. In 1979 she began handling Ada activities for IBM’s Federal Systems Division. Ada is a structured, object-oriented high-level computer programming language, designed for large, long-lived applications, where reliability and efficiency are paramount. Jean has a B.A. from Mount Holyoke College and an M.A. from the University of Illinois, both in Mathematics. She received an honorary D.Sc. from Mount Holyoke (1978).

Image credits