init({range:[[-5,5],[-5,5]],scale:40}),addMouseLayer(),graph.congruency=addCongruency({y1:-.7,y2:10.7}),graph.congruency.addPoint("A",[-4,4]),graph.congruency.addPoint("B",[4,4]),graph.congruency.addPoint("C",[0,-(4/3)]),graph.congruency.addPoint("D",[-2,-4]),graph.congruency.addPoint("E",[2,-4]),graph.congruency.addLine({start:"A",end:"D",clickable:!0,maxState:3}),graph.congruency.addLine({start:"A",end:"C",clickable:!0,maxState:3}),graph.congruency.addLine({start:"C",end:"D",clickable:!0,maxState:3}),graph.congruency.addLine({start:"C",end:"B",clickable:!0,maxState:3}),graph.congruency.addLine({start:"C",end:"E",clickable:!0,maxState:3}),graph.congruency.addLine({start:"E",end:"B",clickable:!0,maxState:3}),graph.congruency.addAngles("A",{maxState:3}),graph.congruency.addAngles("B",{maxState:3}),graph.congruency.addAngles("C",{maxState:3}),graph.congruency.addAngles("D",{maxState:3}),graph.congruency.addAngles("E",{maxState:3});for(var angle in graph.congruency.angles)graph.congruency.angles[angle].setSelectedStyle({stroke:"black","stroke-width":3});graph.congruency.addLabel("A","left"),graph.congruency.addLabel("B","right"),graph.congruency.addLabel("C","right"),graph.congruency.addLabel("D","left"),graph.congruency.addLabel("E","right"),$(".hint1").hide(),$(".hint2").hide(),$(".hint3").hide();var hintCategory="good format but wrong",hintsLeft=2,giveAway=!1;$(".nextStatement input").keyup(function(){var e=$("#thing1").val().toUpperCase(),r=$("#thing2").val().toUpperCase(),a=$("#reason").val();if(0===e.length&&0===r.length)return hintCategory="good format but wrong",void 0;var t=3===e.length&&3===r.length?verifyStatementArgs(e+"="+r,a,"triangle congruence"):!1,n=3===e.length&&3===r.length?verifyStatementArgs(e+"="+r,a,"angle equality"):!1,s=2===e.length&&2===r.length?verifyStatementArgs(e+"="+r,a,"segment equality"):!1;t===!0||n===!0||s===!0?($(".statements").html(outputKnownProof()),$(".statements code").tex(),$("#thing1").val(""),$("#thing2").val(""),$("#reason").val(""),$("#symbol1").html(""),$("#symbol2").html(""),userProofDone===!0?($(".nextStatement").hide(),$("#hint").attr("disabled",!0),$("#hint").unbind("click",giveHint)):(hintsLeft=2,$("#hint").val("I'd like a hint (2 hints left for this step)"),$("#hint").attr("disabled",!1),hintCategory="good format but wrong",giveAway=!1),s===!0&&animateSegmentPair(e,r,null),n===!0&&animateAnglePair(e,r,null),t===!0&&(aniNames=_.map(animationObjects,function(e){return e[0]instanceof Seg?[e[0].toString().substring(3,5),e[1].toString().substring(3,5)]:[e[0].toString().substring(3,6),e[1].toString().substring(3,6)]}),animatePair(aniNames[0][0],aniNames[0][1],function(){animatePair(aniNames[1][0],aniNames[1][1],function(){animatePair(aniNames[2][0],aniNames[2][1],null)})}))):hintCategory=t===!1||n===!1||s===!1?"good format but wrong":"bad format"}),$("#reason").change(function(){$(".nextStatement input").keyup()});var storedHint="",giveHint=function(){if(hintsLeft>0){if(hintsLeft--,"bad format"===hintCategory){hintsLeft++;var e=hintsLeft+" hint"+(1===hintsLeft?"":"s")+" left";$(this).val("I'd like a hint ("+e+" for this step)"),$(this).attr("disabled",!1),$(".actualHints").append("<p> The things you've entered aren't segments, angles, or triangles in the figure. </p>")}else{var e=hintsLeft+" hint"+(1===hintsLeft?"":"s")+" left";if($(this).val("I'd like a hint ("+e+" for this step)"),$(this).attr("disabled",!1),giveAway)$(".actualHints").append("<p>"+storedHint+"</p>"),storedHint="";else{var r=nextStatementHint();$(".actualHints").append("<p>"+r[0]+"</p>"),storedHint=r[1]}$(".actualHints code").tex(),giveAway=!giveAway}0===hintsLeft&&$("#hint").attr("disabled",!0)}};$("#hint").click(giveHint)
outputKnownProof()
\cong because
When you enter the next statement in the proof, and a valid reason, that statement will be added to the proof. When you're done, hit check answer.
\overline{AB} is parallel to \overline{DE} . This figure is not drawn to scale.
init({range:[[-5,5],[-5,5]],scale:40}),addMouseLayer(),graph.congruency=addCongruency({y1:-.7,y2:10.7}),graph.congruency.addPoint("A",[-3,4]),graph.congruency.addPoint("B",[3,4]),graph.congruency.addPoint("C",[0,0]),graph.congruency.addPoint("D",[-3,-4]),graph.congruency.addPoint("E",[3,-4]),graph.congruency.addLine({start:"A",end:"B",clickable:!0,maxState:3}),graph.congruency.addLine({start:"A",end:"C",clickable:!0,maxState:3}),graph.congruency.addLine({start:"B",end:"C",clickable:!0,maxState:3}),graph.congruency.addLine({start:"C",end:"D",clickable:!0,maxState:3}),graph.congruency.addLine({start:"C",end:"E",clickable:!0,maxState:3}),graph.congruency.addLine({start:"D",end:"E",clickable:!0,maxState:3}),graph.congruency.addAngles("A",{maxState:3}),graph.congruency.addAngles("B",{maxState:3}),graph.congruency.addAngles("C",{maxState:3}),graph.congruency.addAngles("D",{maxState:3}),graph.congruency.addAngles("E",{maxState:3});for(var angle in graph.congruency.angles)graph.congruency.angles[angle].setSelectedStyle({stroke:"black","stroke-width":3});graph.congruency.addLabel("A","left"),graph.congruency.addLabel("B","right"),graph.congruency.addLabel("C","right"),graph.congruency.addLabel("D","left"),graph.congruency.addLabel("E","right"),$(".hint1").hide(),$(".hint2").hide(),$(".hint3").hide();var hintCategory="good format but wrong",hintsLeft=2,giveAway=!1;$(".nextStatement input").keyup(function(){var e=$("#thing1").val().toUpperCase(),r=$("#thing2").val().toUpperCase(),a=$("#reason").val();if(0===e.length&&0===r.length)return hintCategory="good format but wrong",void 0;filteredAngles={BAE:"BAC",EAB:"CAB",BDE:"CDE",EDB:"EDC",ABD:"ABC",DBA:"CBA",AED:"CED",DEA:"DEC"},e in filteredAngles&&(e=filteredAngles[e]),r in filteredAngles&&(r=filteredAngles[r]);var t=3===e.length&&3===r.length?verifyStatementArgs(e+"="+r,a,"triangle congruence"):!1,n=3===e.length&&3===r.length?verifyStatementArgs(e+"="+r,a,"angle equality"):!1,i=2===e.length&&2===r.length?verifyStatementArgs(e+"="+r,a,"segment equality"):!1;t===!0||n===!0||i===!0?($(".statements").html(outputKnownProof()),$(".statements code").tex(),$("#thing1").val(""),$("#thing2").val(""),$("#reason").val(""),$("#symbol1").html(""),$("#symbol2").html(""),userProofDone===!0?($(".nextStatement").hide(),$("#hint").attr("disabled",!0),$("#hint").unbind("click",giveHint)):(hintsLeft=2,$("#hint").val("I'd like a hint (2 hints left for this step)"),$("#hint").attr("disabled",!1),hintCategory="good format but wrong",giveAway=!1),i===!0&&animateSegmentPair(e,r,null),n===!0&&animateAnglePair(e,r,null),t===!0&&(aniNames=_.map(animationObjects,function(e){return e[0]instanceof Seg?[e[0].toString().substring(3,5),e[1].toString().substring(3,5)]:[e[0].toString().substring(3,6),e[1].toString().substring(3,6)]}),animatePair(aniNames[0][0],aniNames[0][1],function(){animatePair(aniNames[1][0],aniNames[1][1],function(){animatePair(aniNames[2][0],aniNames[2][1],null)})}))):hintCategory=t===!1||n===!1||i===!1?"good format but wrong":"bad format"}),$("#reason").change(function(){$(".nextStatement input").keyup()}),$(".actualHints").html("");var storedHint="",giveHint=function(){if(hintsLeft>0){if(hintsLeft--,"bad format"===hintCategory){hintsLeft++;var e=hintsLeft+" hint"+(1===hintsLeft?"":"s")+" left";$(this).val("I'd like a hint ("+e+" for this step)"),$(this).attr("disabled",!1),$(".actualHints").append("<p> The things you've entered aren't segments, angles, or triangles in the figure. </p>")}else{var e=hintsLeft+" hint"+(1===hintsLeft?"":"s")+" left";if($(this).val("I'd like a hint ("+e+" for this step)"),$(this).attr("disabled",!1),giveAway)$(".actualHints").append("<p>"+storedHint+"</p>"),storedHint="";else{var r=nextStatementHint();$(".actualHints").append("<p>"+r[0]+"</p>"),storedHint=r[1]}$(".actualHints code").tex(),giveAway=!giveAway}0===hintsLeft&&$("#hint").attr("disabled",!0)}};$("#hint").click(giveHint)
outputKnownProof()
\cong because
When you enter the next statement in the proof, and a valid reason, that statement will be added to the proof. When you're done, hit check answer.
init({range:[[-5,5],[-5,5]],scale:40}),addMouseLayer(),graph.congruency=addCongruency({y1:-.7,y2:10.7}),graph.congruency.addPoint("A",[0,3]),graph.congruency.addPoint("B",[-4,0]),graph.congruency.addPoint("C",[4,0]),graph.congruency.addPoint("D",[0,-3]),graph.congruency.addLine({start:"A",end:"B",clickable:!0,maxState:3}),graph.congruency.addLine({start:"B",end:"D",clickable:!0,maxState:3}),graph.congruency.addLine({start:"A",end:"D",clickable:!0,maxState:3}),graph.congruency.addLine({start:"A",end:"C",clickable:!0,maxState:3}),graph.congruency.addLine({start:"C",end:"D",clickable:!0,maxState:3}),graph.congruency.addAngles("A",{maxState:3}),graph.congruency.addAngles("B",{maxState:3}),graph.congruency.addAngles("C",{maxState:3}),graph.congruency.addAngles("D",{maxState:3});for(var angle in graph.congruency.angles)graph.congruency.angles[angle].setSelectedStyle({stroke:"black","stroke-width":3});graph.congruency.addLabel("A","above"),graph.congruency.addLabel("B","left"),graph.congruency.addLabel("C","right"),graph.congruency.addLabel("D","below"),$(".hint1").hide(),$(".hint2").hide(),$(".hint3").hide();var hintCategory="good format but wrong",hintsLeft=2,giveAway=!1;$(".nextStatement input").keyup(function(){var e=$("#thing1").val().toUpperCase(),r=$("#thing2").val().toUpperCase(),a=$("#reason").val();if(0===e.length&&0===r.length)return hintCategory="good format but wrong",void 0;var t=3===e.length&&3===r.length?verifyStatementArgs(e+"="+r,a,"triangle congruence"):!1,n=3===e.length&&3===r.length?verifyStatementArgs(e+"="+r,a,"angle equality"):!1,i=2===e.length&&2===r.length?verifyStatementArgs(e+"="+r,a,"segment equality"):!1;t===!0||n===!0||i===!0?($(".statements").html(outputKnownProof()),$(".statements code").tex(),$("#thing1").val(""),$("#thing2").val(""),$("#reason").val(""),userProofDone===!0?($(".nextStatement").hide(),$("#hint").attr("disabled",!0),$("#hint").unbind("click",giveHint)):(hintsLeft=2,$("#hint").val("I'd like a hint (2 hints left for this step)"),$("#hint").attr("disabled",!1),hintCategory="good format but wrong",giveAway=!1),i===!0&&animateSegmentPair(e,r,null),n===!0&&animateAnglePair(e,r,null),t===!0&&(aniNames=_.map(animationObjects,function(e){return e[0]instanceof Seg?[e[0].toString().substring(3,5),e[1].toString().substring(3,5)]:[e[0].toString().substring(3,6),e[1].toString().substring(3,6)]}),animatePair(aniNames[0][0],aniNames[0][1],function(){animatePair(aniNames[1][0],aniNames[1][1],function(){animatePair(aniNames[2][0],aniNames[2][1],null)})}))):hintCategory=t===!1||n===!1||i===!1?"good format but wrong":"bad format"}),$("#reason").change(function(){$(".nextStatement input").keyup()});var storedHint="",giveHint=function(){if(hintsLeft>0){if(hintsLeft--,"bad format"===hintCategory){hintsLeft++;var e=hintsLeft+" hint"+(1===hintsLeft?"":"s")+" left";$(this).val("I'd like a hint ("+e+" for this step)"),$(this).attr("disabled",!1),$(".actualHints").append("<p> The things you've entered aren't segments, angles, or triangles in the figure. </p>")}else{var e=hintsLeft+" hint"+(1===hintsLeft?"":"s")+" left";if($(this).val("I'd like a hint ("+e+" for this step)"),$(this).attr("disabled",!1),giveAway)$(".actualHints").append("<p>"+storedHint+"</p>"),storedHint="";else{var r=nextStatementHint();$(".actualHints").append("<p>"+r[0]+"</p>"),storedHint=r[1]}$(".actualHints code").tex(),giveAway=!giveAway}0===hintsLeft&&$("#hint").attr("disabled",!0)}};$("#hint").click(giveHint)
outputKnownProof()
\cong because
When you enter the next statement in the proof, and a valid reason, that statement will be added to the proof. When you're done, hit check answer.