Difference between revisions of "ProveDetails Command"
From GeoGebra Manual
(Some enhancements according to the newest improvements in GeoGebra) |
|||
Line 1: | Line 1: | ||
− | <noinclude>{{Manual Page|version=5.0}}</noinclude>{{betamanual|version=5.0}} | + | <noinclude>{{Manual Page|version=5.0}}</noinclude>{{command|logical}}{{betamanual|version=5.0}} |
− | + | ||
{{warning|This GeoGebra command is heavily under construction. Expect to encounter various problems when trying it out. The syntax or the output of this command may be subject to change.}} | {{warning|This GeoGebra command is heavily under construction. Expect to encounter various problems when trying it out. The syntax or the output of this command may be subject to change.}} | ||
;ProveDetails[ <Boolean Expression> ]: Returns some details of the result of the automated proof. | ;ProveDetails[ <Boolean Expression> ]: Returns some details of the result of the automated proof. | ||
Line 10: | Line 10: | ||
* A list with more elements, containing the boolean value ''true'' and another list for some so-called ''non-degeneracy conditions'', if the statement is true under certain conditions, e.g. {true, {"AreCollinear[A,B,C],AreEqual[C,D]"}}. This means that if none of the conditions are true, then the statement will be true. | * A list with more elements, containing the boolean value ''true'' and another list for some so-called ''non-degeneracy conditions'', if the statement is true under certain conditions, e.g. {true, {"AreCollinear[A,B,C],AreEqual[C,D]"}}. This means that if none of the conditions are true, then the statement will be true. | ||
* A list '''{true,{"..."}}''', if the statement is true under certain conditions, but these conditions cannot be translated to human readable form for some reasons. | * A list '''{true,{"..."}}''', if the statement is true under certain conditions, but these conditions cannot be translated to human readable form for some reasons. | ||
− | {{example| 1=<div>Let us define a triangle with vertices ''A'', ''B'' and ''C'', and define <code><nowiki>D=MidPoint[B,C]</nowiki></code>, <code><nowiki>E=MidPoint[A,C]</nowiki></code>, <code><nowiki>p=Line[A,B]</nowiki></code>, <code><nowiki>q=Line[D,E]</nowiki></code>. Now if <code><nowiki>ProveDetails[p∥q]</nowiki></code> returns <nowiki>{true,{"AreEqual[A,B]"}}</nowiki>, it means that if the points ''A'' and ''B'' differ, then the midline ''DE'' of the triangle is parallel to the side ''AB''.</div>}} | + | :{{example| 1=<div>Let us define a triangle with vertices ''A'', ''B'' and ''C'', and define <code><nowiki>D=MidPoint[B,C]</nowiki></code>, <code><nowiki>E=MidPoint[A,C]</nowiki></code>, <code><nowiki>p=Line[A,B]</nowiki></code>, <code><nowiki>q=Line[D,E]</nowiki></code>. Now if <code><nowiki>ProveDetails[p∥q]</nowiki></code> returns <nowiki>{true,{"AreEqual[A,B]"}}</nowiki>, it means that if the points ''A'' and ''B'' differ, then the midline ''DE'' of the triangle is parallel to the side ''AB''.</div>}} |
It is possible that the list of the non-degeneracy conditions is not the simplest possible set. For the above example, the simplest set would be the empty set. | It is possible that the list of the non-degeneracy conditions is not the simplest possible set. For the above example, the simplest set would be the empty set. | ||
{{Note| See also [[Prove Command|Prove]] command, [[Boolean values|Boolean values]] and [http://dev.geogebra.org/trac/wiki/TheoremProving technical details of the algorithms].}} | {{Note| See also [[Prove Command|Prove]] command, [[Boolean values|Boolean values]] and [http://dev.geogebra.org/trac/wiki/TheoremProving technical details of the algorithms].}} |
Revision as of 12:29, 22 July 2014
This page is about a feature that is supported only in GeoGebra 5.0. |
Warning: | This GeoGebra command is heavily under construction. Expect to encounter various problems when trying it out. The syntax or the output of this command may be subject to change. |
- ProveDetails[ <Boolean Expression> ]
- Returns some details of the result of the automated proof.
Normally, GeoGebra decides whether a boolean expression is true or not by using numerical computations. However, the ProveDetails command uses symbolic methods to determine whether a statement is true or false in general. This command works like the Prove command, but also returns some details of the result as a list:
- An empty list {} if GeoGebra cannot determine the answer.
- A list with one element: {false}, if the statement is not true in general.
- A list with one element: {true}, if the statement is always true.
- A list with more elements, containing the boolean value true and another list for some so-called non-degeneracy conditions, if the statement is true under certain conditions, e.g. {true, {"AreCollinear[A,B,C],AreEqual[C,D]"}}. This means that if none of the conditions are true, then the statement will be true.
- A list {true,{"..."}}, if the statement is true under certain conditions, but these conditions cannot be translated to human readable form for some reasons.
- Example:Let us define a triangle with vertices A, B and C, and define
D=MidPoint[B,C]
,E=MidPoint[A,C]
,p=Line[A,B]
,q=Line[D,E]
. Now ifProveDetails[p∥q]
returns {true,{"AreEqual[A,B]"}}, it means that if the points A and B differ, then the midline DE of the triangle is parallel to the side AB.
It is possible that the list of the non-degeneracy conditions is not the simplest possible set. For the above example, the simplest set would be the empty set.
Note: See also Prove command, Boolean values and technical details of the algorithms.