Gröbner basis project
Codebase for research into Gröbner basis computation

an edge \((r_1,r_2)\) connecting the two rays \( r_1 \) and \( r_2 \) More...

#include <skeleton.hpp>

Public Member Functions

Construction
 edge (const ray &, const ray &)
 Creates a new edge that joins the two rays.
 
 edge (const edge &)
 Copies the rays in other to two new rays.
 
Destruction
 ~edge ()
 
Basic properties
ray get_first_ray () const
 Returns the first ray listed in this edge.
 
ray get_second_ray () const
 Returns the second ray listed in this edge.
 
Modification
edgeoperator= (const edge &)
 Assignment operator.
 

Friends

Comparison
bool operator== (const edge &e1, const edge &e2)
 Equal if and only if the first and second rays are true. More...
 
bool operator< (const edge &, const edge &)
 Compares two edges lexicographically. More...
 
I/O
ostream & operator<< (ostream &, const edge &)
 Output has the form \( \{ \mathbf{r}_1, \mathbf{r}_2 \} \) where \( \mathbf{r}_1 \) is the first ray in this edge, etc.
 

Detailed Description

an edge \((r_1,r_2)\) connecting the two rays \( r_1 \) and \( r_2 \)

Author
John Perry
Version
1.0
Date
October 2014

This class encapsulates an edge, the other major part of a skeleton. Edges describe how the rays of the skeleton are connected. Edges are ordered, so that the smaller ray always comes first.

Warning
An edge's rays should have the same dimension. To start with, it doesn't make mathematical sense to “join” two rays of different dimension. Moreover, comparison of edges requires comparison of rays,which requires that the rays have the same dimension. (But you wouldn't be dumb enough to do this in the first place.)

Definition at line 41 of file skeleton.hpp.

Constructor & Destructor Documentation

◆ ~edge()

edge::~edge ( )
inline

Does nothing beyond what the compiler would do.

Definition at line 59 of file skeleton.hpp.

Friends And Related Function Documentation

◆ operator<

bool operator< ( const edge first,
const edge second 
)
friend

Compares two edges lexicographically.

If the first ray in this edge is smaller, then this edge is smaller. Otherwise, if the first rays are equal, and the second ray in this edge is smaller, then this edge is smaller.

Definition at line 41 of file skeleton.cpp.

◆ operator==

bool operator== ( const edge e1,
const edge e2 
)
friend

Equal if and only if the first and second rays are true.

(We can restrict ourselves to this because we have ordered the rays.)

Definition at line 82 of file skeleton.hpp.


The documentation for this class was generated from the following files: