<rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0">
  <channel>
    <title>MaplePrimes - Newest Posts</title>
    <link>http://www.mapleprimes.com/posts</link>
    <language>en-us</language>
    <copyright>2026 Maplesoft, A Division of Waterloo Maple Inc.</copyright>
    <generator>Maplesoft Document System</generator>
    <lastBuildDate>Wed, 17 Jun 2026 09:43:31 GMT</lastBuildDate>
    <pubDate>Wed, 17 Jun 2026 09:43:31 GMT</pubDate>
    <itunes:subtitle />
    <itunes:summary />
    <description>The latest posts added to MaplePrimes</description>
    <image>
      <url>http://www.mapleprimes.com/images/mapleprimeswhite.jpg</url>
      <title>MaplePrimes - Newest Posts</title>
      <link>http://www.mapleprimes.com/posts</link>
    </image>
    <item>
      <title>Best Digital Marketing Agency in Hyderabad</title>
      <link>http://www.mapleprimes.com/posts/235049-Best-Digital-Marketing-Agency-In-Hyderabad?ref=Feed:MaplePrimes:New Posts</link>
      <itunes:summary>&lt;p&gt;In today&amp;rsquo;s competitive business environment, digital marketing has become a necessity for companies looking to build brand awareness, generate leads, and increase revenue. As businesses continue to shift their focus toward online channels, finding the best digital marketing agency in Hyderabad has become an important decision for startups, small businesses, and large enterprises alike.&lt;/p&gt;

&lt;p&gt;Hyderabad has emerged as one of India&amp;rsquo;s leading technology and business hubs, housing thousands of startups, IT companies, e-commerce businesses, healthcare organizations, educational institutions, and real estate firms. With increasing competition across industries, companies require strategic digital marketing solutions to stand out in the digital landscape. This is where a professional digital marketing agency can make a significant difference.&lt;/p&gt;



&lt;p&gt;Digital marketing is much more than running advertisements or posting on social media. It involves a combination of strategies designed to attract, engage, and convert potential customers. A skilled agency helps businesses develop a comprehensive marketing plan tailored to their goals.&lt;/p&gt;

&lt;p&gt;Some key benefits of hiring a digital marketing agency include:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Increased online visibility&lt;/li&gt;
	&lt;li&gt;Higher search engine rankings&lt;/li&gt;
	&lt;li&gt;Better lead generation&lt;/li&gt;
	&lt;li&gt;Improved brand awareness&lt;/li&gt;
	&lt;li&gt;Enhanced customer engagement&lt;/li&gt;
	&lt;li&gt;Increased website traffic&lt;/li&gt;
	&lt;li&gt;Better return on investment (ROI)&lt;/li&gt;
	&lt;li&gt;Access to industry expertise and advanced tools&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A professional agency understands the latest trends, algorithms, and consumer behavior patterns, allowing businesses to stay ahead of competitors.&lt;/p&gt;



&lt;p&gt;Choosing the right agency can be challenging due to the large number of service providers available. However, the best digital marketing agency in Hyderabad typically possesses several important qualities.&lt;/p&gt;



&lt;p&gt;An established agency should have extensive experience working with businesses across multiple industries. Their portfolio should demonstrate successful campaigns and measurable results. Experience helps agencies understand market dynamics and create effective strategies.&lt;/p&gt;



&lt;p&gt;A top digital marketing agency provides a wide range of services under one roof. These services may include:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;Search Engine Optimization (SEO)&lt;/li&gt;
	&lt;li&gt;Pay-Per-Click Advertising (PPC)&lt;/li&gt;
	&lt;li&gt;Social Media Marketing (SMM)&lt;/li&gt;
	&lt;li&gt;Content Marketing&lt;/li&gt;
	&lt;li&gt;Email Marketing&lt;/li&gt;
	&lt;li&gt;Website Design and Development&lt;/li&gt;
	&lt;li&gt;Online Reputation Management&lt;/li&gt;
	&lt;li&gt;Conversion Rate Optimization&lt;/li&gt;
	&lt;li&gt;Influencer Marketing&lt;/li&gt;
	&lt;li&gt;Video Marketing&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Having all services available through a single agency ensures consistency and better campaign management.&lt;/p&gt;
</itunes:summary>
      <description>&lt;p data-end="434" data-start="46"&gt;In today&amp;rsquo;s competitive business environment, digital marketing has become a necessity for companies looking to build brand awareness, generate leads, and increase revenue. As businesses continue to shift their focus toward online channels, finding the best digital marketing agency in Hyderabad has become an important decision for startups, small businesses, and large enterprises alike.&lt;/p&gt;

&lt;p data-end="887" data-start="436"&gt;Hyderabad has emerged as one of India&amp;rsquo;s leading technology and business hubs, housing thousands of startups, IT companies, e-commerce businesses, healthcare organizations, educational institutions, and real estate firms. With increasing competition across industries, companies require strategic digital marketing solutions to stand out in the digital landscape. This is where a professional digital marketing agency can make a significant difference.&lt;/p&gt;

&lt;h2 data-end="938" data-section-id="13modht" data-start="889"&gt;Why Businesses Need a Digital Marketing Agency&lt;/h2&gt;

&lt;p data-end="1226" data-start="940"&gt;Digital marketing is much more than running advertisements or posting on social media. It involves a combination of strategies designed to attract, engage, and convert potential customers. A skilled agency helps businesses develop a comprehensive marketing plan tailored to their goals.&lt;/p&gt;

&lt;p data-end="1291" data-start="1228"&gt;Some key benefits of hiring a digital marketing agency include:&lt;/p&gt;

&lt;ul data-end="1551" data-start="1293"&gt;
	&lt;li data-end="1322" data-section-id="ikzi0x" data-start="1293"&gt;Increased online visibility&lt;/li&gt;
	&lt;li data-end="1354" data-section-id="ec1qic" data-start="1323"&gt;Higher search engine rankings&lt;/li&gt;
	&lt;li data-end="1379" data-section-id="nnp176" data-start="1355"&gt;Better lead generation&lt;/li&gt;
	&lt;li data-end="1406" data-section-id="wultd2" data-start="1380"&gt;Improved brand awareness&lt;/li&gt;
	&lt;li data-end="1437" data-section-id="142j2fz" data-start="1407"&gt;Enhanced customer engagement&lt;/li&gt;
	&lt;li data-end="1465" data-section-id="1c23i3i" data-start="1438"&gt;Increased website traffic&lt;/li&gt;
	&lt;li data-end="1501" data-section-id="1l3633b" data-start="1466"&gt;Better return on investment (ROI)&lt;/li&gt;
	&lt;li data-end="1551" data-section-id="14mrgo2" data-start="1502"&gt;Access to industry expertise and advanced tools&lt;/li&gt;
&lt;/ul&gt;

&lt;p data-end="1699" data-start="1553"&gt;A professional agency understands the latest trends, algorithms, and consumer behavior patterns, allowing businesses to stay ahead of competitors.&lt;/p&gt;

&lt;h2 data-end="1769" data-section-id="y2jv1t" data-start="1701"&gt;Characteristics of the Best Digital Marketing Agency in Hyderabad&lt;/h2&gt;

&lt;p data-end="1976" data-start="1771"&gt;Choosing the right agency can be challenging due to the large number of service providers available. However, the best digital marketing agency in Hyderabad typically possesses several important qualities.&lt;/p&gt;

&lt;h3 data-end="2011" data-section-id="2pb5m5" data-start="1978"&gt;1. Proven Industry Experience&lt;/h3&gt;

&lt;p data-end="2285" data-start="2013"&gt;An established agency should have extensive experience working with businesses across multiple industries. Their portfolio should demonstrate successful campaigns and measurable results. Experience helps agencies understand market dynamics and create effective strategies.&lt;/p&gt;

&lt;h3 data-end="2325" data-section-id="f8k3nk" data-start="2287"&gt;2. Comprehensive Service Offerings&lt;/h3&gt;

&lt;p data-end="2435" data-start="2327"&gt;A top digital marketing agency provides a wide range of services under one roof. These services may include:&lt;/p&gt;

&lt;ul data-end="2710" data-start="2437"&gt;
	&lt;li data-end="2471" data-section-id="1d40vqp" data-start="2437"&gt;Search Engine Optimization (SEO)&lt;/li&gt;
	&lt;li data-end="2505" data-section-id="15n97vl" data-start="2472"&gt;Pay-Per-Click Advertising (PPC)&lt;/li&gt;
	&lt;li data-end="2536" data-section-id="1nme7y9" data-start="2506"&gt;Social Media Marketing (SMM)&lt;/li&gt;
	&lt;li data-end="2556" data-section-id="k669gl" data-start="2537"&gt;Content Marketing&lt;/li&gt;
	&lt;li data-end="2574" data-section-id="1avxbk0" data-start="2557"&gt;Email Marketing&lt;/li&gt;
	&lt;li data-end="2607" data-section-id="tui2gp" data-start="2575"&gt;Website Design and Development&lt;/li&gt;
	&lt;li data-end="2638" data-section-id="1vhq58v" data-start="2608"&gt;Online Reputation Management&lt;/li&gt;
	&lt;li data-end="2669" data-section-id="7wx377" data-start="2639"&gt;Conversion Rate Optimization&lt;/li&gt;
	&lt;li data-end="2692" data-section-id="1sp42rv" data-start="2670"&gt;Influencer Marketing&lt;/li&gt;
	&lt;li data-end="2710" data-section-id="1y4sucd" data-start="2693"&gt;Video Marketing&lt;/li&gt;
&lt;/ul&gt;

&lt;p data-end="2817" data-start="2712"&gt;Having all services available through a single agency ensures consistency and better campaign management.&lt;/p&gt;
</description>
      <guid>235049</guid>
      <pubDate>Wed, 17 Jun 2026 07:32:55 Z</pubDate>
      <itunes:author>webrocz</itunes:author>
      <author>webrocz</author>
    </item>
    <item>
      <title>Why More People Are Choosing Smile White Teeth Whitening in Buford</title>
      <link>http://www.mapleprimes.com/posts/235047-Why-More-People-Are-Choosing-Smile-White?ref=Feed:MaplePrimes:New Posts</link>
      <itunes:summary>&lt;p&gt;A bright, white smile can improve confidence and leave a positive impression. Many people choose &lt;strong&gt;Smile White Teeth Whitening Buford&lt;/strong&gt; to reduce stains caused by coffee, tea, wine, and everyday habits, helping their smiles look cleaner and more vibrant.&lt;/p&gt;

&lt;p&gt;Professional teeth whitening treatments can provide noticeable results while supporting overall oral health. By consulting with a dental professional, patients can find the right whitening option to achieve a brighter smile safely and effectively.&lt;/p&gt;
</itunes:summary>
      <description>&lt;p&gt;A bright, white smile can improve confidence and leave a positive impression. Many people choose &lt;strong&gt;Smile White Teeth Whitening Buford&lt;/strong&gt; to reduce stains caused by coffee, tea, wine, and everyday habits, helping their smiles look cleaner and more vibrant.&lt;/p&gt;

&lt;p&gt;Professional teeth whitening treatments can provide noticeable results while supporting overall oral health. By consulting with a dental professional, patients can find the right whitening option to achieve a brighter smile safely and effectively.&lt;/p&gt;
</description>
      <guid>235047</guid>
      <pubDate>Wed, 17 Jun 2026 06:35:36 Z</pubDate>
      <itunes:author>buforddental</itunes:author>
      <author>buforddental</author>
    </item>
    <item>
      <title>Animating a Polyhedron</title>
      <link>http://www.mapleprimes.com/maplesoftblog/234975-Animating-A-Polyhedron?ref=Feed:MaplePrimes:New Posts</link>
      <itunes:summary>&lt;p&gt;A little while ago, I created a video,&amp;nbsp;&lt;a href="https://www.youtube.com/watch?v=bH92sTnLjik"&gt;Engaging and Enlightening Students with Maple Visualizations&lt;/a&gt;, that showed a sample of Maple visualizations that would be helpful in teaching math. Doing that allowed me to get reacquainted with some of Maple&amp;#39;s plotting features that I hadn&amp;#39;t used for a while. As a result, I made a second instructional video for my Maple tips series,&amp;nbsp;&lt;a href="https://www.youtube.com/watch?v=15x0ktzsITU"&gt;Animating a Polyhedron in Maple&lt;/a&gt;.&amp;nbsp;&lt;/p&gt;

&lt;p&gt;I chose this topic because I thought it would show several features in Maple that might not be known to all users. I list them below and encourage you to try them out.&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;
	&lt;p&gt;The&amp;nbsp;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=plots/polyhedraplot"&gt;plots:-polyhedraplot&lt;/a&gt;&amp;nbsp;command allows you to create a 3-D plot of a polyhedron, including one of 138 polyhedra that Maple knows about.&lt;/p&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;p&gt;The list of named polyhedra available can be obtained by calling the&amp;nbsp;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=plots%2fpolyhedra_supported"&gt;plots:-polyhedra_supported&lt;/a&gt;&amp;nbsp;command.&lt;/p&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;p&gt;The&amp;nbsp;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=plot3d/viewpoint"&gt;viewpoint option&lt;/a&gt;, which allows you to create an animation by varying the viewpoint through a 3D plot, can be used to rotate the polyhedron.&lt;/p&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;p&gt;Finally, the&amp;nbsp;&lt;a href="https://www.maplesoft.com/support/help/maple/view.aspx?path=worksheet%2Fplotinterface%2Fexportplot"&gt;Export&lt;/a&gt;&amp;nbsp;feature allows you to save the plot animation as an animated GIF.&lt;/p&gt;
	&lt;/li&gt;
&lt;/ul&gt;

&lt;p style="text-align: center;"&gt;&lt;img src="/view.aspx?sf=234975_post/Echinahedron3.gif"&gt;&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</itunes:summary>
      <description>&lt;p&gt;A little while ago, I created a video,&amp;nbsp;&lt;a href="https://www.youtube.com/watch?v=bH92sTnLjik" target="_blank"&gt;Engaging and Enlightening Students with Maple Visualizations&lt;/a&gt;, that showed a sample of Maple visualizations that would be helpful in teaching math. Doing that allowed me to get reacquainted with some of Maple&amp;#39;s plotting features that I hadn&amp;#39;t used for a while. As a result, I made a second instructional video for my Maple tips series,&amp;nbsp;&lt;a href="https://www.youtube.com/watch?v=15x0ktzsITU" target="_blank"&gt;Animating a Polyhedron in Maple&lt;/a&gt;.&amp;nbsp;&lt;/p&gt;

&lt;p&gt;I chose this topic because I thought it would show several features in Maple that might not be known to all users. I list them below and encourage you to try them out.&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;
	&lt;p&gt;The&amp;nbsp;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=plots/polyhedraplot"&gt;plots:-polyhedraplot&lt;/a&gt;&amp;nbsp;command allows you to create a 3-D plot of a polyhedron, including one of 138 polyhedra that Maple knows about.&lt;/p&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;p&gt;The list of named polyhedra available can be obtained by calling the&amp;nbsp;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=plots%2fpolyhedra_supported"&gt;plots:-polyhedra_supported&lt;/a&gt;&amp;nbsp;command.&lt;/p&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;p&gt;The&amp;nbsp;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=plot3d/viewpoint"&gt;viewpoint option&lt;/a&gt;, which allows you to create an animation by varying the viewpoint through a 3D plot, can be used to rotate the polyhedron.&lt;/p&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;p&gt;Finally, the&amp;nbsp;&lt;a href="https://www.maplesoft.com/support/help/maple/view.aspx?path=worksheet%2Fplotinterface%2Fexportplot"&gt;Export&lt;/a&gt;&amp;nbsp;feature allows you to save the plot animation as an animated GIF.&lt;/p&gt;
	&lt;/li&gt;
&lt;/ul&gt;

&lt;p style="text-align: center;"&gt;&lt;img src="/view.aspx?sf=234975_post/Echinahedron3.gif"&gt;&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
      <guid>234975</guid>
      <pubDate>Tue, 09 Jun 2026 13:32:04 Z</pubDate>
      <itunes:author>pchin</itunes:author>
      <author>pchin</author>
    </item>
    <item>
      <title>Characterizing polynomial roots with RegularChains and related routines</title>
      <link>http://www.mapleprimes.com/posts/234960-Characterizing-Polynomial-Roots-With?ref=Feed:MaplePrimes:New Posts</link>
      <itunes:summary>&lt;form name="worksheet_form"&gt;&lt;input name="md.ref" type="hidden" value="DC0427774A837806AC30EAF773C8F920"&gt;
&lt;table align="center" width="768"&gt;
	&lt;tbody&gt;
		&lt;tr&gt;
			&lt;td&gt;
			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Recently @salim-barzani &lt;/span&gt;&lt;a href="https://www.mapleprimes.com/questions/243586-How-Apply-Special-Transformation--"&gt;&lt;span style="color:#125d99;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&lt;u&gt;asked a question&lt;/u&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;about a paper that involved analysing the different types of roots of polynomials. The appendix in that paper gave the example of the roots of &lt;/span&gt;&lt;img alt="x^4+x^2*e[2]+x*e[1]+e[0]" height="32" src="/view.aspx?sf=234960_post/158c5f81eda2435111846f5011507eb8.gif" style="vertical-align:-11px" width="141"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;using the analysis in Lu et al, &amp;quot;A complete discrimination system for polynomials&amp;quot;, Science in China (Ser. E), 39 (1996) 628-646. The analysis uses the &lt;/span&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:italic;"&gt;discriminant sequence&lt;/span&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;and extensions. Maple provides this through &lt;/span&gt;&lt;u&gt;&lt;a href="https://www.maplesoft.com/support/help/maple/view.aspx?path=RegularChains%2fParametricSystemTools%2fDiscriminantSequence"&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans Mono&amp;quot;; font-weight: normal; font-style: normal;"&gt;RegularChains:-ParametricSystemTools:-DiscrminantSequence&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/u&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;. For example for this polynomial we find there is a real root of multiplicity 2 and a complex conjugate pair when &lt;/span&gt;&lt;img alt="D__2*D__3 &amp;lt; 0 and D__4 = 0" height="28" src="/view.aspx?sf=234960_post/6eb8f6df52424c3da456b04e6bc94a83.gif" style="vertical-align:-11px" width="137"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;where the &lt;/span&gt;&lt;img alt="D__i" height="28" src="/view.aspx?sf=234960_post/48ca837e2adc422361829dc8b6aa64f9.gif" style="vertical-align:-11px" width="19"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;are the &lt;/span&gt;&lt;img alt="i" height="23" src="/view.aspx?sf=234960_post/c79c3f82559c9fd66702d7b034480a66.gif" style="vertical-align:-6px" width="10"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;th entries in the discriminant sequence &lt;/span&gt;&lt;img alt="[1, -e[2], -2*e[2]^3+8*e[0]*e[2]-9*e[1]^2, 16*e[0]*e[2]^4-4*e[1]^2*e[2]^3-128*e[0]^2*e[2]^2+144*e[0]*e[1]^2*e[2]-27*e[1]^4+256*e[0]^3]" height="32" src="/view.aspx?sf=234960_post/1096d0f1d412fee6af83ecef6ed7305e.gif" style="vertical-align:-11px" width="568"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;.&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;The problem with these conditions is&amp;nbsp;that they are in terms of the &lt;/span&gt;&lt;img alt="D__i" height="28" src="/view.aspx?sf=234960_post/838f4e9b2afa8387863440f77b6ac399.gif" style="vertical-align:-11px" width="19"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;and not directly in terms of the &lt;/span&gt;&lt;img alt="e__i" height="28" src="/view.aspx?sf=234960_post/2ea04e2be92b95bc3e41c20ac0d88ad3.gif" style="vertical-align:-11px" width="15"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;parameters. One can derive these conditions and then solve them to find the conditions on the parameters, but Maple has various routines in the &lt;/span&gt;&lt;u&gt;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=RegularChains"&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans Mono&amp;quot;; font-weight: normal; font-style: normal;"&gt;&lt;span style="background-color:#ffffff;"&gt;RegularChains&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/u&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;, &lt;/span&gt;&lt;u&gt;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=RootFinding/Parametric"&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans Mono&amp;quot;; font-weight: normal; font-style: normal;"&gt;RootFinding:-Parametric&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/u&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;and &lt;/span&gt;&lt;u&gt;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=SolveTools"&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans Mono&amp;quot;; font-weight: normal; font-style: normal;"&gt;SolveTools&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/u&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;packages that directly find conditions on parameters to find when there are specified numbers of real or complex roots for polynomial systems. So this post is my attempt to use these tools to find the conditions on the parameters of the above polynomial that give various types of roots. One immediate difficulty is that generally these routines count distinct roots irrespective of multiplicity, and so some indirect analysis is required. There are several different types of commands and analyses that could be used, and my choices here are more to do with my learning experience than an optimum analysis.&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;The first conclusion is that it is possible, although &lt;/span&gt;&lt;a href="https://www.maplesoft.com/support/help/maple/view.aspx?path=RegularChains%2FParametricSystemTools%2FComprehensiveTriangularize"&gt;&lt;u&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans&amp;quot;; font-weight: normal; font-style: normal;"&gt;RealComprehensiveTriangularize&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt; did not work as I expected when asking for zero real roots (see cases (a) and (b)) (bug?). Assuming it had worked, &lt;/span&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans&amp;quot;; font-weight: normal; font-style: normal;"&gt;&lt;span style="color:#e74c3c;"&gt;RealComprehensiveTriangularize&lt;/span&gt; could cover all the cases here, though that will not be true for higher-degree polynomials with more parameters. There doesn&amp;#39;t seem to be an obvious systematic way of doing this analysis, which is a downside. Another downside is the large number of subcase conditions, which look as if they could be combined into fewer subcases. &lt;/span&gt;&lt;a href="https://www.maplesoft.com/support/help/maple/view.aspx?path=RootFinding%2FParametric%2FCellDecomposition"&gt;&lt;u&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans&amp;quot;; font-weight: normal; font-style: normal;"&gt;CellDecomposition&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt; works well for cases without multiplicity.&lt;/span&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;input name="sequence" type="hidden" value="1"&gt; &lt;input name="cmd" type="hidden" value="none"&gt;&lt;/form&gt;

&lt;p&gt;&lt;br&gt;
Main worksheet [not all is displayed below]:&lt;/p&gt;

&lt;p&gt;&lt;a href="/view.aspx?sf=234960_post/RootAnalysis4.mw"&gt;Download RootAnalysis4.mw&lt;/a&gt;&lt;/p&gt;

&lt;form name="worksheet_form"&gt;&lt;input name="md.ref" type="hidden" value="9C9FC3FAFBB0DF87FE9722659615E22A"&gt;
&lt;table align="center" width="768"&gt;
	&lt;tbody&gt;
		&lt;tr&gt;
			&lt;td&gt;
			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="restart" height="23" src="/view.aspx?sf=234960_post/532530024ffa557a6491f294ebfd0abd.gif" style="vertical-align:-6px" width="54"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="with(RegularChains); with(ParametricSystemTools); with(RootFinding:-Parametric)" height="23" src="/view.aspx?sf=234960_post/40ed2fa90e2e8f7bdb5b6ddc69cfcd20.gif" style="vertical-align:-6px" width="543"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Consider the following polynomial in &lt;/span&gt;&lt;img alt="x" height="22" src="/view.aspx?sf=234960_post/bcb496fe9e97d0932dfad07c9b78a507.gif" style="vertical-align:-6px" width="12"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;with the three real parameters &lt;/span&gt;&lt;img alt="e[0], e[1], e[2]" height="22" src="/view.aspx?sf=234960_post/8482a14eb874482b9a27388d4923b21d.gif" style="vertical-align:-6px" width="98"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;. We would like to know the conditions on these parameters that lead to different numbers of real and complex-conjugate pairs of roots of different multiplicities.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="p := x^4+x^2*e[2]+x*e[1]+e[0]" height="27" src="/view.aspx?sf=234960_post/5114157758f0367419ab58612f1c29d9.gif" style="vertical-align:-6px" width="226"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="x^4+x^2*e[2]+x*e[1]+e[0]" height="32" src="/view.aspx?sf=234960_post/e12f0d3370bc853462acfcc352864c06.gif" style="vertical-align:-11px" width="171"&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Consider first how many cases there are. We can set this up as a combinatorial problem in the combstruct package.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img align="middle" alt="sys := {C = Atom, R = Atom, realrts = Set(multiplereal), rts = Prod(realrts, complexrts), complexpr = Prod(C, C), complexrts = Set(multiplecomplex), multiplecomplex = Sequence(complexpr, card &amp;gt; 0), multiplereal = Sequence(R, card &amp;gt; 0)}" height="40" src="/view.aspx?sf=234960_post/9d2ad10f8fcae1dcb03a2806e3902ac6.gif" style="vertical-align:-23px" width="768"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="Draw := proc (q) options operator, arrow; eval(q, {Epsilon = NULL, Prod = `[]`, Set = (proc () options operator, arrow; args end proc), Sequence = `*`}) end proc" height="23" src="/view.aspx?sf=234960_post/f7de4b8fd997884c1862d0fba5b978ea.gif" style="vertical-align:-6px" width="674"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;For a degree 4 polynomial there are 9 different cases to consider. Here &lt;/span&gt;&lt;img alt="[C, C]" height="22" src="/view.aspx?sf=234960_post/be06093225f9cbb6ac35440378ef171b.gif" style="vertical-align:-6px" width="44"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;means a (non-real) complex-conjugate pair of roots and &lt;/span&gt;&lt;img alt="R" height="22" src="/view.aspx?sf=234960_post/a1bd8465bc8e526d2c62805df64444d1.gif" style="vertical-align:-6px" width="14"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;means a real root; the exponents indicate the multiplicities.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img align="middle" alt="all := combstruct:-allstructs([rts, sys], size = degree(p, x)); nops(%); `~`[Draw](all)" height="40" src="/view.aspx?sf=234960_post/e8e32837dce98c3b44986b2446565c20.gif" style="vertical-align:-23px" width="768"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="9" height="23" src="/view.aspx?sf=234960_post/140801f6d673e0b3df0535d95c1b4007.gif" style="vertical-align:-6px" width="13"&gt;&lt;/p&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[[[C, C]^2], [[C, C], [C, C]], [R^2, [C, C]], [R^4], [R, R, [C, C]], [R^2, R^2], [R^3, R], [R, R, R^2], [R, R, R, R]]" height="27" src="/view.aspx?sf=234960_post/547d84a84ff0da496ec4b38f97aeec19.gif" style="vertical-align:-6px" width="646"&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;These are (in order)&lt;/span&gt;&lt;br&gt;
			&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(a) A duplicate pair of complex-conjugate roots&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(b) Two distinct pairs of complex-conjugate roots&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(c) A real root of multiplicity 2 and a pair of complex-conjugate roots&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(d) A real root of multiplicity 4&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(e) Two distinct real roots of multiplicity 1 and a complex-conjugate pair&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(f) Two distinct real roots each of multiplicity 2&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(g) A real root of multiplicity 3 and a real root of multiplicity 1&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(h) Three distinct real roots, of multiplicities 2, 1, and 1&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(i) Four distinct real roots of multiplicity 1&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Declare the variables first and parameters last. &lt;/span&gt;&lt;img alt="np" height="22" src="/view.aspx?sf=234960_post/89b4051a890fba711dda2fcd4f9509ae.gif" style="vertical-align:-6px" width="20"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;is the number of parameters. Use the suggested order.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img align="middle" alt="vp := SuggestVariableOrder([p = 0], [x]); R := PolynomialRing(vp); np := nops(`minus`({vp[]}, {x}))" height="58" src="/view.aspx?sf=234960_post/ba6dbba772a341a7dc247bd18d643715.gif" style="vertical-align:-41px" width="768"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[x, e[0], e[1], e[2]]" height="28" src="/view.aspx?sf=234960_post/061342007d1721d8db3fc1707342a155.gif" style="vertical-align:-11px" width="122"&gt;&lt;/p&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="polynomial_ring" height="23" src="/view.aspx?sf=234960_post/2c81472348a33e2ee47bc82696b913c8.gif" style="vertical-align:-6px" width="140"&gt;&lt;/p&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="3" height="23" src="/view.aspx?sf=234960_post/3cd4281be17f59b820cb4588eaaa6f59.gif" style="vertical-align:-6px" width="54"&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Define derivative polynomials. &lt;/span&gt;&lt;img alt="p2 = 0" height="22" src="/view.aspx?sf=234960_post/456816b403e97254fffddc1c7bde1e2b.gif" style="vertical-align:-6px" width="40"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;when there is a root of multiplicity 2 or more; &lt;/span&gt;&lt;img alt="p3 = 0" height="22" src="/view.aspx?sf=234960_post/ff7b90d2ba2bfd45bd43ed5419c45349.gif" style="vertical-align:-6px" width="40"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;when there is a root of multiplicity 3 or more and &lt;/span&gt;&lt;img alt="p4 = 0" height="22" src="/view.aspx?sf=234960_post/90eef88e5359aebc4592421c586e135e.gif" style="vertical-align:-6px" width="43"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;when there is a root of multiplicity 4.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="p2 := diff(p, x); p3 := diff(p2, x); p4 := diff(p3, x)" height="23" src="/view.aspx?sf=234960_post/e7eb5805c7704f10e5016fc6e2f41595.gif" style="vertical-align:-6px" width="340"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="4*x^3+2*x*e[2]+e[1]" height="32" src="/view.aspx?sf=234960_post/b1f5be3aa5421c6c4644372d96ee2365.gif" style="vertical-align:-11px" width="152"&gt;&lt;/p&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="12*x^2+2*e[2]" height="32" src="/view.aspx?sf=234960_post/23be0986147d8d13a1227fdab8cc3376.gif" style="vertical-align:-11px" width="119"&gt;&lt;/p&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="24*x" height="23" src="/view.aspx?sf=234960_post/6992775aa63a0b25ea70652d0ddeec3b.gif" style="vertical-align:-6px" width="71"&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Discriminant is zero if and only if there are repeated roots.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="Delta := discrim(p, x)" height="23" src="/view.aspx?sf=234960_post/637198b02768fc923c230db9c9a7ad1f.gif" style="vertical-align:-6px" width="152"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="16*e[0]*e[2]^4-4*e[1]^2*e[2]^3-128*e[0]^2*e[2]^2+144*e[0]*e[1]^2*e[2]-27*e[1]^4+256*e[0]^3" height="32" src="/view.aspx?sf=234960_post/dbf936e6f0743c9037a025495e6403c9.gif" style="vertical-align:-11px" width="409"&gt;&lt;/p&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section128"&gt;&lt;input name="section128_button" src="/view.aspx?sf=234960_post/7f6746c4fd945f8393f3297009d13949.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section128"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(d) A real root of multiplicity 4&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;This is perhaps the simplest case and can be done using &lt;/span&gt;&lt;span style="color:#ff0000;font-size: 100%;font-family: DejaVu Sans Mono;font-weight:normal;font-style:normal;"&gt;RealComprehensiveTriangularize&lt;/span&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;. Specifying &lt;/span&gt;&lt;img alt="np = 3" height="22" src="/view.aspx?sf=234960_post/6da139fe0e1ffaa927fa30647de705f9.gif" style="vertical-align:-6px" width="40"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;means use the last 3 variables in the PolynomialRing as parameters. The argument 1 means we want the cases where there is one distinct real root. We specify that all of &lt;/span&gt;&lt;img alt="p, p2, p3, p4" height="22" src="/view.aspx?sf=234960_post/1ef8198541f72b488525abdbb9d758d1.gif" style="vertical-align:-6px" width="76"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;are zero so that the 1 real root is the common root of these polynomials, i.e., is a root on multiplicity 4. (I find the cadcell output a little easier to use, but it is not critical.)&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img align="middle" alt="rct := RealComprehensiveTriangularize({p = 0, p2 = 0, p3 = 0, p4 = 0}, np, R, 1, output = cadcell); Display(rct, R)" height="41" src="/view.aspx?sf=234960_post/58125e359a65d172c1d29ac32444d5a8.gif" style="vertical-align:-24px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="PiecewiseTools:-Is, &amp;quot;Wrong kind of parameters in piecewise&amp;quot;" height="94" src="/view.aspx?sf=234960_post/71ecee45fc89fea92610729b99b59b6d.gif" style="vertical-align:-41px" width="219"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;This means that the conditions on the parameters to get a single real root of multiplicity 4 are&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="conds := Info(rct[2][1][1], R)" height="23" src="/view.aspx?sf=234960_post/cd71f04aa9febba6d3871be4461b5eef.gif" style="vertical-align:-6px" width="204"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="[e[2] = 0, e[1] = 0, e[0] = 0]" height="28" src="/view.aspx?sf=234960_post/2dadd69d707198b0b6aedce72e57068f.gif" style="vertical-align:-11px" width="198"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;and that the polynomial to solve to find this root under these conditions is&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="poly := Info(rct[1][][2], R)" height="23" src="/view.aspx?sf=234960_post/226c2117c269f4ceafe9bb54251417e1.gif" style="vertical-align:-6px" width="190"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="[x = 0]" height="23" src="/view.aspx?sf=234960_post/7db1a529b5cf56899292c4530f49f551.gif" style="vertical-align:-6px" width="99"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;which we can check:&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img align="middle" alt="eval(p, conds); solve(%, x)" height="41" src="/view.aspx?sf=234960_post/bd55e1a6cb17518f3eb96d4360d99293.gif" style="vertical-align:-24px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="x^4" height="27" src="/view.aspx?sf=234960_post/b16bad5cf8582a1de9bed76216c47393.gif" style="vertical-align:-6px" width="18"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="0, 0, 0, 0" height="23" src="/view.aspx?sf=234960_post/8b635f19779af89349b706a95836b1b8.gif" style="vertical-align:-6px" width="55"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section185"&gt;&lt;input name="section185_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section185"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(g) A real root of multiplicity 3 and a real root of multiplicity 1&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section263"&gt;&lt;input name="section263_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section263"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(f) Two distinct real roots each of multiplicity 2&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section321"&gt;&lt;input name="section321_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section321"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(i) Four distinct real roots of multiplicity 1&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section437"&gt;&lt;input name="section437_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:16px; padding-bottom:8px"&gt;&lt;span name="section437"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(h) Three distinct real roots, of multiplicities 2, 1, and 1&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section521"&gt;&lt;input name="section521_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section521"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(e) Two distinct real roots of multiplicity 1 and a complex-conjugate pair&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section621"&gt;&lt;input name="section621_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section621"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(c) A real root of multiplicity 2 and a pair of complex-conjugate roots&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section673"&gt;&lt;input name="section673_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section673"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(b) Two distinct pairs of complex-conjugate roots&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section831"&gt;&lt;input name="section831_button" src="/view.aspx?sf=234960_post/7f6746c4fd945f8393f3297009d13949.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section831"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(a) A duplicate pair of complex-conjugate roots&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Here we want multiplicity 2 but no real roots. The discriminant is expected to be zero, but in most cases is not.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="rct := RealComprehensiveTriangularize({p = 0, p2 = 0, p3 &amp;lt;&amp;gt; 0, p4 &amp;lt;&amp;gt; 0}, np, R, 0, output = cadcell); nops(rct[2]); Display(rct[2][1 .. 4], R)" height="59" src="/view.aspx?sf=234960_post/19052f73991b82af5a4fc75ba7ca2da4.gif" style="vertical-align:-42px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="40" height="23" src="/view.aspx?sf=234960_post/150d34fa24d195bab3a36ae40558eaf4.gif" style="vertical-align:-6px" width="21"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="[[PIECEWISE([e[0] &amp;lt; RootOf(256*_Z^3-128*e[2]^2*_Z^2+(16*e[2]^4+144*e[1]^2*e[2])*_Z-4*e[1]^2*e[2]^3-27*e[1]^4, index = real[1]), ``], [e[1] &amp;lt; -(2/9)*(-6*e[2]^3)^(1/2), ``], [e[2] &amp;lt; 0, ``]), []], [PIECEWISE([RootOf(256*_Z^3-128*e[2]^2*_Z^2+(16*e[2]^4+144*e[1]^2*e[2])*_Z-4*e[1]^2*e[2]^3-27*e[1]^4, index = real[1]) &amp;lt; e[0], ``], [e[1] &amp;lt; -(2/9)*(-6*e[2]^3)^(1/2), ``], [e[2] &amp;lt; 0, ``]), []], [PIECEWISE([e[0] &amp;lt; -(1/12)*e[2]^2, ``], [e[1] = -(2/9)*(-6*e[2]^3)^(1/2), ``], [e[2] &amp;lt; 0, ``]), []], [PIECEWISE([e[0] = -(1/12)*e[2]^2, ``], [e[1] = -(2/9)*(-6*e[2]^3)^(1/2), ``], [e[2] &amp;lt; 0, ``]), []]]" height="420" src="/view.aspx?sf=234960_post/acd01c8dfa1f5d358fbab7486a6410e9.gif" style="vertical-align:-342px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Consider one of the cases with an equality for e[0], suggesting a zero discriminant.&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Find a sample point satisfying the conditions, and see what the roots are like&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="j := 37; cell := rct[2][j][1]; conds := Info(cell, R); pts := Info(SamplePoints(cell, R), R)[1]; `~`[is](eval(conds, pts))" height="92" src="/view.aspx?sf=234960_post/d03a00bb539cd4e0b94e2a1a6416fd21.gif" style="vertical-align:-75px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="37" height="23" src="/view.aspx?sf=234960_post/e6745b529f4dbaeb7d5b962953e26f25.gif" style="vertical-align:-6px" width="51"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="cad_cell" height="23" src="/view.aspx?sf=234960_post/d71b59ea827d848e9d5d3c7c6e99503e.gif" style="vertical-align:-6px" width="103"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[0 &amp;lt; e[2], e[1] = 0, e[0] = (1/4)*e[2]^2]" height="51" src="/view.aspx?sf=234960_post/94c53af69b7a467d16ea71b652e3e4ef.gif" style="vertical-align:-16px" width="217"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[e[0] = 1/16, e[1] = 0, e[2] = 1/2]" height="42" src="/view.aspx?sf=234960_post/d5be220d4eced11354c9650d8d76fe42.gif" style="vertical-align:-16px" width="209"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[true, true, true]" height="23" src="/view.aspx?sf=234960_post/41ac3c6fb4bb7f0edc2ec54269dbd394.gif" style="vertical-align:-6px" width="105"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;We find two complex roots of multiplicity 2, which are complex conjugates, as expected&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="eval(p, pts); solve(%, x)" height="23" src="/view.aspx?sf=234960_post/3957330b18998ddf48dbbee1dce79b0f.gif" style="vertical-align:-6px" width="161"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="x^4+(1/2)*x^2+1/16" height="42" src="/view.aspx?sf=234960_post/c23f4660e2e715b2c79ac1b8e2d5b31b.gif" style="vertical-align:-16px" width="115"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="(1/2)*I, -(1/2)*I, (1/2)*I, -(1/2)*I" height="42" src="/view.aspx?sf=234960_post/60ecb09ee2c604d7cb0d89629363b3b6.gif" style="vertical-align:-16px" width="115"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Check that discriminant is zero.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="eval(Delta, pts)" height="23" src="/view.aspx?sf=234960_post/012a05b45f8195479a8e82bf308de9fa.gif" style="vertical-align:-6px" width="108"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="0" height="23" src="/view.aspx?sf=234960_post/07b81075eb60bb2024e0bc8e5ff6d87d.gif" style="vertical-align:-6px" width="13"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;But, for example, the first cell does not have the discriminant zero, and does not give a correct result.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="j := 1; cell := rct[2][j][1]; conds := Info(cell, R); pts := Info(SamplePoints(cell, R), R)[1]; `~`[is](eval(conds, pts))" height="92" src="/view.aspx?sf=234960_post/47c04609d2ffe09996955d62c77601dd.gif" style="vertical-align:-75px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="1" height="23" src="/view.aspx?sf=234960_post/07d63a7257062668ff8a01cf39f6f4a2.gif" style="vertical-align:-6px" width="43"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="cad_cell" height="23" src="/view.aspx?sf=234960_post/968942aebc3247581ad724569c9dbdc0.gif" style="vertical-align:-6px" width="103"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="[e[2] &amp;lt; 0, e[1] &amp;lt; -(2/9)*(-6*e[2]^3)^(1/2), e[0] &amp;lt; RootOf(256*_Z^3-128*e[2]^2*_Z^2+(16*e[2]^4+144*e[1]^2*e[2])*_Z-4*e[1]^2*e[2]^3-27*e[1]^4, index = real[1])]" height="104" src="/view.aspx?sf=234960_post/264b86fccf503714639a75ba5b20e7d1.gif" style="vertical-align:-65px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[e[0] = 1/2, e[1] = -3/2, e[2] = -1/2]" height="42" src="/view.aspx?sf=234960_post/b5a866bdff6da684490ab71e79334921.gif" style="vertical-align:-16px" width="231"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[true, true, true]" height="23" src="/view.aspx?sf=234960_post/d90e20aa1deda05aa4fa3b0fc62aad18.gif" style="vertical-align:-6px" width="105"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;We find a complex conjugate pair and two distinct real roots, which is not expected for this case.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="eval(p, pts); fsolve(%, x, complex)" height="23" src="/view.aspx?sf=234960_post/ec967770b259ca9cecdfce42f619aaf3.gif" style="vertical-align:-6px" width="221"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="x^4-(1/2)*x^2-(3/2)*x+1/2" height="42" src="/view.aspx?sf=234960_post/46d599825a9511bf98c5ed5b3724b87e.gif" style="vertical-align:-16px" width="153"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="-.7473459056-.9001675303*I, -.7473459056+.9001675303*I, .3077440660, 1.186947745" height="23" src="/view.aspx?sf=234960_post/a96bb41c4519f66048c1b1574c714fdc.gif" style="vertical-align:-6px" width="617"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;The discriminant is indeed nonzero.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="eval(Delta, pts)" height="23" src="/view.aspx?sf=234960_post/084bcc9bd5187f64cd1f108e5701b119.gif" style="vertical-align:-6px" width="108"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="-3073/16" height="42" src="/view.aspx?sf=234960_post/11cef3cae51dfe86e07fdfbc9972dc1b.gif" style="vertical-align:-16px" width="56"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;We did not yet find the conditions for this case. We can ask for the conditions for different numbers of complex roots (complex in this context includes real).&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="cmplx := ComplexRootClassification([p], np, R)" height="23" src="/view.aspx?sf=234960_post/266db5201b4ae9ab559bba166ecf5b80.gif" style="vertical-align:-6px" width="318"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[[constructible_set, 1], [constructible_set, 2], [constructible_set, 3], [constructible_set, 4]]" height="23" src="/view.aspx?sf=234960_post/263eb2b5f9ef20d491fad92917f71259.gif" style="vertical-align:-6px" width="617"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;We are interested in the conditions for exactly two distinct roots, which is found from the second constructible_set. There are two subcases.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="Display(cmplx[2][1], R)" height="23" src="/view.aspx?sf=234960_post/64e4ac3d07b86ad50bccbb3a83333067.gif" style="vertical-align:-6px" width="165"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="PIECEWISE([12*e[0]+e[2]^2 = 0, ``], [27*e[1]^2+8*e[2]^3 = 0, ``], [e[2] &amp;lt;&amp;gt; 0, ``]), PIECEWISE([4*e[0]-e[2]^2 = 0, ``], [e[1] = 0, ``], [e[2] &amp;lt;&amp;gt; 0, ``])" height="102" src="/view.aspx?sf=234960_post/b30836d74a594955635073ac59257c2c.gif" style="vertical-align:-45px" width="257"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Consider the second case&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="case2 := Info(cmplx[2][1], R)[2]" height="23" src="/view.aspx?sf=234960_post/38554a415cc0eacdfa43370ffb530988.gif" style="vertical-align:-6px" width="222"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[[4*e[0]-e[2]^2, e[1]], [e[2]]]" height="32" src="/view.aspx?sf=234960_post/77ff81b94c05d2039bda4c99625bf65d.gif" style="vertical-align:-11px" width="197"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="solve(case2[1], {e[0], e[1]}); q1 := eval(p, %); rts2 := [solve(%, x)]" height="57" src="/view.aspx?sf=234960_post/ee5087197f2c1ac38a1d72589ceb33f1.gif" style="vertical-align:-40px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="{e[0] = (1/4)*e[2]^2, e[1] = 0}" height="51" src="/view.aspx?sf=234960_post/78eacbedae1ccaa609887884463ee70f.gif" style="vertical-align:-16px" width="113"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="x^4+x^2*e[2]+(1/4)*e[2]^2" height="42" src="/view.aspx?sf=234960_post/31906608418446d0bf30c487eac578bb.gif" style="vertical-align:-16px" width="158"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[(1/2)*(-2*e[2])^(1/2), -(1/2)*(-2*e[2])^(1/2), (1/2)*(-2*e[2])^(1/2), -(1/2)*(-2*e[2])^(1/2)]" height="51" src="/view.aspx?sf=234960_post/67e6bcb95aa5d9935f98f3617a4177cc.gif" style="vertical-align:-16px" width="349"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;We saw this before when e[2]&amp;lt;0 as case (f) with real roots of multiplicity 2. Now, for e[2]&amp;gt;0 we indeed have two duplicate pairs of complex conjugate roots&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="`assuming`([simplify(rts2)], [e[2] &amp;gt; 0])" height="23" src="/view.aspx?sf=234960_post/71aa1036730845cc000fad30662b89da.gif" style="vertical-align:-6px" width="213"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[((1/2)*I)*2^(1/2)*e[2]^(1/2), -((1/2)*I)*2^(1/2)*e[2]^(1/2), ((1/2)*I)*2^(1/2)*e[2]^(1/2), -((1/2)*I)*2^(1/2)*e[2]^(1/2)]" height="42" src="/view.aspx?sf=234960_post/2f5a95504b8d0634ff45b527e98f7c5a.gif" style="vertical-align:-16px" width="368"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Consider the first case&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="case1 := Info(cmplx[2][1], R)[1]" height="23" src="/view.aspx?sf=234960_post/8be25e3470c1523e474fda73c1fb17e7.gif" style="vertical-align:-6px" width="222"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[[12*e[0]+e[2]^2, 27*e[1]^2+8*e[2]^3], [e[2]]]" height="32" src="/view.aspx?sf=234960_post/3a8c31e15392ba93568255c87f042bc4.gif" style="vertical-align:-11px" width="265"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="ans1 := {solve(case1[1], {e[0], e[1]}, explicit)}; q11 := eval(p, ans1[1]); rts11 := [solve(%, x, explicit)]" height="57" src="/view.aspx?sf=234960_post/088b67eda5eabf508713149cfb382929.gif" style="vertical-align:-40px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="{{e[0] = -(1/12)*e[2]^2, e[1] = -(2/9)*(-6*e[2])^(1/2)*e[2]}, {e[0] = -(1/12)*e[2]^2, e[1] = (2/9)*(-6*e[2])^(1/2)*e[2]}}" height="51" src="/view.aspx?sf=234960_post/0ddfcec210d54d560fad0c670ab2f1d8.gif" style="vertical-align:-16px" width="488"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="x^4+x^2*e[2]-(2/9)*x*(-6*e[2])^(1/2)*e[2]-(1/12)*e[2]^2" height="51" src="/view.aspx?sf=234960_post/dd24909c65c28a83ed3e1e9ae2c01307.gif" style="vertical-align:-16px" width="272"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[(1/6)*(-6*e[2])^(1/2), (1/6)*(-6*e[2])^(1/2), (1/6)*(-6*e[2])^(1/2), -(1/2)*(-6*e[2])^(1/2)]" height="51" src="/view.aspx?sf=234960_post/eb12d2b88f05552d2388d47b6f422d4a.gif" style="vertical-align:-16px" width="346"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;The rts11 subcase polynomial q11 must have real coefficients and therefore only applies for e[2]&amp;lt;0. The roots are real with multiplicity 3 and multiplicity 1 and this case is just case (g) above. The rts12 subcase polynomial q12 (below) also requires e[2]&amp;lt;0 and corresponds to case (g), but with signs reversed.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="q12 := eval(p, ans1[2]); rts12 := [solve(%, x, explicit)]" height="40" src="/view.aspx?sf=234960_post/1fccb6be88f2c0d3deed8f972bbdfb19.gif" style="vertical-align:-23px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="x^4+x^2*e[2]+(2/9)*x*(-6*e[2])^(1/2)*e[2]-(1/12)*e[2]^2" height="51" src="/view.aspx?sf=234960_post/c7d2d174c9e98fdf21fa3ec9e7b476d3.gif" style="vertical-align:-16px" width="272"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[(1/2)*(-6*e[2])^(1/2), -(1/6)*(-6*e[2])^(1/2), -(1/6)*(-6*e[2])^(1/2), -(1/6)*(-6*e[2])^(1/2)]" height="51" src="/view.aspx?sf=234960_post/c10070702be1db529473aa190fd6f70e.gif" style="vertical-align:-16px" width="366"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Therefore the rts2 case is the solution for case (a); the cell37 example was a special case of this. In fact if we have a duplicate pair of complex-conjugate roots, the polynomial must be a pefect square, as we see it is&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="factor(q1)" height="23" src="/view.aspx?sf=234960_post/ab75e2e9a999267948219a199d313354.gif" style="vertical-align:-6px" width="78"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="(1/4)*(2*x^2+e[2])^2" height="55" src="/view.aspx?sf=234960_post/d9f86f670d0600f7bab85f5aead5a6f5.gif" style="vertical-align:-16px" width="92"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="NULL" height="23" src="/view.aspx?sf=234960_post/12cd0407ea7d1974f828aeeae04338cd.gif" style="vertical-align:-6px" width="9"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;input name="sequence" type="hidden" value="1"&gt; &lt;input name="cmd" type="hidden" value="none"&gt;&lt;/form&gt;

&lt;p&gt;&lt;a href="/view.aspx?sf=234960_post/RootAnalysis5.mw"&gt;Download RootAnalysis5.mw&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</itunes:summary>
      <description>&lt;form name="worksheet_form"&gt;&lt;input name="md.ref" type="hidden" value="DC0427774A837806AC30EAF773C8F920"&gt;
&lt;table align="center" width="768"&gt;
	&lt;tbody&gt;
		&lt;tr&gt;
			&lt;td&gt;
			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Recently @salim-barzani &lt;/span&gt;&lt;a href="https://www.mapleprimes.com/questions/243586-How-Apply-Special-Transformation--"&gt;&lt;span style="color:#125d99;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&lt;u&gt;asked a question&lt;/u&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;about a paper that involved analysing the different types of roots of polynomials. The appendix in that paper gave the example of the roots of &lt;/span&gt;&lt;img alt="x^4+x^2*e[2]+x*e[1]+e[0]" height="32" src="/view.aspx?sf=234960_post/158c5f81eda2435111846f5011507eb8.gif" style="vertical-align:-11px" width="141"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;using the analysis in Lu et al, &amp;quot;A complete discrimination system for polynomials&amp;quot;, Science in China (Ser. E), 39 (1996) 628-646. The analysis uses the &lt;/span&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:italic;"&gt;discriminant sequence&lt;/span&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;and extensions. Maple provides this through &lt;/span&gt;&lt;u&gt;&lt;a href="https://www.maplesoft.com/support/help/maple/view.aspx?path=RegularChains%2fParametricSystemTools%2fDiscriminantSequence"&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans Mono&amp;quot;; font-weight: normal; font-style: normal;"&gt;RegularChains:-ParametricSystemTools:-DiscrminantSequence&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/u&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;. For example for this polynomial we find there is a real root of multiplicity 2 and a complex conjugate pair when &lt;/span&gt;&lt;img alt="D__2*D__3 &amp;lt; 0 and D__4 = 0" height="28" src="/view.aspx?sf=234960_post/6eb8f6df52424c3da456b04e6bc94a83.gif" style="vertical-align:-11px" width="137"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;where the &lt;/span&gt;&lt;img alt="D__i" height="28" src="/view.aspx?sf=234960_post/48ca837e2adc422361829dc8b6aa64f9.gif" style="vertical-align:-11px" width="19"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;are the &lt;/span&gt;&lt;img alt="i" height="23" src="/view.aspx?sf=234960_post/c79c3f82559c9fd66702d7b034480a66.gif" style="vertical-align:-6px" width="10"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;th entries in the discriminant sequence &lt;/span&gt;&lt;img alt="[1, -e[2], -2*e[2]^3+8*e[0]*e[2]-9*e[1]^2, 16*e[0]*e[2]^4-4*e[1]^2*e[2]^3-128*e[0]^2*e[2]^2+144*e[0]*e[1]^2*e[2]-27*e[1]^4+256*e[0]^3]" height="32" src="/view.aspx?sf=234960_post/1096d0f1d412fee6af83ecef6ed7305e.gif" style="vertical-align:-11px" width="568"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;.&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;The problem with these conditions is&amp;nbsp;that they are in terms of the &lt;/span&gt;&lt;img alt="D__i" height="28" src="/view.aspx?sf=234960_post/838f4e9b2afa8387863440f77b6ac399.gif" style="vertical-align:-11px" width="19"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;and not directly in terms of the &lt;/span&gt;&lt;img alt="e__i" height="28" src="/view.aspx?sf=234960_post/2ea04e2be92b95bc3e41c20ac0d88ad3.gif" style="vertical-align:-11px" width="15"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;parameters. One can derive these conditions and then solve them to find the conditions on the parameters, but Maple has various routines in the &lt;/span&gt;&lt;u&gt;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=RegularChains"&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans Mono&amp;quot;; font-weight: normal; font-style: normal;"&gt;&lt;span style="background-color:#ffffff;"&gt;RegularChains&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/u&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;, &lt;/span&gt;&lt;u&gt;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=RootFinding/Parametric"&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans Mono&amp;quot;; font-weight: normal; font-style: normal;"&gt;RootFinding:-Parametric&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/u&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;and &lt;/span&gt;&lt;u&gt;&lt;a href="https://www.maplesoft.com/support/help/Maple/view.aspx?path=SolveTools"&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans Mono&amp;quot;; font-weight: normal; font-style: normal;"&gt;SolveTools&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/u&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;packages that directly find conditions on parameters to find when there are specified numbers of real or complex roots for polynomial systems. So this post is my attempt to use these tools to find the conditions on the parameters of the above polynomial that give various types of roots. One immediate difficulty is that generally these routines count distinct roots irrespective of multiplicity, and so some indirect analysis is required. There are several different types of commands and analyses that could be used, and my choices here are more to do with my learning experience than an optimum analysis.&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;The first conclusion is that it is possible, although &lt;/span&gt;&lt;a href="https://www.maplesoft.com/support/help/maple/view.aspx?path=RegularChains%2FParametricSystemTools%2FComprehensiveTriangularize"&gt;&lt;u&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans&amp;quot;; font-weight: normal; font-style: normal;"&gt;RealComprehensiveTriangularize&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt; did not work as I expected when asking for zero real roots (see cases (a) and (b)) (bug?). Assuming it had worked, &lt;/span&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans&amp;quot;; font-weight: normal; font-style: normal;"&gt;&lt;span style="color:#e74c3c;"&gt;RealComprehensiveTriangularize&lt;/span&gt; could cover all the cases here, though that will not be true for higher-degree polynomials with more parameters. There doesn&amp;#39;t seem to be an obvious systematic way of doing this analysis, which is a downside. Another downside is the large number of subcase conditions, which look as if they could be combined into fewer subcases. &lt;/span&gt;&lt;a href="https://www.maplesoft.com/support/help/maple/view.aspx?path=RootFinding%2FParametric%2FCellDecomposition"&gt;&lt;u&gt;&lt;span style="color:#3498db;"&gt;&lt;span style="font-size: 100%; font-family: &amp;quot;DejaVu Sans&amp;quot;; font-weight: normal; font-style: normal;"&gt;CellDecomposition&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/a&gt;&lt;span style="color:#000000;font-size: 100%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt; works well for cases without multiplicity.&lt;/span&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;input name="sequence" type="hidden" value="1"&gt; &lt;input name="cmd" type="hidden" value="none"&gt;&lt;/form&gt;

&lt;p&gt;&lt;br&gt;
Main worksheet [not all is displayed below]:&lt;/p&gt;

&lt;p&gt;&lt;a href="/view.aspx?sf=234960_post/RootAnalysis4.mw"&gt;Download RootAnalysis4.mw&lt;/a&gt;&lt;/p&gt;

&lt;form name="worksheet_form"&gt;&lt;input name="md.ref" type="hidden" value="9C9FC3FAFBB0DF87FE9722659615E22A"&gt;
&lt;table align="center" width="768"&gt;
	&lt;tbody&gt;
		&lt;tr&gt;
			&lt;td&gt;
			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="restart" height="23" src="/view.aspx?sf=234960_post/532530024ffa557a6491f294ebfd0abd.gif" style="vertical-align:-6px" width="54"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="with(RegularChains); with(ParametricSystemTools); with(RootFinding:-Parametric)" height="23" src="/view.aspx?sf=234960_post/40ed2fa90e2e8f7bdb5b6ddc69cfcd20.gif" style="vertical-align:-6px" width="543"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Consider the following polynomial in &lt;/span&gt;&lt;img alt="x" height="22" src="/view.aspx?sf=234960_post/bcb496fe9e97d0932dfad07c9b78a507.gif" style="vertical-align:-6px" width="12"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;with the three real parameters &lt;/span&gt;&lt;img alt="e[0], e[1], e[2]" height="22" src="/view.aspx?sf=234960_post/8482a14eb874482b9a27388d4923b21d.gif" style="vertical-align:-6px" width="98"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;. We would like to know the conditions on these parameters that lead to different numbers of real and complex-conjugate pairs of roots of different multiplicities.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="p := x^4+x^2*e[2]+x*e[1]+e[0]" height="27" src="/view.aspx?sf=234960_post/5114157758f0367419ab58612f1c29d9.gif" style="vertical-align:-6px" width="226"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="x^4+x^2*e[2]+x*e[1]+e[0]" height="32" src="/view.aspx?sf=234960_post/e12f0d3370bc853462acfcc352864c06.gif" style="vertical-align:-11px" width="171"&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Consider first how many cases there are. We can set this up as a combinatorial problem in the combstruct package.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img align="middle" alt="sys := {C = Atom, R = Atom, realrts = Set(multiplereal), rts = Prod(realrts, complexrts), complexpr = Prod(C, C), complexrts = Set(multiplecomplex), multiplecomplex = Sequence(complexpr, card &amp;gt; 0), multiplereal = Sequence(R, card &amp;gt; 0)}" height="40" src="/view.aspx?sf=234960_post/9d2ad10f8fcae1dcb03a2806e3902ac6.gif" style="vertical-align:-23px" width="768"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="Draw := proc (q) options operator, arrow; eval(q, {Epsilon = NULL, Prod = `[]`, Set = (proc () options operator, arrow; args end proc), Sequence = `*`}) end proc" height="23" src="/view.aspx?sf=234960_post/f7de4b8fd997884c1862d0fba5b978ea.gif" style="vertical-align:-6px" width="674"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;For a degree 4 polynomial there are 9 different cases to consider. Here &lt;/span&gt;&lt;img alt="[C, C]" height="22" src="/view.aspx?sf=234960_post/be06093225f9cbb6ac35440378ef171b.gif" style="vertical-align:-6px" width="44"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;means a (non-real) complex-conjugate pair of roots and &lt;/span&gt;&lt;img alt="R" height="22" src="/view.aspx?sf=234960_post/a1bd8465bc8e526d2c62805df64444d1.gif" style="vertical-align:-6px" width="14"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;means a real root; the exponents indicate the multiplicities.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img align="middle" alt="all := combstruct:-allstructs([rts, sys], size = degree(p, x)); nops(%); `~`[Draw](all)" height="40" src="/view.aspx?sf=234960_post/e8e32837dce98c3b44986b2446565c20.gif" style="vertical-align:-23px" width="768"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="9" height="23" src="/view.aspx?sf=234960_post/140801f6d673e0b3df0535d95c1b4007.gif" style="vertical-align:-6px" width="13"&gt;&lt;/p&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[[[C, C]^2], [[C, C], [C, C]], [R^2, [C, C]], [R^4], [R, R, [C, C]], [R^2, R^2], [R^3, R], [R, R, R^2], [R, R, R, R]]" height="27" src="/view.aspx?sf=234960_post/547d84a84ff0da496ec4b38f97aeec19.gif" style="vertical-align:-6px" width="646"&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;These are (in order)&lt;/span&gt;&lt;br&gt;
			&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(a) A duplicate pair of complex-conjugate roots&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(b) Two distinct pairs of complex-conjugate roots&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(c) A real root of multiplicity 2 and a pair of complex-conjugate roots&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(d) A real root of multiplicity 4&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(e) Two distinct real roots of multiplicity 1 and a complex-conjugate pair&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(f) Two distinct real roots each of multiplicity 2&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(g) A real root of multiplicity 3 and a real root of multiplicity 1&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(h) Three distinct real roots, of multiplicities 2, 1, and 1&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;(i) Four distinct real roots of multiplicity 1&lt;/span&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Declare the variables first and parameters last. &lt;/span&gt;&lt;img alt="np" height="22" src="/view.aspx?sf=234960_post/89b4051a890fba711dda2fcd4f9509ae.gif" style="vertical-align:-6px" width="20"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;is the number of parameters. Use the suggested order.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img align="middle" alt="vp := SuggestVariableOrder([p = 0], [x]); R := PolynomialRing(vp); np := nops(`minus`({vp[]}, {x}))" height="58" src="/view.aspx?sf=234960_post/ba6dbba772a341a7dc247bd18d643715.gif" style="vertical-align:-41px" width="768"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[x, e[0], e[1], e[2]]" height="28" src="/view.aspx?sf=234960_post/061342007d1721d8db3fc1707342a155.gif" style="vertical-align:-11px" width="122"&gt;&lt;/p&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="polynomial_ring" height="23" src="/view.aspx?sf=234960_post/2c81472348a33e2ee47bc82696b913c8.gif" style="vertical-align:-6px" width="140"&gt;&lt;/p&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="3" height="23" src="/view.aspx?sf=234960_post/3cd4281be17f59b820cb4588eaaa6f59.gif" style="vertical-align:-6px" width="54"&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Define derivative polynomials. &lt;/span&gt;&lt;img alt="p2 = 0" height="22" src="/view.aspx?sf=234960_post/456816b403e97254fffddc1c7bde1e2b.gif" style="vertical-align:-6px" width="40"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;when there is a root of multiplicity 2 or more; &lt;/span&gt;&lt;img alt="p3 = 0" height="22" src="/view.aspx?sf=234960_post/ff7b90d2ba2bfd45bd43ed5419c45349.gif" style="vertical-align:-6px" width="40"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;when there is a root of multiplicity 3 or more and &lt;/span&gt;&lt;img alt="p4 = 0" height="22" src="/view.aspx?sf=234960_post/90eef88e5359aebc4592421c586e135e.gif" style="vertical-align:-6px" width="43"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;when there is a root of multiplicity 4.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="p2 := diff(p, x); p3 := diff(p2, x); p4 := diff(p3, x)" height="23" src="/view.aspx?sf=234960_post/e7eb5805c7704f10e5016fc6e2f41595.gif" style="vertical-align:-6px" width="340"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="4*x^3+2*x*e[2]+e[1]" height="32" src="/view.aspx?sf=234960_post/b1f5be3aa5421c6c4644372d96ee2365.gif" style="vertical-align:-11px" width="152"&gt;&lt;/p&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="12*x^2+2*e[2]" height="32" src="/view.aspx?sf=234960_post/23be0986147d8d13a1227fdab8cc3376.gif" style="vertical-align:-11px" width="119"&gt;&lt;/p&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="24*x" height="23" src="/view.aspx?sf=234960_post/6992775aa63a0b25ea70652d0ddeec3b.gif" style="vertical-align:-6px" width="71"&gt;&lt;/p&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Discriminant is zero if and only if there are repeated roots.&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="Delta := discrim(p, x)" height="23" src="/view.aspx?sf=234960_post/637198b02768fc923c230db9c9a7ad1f.gif" style="vertical-align:-6px" width="152"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="16*e[0]*e[2]^4-4*e[1]^2*e[2]^3-128*e[0]^2*e[2]^2+144*e[0]*e[1]^2*e[2]-27*e[1]^4+256*e[0]^3" height="32" src="/view.aspx?sf=234960_post/dbf936e6f0743c9037a025495e6403c9.gif" style="vertical-align:-11px" width="409"&gt;&lt;/p&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section128"&gt;&lt;input name="section128_button" src="/view.aspx?sf=234960_post/7f6746c4fd945f8393f3297009d13949.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section128"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(d) A real root of multiplicity 4&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;This is perhaps the simplest case and can be done using &lt;/span&gt;&lt;span style="color:#ff0000;font-size: 100%;font-family: DejaVu Sans Mono;font-weight:normal;font-style:normal;"&gt;RealComprehensiveTriangularize&lt;/span&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;. Specifying &lt;/span&gt;&lt;img alt="np = 3" height="22" src="/view.aspx?sf=234960_post/6da139fe0e1ffaa927fa30647de705f9.gif" style="vertical-align:-6px" width="40"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;means use the last 3 variables in the PolynomialRing as parameters. The argument 1 means we want the cases where there is one distinct real root. We specify that all of &lt;/span&gt;&lt;img alt="p, p2, p3, p4" height="22" src="/view.aspx?sf=234960_post/1ef8198541f72b488525abdbb9d758d1.gif" style="vertical-align:-6px" width="76"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;&amp;nbsp;are zero so that the 1 real root is the common root of these polynomials, i.e., is a root on multiplicity 4. (I find the cadcell output a little easier to use, but it is not critical.)&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img align="middle" alt="rct := RealComprehensiveTriangularize({p = 0, p2 = 0, p3 = 0, p4 = 0}, np, R, 1, output = cadcell); Display(rct, R)" height="41" src="/view.aspx?sf=234960_post/58125e359a65d172c1d29ac32444d5a8.gif" style="vertical-align:-24px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="PiecewiseTools:-Is, &amp;quot;Wrong kind of parameters in piecewise&amp;quot;" height="94" src="/view.aspx?sf=234960_post/71ecee45fc89fea92610729b99b59b6d.gif" style="vertical-align:-41px" width="219"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;This means that the conditions on the parameters to get a single real root of multiplicity 4 are&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="conds := Info(rct[2][1][1], R)" height="23" src="/view.aspx?sf=234960_post/cd71f04aa9febba6d3871be4461b5eef.gif" style="vertical-align:-6px" width="204"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="[e[2] = 0, e[1] = 0, e[0] = 0]" height="28" src="/view.aspx?sf=234960_post/2dadd69d707198b0b6aedce72e57068f.gif" style="vertical-align:-11px" width="198"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;and that the polynomial to solve to find this root under these conditions is&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="poly := Info(rct[1][][2], R)" height="23" src="/view.aspx?sf=234960_post/226c2117c269f4ceafe9bb54251417e1.gif" style="vertical-align:-6px" width="190"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="[x = 0]" height="23" src="/view.aspx?sf=234960_post/7db1a529b5cf56899292c4530f49f551.gif" style="vertical-align:-6px" width="99"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;which we can check:&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img align="middle" alt="eval(p, conds); solve(%, x)" height="41" src="/view.aspx?sf=234960_post/bd55e1a6cb17518f3eb96d4360d99293.gif" style="vertical-align:-24px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="x^4" height="27" src="/view.aspx?sf=234960_post/b16bad5cf8582a1de9bed76216c47393.gif" style="vertical-align:-6px" width="18"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section128"&gt;&lt;span name="section128_body"&gt;&lt;img alt="0, 0, 0, 0" height="23" src="/view.aspx?sf=234960_post/8b635f19779af89349b706a95836b1b8.gif" style="vertical-align:-6px" width="55"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section185"&gt;&lt;input name="section185_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section185"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(g) A real root of multiplicity 3 and a real root of multiplicity 1&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section263"&gt;&lt;input name="section263_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section263"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(f) Two distinct real roots each of multiplicity 2&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section321"&gt;&lt;input name="section321_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section321"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(i) Four distinct real roots of multiplicity 1&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section437"&gt;&lt;input name="section437_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:16px; padding-bottom:8px"&gt;&lt;span name="section437"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(h) Three distinct real roots, of multiplicities 2, 1, and 1&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section521"&gt;&lt;input name="section521_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section521"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(e) Two distinct real roots of multiplicity 1 and a complex-conjugate pair&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section621"&gt;&lt;input name="section621_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section621"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(c) A real root of multiplicity 2 and a pair of complex-conjugate roots&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section673"&gt;&lt;input name="section673_button" src="/view.aspx?sf=234960_post/f4c0222204c86bfb433fa5c941ee052d.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section673"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(b) Two distinct pairs of complex-conjugate roots&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table cellpadding="0" cellspacing="0" style="border:none"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span name="section831"&gt;&lt;input name="section831_button" src="/view.aspx?sf=234960_post/7f6746c4fd945f8393f3297009d13949.gif" type="image"&gt; &lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:8px; padding-bottom:4px"&gt;&lt;span name="section831"&gt;&lt;span style="color:#000000;font-size: 150%;font-family: DejaVu Sans;font-weight:bold;font-style:normal;"&gt;(a) A duplicate pair of complex-conjugate roots&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
					&lt;tr&gt;
						&lt;td&gt;&amp;nbsp;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Here we want multiplicity 2 but no real roots. The discriminant is expected to be zero, but in most cases is not.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="rct := RealComprehensiveTriangularize({p = 0, p2 = 0, p3 &amp;lt;&amp;gt; 0, p4 &amp;lt;&amp;gt; 0}, np, R, 0, output = cadcell); nops(rct[2]); Display(rct[2][1 .. 4], R)" height="59" src="/view.aspx?sf=234960_post/19052f73991b82af5a4fc75ba7ca2da4.gif" style="vertical-align:-42px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="40" height="23" src="/view.aspx?sf=234960_post/150d34fa24d195bab3a36ae40558eaf4.gif" style="vertical-align:-6px" width="21"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="[[PIECEWISE([e[0] &amp;lt; RootOf(256*_Z^3-128*e[2]^2*_Z^2+(16*e[2]^4+144*e[1]^2*e[2])*_Z-4*e[1]^2*e[2]^3-27*e[1]^4, index = real[1]), ``], [e[1] &amp;lt; -(2/9)*(-6*e[2]^3)^(1/2), ``], [e[2] &amp;lt; 0, ``]), []], [PIECEWISE([RootOf(256*_Z^3-128*e[2]^2*_Z^2+(16*e[2]^4+144*e[1]^2*e[2])*_Z-4*e[1]^2*e[2]^3-27*e[1]^4, index = real[1]) &amp;lt; e[0], ``], [e[1] &amp;lt; -(2/9)*(-6*e[2]^3)^(1/2), ``], [e[2] &amp;lt; 0, ``]), []], [PIECEWISE([e[0] &amp;lt; -(1/12)*e[2]^2, ``], [e[1] = -(2/9)*(-6*e[2]^3)^(1/2), ``], [e[2] &amp;lt; 0, ``]), []], [PIECEWISE([e[0] = -(1/12)*e[2]^2, ``], [e[1] = -(2/9)*(-6*e[2]^3)^(1/2), ``], [e[2] &amp;lt; 0, ``]), []]]" height="420" src="/view.aspx?sf=234960_post/acd01c8dfa1f5d358fbab7486a6410e9.gif" style="vertical-align:-342px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Consider one of the cases with an equality for e[0], suggesting a zero discriminant.&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Find a sample point satisfying the conditions, and see what the roots are like&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="j := 37; cell := rct[2][j][1]; conds := Info(cell, R); pts := Info(SamplePoints(cell, R), R)[1]; `~`[is](eval(conds, pts))" height="92" src="/view.aspx?sf=234960_post/d03a00bb539cd4e0b94e2a1a6416fd21.gif" style="vertical-align:-75px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="37" height="23" src="/view.aspx?sf=234960_post/e6745b529f4dbaeb7d5b962953e26f25.gif" style="vertical-align:-6px" width="51"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="cad_cell" height="23" src="/view.aspx?sf=234960_post/d71b59ea827d848e9d5d3c7c6e99503e.gif" style="vertical-align:-6px" width="103"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[0 &amp;lt; e[2], e[1] = 0, e[0] = (1/4)*e[2]^2]" height="51" src="/view.aspx?sf=234960_post/94c53af69b7a467d16ea71b652e3e4ef.gif" style="vertical-align:-16px" width="217"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[e[0] = 1/16, e[1] = 0, e[2] = 1/2]" height="42" src="/view.aspx?sf=234960_post/d5be220d4eced11354c9650d8d76fe42.gif" style="vertical-align:-16px" width="209"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[true, true, true]" height="23" src="/view.aspx?sf=234960_post/41ac3c6fb4bb7f0edc2ec54269dbd394.gif" style="vertical-align:-6px" width="105"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;We find two complex roots of multiplicity 2, which are complex conjugates, as expected&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="eval(p, pts); solve(%, x)" height="23" src="/view.aspx?sf=234960_post/3957330b18998ddf48dbbee1dce79b0f.gif" style="vertical-align:-6px" width="161"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="x^4+(1/2)*x^2+1/16" height="42" src="/view.aspx?sf=234960_post/c23f4660e2e715b2c79ac1b8e2d5b31b.gif" style="vertical-align:-16px" width="115"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="(1/2)*I, -(1/2)*I, (1/2)*I, -(1/2)*I" height="42" src="/view.aspx?sf=234960_post/60ecb09ee2c604d7cb0d89629363b3b6.gif" style="vertical-align:-16px" width="115"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Check that discriminant is zero.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="eval(Delta, pts)" height="23" src="/view.aspx?sf=234960_post/012a05b45f8195479a8e82bf308de9fa.gif" style="vertical-align:-6px" width="108"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="0" height="23" src="/view.aspx?sf=234960_post/07b81075eb60bb2024e0bc8e5ff6d87d.gif" style="vertical-align:-6px" width="13"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;But, for example, the first cell does not have the discriminant zero, and does not give a correct result.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="j := 1; cell := rct[2][j][1]; conds := Info(cell, R); pts := Info(SamplePoints(cell, R), R)[1]; `~`[is](eval(conds, pts))" height="92" src="/view.aspx?sf=234960_post/47c04609d2ffe09996955d62c77601dd.gif" style="vertical-align:-75px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="1" height="23" src="/view.aspx?sf=234960_post/07d63a7257062668ff8a01cf39f6f4a2.gif" style="vertical-align:-6px" width="43"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="cad_cell" height="23" src="/view.aspx?sf=234960_post/968942aebc3247581ad724569c9dbdc0.gif" style="vertical-align:-6px" width="103"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="[e[2] &amp;lt; 0, e[1] &amp;lt; -(2/9)*(-6*e[2]^3)^(1/2), e[0] &amp;lt; RootOf(256*_Z^3-128*e[2]^2*_Z^2+(16*e[2]^4+144*e[1]^2*e[2])*_Z-4*e[1]^2*e[2]^3-27*e[1]^4, index = real[1])]" height="104" src="/view.aspx?sf=234960_post/264b86fccf503714639a75ba5b20e7d1.gif" style="vertical-align:-65px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[e[0] = 1/2, e[1] = -3/2, e[2] = -1/2]" height="42" src="/view.aspx?sf=234960_post/b5a866bdff6da684490ab71e79334921.gif" style="vertical-align:-16px" width="231"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[true, true, true]" height="23" src="/view.aspx?sf=234960_post/d90e20aa1deda05aa4fa3b0fc62aad18.gif" style="vertical-align:-6px" width="105"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;We find a complex conjugate pair and two distinct real roots, which is not expected for this case.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="eval(p, pts); fsolve(%, x, complex)" height="23" src="/view.aspx?sf=234960_post/ec967770b259ca9cecdfce42f619aaf3.gif" style="vertical-align:-6px" width="221"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="x^4-(1/2)*x^2-(3/2)*x+1/2" height="42" src="/view.aspx?sf=234960_post/46d599825a9511bf98c5ed5b3724b87e.gif" style="vertical-align:-16px" width="153"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="-.7473459056-.9001675303*I, -.7473459056+.9001675303*I, .3077440660, 1.186947745" height="23" src="/view.aspx?sf=234960_post/a96bb41c4519f66048c1b1574c714fdc.gif" style="vertical-align:-6px" width="617"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;The discriminant is indeed nonzero.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="eval(Delta, pts)" height="23" src="/view.aspx?sf=234960_post/084bcc9bd5187f64cd1f108e5701b119.gif" style="vertical-align:-6px" width="108"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="-3073/16" height="42" src="/view.aspx?sf=234960_post/11cef3cae51dfe86e07fdfbc9972dc1b.gif" style="vertical-align:-16px" width="56"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;We did not yet find the conditions for this case. We can ask for the conditions for different numbers of complex roots (complex in this context includes real).&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="cmplx := ComplexRootClassification([p], np, R)" height="23" src="/view.aspx?sf=234960_post/266db5201b4ae9ab559bba166ecf5b80.gif" style="vertical-align:-6px" width="318"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[[constructible_set, 1], [constructible_set, 2], [constructible_set, 3], [constructible_set, 4]]" height="23" src="/view.aspx?sf=234960_post/263eb2b5f9ef20d491fad92917f71259.gif" style="vertical-align:-6px" width="617"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;We are interested in the conditions for exactly two distinct roots, which is found from the second constructible_set. There are two subcases.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="Display(cmplx[2][1], R)" height="23" src="/view.aspx?sf=234960_post/64e4ac3d07b86ad50bccbb3a83333067.gif" style="vertical-align:-6px" width="165"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="PIECEWISE([12*e[0]+e[2]^2 = 0, ``], [27*e[1]^2+8*e[2]^3 = 0, ``], [e[2] &amp;lt;&amp;gt; 0, ``]), PIECEWISE([4*e[0]-e[2]^2 = 0, ``], [e[1] = 0, ``], [e[2] &amp;lt;&amp;gt; 0, ``])" height="102" src="/view.aspx?sf=234960_post/b30836d74a594955635073ac59257c2c.gif" style="vertical-align:-45px" width="257"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Consider the second case&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="case2 := Info(cmplx[2][1], R)[2]" height="23" src="/view.aspx?sf=234960_post/38554a415cc0eacdfa43370ffb530988.gif" style="vertical-align:-6px" width="222"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[[4*e[0]-e[2]^2, e[1]], [e[2]]]" height="32" src="/view.aspx?sf=234960_post/77ff81b94c05d2039bda4c99625bf65d.gif" style="vertical-align:-11px" width="197"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="solve(case2[1], {e[0], e[1]}); q1 := eval(p, %); rts2 := [solve(%, x)]" height="57" src="/view.aspx?sf=234960_post/ee5087197f2c1ac38a1d72589ceb33f1.gif" style="vertical-align:-40px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="{e[0] = (1/4)*e[2]^2, e[1] = 0}" height="51" src="/view.aspx?sf=234960_post/78eacbedae1ccaa609887884463ee70f.gif" style="vertical-align:-16px" width="113"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="x^4+x^2*e[2]+(1/4)*e[2]^2" height="42" src="/view.aspx?sf=234960_post/31906608418446d0bf30c487eac578bb.gif" style="vertical-align:-16px" width="158"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[(1/2)*(-2*e[2])^(1/2), -(1/2)*(-2*e[2])^(1/2), (1/2)*(-2*e[2])^(1/2), -(1/2)*(-2*e[2])^(1/2)]" height="51" src="/view.aspx?sf=234960_post/67e6bcb95aa5d9935f98f3617a4177cc.gif" style="vertical-align:-16px" width="349"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;We saw this before when e[2]&amp;lt;0 as case (f) with real roots of multiplicity 2. Now, for e[2]&amp;gt;0 we indeed have two duplicate pairs of complex conjugate roots&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="`assuming`([simplify(rts2)], [e[2] &amp;gt; 0])" height="23" src="/view.aspx?sf=234960_post/71aa1036730845cc000fad30662b89da.gif" style="vertical-align:-6px" width="213"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[((1/2)*I)*2^(1/2)*e[2]^(1/2), -((1/2)*I)*2^(1/2)*e[2]^(1/2), ((1/2)*I)*2^(1/2)*e[2]^(1/2), -((1/2)*I)*2^(1/2)*e[2]^(1/2)]" height="42" src="/view.aspx?sf=234960_post/2f5a95504b8d0634ff45b527e98f7c5a.gif" style="vertical-align:-16px" width="368"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Consider the first case&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="case1 := Info(cmplx[2][1], R)[1]" height="23" src="/view.aspx?sf=234960_post/8be25e3470c1523e474fda73c1fb17e7.gif" style="vertical-align:-6px" width="222"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[[12*e[0]+e[2]^2, 27*e[1]^2+8*e[2]^3], [e[2]]]" height="32" src="/view.aspx?sf=234960_post/3a8c31e15392ba93568255c87f042bc4.gif" style="vertical-align:-11px" width="265"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="ans1 := {solve(case1[1], {e[0], e[1]}, explicit)}; q11 := eval(p, ans1[1]); rts11 := [solve(%, x, explicit)]" height="57" src="/view.aspx?sf=234960_post/088b67eda5eabf508713149cfb382929.gif" style="vertical-align:-40px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="{{e[0] = -(1/12)*e[2]^2, e[1] = -(2/9)*(-6*e[2])^(1/2)*e[2]}, {e[0] = -(1/12)*e[2]^2, e[1] = (2/9)*(-6*e[2])^(1/2)*e[2]}}" height="51" src="/view.aspx?sf=234960_post/0ddfcec210d54d560fad0c670ab2f1d8.gif" style="vertical-align:-16px" width="488"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="x^4+x^2*e[2]-(2/9)*x*(-6*e[2])^(1/2)*e[2]-(1/12)*e[2]^2" height="51" src="/view.aspx?sf=234960_post/dd24909c65c28a83ed3e1e9ae2c01307.gif" style="vertical-align:-16px" width="272"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[(1/6)*(-6*e[2])^(1/2), (1/6)*(-6*e[2])^(1/2), (1/6)*(-6*e[2])^(1/2), -(1/2)*(-6*e[2])^(1/2)]" height="51" src="/view.aspx?sf=234960_post/eb12d2b88f05552d2388d47b6f422d4a.gif" style="vertical-align:-16px" width="346"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;The rts11 subcase polynomial q11 must have real coefficients and therefore only applies for e[2]&amp;lt;0. The roots are real with multiplicity 3 and multiplicity 1 and this case is just case (g) above. The rts12 subcase polynomial q12 (below) also requires e[2]&amp;lt;0 and corresponds to case (g), but with signs reversed.&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img align="middle" alt="q12 := eval(p, ans1[2]); rts12 := [solve(%, x, explicit)]" height="40" src="/view.aspx?sf=234960_post/1fccb6be88f2c0d3deed8f972bbdfb19.gif" style="vertical-align:-23px" width="744"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="x^4+x^2*e[2]+(2/9)*x*(-6*e[2])^(1/2)*e[2]-(1/12)*e[2]^2" height="51" src="/view.aspx?sf=234960_post/c7d2d174c9e98fdf21fa3ec9e7b476d3.gif" style="vertical-align:-16px" width="272"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="[(1/2)*(-6*e[2])^(1/2), -(1/6)*(-6*e[2])^(1/2), -(1/6)*(-6*e[2])^(1/2), -(1/6)*(-6*e[2])^(1/2)]" height="51" src="/view.aspx?sf=234960_post/c10070702be1db529473aa190fd6f70e.gif" style="vertical-align:-16px" width="366"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#000000;font-size: 91%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Therefore the rts2 case is the solution for case (a); the cell37 example was a special case of this. In fact if we have a duplicate pair of complex-conjugate roots, the polynomial must be a pefect square, as we see it is&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

						&lt;table style="margin-left:0px;margin-right:0px"&gt;
							&lt;tbody&gt;
								&lt;tr valign="baseline"&gt;
									&lt;td&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
									&lt;td&gt;
									&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="factor(q1)" height="23" src="/view.aspx?sf=234960_post/ab75e2e9a999267948219a199d313354.gif" style="vertical-align:-6px" width="78"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
									&lt;/td&gt;
								&lt;/tr&gt;
							&lt;/tbody&gt;
						&lt;/table&gt;

						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span name="section831"&gt;&lt;span name="section831_body"&gt;&lt;img alt="(1/4)*(2*x^2+e[2])^2" height="55" src="/view.aspx?sf=234960_post/d9f86f670d0600f7bab85f5aead5a6f5.gif" style="vertical-align:-16px" width="92"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;img alt="NULL" height="23" src="/view.aspx?sf=234960_post/12cd0407ea7d1974f828aeeae04338cd.gif" style="vertical-align:-6px" width="9"&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;input name="sequence" type="hidden" value="1"&gt; &lt;input name="cmd" type="hidden" value="none"&gt;&lt;/form&gt;

&lt;p&gt;&lt;a href="/view.aspx?sf=234960_post/RootAnalysis5.mw"&gt;Download RootAnalysis5.mw&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
      <guid>234960</guid>
      <pubDate>Tue, 09 Jun 2026 00:51:19 Z</pubDate>
      <itunes:author>dharr</itunes:author>
      <author>dharr</author>
    </item>
    <item>
      <title>ExaktAI: AI Mathematics with Validation and Human-in-the-Loop</title>
      <link>http://www.mapleprimes.com/posts/234886-ExaktAI-AI-Mathematics-With-Validation?ref=Feed:MaplePrimes:New Posts</link>
      <itunes:summary>&lt;p&gt;A note on what I&amp;#39;ve been working on for the past while. Some of you may have seen the &lt;a href="https://www.linkedin.com/posts/edgardo-cheb-terrab-b7970916_ive-spent-28-years-at-maplesoft-on-one-question-activity-7464761800597831681-DCQK/"&gt;announcement on LinkedIn&lt;/a&gt; yesterday; this is for the home audience.&lt;/p&gt;

&lt;p&gt;The question I&amp;#39;ve been chasing is the one that&amp;#39;s underneath the Physics package, the dsolve / pdsolve formal methods and heuristics, the advanced Mathematical Functions and FunctionAdvisor, and most of what I&amp;#39;ve written for Maple over the years. How can mathematicians and physicists speed up significantly their work using Computer Algebra Systems (CAS) and at the same time&amp;nbsp;&lt;em&gt;trust&lt;/em&gt;&amp;nbsp;the result a computer hands back? The new chapter is what happens when AI sits between the human and the CAS, and the answer to that, in my view, turns out to be a much harder problem than the AI hype suggests.&lt;br&gt;
&lt;br&gt;
Why? Because AI is increasingly &lt;a href="https://exaktai.ai/vision"&gt;the driver of computational mathematics&lt;/a&gt; in research, engineering, and education. And the unsolved problem isn&amp;#39;t whether AI can do mathematics. It can. The problem is that &lt;a href="https://exaktai.ai/ai-math-reliability"&gt;an incorrect AI result &lt;/a&gt;arrives with the same confidence as a correct one.&lt;br&gt;
&lt;br&gt;
On &lt;a href="https://exaktai.ai/100-problems"&gt;100 challenging problems of undergraduate mathematics&lt;/a&gt; we tested, six independent state-of-the-art AIs returned mathematically equivalent answers on only 21% of them, and even within a single AI, repeated runs disagreed with themselves on 3% to 57% of the problems (&lt;a href="https://exaktai.ai/ai-math-reliability"&gt;details&lt;/a&gt;). The gap this validation crosses, between probabilistic inference and certified mathematical computation,&lt;a href="https://exaktai.ai/validated-means"&gt; is epistemological, not technological&lt;/a&gt;. It won&amp;#39;t close with more training data. It needs validation across multiple AIs and multiple CAS, with no single engine having the final word.&lt;br&gt;
&lt;br&gt;
&lt;a href="https://exaktai.ai"&gt;ExaktAI&lt;/a&gt;&amp;nbsp;aims to address that gap. &lt;a href="http://exaktai.ai/aii"&gt;It guides AI through mathematical computation&lt;/a&gt;, validates each step against Maple and Mathematica, and automatically generates and opens a corresponding CAS document where the validation can be audited and reproduced for every step, and where one can continue working on the problem. The goal: AI-mathematics that is validated,&amp;nbsp;with the human in the loop.&lt;br&gt;
&lt;br&gt;
ExaktAI is now well developed (TRL 6: System prototype demonstration in a simulated environment, on the ISED / Innovative Solutions Canada TRL scale). At the end an image. A Beta is scheduled for late summer / fall 2026; details at&amp;nbsp;&lt;a href="http://exaktai.ai/"&gt;exaktai.ai&lt;/a&gt;.&lt;br&gt;
&lt;br&gt;
In summary: ExaktAI is my present, and if you work on AI for mathematics and computer algebra, or the validation problem for AI, I&amp;#39;d love to hear your perspective.&lt;br&gt;
&lt;br&gt;
&lt;img src="/view.aspx?sf=234886_post/Screenshot_2026-05-27_at_17.27.54.png"&gt;&lt;br&gt;
&lt;br&gt;
Edgardo S. Cheb-Terrab&lt;br&gt;
&lt;a href="https://exaktai.ai"&gt;ExaktAI&lt;/a&gt;&lt;br&gt;
Research Fellow Emeritus at Maplesoft.&lt;/p&gt;
</itunes:summary>
      <description>&lt;p&gt;A note on what I&amp;#39;ve been working on for the past while. Some of you may have seen the &lt;a href="https://www.linkedin.com/posts/edgardo-cheb-terrab-b7970916_ive-spent-28-years-at-maplesoft-on-one-question-activity-7464761800597831681-DCQK/"&gt;announcement on LinkedIn&lt;/a&gt; yesterday; this is for the home audience.&lt;/p&gt;

&lt;p&gt;The question I&amp;#39;ve been chasing is the one that&amp;#39;s underneath the Physics package, the dsolve / pdsolve formal methods and heuristics, the advanced Mathematical Functions and FunctionAdvisor, and most of what I&amp;#39;ve written for Maple over the years. How can mathematicians and physicists speed up significantly their work using Computer Algebra Systems (CAS) and at the same time&amp;nbsp;&lt;em&gt;trust&lt;/em&gt;&amp;nbsp;the result a computer hands back? The new chapter is what happens when AI sits between the human and the CAS, and the answer to that, in my view, turns out to be a much harder problem than the AI hype suggests.&lt;br&gt;
&lt;br&gt;
Why? Because AI is increasingly &lt;a href="https://exaktai.ai/vision"&gt;the driver of computational mathematics&lt;/a&gt; in research, engineering, and education. And the unsolved problem isn&amp;#39;t whether AI can do mathematics. It can. The problem is that &lt;a href="https://exaktai.ai/ai-math-reliability"&gt;an incorrect AI result &lt;/a&gt;arrives with the same confidence as a correct one.&lt;br&gt;
&lt;br&gt;
On &lt;a href="https://exaktai.ai/100-problems"&gt;100 challenging problems of undergraduate mathematics&lt;/a&gt; we tested, six independent state-of-the-art AIs returned mathematically equivalent answers on only 21% of them, and even within a single AI, repeated runs disagreed with themselves on 3% to 57% of the problems (&lt;a href="https://exaktai.ai/ai-math-reliability"&gt;details&lt;/a&gt;). The gap this validation crosses, between probabilistic inference and certified mathematical computation,&lt;a href="https://exaktai.ai/validated-means"&gt; is epistemological, not technological&lt;/a&gt;. It won&amp;#39;t close with more training data. It needs validation across multiple AIs and multiple CAS, with no single engine having the final word.&lt;br&gt;
&lt;br&gt;
&lt;a href="https://exaktai.ai"&gt;ExaktAI&lt;/a&gt;&amp;nbsp;aims to address that gap. &lt;a href="http://exaktai.ai/aii"&gt;It guides AI through mathematical computation&lt;/a&gt;, validates each step against Maple and Mathematica, and automatically generates and opens a corresponding CAS document where the validation can be audited and reproduced for every step, and where one can continue working on the problem. The goal: AI-mathematics that is validated,&amp;nbsp;with the human in the loop.&lt;br&gt;
&lt;br&gt;
ExaktAI is now well developed (TRL 6: System prototype demonstration in a simulated environment, on the ISED / Innovative Solutions Canada TRL scale). At the end an image. A Beta is scheduled for late summer / fall 2026; details at&amp;nbsp;&lt;a data-test-app-aware-link="" href="http://exaktai.ai/" tabindex="0" target="_self"&gt;exaktai.ai&lt;/a&gt;.&lt;br&gt;
&lt;br&gt;
In summary: ExaktAI is my present, and if you work on AI for mathematics and computer algebra, or the validation problem for AI, I&amp;#39;d love to hear your perspective.&lt;br&gt;
&lt;br&gt;
&lt;img src="/view.aspx?sf=234886_post/Screenshot_2026-05-27_at_17.27.54.png"&gt;&lt;br&gt;
&lt;br&gt;
Edgardo S. Cheb-Terrab&lt;br&gt;
&lt;a href="https://exaktai.ai"&gt;ExaktAI&lt;/a&gt;&lt;br&gt;
Research Fellow Emeritus at Maplesoft.&lt;/p&gt;
</description>
      <guid>234886</guid>
      <pubDate>Thu, 28 May 2026 00:30:25 Z</pubDate>
      <itunes:author>ecterrab</itunes:author>
      <author>ecterrab</author>
    </item>
    <item>
      <title>Tribonacci numbers</title>
      <link>http://www.mapleprimes.com/posts/234847-Tribonacci-Numbers?ref=Feed:MaplePrimes:New Posts</link>
      <itunes:summary>&lt;p&gt;Hi MaplePrimes, and all,&lt;/p&gt;

&lt;p&gt;Here is a new, to me, set of numbers&lt;br&gt;
defined by ,&lt;br&gt;
the first three numbers are {1,2,3}&lt;br&gt;
and then,&amp;nbsp;&lt;br&gt;
the next number is the sum of the three&amp;nbsp;&lt;br&gt;
previous numbers,&lt;br&gt;
so,&lt;br&gt;
{1,2,3,6,11,20, ... }&lt;br&gt;
but can only calculate a finite number of numbers&lt;br&gt;
the, so called, Tribonacci numbers&lt;br&gt;
could start with {0,1,0}&lt;br&gt;
see online&lt;br&gt;
&lt;a href="https://oeis.org/A001590"&gt;https://oeis.org/A001590&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and&lt;br&gt;
&lt;a href="/view.aspx?sf=234847_post/triple_recursive_sequence_simple_first.mw"&gt;triple_recursive_sequence_simple_first.mw&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="/view.aspx?sf=234847_post/triple_recursive_sequence_simple_first.pdf"&gt;triple_recursive_sequence_simple_first.pdf&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;regards,&lt;br&gt;
Matt&lt;br&gt;
&amp;nbsp;&lt;/p&gt;
</itunes:summary>
      <description>&lt;p&gt;Hi MaplePrimes, and all,&lt;/p&gt;

&lt;p&gt;Here is a new, to me, set of numbers&lt;br&gt;
defined by ,&lt;br&gt;
the first three numbers are {1,2,3}&lt;br&gt;
and then,&amp;nbsp;&lt;br&gt;
the next number is the sum of the three&amp;nbsp;&lt;br&gt;
previous numbers,&lt;br&gt;
so,&lt;br&gt;
{1,2,3,6,11,20, ... }&lt;br&gt;
but can only calculate a finite number of numbers&lt;br&gt;
the, so called, Tribonacci numbers&lt;br&gt;
could start with {0,1,0}&lt;br&gt;
see online&lt;br&gt;
&lt;a href="https://oeis.org/A001590"&gt;https://oeis.org/A001590&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and&lt;br&gt;
&lt;a href="/view.aspx?sf=234847_post/triple_recursive_sequence_simple_first.mw"&gt;triple_recursive_sequence_simple_first.mw&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="/view.aspx?sf=234847_post/triple_recursive_sequence_simple_first.pdf"&gt;triple_recursive_sequence_simple_first.pdf&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;regards,&lt;br&gt;
Matt&lt;br&gt;
&amp;nbsp;&lt;/p&gt;
</description>
      <guid>234847</guid>
      <pubDate>Tue, 19 May 2026 20:35:22 Z</pubDate>
      <itunes:author>Mister_Matthew_abc</itunes:author>
      <author>Mister_Matthew_abc</author>
    </item>
  </channel>
</rss>