geogebra-discovery

GeoGebra Discovery is an experimental version of GeoGebra. It contains some bleeding edge features of GeoGebra that are under heavy development and therefore not intended for every day use yet, so they are not included in the official GeoGebra version. Also, in some cases, there is no consensus on whether to include certain elements in GeoGebra or to leave them out (for example, because they are too specific for a particular audience).

We maintain a feature list. Some features are considered unstable, but many of them are mature and ready to try by anyone, and technically close to be able to being integrated into GeoGebra shortly. It is planned that each feature, after made stable, will be added to the official version of GeoGebra as well, but the GeoGebra Team may decide to leave some features out for technical, practical or didactical reasons. Anyway, we are doing our best and are open for discussion.

Technically speaking, GeoGebra Discovery is based on the freely available GitHub sources of GeoGebra which is maintained by the GeoGebra Team. We maintain a fork for revision control of the extensions. In addition, this web page has the following purposes:

Download a stable release

Desktop version (Discovery 5)

End users may want to download one of the most recent releases. Then:

For Linux users, the simplest way is to get GeoGebra Discovery from the Snap Store:

Get it from the Snap Store

Web version (Discovery 6)

The web version is available online at autogeo.online and usually updated on every new release. This version can be downloaded and run offline as well at autgeo.online/off.

Try the latest unstable version: Prerequisites, compilation, running and deployment

This section can be technically challenging. If you are not familiar with program development, it is safer to use a stable release (see above).

build

You may decide to compile GeoGebra Discovery on your own.

If you do so, you will need a typical Linux, Mac or Windows system to make the software work. The provided scripts were tested on Ubuntu Linux 20.04 and above (64-bit), and partially on Raspbian Buster (both Raspberry Pi 3 and 4 should work, however you need at least 2 GB of memory for compilation). The latest versions also work on Mac OS 11 Big Sur, see the required steps below. Finally, you can use Windows 10 as well to compile and run GeoGebra Discovery.

Discovery 5

The current version automatically downloads a release version of Tarski 1.37. In addition, the RealGeom system will be built, but not packaged or used, only when it is requested by the user (or, if the platform is the Raspberry Pi system). See below the detailed instructions.

Steps to build GeoGebra Discovery on Linux

These steps were tested on Ubuntu, and they may not work on other Linux systems.

Steps to build GeoGebra Discovery on macOS

Steps to build GeoGebra Discovery on Windows 10

On Windows we support both 64 and 32-bit builds. However, 32-bit builds are considered experimental.

Force running realgeom

This feature is disabled by default on all system, except on a Raspberry Pi. You may want to use realgeom if you intend to outsource the real geometry computations to Mathematica. These are the steps you need to achieve this:

Discovery 6

Authors

GeoGebra is written by its authors.

License

See GeoGebra’s licensing policy for general information on licensing GeoGebra. Since the developer team of GeoGebra Discovery does not provide any commercial support, all extensions (including artwork, translations) to GeoGebra are provided “as is”. In particular, extensions to the source code are licensed to you under the terms of the GNU General Public License (version 3 or later) as published by the Free Software Foundation, the current text of which can be found via this link: https://www.gnu.org/licenses/gpl.html (“GPL”). Attribution (as required by the GPL) should take the form of (at least) a mention of this project page of GeoGebra Discovery.

Mailing list

A public list is available at Google Groups.

Feature matrix

New features

This table is ordered by maturity.

Feature GeoGebra GeoGebra Discovery Next step
Discover tool/command no yes approved Scheduled for merging into GeoGebra
Stepwise discovery no yes approve GeoGebra Team: approve/update
Compare command no yes approve GeoGebra Team: approve/update
Proving inequalities no yes approve GeoGebra Team: approve/update
RealQuantifierElimination command no yes approve GeoGebra Team: approve/update
Prenex formulas no yes approve GeoGebra Team: approve/update
IncircleCenter command no yes (with prover support) approve GeoGebra Team: approve (discuss Center(Incircle) first)
Incircle tool no yes approve GeoGebra Team: approve/update
IncircleCenter tool no yes approve GeoGebra Team: approve/update
LocusEquation tool no yes approve GeoGebra Team: approve/update
Dilate command only numerical with prover support approve GeoGebra Team: approve/update
Envelope tool no yes approve GeoGebra Team: approve/update
Raspberry Pi 3D View no yes approve GeoGebra Team: approve/update
Giac: threads on Linux no yes approve GeoGebra Team: approve/update
Same color for circles with the same radius no yes approve GeoGebra Team: approve/update
Plotting logical connectives of inequalities partial full approve GeoGebra Team: approve/update
Plot2D command no yes approve GeoGebra Team: approve/update
ShowProof command no yes work in progress Add some missing descriptions
Export CAS View no HTML, Mathematica, Maple and Giac work in progress Perform general testing
Export Construction Protocol as LaTeX no prototype prototype Implement CAS/Spreadsheet view, add web implementation
ApplyMap command no prototype prototype Fix bugs and make improvements
Automatic LaTeX captions no prototype prototype Add support for the web version

Features that have already been merged

Feature GeoGebra version Date
Java OpenGL 2.5 support 5.2 September 2023
Fast symbolic angle bisectors (prover) 5.0.641.0 May 2021
Algebraic curves as inputs in locus computations 5.0.641.0 May 2021
Incircle (prover support) 5.0.641.0 May 2021

Technical documentation

We maintain a technical documentation to keep some programming related details up-to-date in order to help a possible merge of the two codebases.

Bugs

The database of issues is available at YouTrack.

Benchmarks

The benchmarking system collects results and speed related information on a daily basis for the Prove, ProveDetails, LocusEquation, Envelope and Compare commands.

Latest outputs

All outputs

References

Discover command

Relation command

Prove/ProveDetails commands

Compare command

RealQuantifierElimination command

ShowProof command

Plot2D command

LocusEquation command

Envelope command