/*
* Computer Algebra Kit (c) 1995,98,99 by David Stes. All Rights Reserved.
* $Id: dmonomc.h,v 1.6 2000/10/12 14:40:25 stes Exp $
*/
/*
* This library is free software; you can redistribute it and/or modify it
* under the terms of the GNU Library General Public License as published
* by the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
#ifndef __vardns_monomial_header__
#define __vardns_monomial_header__
#include "monomc.h"
typedef int *vardnsmonom_t;
typedef int vardnsmonom_c; /* kind of fishy */
typedef struct
{
int nvars;
/* could add 'order' etc in the future */
}
vardnsmonom_args;
#define vardnsmonom_isvalue 0
#define vardnsmonom_pervalue 0
typedef vardnsmonom_t vardns_t;
typedef vardnsmonom_t vardns_c;
typedef vardnsmonom_args vardns_args;
#define vardns_isvalue 0
#define vardns_pervalue 1
typedef struct vardns_ix
{
int i;
int n;
}
*vardns_ixt;
@interface vardns_monomial : monomialc
{
id termOne;
id symbols;
vardns_c value;
}
- check;
- _setUpScalarOne:aOne symbols:aCltn;
+ scalarOne:aOne symbols:aCltn;
- copy;
- deepCopy;
- release;
- empty;
- (vardns_t) vardns_value;
- dovardns_value:(vardns_t)aValue;
- vardns_value:(vardns_t)aValue;
- (vardns_c *) vardns_reference;
- dovardns_reference:(vardns_c *)aReference;
- vardns_reference:(vardns_c *)aReference;
- (vardnsmonom_t) vardnsmonom_value;
- dovardnsmonom_value:(vardnsmonom_t)aValue;
- vardnsmonom_value:(vardnsmonom_t)aValue;
- (vardnsmonom_c *) vardnsmonom_reference;
- vardnsmonom_reference:(vardnsmonom_c *)aReference;
- (BOOL) sameClass:b;
- (int) numTerms;
- (BOOL) isEmpty;
- (BOOL) isOne;
- (int) compare:b;
- (BOOL) isEqual:b;
- (unsigned) hash;
- eachTerm;
- elt_vardns_ix:(vardns_ixt)ix;
- removeTerm;
- insertTerm:aTerm;
- fileOutOn:aFiler;
- fileInFrom:aFiler;
@end
#endif /* __vardns_monomial_header__ */
syntax highlighted by Code2HTML, v. 0.9.1