================================================================ Logtalk - Open source object-oriented logic programming language Release 2.30.7 Copyright (c) 1998-2007 Paulo Moura. All Rights Reserved. ================================================================ % start by loading the loading the example: | ?- logtalk_load(functions(loader)). ... % find the roots of some functions using each one of provided methods: | ?- bisection::find_root(f1, 1.0, 2.3, 1.0e-15, Zero). Zero = 2.0 yes | ?- newton::find_root(f1, 1.0, 2.3, 1.0e-15, Zero). Zero = 2.0 yes | ?- muller::find_root(f1, 1.0, 2.3, 1.0e-15, Zero). Zero = 2.0 yes | ?- bisection::find_root(f2, 1.0, 1.3, 1.0e-15, Zero). Zero = 1.25809265664599 yes | ?- newton::find_root(f2, 1.0, 1.3, 1.0e-15, Zero). Zero = 1.25809265664599 yes | ?- muller::find_root(f2, 1.0, 1.3, 1.0e-15, Zero). Zero = 1.25809265664599 yes % find the roots of some functions running all methods at once using multi-threading: | ?- function_root::find_root(f1, 1.0, 2.3, 1.0e-15, Zero, Method). Zero = 2.0 Method = bisection yes | ?- function_root::find_root(f2, 1.0, 1.3, 1.0e-15, Zero, Method). Zero = 1.25809265664599 Method = newton yes | ?- function_root::find_root(f3, 0.0, 3.0, 1.0e-15, Zero, Method). Zero = 1.4142135623731 Method = newton yes | ?- function_root::find_root(f4, -1.0, 2.0, 1.0e-15, Zero, Method). Zero = -8.88178419700125e-16 Method = bisection yes