Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
322f3f8
Reorganize test build logic and enhance InFixSerializer
matthew-mccall Jan 31, 2025
7ee1db8
test cases of the polynomial
richcfno1 Feb 1, 2025
ea4ae22
commit test
richcfno1 Feb 7, 2025
1881033
Merge branch 'refs/heads/io-in-core-tests' into polynomial
richcfno1 Feb 7, 2025
8cf2495
now it can correctly handle expression like x^2 - n, where sqrt(n) is…
richcfno1 Feb 7, 2025
db2ad43
linear and quadratic
lius24 Feb 15, 2025
e0c17c4
rational quadratic done, start on cubics
lius24 Feb 21, 2025
c2bcbe2
Cubic with fraction or perfect number solutions
lius24 Feb 25, 2025
410d5b4
Merge remote-tracking branch 'refs/remotes/up_stream/master' into pol…
lius24 Feb 25, 2025
5966670
Cubic with fraction or perfect number solutions
lius24 Feb 25, 2025
8588ce6
removed couts
lius24 Feb 25, 2025
cea7dea
clang format
lius24 Feb 25, 2025
dea85cf
[Actions] Format CMakeLists.txt
invalid-email-address Feb 25, 2025
58817d4
Trigger workflow
lius24 Feb 25, 2025
462f795
clang format
lius24 Feb 25, 2025
3399729
CMAKE_ON_LINUX check
lius24 Feb 25, 2025
1fe0105
CMAKE_ON_LINUX check
lius24 Mar 14, 2025
d9780be
CMAKE_ON_WINDOWS check
lius24 Mar 14, 2025
47252d2
simple quartic non-irrational
lius24 Mar 14, 2025
d92c126
simple quartic non-irrational, clang format new code
lius24 Mar 14, 2025
0e6098c
variable number check bug fixed, and working on return an expression …
lius24 Mar 22, 2025
8dc26be
Cubic and quadratic can deal return the results in term of an express…
lius24 Mar 29, 2025
2b1619c
Quartic complex expression roots
lius24 Apr 4, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion include/Oasis/Expression.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -86,12 +86,19 @@ class Expression {
*/
[[nodiscard]] virtual auto Equals(const Expression& other) const -> bool = 0;

/**
* The FindExpressionRoots function; a helper function used in Findzeros; finds the root in terms of expression like a +- x/b
*
* @tparam origonalExpresion The expression for which all the factors will be found.
*/
auto FindExpressionRoots(const std::vector<std::unique_ptr<Expression>>& coefficients)
-> std::vector<std::unique_ptr<Expression>>;
/**
* The FindZeros function finds all rational real zeros, and up to 2 irrational/complex zeros of a polynomial. Currently assumes an expression of the form a+bx+cx^2+dx^3+... where a, b, c, d are a integers.
*
* @tparam origonalExpresion The expression for which all the factors will be found.
*/
auto FindZeros() const -> std::vector<std::unique_ptr<Expression>>;
auto FindZeros() const -> std::expected< std::vector<std::unique_ptr<Expression>>, std::string>;

/**
* Gets the category of this expression.
Expand Down
Loading
Loading