Questions on expression testing and manipulation through pattern matching and constructing efficient patterns.
4
votes
2answers
153 views
Pattern matching repeated structures with named subexpression components
I am trying to write a function with a pattern that tests its arguments for a particular structure. But in that pattern I'd like to name a subpattern to make it easier to exract and operate on.
The ...
4
votes
4answers
97 views
Extracting sequences from a list?
Suppose I have a list of arbitrary length like
{1, 2, 3, "Open", 3, 2, "Close", 9, 3, 4, "Open", 1, 0, "Close", 3, 5}
and I am trying to extract the sequences ...
4
votes
1answer
250 views
Path queries for tree-structured data
Can anyone suggest documentation or tutorials for developing path queries and indices for (XML-like) tree-structured data?
Suppose data is organized hierarchically in key->value pairs, eg:
...
4
votes
1answer
150 views
Pattern matching in subscripted variables
I am trying to use subscripted variables as symbols and provide assumptions elegantly for them, e.g. in order to simplify logs, I'd like to have
...
4
votes
1answer
75 views
How do you set an Optional parameter with a global variable on a Function defined in a Package
In a Package I am writing, I'm trying to define a function with an Optional parameter in it that is set to a global variable.
...
4
votes
1answer
182 views
4
votes
1answer
131 views
Searching Notebooks for String Patterns using Workbench v2
The Workbench webpage describing new features in version 2 lists the ability to "Search notebook documents with the Mathematica pattern search utility" under the heading Mathematica Front End ...
3
votes
2answers
146 views
Unexpected behavior of rule matching a pattern
I am a beginner exploring the world of Mathematica. I expected the following code
T[6, 5, 4, 1, 2, 3] /. {T[a___, 1, b___] -> Length[List[b]]}
should return ...
3
votes
2answers
77 views
Pattern matching not going over a list when using default values
if I execute the following command in Mathematica:
{a,a^2,a^3}/.a^(n_:1)->b^(2 n)
Mathematica returns:
{b^2,b^4,b^6}
...
3
votes
1answer
165 views
How do you pattern match a DataDistribution
I have a function,
f[dist_, samp_]:=somework[dist, samp]
that I want to return Null or zero if passed a null distribution. I ...
3
votes
2answers
89 views
Select gives different answers in versions 8 and 9
Consider the code below:
s = Solve[(3 - Cos[4*x])*(Sin[x] - Cos[x]) == 2, x, InverseFunctions -> True];
Select[s[[All, 1, 2]], Element[#, Reals] &]
In MMA ...
3
votes
1answer
60 views
Detect highest order of derivative in expression?
Is it possible to detect the highest order (or generally all orders) of derivatives in an expression?
Consider
eqn = D[a[x,t],t] == D[a[x,t],x,x]
How would I go ...
3
votes
2answers
165 views
Highlighting text with StringReplacePart but also using Style, Subscript
For a Natural Language Processing analysis task it's desirable to highlight a text string programmatically according to XML tags that reference specific words or phrases.
The XML tags specify the ...
3
votes
2answers
108 views
Get DownValues that do not involve patterns?
Say I have a function with a few definitions that also implements memoization:
f[x_] := f[x] = x^2
f[x_, y_] := f[x, y] = x^2 + y^2
I then apply the function to ...
3
votes
1answer
101 views
Pattern matching a multivariate derivative
I can extract the parameters of a single variable derivative with the rule
D[f[x], x] /. Derivative[order_][fcn_][variable_] ->
{order, fcn, variable}
...
3
votes
1answer
108 views
Set promotes Rule to RuleDelayed?
In mentally building a model of how Mathematica works, I naively expected Set to create a Rule in a symbol's ...
3
votes
1answer
108 views
Adjacency List representation of a graph
I am looking to draw a graph knowing a simple adjacency representation of the graph like:
A = {{1, 3}, {2, 3}, {3, 4, 5}, {4, 5}, {5}}
Where ...
3
votes
2answers
77 views
3
votes
1answer
109 views
How to make a pattern to change x^(2/y) to (x^2)^(1/y) for any x and y?
This might have been asked before. Please let me know if it is.
I was looking at an interesting Mathematica question in students forum and trying to solve it, and a chance to learn more about ...
3
votes
1answer
98 views
Problem with | operator in pattern matching
My first question here as I only got into Mathematica programming recently. Basically I have a large symbolic algebraic expression where I know certain variables with head pε appear with degree 2 in ...
3
votes
1answer
111 views
Extending D for four-derivatives
I'm currently trying to consistently define rules for extending D[] to four-derivatives. As 'backend' I'm using the package TRACER (http://library.wolfram.com/infocenter/MathSource/2987/), which can ...
3
votes
1answer
112 views
Downvalues vs. Scoping for Functions
Regarding my recent question on using a default value for a function argument when a pattern was not met yielded some interesting answers, but the general consensus was "Yes this can be done, but ...
2
votes
1answer
89 views
2
votes
3answers
98 views
Applying several patterns to `Split`
Please consider the following:
Split[data, patterns &]
patterns=Not[#=="a"]&&Not[#=="b"]&&...&&Not[#=="blabla"];
How can I define ...
2
votes
2answers
175 views
Pattern test for variables during function definition
I am having a problem with pattern testing on variables during function definition
...
2
votes
2answers
76 views
Using FreeQ with implicit functions
In Mathematica 7, I want to determine whether a list of free of numbers greater than 1 or not. It seems like using FreeQ would be a concise way to do this:
...
2
votes
2answers
112 views
How to achieve Set+Part like behaviour in custom Set function?
So I've been toiling away on my DataFrame package. I've been trying to get Set to work with it, but it seems it either can't be done (ie via ...
2
votes
2answers
143 views
Formatting text through pattern matching
I am trying to format some text based on some patterns.
...
2
votes
1answer
59 views
Flat function with repeated sequence
There are functions like Join[ ] that accept a variable number of arguments. Join is a flat function, as the order of arguments ...
2
votes
1answer
40 views
transformation patterns don't work with constants
I want to do the reverse of PowerExpand and convert 2*Log[x+y] to Log[(x+y)^2].
The rule:
t_ Log[x_] -> Log[x^t]
works for ...
2
votes
1answer
88 views
Convert boolean test function to pattern?
What is a "reverse" to MatchQ? MatchQ converts pattern into boolean function. So how to convert back?
Suppose I want to use ...
2
votes
1answer
86 views
Using transformation rules to manipulate expressions
I'm trying out Mathematica as a replacement for LaTeX for typesetting math. It works very well, but I would like to take advantage of Mathematica's computer algebra capabilities as well. Specifically, ...
2
votes
0answers
97 views
I am missing a function like HoldPattern
Temporary message: I am planning to edit this question, making the examples less confusing and by moving the things that are confusing to a separate question
For any confusion about expressions that ...
1
vote
3answers
209 views
How do I combine the data from two tables according to a rule of my own devising?
I have two matrices a = m x 5 and b =m x 5 (m is large, say 1,000) which are already sorted as below:
How to generate a new matrix c = m x 5 which consists:
Column 1: exact replica of Column 1 ...
1
vote
2answers
139 views
Write a function that returns the logarithmic derivative
How can we write a function that if we input an expression f, it returns the log derivative $\frac{1}{f} \frac{df}{dx}$. We have to use a conditional or pattern test so that the function accepts any ...
1
vote
2answers
62 views
Named patterns as function argument descriptors
I have a function timeToMinutes that takes a 24-hour time as a string argument (in digital clock format, e.g., "15:47") and converts it to the number of minutes ...
1
vote
2answers
118 views
Using patterns in ReplaceAll to extract elements from tuples at arbitrary depths
Please consider the following:
I need to extract from MyList all last parts of each 3-tuple.
...
1
vote
2answers
208 views
How to generate patterns by a list of integers
I have a list of integers {3,4,2,2}.
This list will give patterns {x_,_,y_,y_,_,_,z_,z_,w_,w_,x_} and ...
1
vote
2answers
95 views
A function that only evaluates on lists of pairs [duplicate]
Possible Duplicate:
Why doesn’t PatternTest work with Composition?
I'd like my function to only evaluate when the argument is a list of pairs. It seems like ...
1
vote
1answer
51 views
replacement rule to pull independent expression outside of Integrate
I'm trying to write a fairly general replacement rule that will pull expressions independent of the variable of integration outside of Integrate, since Simplify and ...
1
vote
0answers
137 views
Why does Position use pattern-matching while Select uses pure functions? [closed]
I can not figure it out.
Why does Position only uses patterns to match elements in a list, but Select only uses pure function ...
1
vote
1answer
123 views
Functions that operate on symbolic matrices?
I'd like to write functions that operate on symbolic matrices, and do nothing when fed anything else.
...
1
vote
0answers
53 views
Evaluation in mapping constructs [closed]
I'm trying to use ReplacePart inside of Map, where the address of the element being replaced is the domain of the map, like this:
...
0
votes
1answer
222 views
What does the slash-colon symbol do?
I came across a bit of code that uses the syntax /: and I don't know what it does. I can't find its documentation, or maybe I'm just not looking properly. The code ...
0
votes
2answers
156 views
Pattern constraint for two or more variables
Is it possible to have a pattern constraint for a function with two or more variables where the pattern is a relation between the vars being accepted e.g.
...
0
votes
1answer
161 views
Count sublists which match pattern
I have a list which looks like this: data={{12,0},{0,0},{20,1},{0,0}, {0,-1}}. Now I would like to count the number of sublists which:
have both slots zero
the ...
0
votes
1answer
72 views
Why does “Pattern(1,0)[w,_]” show up in the resulting expression of a differentiation? [closed]
I would like to differentiate the function s, and be able to evaluate it for different w afterwards. I tried the following:
...
0
votes
1answer
141 views
How to use Function[] in MatchQ[] and control argument's evaluation? [duplicate]
Possible Duplicate:
Why doesn't PatternTest work with Composition?
...
0
votes
2answers
154 views
Deep Pattern matching with repeating arguments
I have a function that accepts a single argument that is described by the following grammar:
...
0
votes
0answers
92 views
How to collect terms of a given type (with subscript and power) in an expression?
Suppose that I have an expression:
...


