A Puzzle Equivalent to Factoring a Quadratic

In response to The Number Warrior’s post, I would like to propose an alternative, since the choice to do the sum or product inheres more to the nodes than the connections.  In the following, the style of line tells you what to do with the numbers from the lines coming into the node:

  • solid black = multiply the incoming numbers (so that the node is the product)
  • dashed red = add the incoming numbers (so that the node is the sum)
A puzzle equivalent to factoring a quadratic

A puzzle equivalent to factoring a quadratic

factorpuzzle (PDF)

N.B.: I did this more as an exercise in using Asymptote (and its flowchart package) than to make any real contribution.  For the interested, here is the source code:

size(6cm,0);
import flowchart;
// for lines coming into a node, solid lines mean multiply, dashed lines mean add

int a = 6;
int b = 17;
int c = 12;

real step = .2;
real radius = 18;
pen number = blue+linewidth(2)+fontsize(20pt)+Palatino();
pen sum = red+linetype("2 2")+linewidth(2);
pen product = black+linewidth(2);
pen connection = black+linewidth(2);

block A=circle(Label(string(a),number),(0,step),drawpen=product,mindiameter=2*radius);
block B=circle(Label(string(b),number),(0,0),drawpen=sum,mindiameter=2*radius);
block C=circle(Label(string(c),number),(0,-step),drawpen=product,mindiameter=2*radius);

block d1=circle("",(-step,step),drawpen=product,mindiameter=2*radius);
block d2=circle("",(step,step),drawpen=product,mindiameter=2*radius);
block e2=circle("",(-step,-step),drawpen=product,mindiameter=2*radius);
block e1=circle("",(step,-step),drawpen=product,mindiameter=2*radius);
block cross12=circle("",(-step,0),drawpen=product,mindiameter=2*radius);
block cross21=circle("",(step,0),drawpen=product,mindiameter=2*radius);

add(new void(picture pic, transform t) {
    draw(pic,path(new pair[]{d1.right(t),A.left(t)}),MidArrow);
    draw(pic,path(new pair[]{d2.left(t),A.right(t)}),MidArrow);
    draw(pic,path(new pair[]{e2.right(t),C.left(t)}),MidArrow);
    draw(pic,path(new pair[]{e1.left(t),C.right(t)}),MidArrow);
    draw(pic,path(new pair[]{cross12.right(t),B.left(t)}),MidArrow);
    draw(pic,path(new pair[]{cross21.left(t),B.right(t)}),MidArrow);
    draw(pic,path(new pair[]{d1.bottom(t),cross12.top(t)}),MidArrow);
    draw(pic,path(new pair[]{e2.top(t),cross12.bottom(t)}),MidArrow);
    draw(pic,path(new pair[]{d2.bottom(t),cross21.top(t)}),MidArrow);
    draw(pic,path(new pair[]{e1.top(t),cross21.bottom(t)}),MidArrow);
  });

draw(A);
draw(B);
draw(C);
draw(d1);
draw(d2);
draw(e1);
draw(e2);
draw(cross12);
draw(cross21);
Advertisements
Published in: on 2011.06.02 at 14:51  Leave a Comment  
Tags: , , , ,

Student Teaching

I start student teaching this coming semester, starting January 3, 2010.  I remain anxious about classroom management issues and whether I can translate my inner light into thoughtful and fun learning experiences for high school students.

I’ve started thinking about the curriculum for the Geometry and Algebra 2 classes that I will be teaching.  I’ve found many good resources on the blogosphere, including stunning treatments of logarithms by Kate Nowak (Log Laws , Introducing Logs) and Dan Greene (Intro to LogarithmsBig L).  I’ve integrated this into my own treatment using the idea of relations/relationships.

I’ve also pondered over the last few months the many ways to teach factoring.  With a general quadratic trinomial ax^2+bx+c, the ac-method usually results in numbers that are unnecessarily big.  Instead, I start from separate prime factorizations of a and c.  This builds on the idea of natural numbers being “bags” of prime numbers (the “Bag Model”).  Just like the guess-and-check method, this one takes practice.  It’s similar to the X-method but different.  I haven’t settled on one form yet and have developed a filtering-based approach (only using prime factors indirectly to generate factor pairs and much like the X-method) and a “spin” approach that is visually appealing but not helpful.  This got me into a digression on the combinatorics of “possible” factorizations based on the first and last terms, which turned out to be more complicated than I thought.

I’ve also been working on ways to make geometry relational (filled with relations between objects) to give students cognitive tools to attach geometry problems and proofs.  On top of this, I am making Glenn Doman-style flashcards in reading and math for my young daughter and preparing to take the Praxis PLT (blech!).

hearing data?

When I was contemplating a new way of doing things, the first thing that came to mind was a spreadsheet and showing students how to use it as a playground for analyzing data.  The second thing that came to mind as a demonstration of geometric sequences was to hear the data.  I love a command in Mathematica called Play (which I found in their Documentation Center), which takes a function specifying a sound and plays it.  To build on this, what I wanted was to take a sequence of frequencies, generate brief pure tones, and play them in succession.  Easy, right?  It would have been if I had Mathematica, but when I stopped being a student, I let my license lapse.  So I thought I could do it in Python.  It turns out that sound libraries are a pickle to get straightened out.  There are so many, and on top of this I’m having trouble compiling/installing them on Mac OS X.  What have I tried?

  • Snack (required Tcl/Tk Aqua, which isn’t bad to have anyway)

    error reading package index file /Library/Tcl/tdbc1.0b1/pkgIndex.tcl: expected version number but got "1.0b1"
    Traceback (most recent call last):
    File "sound.py", line 20, in
    tkSnack.initializeSnack(root)
    File "/usr/local/lib/python2.6/site-packages/tkSnack.py", line 23, in initializeSnack
    Tkroot.tk.call('snack::setUseOldObjAPI')
    _tkinter.TclError: invalid command name "snack::setUseOldObjAPI"

    It sounds like some sort of screwy version mismatch, but I found a hint. This fixed it. It turns out that Snack can play pure tones using a generator, so it solves my tone problem but it can’t play any waveform without some work.

  • PyAudio
  • PyGame (didn’t like my Fink-installed SDL, but I didn’t pursue further.)
  • PyAudiere

I’ll have to update this later when I have more time to mess with it…

Published in: on 2009.06.04 at 16:26  Leave a Comment  
Tags: , ,

First crack at a new way of doing things

Today I asked myself, “What would a 21st century Algebra 1 classroom look like?”  Let’s pretend I’m still in a world with frustratingly many content standards.  OK, so Algebra 1 begins with patterns of numbers, at least arithmetic and maybe geometric sequences.

My first attempt, trying to be meta and multi-modality:

OK, class.  Today we’ve got an interesting bunch of skills to learn, and you’re going to decide how to go about doing it.  Here’s one scenario where it might arise:  Your boss comes in and says, “we’ve got to understand how and why something is happening.  Here’s the data we have so far.  See if you can figure it out and explain it to me.  If we can understand the pattern, then maybe we can know if what we’re trying to do is having any effect.”

That’s pretty open-ended.  You’re going to have to solve the problem on your own and get back to her.  So let’s give you a problem of your own that you can solve and get back to me.  Come up with a proposal for how to learn how to analyze data. I’ll even break it into steps for you.  What’s your proposal?

  1. Propose a way to learn about analyzing data.  Can you come up with simple examples that are easy to explain?  Are there others that are not so easy?  What resources can you use to help you?  (Think books, your peers, Internet, not me)  What tools will be helpful?
  2. What is a way for you to practice and check your learning?
  3. What is a way to prove to yourself and others that you know what you are doing?
  4. What is a way to use or apply this to a practical problem that you care about?  (Think on social, economic, or personal dimensions.)  Research the project briefly, noting sources and collecting useful data to analyze.
  5. Have one of your peers review your plan and make changes based on their suggestions.

When you are done with your proposal, let me know, and I’ll take a look at it and offer my own suggestions.  Then we’ll have you get started carrying out your plan.

It’s not very refined and rather broad, but it hits many of the “21st century” skills mentioned by http://www.21stcenturyskills.org/.

Published in: on 2009.06.03 at 04:56  Comments (1)  
Tags: ,