Newclid

Newclid geometric symbolic solver package

class GeometricSolver(proof, rules, deductive_agent)

Bases: object

External API for solving a geometric problem.

animate(jgex_problem=None, theme=None)
Return type:

FuncAnimation

draw_figure(*, out_file=None, jgex_problem, theme=None)
Return type:

tuple[Figure, Axes]

proof(goals_constructions=None)
Return type:

str

run()
Return type:

bool

write_all_outputs(out_folder_path, jgex_problem)
class GeometricSolverBuilder(rng=None, api_default=None)

Bases: object

Main entry point for building a geometric solver.

Adding or removing methods should be done with care as it represents the external API and should be stable.

build(problem_setup)

Build a geometric solver with the current configuration on the given problem setup.

Return type:

GeometricSolver

with_deductive_agent(deductive_agent)
Return type:

Self

with_deductors(deductors)
Return type:

Self

with_rule_matcher(rule_matcher)
Return type:

Self

with_rules(rules)
Return type:

Self

with_rules_from_file(rules_path)
Return type:

Self