<?xml version="1.0" encoding="UTF-8"?>
<!-- Project example, CC BY-SA 4.0. Uses matrix-checkers.py selected in Quarto. -->
<quiz>
  <question type="stack">
    <name>
      <text>A positive definite matrix</text>
    </name>
    <questionvariables>
      <text />
    </questionvariables>
    <questionsimplify>1</questionsimplify>
    <questiontext format="html">
      <text>&lt;p&gt;Give any real symmetric or complex Hermitian positive definite \(2\times2\) matrix. Use integers or exact fractions for real and imaginary parts; enter %i for \(i\).&lt;/p&gt;&lt;p&gt;[[input:ansm]] [[validation:ansm]] [[feedback:result]]&lt;/p&gt;</text>
    </questiontext>
    <generalfeedback format="html">
      <text>&lt;p&gt;The checker uses Sylvester’s criterion to test positivity with exact arithmetic. Full credit requires both Hermitian symmetry and positivity. For real entries, Hermitian symmetry means ordinary symmetry.&lt;/p&gt;</text>
    </generalfeedback>
    <defaultgrade>1</defaultgrade>
    <penalty>0.1</penalty>
    <input>
      <name>ansm</name>
      <type>matrix</type>
      <tans>matrix([1,0],[0,1])</tans>
      <strictsyntax>1</strictsyntax>
      <insertstars>0</insertstars>
      <forbidfloat>1</forbidfloat>
      <checkanswertype>1</checkanswertype>
      <mustverify>1</mustverify>
      <showvalidation>1</showvalidation>
    </input>
    <prt>
      <name>result</name>
      <value>1</value>
      <autosimplify>1</autosimplify>
      <node>
        <name>0</name>
        <answertest>PythonChecker</answertest>
        <sans>ansm</sans>
        <tans>true</tans>
        <testoptions>{"checker": "is_hpd"}</testoptions>
        <truescoremode>=</truescoremode>
        <truescore>1</truescore>
        <truenextnode>-1</truenextnode>
        <trueanswernote>spd-T</trueanswernote>
        <falsescoremode>=</falsescoremode>
        <falsescore>0</falsescore>
        <falsenextnode>-1</falsenextnode>
        <falseanswernote>spd-F</falseanswernote>
      </node>
    </prt>
    <qtest>
      <testcase>1</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([1,0],[0,1])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>1</expectedscore>
        <expectedpenalty>0</expectedpenalty>
        <expectedanswernote>spd-T</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>2</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([2,1],[1,2])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>1</expectedscore>
        <expectedpenalty>0</expectedpenalty>
        <expectedanswernote>spd-T</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>3</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([1/2,1/4],[1/4,1])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>1</expectedscore>
        <expectedpenalty>0</expectedpenalty>
        <expectedanswernote>spd-T</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>4</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([-1,0],[0,-1])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>0</expectedscore>
        <expectedpenalty>0.1</expectedpenalty>
        <expectedanswernote>spd-F</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>5</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([1,1],[1,1])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>0</expectedscore>
        <expectedpenalty>0.1</expectedpenalty>
        <expectedanswernote>spd-F</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>6</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([1,2],[0,1])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>0</expectedscore>
        <expectedpenalty>0.1</expectedpenalty>
        <expectedanswernote>spd-F</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>7</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([1,2],[2,1])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>0</expectedscore>
        <expectedpenalty>0.1</expectedpenalty>
        <expectedanswernote>spd-F</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>8</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([2,1],[0,2])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>0</expectedscore>
        <expectedpenalty>0.1</expectedpenalty>
        <expectedanswernote>spd-F</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>9</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([0,1],[0,0])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>0</expectedscore>
        <expectedpenalty>0.1</expectedpenalty>
        <expectedanswernote>spd-F</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>10</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([2,%i],[-%i,2])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>1</expectedscore>
        <expectedpenalty>0</expectedpenalty>
        <expectedanswernote>spd-T</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>11</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([1,%i],[%i,1])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>0</expectedscore>
        <expectedpenalty>0.1</expectedpenalty>
        <expectedanswernote>spd-F</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>12</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([1,2*%i],[-2*%i,1])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>0</expectedscore>
        <expectedpenalty>0.1</expectedpenalty>
        <expectedanswernote>spd-F</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>13</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([0,%i],[0,0])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>0</expectedscore>
        <expectedpenalty>0.1</expectedpenalty>
        <expectedanswernote>spd-F</expectedanswernote>
      </expected>
    </qtest>
    <qtest>
      <testcase>14</testcase>
      <testinput>
        <name>ansm</name>
        <value>matrix([1/2,%i/4],[-%i/4,1])</value>
      </testinput>
      <expected>
        <name>result</name>
        <expectedscore>1</expectedscore>
        <expectedpenalty>0</expectedpenalty>
        <expectedanswernote>spd-T</expectedanswernote>
      </expected>
    </qtest>
  </question>
</quiz>
