This is for questions about creating and using custom notations. For help on the use of the built-in operators, see syntax.

learn more… | top users | synonyms

20
votes
1answer
492 views

Prefix operator with low precedence

The question is simple, but I will elaborate on the background as well for those interested in the idea: How to define a new operator with specified precedence value? Background Mathematica was ...
17
votes
3answers
501 views

How is + as an infix operator associated with Plus?

How is + associated with Plus? Suppose I want to define a head FooBar and have it ...
17
votes
2answers
715 views

Going full functional (Haskell style)

I'm trying to define some notation so that Mathematica code would be more functional, similar to Haskell (just for fun): currying, lambdas, infix operator to function conversion, etc.. And I have some ...
16
votes
5answers
1k views

Having the derivative be an operator

How do I create an operator which acts like a derivative to everything to the right of it: for example: $ \left( \partial_x + \partial_y + z \right ) x \psi $ How do I make that evaluate to: $x ...
13
votes
4answers
2k views

How to implement Donald Knuth's up-arrow notation

How does one enter very large numbers in up-arrow notation? Up-arrow notation was created by Donald Knuth to write very large numbers in it iterated exponentiation form, for example 6↑↑3 = 6^6^6.
13
votes
2answers
639 views

How to use subscript in pattern names?

For example I want to define a function with parameters σx and σy, that is, the function will be declared as: f[σx_,σy_] := . . ...
13
votes
1answer
4k views
13
votes
2answers
279 views

Difficulties in creating strict and robust equivalence between two symbols using the Notation package

I am investigating the use of the Notation package facilities to create strict the equivalence between pretty-printed symbols such as ...
11
votes
1answer
203 views

Why is `D[a[b][c],a[b]]` equal to `1[c]`?

Background: I had the same issue as described here, and I went to extend Mr.Wizard’s code such that a[b][c] would be shown as $a_b^c$. Issue: To my surprise, ...
10
votes
1answer
368 views

Creating custom notation

How does one generate custom symbols? For example, the physicist notation for the rotation is "nabla cross function". In this case however, Mathematica complains that the ...
9
votes
2answers
527 views

How can one define an infix operator with an arbitrary unicode character?

You can setup "UsefulFunction[a, b]" to use custom infix notation "a [LeftRightArrow] b" as follows: ...
8
votes
2answers
289 views

Custom Format for “constructors”

Say I have a the typical Mathematica linked list structure defined like so: Attributes[Pair] = {HoldAllComplete}; Nil = Pair[]; Cons = Pair[#1, #2]&; It's ...
7
votes
2answers
847 views

How to tell Mathematica that a function is dependent on other variables?

I am trying to derive some turbulence model dependencies and I am using Reynolds averaged Navier-Stokes equations. What I am trying to do is to tell Mathematica that OverBar[u] is dependent on x,y,z ...
7
votes
1answer
266 views

Assignment rule to distribute matrix-multiplication over custom notation

I'm trying to write some code to do basic algebraic manipulations in BraKet notation. Thus far I have a function KetToVec which will convert any expression of the form a1 Ket[s1]+ b Ket[s2] +... to a ...
7
votes
1answer
216 views

Can the Notation function support complex structures on its left hand side?

In my investigation of the possibilities offered by the Notation package, I came over a limitation in the complexity of the left hand side symbol. For instance, although I am able to enter ...
6
votes
1answer
285 views

$\TeX$ conversion, support for \hphantom

I'm trying to write some $\TeX$ conversion for a tensor with an upper and a lower index, but I would like the lower index to be displaced to the right by the width of the upper index. In (La)TeX I ...
5
votes
1answer
400 views

Using the symbol I for electrical current [duplicate]

I would like to use the I as a symbol for the electrical current. How can I redefine it, so it is not interpreted as the imaginary unity?
5
votes
1answer
418 views

Simplistic Notation example

Notation package looks poorly documented. For example, GridBoxDividers option is not documented at all. Can someone give me a simplistic example of a Notation set ...
5
votes
3answers
198 views

Map Input A B C to MyProduct[A,B,C] (NOT to Times[A,B,C])

In writing my own (noncommutative) product I want to avoid typing redundant symbols like A.B.C or A**B**C, I just want to type ...
5
votes
1answer
207 views

Override @ to mock Java Classes

This question appears impossibly long so apologies in advance (skip to the bottom if you want to see the actual questions). I want to be able to mock Java Classes in Mathematica code. For example, I ...
4
votes
3answers
207 views

Using subscript in a string

I am trying to create a string of the form $0 < d_1 < d_2 < \ldots < d_n$ For a given n. My closest attempt so far is ...
4
votes
3answers
214 views

Notation package: parenthesis placement for SuperscriptBox

The question concerns the Notation package. I want to define notation for the function very similar to the built-in Power[a,b] ...
4
votes
1answer
129 views

Custom display format for custom operator

I've tried searching here and in the WRI documentation, but I haven't found what I'm looking for in either place. I'm defining a dx operator to act as a ...
4
votes
1answer
101 views

Setting a binary operator Flat

I defined a binary operator in as the first statement in a new Mathematica notebook. {x1_, y1_} ⊕ {x2_, y2_} := Module[{}, Print["do anything"];] where the code ...
4
votes
2answers
138 views

How do I mimic the functionality of “<>”?

The Cell expression for: <> is Cell[BoxData["<>"], "Input"] However similar expressions are parsed into ...
3
votes
1answer
100 views

Vertical “fractions” with more than 2 parts

Standard FractionBox syntax allows only 2 arguments and creates 2-part fraction for numerator and denominator. Is it possible to draw similar construction, but ...
3
votes
1answer
82 views

Custom operators; custom pattern matching with pure functions

What I'm trying to achieve in Mathematica is the creation of a binary operator whose operands are both pure functions over the natural numbers. The result of the operator should be another pure ...
3
votes
0answers
52 views

Can I define a “postfix map” operator with comparable precedence behavior to // [duplicate]

I am trying to define a "postfix map" operator (denoted $OP$ for now) that behaves thus: ...
3
votes
0answers
157 views

Notation Package Quirk for single Symbols

I encounter the following quirk in the Notation package: consider the following ==> and <== declarations ...
2
votes
1answer
108 views

Defining conditional Notation rules

I am trying to define a notation rule so that for selected symbols subsripts will be equivalent to function parameters. My understanding of the docs suggests the following ...
2
votes
1answer
657 views

How to define the Einstein summation convention in Mathematica?

How to define a Einstein summation convention in Mathematica? Say, how to let Mathematica know T[i,i] equals ...
2
votes
1answer
95 views

Notation not recursive enough?

My notation is not recursing enough. For example, Notation[W[a_ | b_] ⟹ foo[a_, b_]/foo[b_]] Notation[W[a__, b_ | c_] ⟹ W[a__ | c_]W[b_ | c_]] Then ...
2
votes
0answers
43 views

Notation, Format and Interpretation

I am unclear on the exact relationship between Notation, Format and Interpretation. ...
2
votes
0answers
178 views

Syntax colouring when using Symbolize

I need to use symbols with suffixes in order to make my code readable in relation to the Eurocodes. To do this I use Symbolize from the ...
2
votes
0answers
212 views

Best Practice for using Notation, $Pre, MakeExpression in a package

I'm setting up a package that defines a custom Notation. I'd like to inquire about best practices and possible issues of: using the Notation Package using $Pre ...
1
vote
2answers
102 views

Is there a way to “hold” prefix / infix / postfix notation?

Is it possible to preserve a specific style of notation in $Mathematica$ output? foo // bar (* bar[foo] *) Hold[foo // bar] (* bar[foo] *) I'm writing some code ...
1
vote
3answers
73 views

Assigning symbolic operators to built-in functions

Can I do something like this: $$\partial_t = D[f, t]$$ i.e. create a symbol instead of a function so that each time I call it, it executes the operation as defined?
1
vote
2answers
130 views

Notation for implicit derivative

Consider the following line of code: D[x == y^3 + x y, x, NonConstants -> y] The output would be: ...
1
vote
1answer
168 views

How to enter arrows in Notation function?

It is not clear, what symbol is used in Notation function description for arrows? How to enter it in textual mode within Workbench? Here: ...
1
vote
0answers
21 views

custom precedence for custom infix operator with InfixNotation [duplicate]

I am trying to define several custom operators with custom precedence to implement geometric algebra. Loading the notation package << Notation` I can ...
0
votes
3answers
800 views

Examples of (well coded) packages using custom notation

Which packages do you know of, that have the following properties: using custom notation (for input AND output would be preferable) well coded & designed (from your subjective perspective!)
0
votes
2answers
107 views

Kronecker delta notation

Is there an easier way to enter KroneckerDelta[n,m] in Mathematica? When I use the notation $ \delta_{n,m} $, it won't work.
0
votes
1answer
159 views

New integration symbol

Is there a way to introduce a new integration symbol? Specifically I want to be able to use ⨍. I have no problem entering it into mm, but the size does not change like the standard \int does.
0
votes
1answer
70 views

Correct way to use Notation

I have tried to create some Notation declarations as follows ...
0
votes
2answers
157 views

using index notation for finite differences

I am interested in deriving finite difference equations, which means I have to play around with indexed quantities. For example, for a 2D function f(x,y), I could discretize it on a grid with grid ...
0
votes
0answers
40 views

Applying Notation rules retroactively to a notebook

Suppose I define a new notation rule like Notation[OverBar[x_] ⟺ mean[x]] If I already have some notebooks that were written using ...