Drexel dragonThe Math ForumDonate to the Math Forum



Search All of the Math Forum:

Views expressed in these public forums are not endorsed by Drexel University or The Math Forum.


Math Forum » Discussions » Software » comp.soft-sys.math.mathematica

Topic: Re: [mg5345] Argument types
Replies: 0  

Advanced Search

Back to Topic List Back to Topic List  
Allan Hayes

Posts: 1,508
Registered: 12/6/04
Re: [mg5345] Argument types
Posted: Dec 1, 1996 11:25 PM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

From: Olivier Georg <olivier.georg@studi.epfl.ch>
Subject: [mg5345] Argument types

> I recently discovered that you could specify the type of the
> arguments of a function being defined. For example, f[x_Integer]
> if you want x to be an integer. There's also List, Real, Complex
> and Symbol. But there's also ?MatrixQ which is not in the
> Mathematica book, to specify a matrix. Are there other types?



Olivier,

_h is matched by anything with head h; this can be explicit for
example h[], h[1],h[1,2,3].
Unfortunately, you can't see 3 in the form Integer[3], but you can
find its head formally:

In[1]:= Head[3]
Out[1]= Integer

The following tests always give True or False

AtomQ DigitQ EvenQ FreeQ
IntegerQ IntervalMemberQ LetterQ ListQ
LowerCaseQ MachineNumberQ MatchQ MatrixQ
MemberQ NameQ NumberQ OddQ
OptionQ OrderedQ PolynomialQ PrimeQ
SameQ StringMatchQ StringQ SyntaxQ
TrueQ UnsameQ UpperCaseQ ValueQ

Then there are tests that remain unevaluated when the question
cannot be decided on the information available:

Equal Unequal Less Greater
LessEqual GreaterEqual Positive Negative
NonNegative

For example

In[2]:= Positive[a]
Out[2]= Positive[a]

However, you can always arrange that the output is always True or
False by using TrueQ:

In[3]:= TrueQ[Positive[a]]
Out[3]= False

You can sometimes combine these:
For example test if the entries in a matrix are all numbers:

In[4]:= MatrixQ[{{1},{2}},NumberQ]
Out[4]= True

In[5]:= MatrixQ[{{1},{a}},NumberQ]
Out[5] = False

Allan Hayes
hay@haystack.demon.co.uk
http://www.haystack.demon.co.uk








Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© Drexel University 1994-2014. All Rights Reserved.
The Math Forum is a research and educational enterprise of the Drexel University School of Education.