Questions on expression testing and manipulation through pattern matching and constructing efficient patterns.
8
votes
5answers
181 views
How can I remove matching sublists from my list?
I want to use DeleteCases (or any appropriate function) to remove elements of a list, which in turn are lists of fixed size. The rule I wish to apply is that any ...
8
votes
2answers
207 views
Soft-Match String Comparison
I have a list of names in which I would like to check for duplicates. However, within the list, the duplicates may not show up as exact duplicates of each other - for instance,
...
8
votes
4answers
218 views
Check in a series if there exists adjacent values with less than a certain number of missing values
I'm working with a large number of series of different experiments, where there exist a lot of experiments where there are no entries. I now want to draw a sample where there should exist at least ...
8
votes
3answers
476 views
How can I convert x^2 to x*x?
When I try the following code:
a b^2 c /. b c -> e
Mathematica gives me:
a b^2 c
but what I want is:
...
8
votes
2answers
236 views
8
votes
2answers
159 views
Why doesn't Cases match all instances of XMLElement, given Infinity levelspec?
Why doesn't Cases match all instances of XMLElement, given Infinity levelspec?
...
8
votes
3answers
106 views
What does `: Hold[$IterationLimit]` mean?
In this answer, what does the : Hold[$IterationLimit] part of the following construct do?
...
8
votes
2answers
113 views
Replacing product expressions - named vs. unnamed pattern?
Suppose I have an expression of the form
a b c d + x y z
The FullForm of this is
...
8
votes
4answers
272 views
Best way to modify values in a list of rules?
Recently I had to solve a problem similar to this:
Let's say I have a list of list of rules
...
8
votes
1answer
216 views
Does Mathematica use first order or second order order unification?
When Mathematica is pattern-matching expressions, does it use first order or second order unification.
Just to clarify the difference between first order and second order unification:
In Second order ...
8
votes
1answer
155 views
MatchQ and patterns for similar lists
I can't seem to find the right set of patterns to independently match two different lists. Simplified versions of the lists are as follows:
...
8
votes
2answers
452 views
Mathematica rule substitution memory
First I present the specific programming question, and then I provide further background details.
Given an expression in Mathematica, say f=3x+7y, there are two ...
8
votes
1answer
283 views
Why does Mathematica choose the second function definition?
While working on a solution to this question I've come across a case where I simply don't understand Mathematica's behaviour.
I've got the following definitions:
...
8
votes
1answer
153 views
Mixing patterns with string patterns
I have imported an XML document into Mathematica. It is now represented as Symbolic XML expression in the variable xml:
...
7
votes
3answers
169 views
Pattern matching Q for rectangular data matrices
Given a List of rectangular nx3 arrays of data, each of the form {...,{x,y,z},...}, (the ellipses are not Mathematica pattern syntax, just for illustration). Some members of this list may be - by ...
7
votes
2answers
189 views
Why does the name of a pattern affect the result of a transformation rule?
I was playing a little dirty, trying to get a template for defining a Curl[] operator.
I wrote the following rule, which I knew was going to spit out a few ...
7
votes
2answers
229 views
Determine whether some expression contains a given symbol
Given a symbol t and an expression expr, how can I determine whether or not the symbol t ...
7
votes
3answers
210 views
Patternmatching sets
How to match set-patterns against sets?
A set (in the mathematical sense) is a list of elements without repetition and order of elements does not matter. For example, we have a pattern set ...
7
votes
3answers
304 views
Pattern matching a pattern with patterns
Confusing title, I know. But the question is, if we have two patterns which have the same general structure but different names used in the patterns and different names:
...
7
votes
2answers
225 views
Building a tree
Given a list of word characters, such as this one, I'd like to build a tree, similar to this makeTree function, but with the tree in a different format. So, for an input such as
...
7
votes
1answer
160 views
Is it possible to specify a context-sensitive, “depth-agnostic” rewrite rule?
I'm using the term "depth-agnostic" in this post to describe structural patterns featuring a "target" sub-pattern that can occur "at any depth" relative to one or more "context" sub-patterns.
As a ...
7
votes
1answer
111 views
Transformation rule on a list of non-negative integers
I am trying to create a transformation rule that takes a list of non-negative integer values of any length, finds a non-zero entry in the list, adds 1 to all preceding numbers, subtracts 1 from the ...
7
votes
1answer
213 views
How does Mathematica wrap code for front-end needs? Why does this wrapping affect the evaluation?
Mathematica wraps any expression with some boxing code before showing the evaluation result in the front-end. Unfortunately, the wrapping algorithm and its position in the Mathematica end-to-end flow ...
7
votes
1answer
147 views
Built in way to de-list singletons?
Is there a built in method to de-list singleton expressions, like this rule-based solution:
expr_ :> If[Length[expr] == 1, First@expr, expr]
In data ...
7
votes
2answers
317 views
How to Enable Syntax Coloring of Pattern Match Variable Only (i.e. Without Coloring any Associated Pattern)?
Syntax coloring for the following function definition
foo[x_List] := ...
will color green (and italicize by default) the argument name ...
6
votes
3answers
273 views
Specifying string patterns in DeleteCases
It seems that DeleteCases is not compatible with string patterns, at least directly (see, for example, this question). Is this true? If so, why is this the case? ...
6
votes
3answers
234 views
Replacement rule only matches part of expression
I have the result of a calculation (which is too long to mention here) and it gives
...
6
votes
2answers
125 views
Is it possible to use PatternTest and Optional value on one Pattern simultaneously? [duplicate]
Possible Duplicate:
How to Combine Pattern Constraints and Default Values for Function Arguments
First a simple example: define a function "add" with two arguments, and its second argument ...
6
votes
2answers
181 views
Fastest way to test if a numerical array has complex elements
I am looking for the fastest way to test whether an n-dimensional numerical (NumericQ) array (in the ArrayQ sense) is complex or ...
6
votes
4answers
186 views
How to match a sequence of complex patterns?
I have list with the form {{a1,b1}->{x1,y1},{a2,b2}->{x1,y2},...} where the {ai,bi}'s can be ...
6
votes
4answers
171 views
Function argument to default under certain condition
Inspired by this and this question (and how I handle this in practice), what is the best way to default a function value when a certain condition is met?
For example, if a function is defined as:
...
6
votes
2answers
212 views
Rule for orderless function Times
I have problems extending a replacement rule.
Schematically, this is the situation:
I have an expression and a rule, and they work perfectly together.
...
6
votes
4answers
133 views
How to collect terms with positive powers in polynomial
I am trying to collect all terms with non-negative powers of $x$ in polynomials like
$\frac{1}{x^2}\left(a x^2+x^{\pi }+x+z\right)^2$
First expand the polynomial
...
6
votes
2answers
102 views
Variable scoping problem when mapping over delayed replacement
This is something that got me curious while I was playing around with Mathematica.
Consider the following (contrived) example:
...
6
votes
1answer
156 views
How to set up new types for pattern matching strings?
Consider the following toy example: I have a set of language sounds, which I partition into two exclusive subsets, consonants and vowels. I want to set up string patterns for e.g. ...
6
votes
1answer
464 views
Extracting coefficients from a partial differential equation
Frequently, I come across the following problem:
How to rewrite a complicated partial differential equation in a more clear way? I would like to create some order by collecting terms that are equal.
...
6
votes
1answer
185 views
Creating a version of SequenceAlignment that accepts patterns
SequenceAlignment seems like a function that is not (yet?) fully integrated into Mathematica. I want a function that accepts general patterns instead.
I ...
5
votes
5answers
227 views
How can I use nested conditionals inside my functions?
I'm a big fan of using conditionals inside my functions to deal with cases, that is, to pattern match in stages and possibly leave a function unevaluated.
...
5
votes
2answers
113 views
Keep Ordering of Bra Ket When Printing
I would like to keep the ordering of the bra ket-print but right now this doesn't happen. Any Idea?
I tried playing with HoldForm but then i could evaluate the expression inside properly
...
5
votes
2answers
149 views
Pattern matching deletion of list items [duplicate]
Possible Duplicate:
How can I remove B -> A from a list if A -> B is in the list?
I'm working toward building a graph and use some code to construct my rules which results in a form ...
5
votes
2answers
166 views
Delete contexts from a string representation of a symbol
I want to delete the string representing the context of a symbol.
For info I need such a functionality in my ShowIt function defined here
I'd like to know how I ...
5
votes
3answers
182 views
Find subexpression to minimize leafcount after replacment with temporary variable
Given an expression expr, is there an automated way to find a subexpression subexpr such that replacing ...
5
votes
1answer
65 views
Why does this pattern for combining two lists require triple underscores (___) to work?
I understand that __ is a list of one or more elements, and that ___ is 0 or more elements, but when I try this rule with 2 ...
5
votes
2answers
121 views
5
votes
0answers
68 views
Convert logical relational expression to / from disjunctive and conjunctive forms?
I would like to convert logical relational expressions in disjunctive form, e.g.,
$$(x \lt -1) \lor (-1 \lt x \lt +1) \lor (x \gt +1)$$
into conjunctive form, e.g.,
$$(x \ne -1) \land (x \ne +1)$$
...
4
votes
4answers
288 views
Creating lists from a string, separating words from numbers
Say I have a string that contains numbers and words, such as this one:
string = "there are 1234 words and numbers 5678 in here $999";
How would I separate the ...
4
votes
2answers
248 views
Why can't NumberQ be used as the head of a pattern?
Consider the following:
list={1/First[{}], 1, 2, 1/First[{}], 3};
DeleteCases[list,_NumberQ]
I wanted to remove all cases, which did not match ...
4
votes
5answers
197 views
Removing zero values from ordered pairs
I have some processed data, which are basically a collection of ordered pairs in the form:
{{x1, y1}, {x2, y2}, ..., {xn, yn}}
Ordered pairs which have either a ...
4
votes
4answers
186 views
How to pick out the element in a list of lists which satisfies a particular condition?
I have got a list:
...
4
votes
3answers
171 views
position of sequence of elements in list [duplicate]
Possible Duplicate:
Finding a subsequence in a list
Question
The position of {3, 5} is the list
{1, 3, 4, 3, 5, 5, 1}
is 3. How can such a position ...
