mod Mtex

rem 
  \para \bf  Part. CL-TeX.  \end 

rem 
  \para \bf  Only for debugging.  \end 

appldisp/0 Tex_f0_foo
  Std('?',0)

appldisp/0 Tex_p0_poo
  Std('?',0)

fun/0 Foo 'Tex_f0_foo'
  Foo = 0

pred/0 Poo 'Tex_p0_poo'
  Poo <-> \f

rem 
  \para \bf  Greek letters.  \end 

rem 
  \para \it  Lower-case.  \end 

appldisp/0 Tex0_theta
  Id(0,Ent('theta'),0)

appldisp/0 Tex0_mu
  Id(0,Ent('mu'),0)

appldisp/0 Tex0_xi
  Id(0,Ent('xi'),0)

appldisp/0 Tex0_rho
  Id(0,Ent('rho'),0)

appldisp/0 Tex0_sigma
  Id(0,Ent('sigma'),0)

appldisp/0 Tex0_tau
  Id(0,Ent('tau'),0)

appldisp/0 Tex0_phi
  Id(0,Ent('phi'),0)

appldisp/0 Tex0_chi
  Id(0,Ent('chi'),0)

appldisp/0 Tex0_psi
  Id(0,Ent('psi'),0)

rem 
  \para \it  Upper-case.  \end 

appldisp/0 Tex0_ssigma
  Id(0,Ent('Sigma'),0)

rem 
  \para \bf  Punctuation symbols and delimiters.  \end 

appldisp/0 Tex0_dotsc
  Op(Ent('hellip'),0)

appldisp/2 Tex2_comma
  Infix(Arg(0),30,2,Op(',',0),Arg(1))

rem 
  \para \bf  Stacking symbols.  \end 

appldisp/2 Tex2_sub
  Subsup(Arg(0),79,Arg(1),None)

rem 
  \para \bf  Part. Functions and Relations.  \end 

rem 
  \para \bf  Functions.  \end 

rem 
  \para \it  F-symbols.  \end 

appldisp/0 Tex_f0_f
  Std('f',0)

appldisp/1 Tex_f1_f
  Std('f',0)

appldisp/2 Tex_f2_f
  Std('f',0)

appldisp/3 Tex_f3_f
  Std('f',0)

appldisp/4 Tex_f4_f
  Std('f',0)

appldisp/5 Tex_f5_f
  Std('f',0)

rem 
  \para \it  G-symbols.  \end 

appldisp/0 Tex_f0_g
  Std('g',0)

appldisp/1 Tex_f1_g
  Std('g',0)

appldisp/2 Tex_f2_g
  Std('g',0)

appldisp/3 Tex_f3_g
  Std('g',0)

appldisp/4 Tex_f4_g
  Std('g',0)

appldisp/5 Tex_f5_g
  Std('g',0)

rem 
  \para \it  H-symbols.  \end 

appldisp/0 Tex_f0_h
  Std('h',0)

appldisp/1 Tex_f1_h
  Std('h',0)

appldisp/2 Tex_f2_h
  Std('h',0)

appldisp/3 Tex_f3_h
  Std('h',0)

appldisp/4 Tex_f4_h
  Std('h',0)

appldisp/5 Tex_f5_h
  Std('h',0)

rem 
  \para \it  Fi-symbols.  \end 

appldisp/1 Tex_f1_f1
  Prefix(90,2,Subsup(Id(0,'f',0),80,Num('1',0),None),Arg(0))

appldisp/1 Tex_f1_f2
  Prefix(90,2,Subsup(Id(0,'f',0),80,Num('2',0),None),Arg(0))

appldisp/2 Tex_f2_f1
  Prefix(90,2,Subsup(Id(0,'f',0),80,Num('1',0),None),
         Fenced(Op('(',0),Infix(Arg(0),30,2,Op(',',0),Arg(1)),Op(')',0)))

appldisp/2 Tex_f2_f2
  Prefix(90,2,Subsup(Id(0,'f',0),80,Num('2',0),None),
         Fenced(Op('(',0),Infix(Arg(0),30,2,Op(',',0),Arg(1)),Op(')',0)))

rem 
  \para \it  Stacking symbols.  \end 

appldisp/1 Tex_f1_f_sub
  Subsup(Id(0,'f',0),80,Arg(0),None)

rem 
  \para \bf  Unary iterations.  \end 

appldisp/2 Tex_f2_if
  Prefix(90,2,Subsup(Id(0,'f',0),80,None,Arg(0)),Arg(1))

appldisp/2 Tex_f2_ig
  Prefix(90,2,Subsup(Id(0,'g',0),80,None,Arg(0)),Arg(1))

appldisp/2 Tex_f2_ih
  Prefix(90,2,Subsup(Id(0,'h',0),80,None,Arg(0)),Arg(1))

rem 
  \para \bf  Part. Natural Numbers.  \end 

rem 
  \para \bf  Basic functions.  \end 

appldisp/1 Tex_f1_n_s
  Std('S',0)

appldisp/2 Tex_f2_n_plus
  Infix(Arg(0),40,1,Op('+',0),Arg(1))

appldisp/2 Tex_f2_n_times
  Infix(Arg(0),45,1,Op(Ent('sdot'),0),Arg(1))

appldisp/2 Tex_f2_n_minus
  Infix(Arg(0),40,1,Op(Ent('minusd'),0),Arg(1))

appldisp/2 Tex_f2_n_div
  Infix(Arg(0),45,1,Op(Ent('div'),0),Arg(1))

appldisp/2 Tex_f2_n_mod
  Infix(Arg(0),45,1,Id(0,'mod',0),Arg(1))

appldisp/2 Tex_f2_n_gcd
  Std('gcd',0)

appldisp/1 Tex_f1_n_sq
  Subsup(Arg(0),79,None,Num('2',0))

appldisp/1 Tex_f1_n_sqrt
  Fenced(Op(Ent('lfloor'),0),Root(None,Arg(0)),Op(Ent('rfloor'),0))

appldisp/2 Tex_f2_n_exp
  Subsup(Arg(0),79,None,Arg(1))

appldisp/1 Tex_f1_n_exp2
  Subsup(Num('2',0),80,None,Arg(0))

appldisp/1 Tex_f1_n_sum
  Prefix(90,2,
         Underover(Op(Ent('sum'),0),Infix(Id(0,'i',0),25,0,Op('=',0),Num('0',0)),Arg(0)),
         Id(0,'i',0))

appldisp/1 Tex_f1_n_fact
  Postfix(Arg(0),60,1,Op('!',0))

appldisp/1 Tex_f1_n_fib
  Subsup(Id(0,'fib',0),80,Arg(0),None)

appldisp/2 Tex_f2_n_min
  Std('min',0)

appldisp/2 Tex_f2_n_max
  Std('max',0)

appldisp/1 Tex_f1_n_sg
  Std('sg',0)

appldisp/1 Tex_f1_n_sgn
  Std('sgn',0)

appldisp/2 Tex_f2_n_char_eqf
  Infix(Arg(0),24,0,Subsup(Op('=',0),80,Op('*',0),None),Arg(1))

rem 
  \para \bf  Basic predicates.  \end 

appldisp/2 Tex_p2_n_le
  Infix(Arg(0),25,0,Op(Ent('lE'),0),Arg(1))

appldisp/2 Tex_p2_n_lt
  Infix(Arg(0),25,0,Op(Ent('lt'),0),Arg(1))

appldisp/2 Tex_p2_n_ge
  Infix(Arg(0),25,0,Op(Ent('gE'),0),Arg(1))

appldisp/2 Tex_p2_n_gt
  Infix(Arg(0),25,0,Op(Ent('gt'),0),Arg(1))

appldisp/2 Tex_p2_n_divides
  Infix(Arg(0),25,0,Op(Ent('mid'),0),Arg(1))

rem 
  \para \bf  Pair representation of natural numbers.  \end 

rem 
  \para \it  Pairing function.  \end 

appldisp/2 Tex_f2_pp_pair
  Prefix(90,2,None,
         Fenced(Id(0,Ent('lang'),0),Infix(Arg(0),30,2,Id(2,',',0),Arg(1)),
                Id(0,Ent('rang'),0)))

appldisp/1 Tex_f1_pp_proj1
  Prefix(90,2,Subsup(Id(0,Ent('pi'),0),80,Num('1',0),None),Arg(0))

appldisp/1 Tex_f1_pp_proj2
  Prefix(90,2,Subsup(Id(0,Ent('pi'),0),80,Num('2',0),None),Arg(0))

appldisp/2 Tex_f2_pp_iproj2
  Prefix(90,2,Subsup(Id(0,Ent('pi'),0),80,Num('2',0),Arg(0)),Arg(1))

appldisp/1 Tex_f1_pp_sz_p
  Subsup(Fenced(Op(Ent('mid'),0),Arg(0),Op(Ent('mid'),0)),80,Id(0,'p',0),None)

rem 
  \para \it  Tuples.  \end 

appldisp/3 Tex_f3_pp_proj
  Subsup(Fenced(Op('[',0),Arg(1),Op(']',0)),80,Arg(2),Arg(0))

rem 
  \para \it  Finite sequences.  \end 

appldisp/2 Tex_f2_pp_sub
  Subsup(Fenced(Op('(',0),Arg(0),Op(')',0)),80,Arg(1),None)

appldisp/2 Tex_p2_pp_in
  Infix(Arg(0),25,0,Id(0,Ent('epsiv'),0),Arg(1))

