text:
(*  Title:      Well-Quasi-Orders
    Author:     Christian Sternagel <c.sternagel@gmail.com>
    Maintainer: Christian Sternagel
    License:    LGPL
*)

section \<open>Kruskal's Tree Theorem\<close>

theory Kruskal
imports Well_Quasi_Orders
begin

locale kruskal_tree =
  fixes F :: "('b \<times> nat) set"
    and mk :: "'b \<Rightarrow> 'a list \<Rightarrow> ('a::size)"
    and root :: "'a \<Rightarrow> 'b \<times> nat"
    and args :: "'a \<Rightarrow> 'a list"
    and trees :: "'a set"
  assumes size_arg: "t \<in> trees \<Longrightarrow> s \<in> set (args t) \<Longrightarrow> size s < size t"
    and root_mk: "(f, length ts) \<in> F \<Longrightarrow> root (mk f ts) = (f, length ts)"
    and args_mk: "(f, length ts) \<in> F \<Longrightarrow> args (mk f ts) = ts"
    and mk_root_args: "t \<in> trees \<Longrightarrow> mk (fst (root t)) (args t) = t"
    and trees_root: "t \<in> trees \<Longrightarrow> root t \<in> F"
    and trees_arity: "t \<in> trees \<Longrightarrow> length (args t) = snd (root t)"
    and trees_args: "\<And>s. t \<in> trees \<Longrightarrow> s \<in> set (args t) \<Longrightarrow> s \<in> trees"
begin

lemma mk_inject [iff]:
  assumes "(f, length ss) \<in> F" and "(g, length ts) \<in> F"
  shows "mk f ss = mk g ts \<longleftrightarrow> f = g \<and> ss = ts"
proof -
  { assume "mk f ss = mk g ts"
    then have "root (mk f ss) = root (mk g ts)"
      and "args (mk f ss) = args (mk g ts)" by auto }
  show ?thesis
    using root_mk [OF assms(1)] and root_mk [OF assms(2)]
      and args_mk [OF assms(1)] and args_mk [OF assms(2)] by auto
qed

inductive emb for P
where
  arg: "\<lbrakk>(f, m) \<in> F; length ts = m; \<forall>t\<in>set ts. t \<in> trees;
    t \<in> set ts; emb P s t\<rbrakk> \<Longrightarrow> emb P s (mk f ts)" |
  list_emb: "\<lbrakk>(f, m) \<in> F; (g, n) \<in> F; length ss = m; length ts = n;
    \<forall>s \<in> set ss. s \<in> trees; \<forall>t \<in> set ts. t \<in> trees;
    P (f, m) (g, n); list_emb (emb P) ss ts\<rbrakk> \<Longrightarrow> emb P (mk f ss) (mk g ts)"
  monos list_emb_mono

lemma almost_full_on_trees:
  assumes "almost_full_on P F"
  shows "almost_full_on (emb P) trees" (is "almost_full_on ?P ?A")
proof (rule ccontr)
  interpret mbs ?A .
  assume "\<not> ?thesis"
  from mbs' [OF this] obtain m
    where bad: "m \<in> BAD ?P"
    and min: "\<forall>g. (m, g) \<in> gseq \<longrightarrow> good ?P g" ..
  then have trees: "\<And>i. m i \<in> trees" by auto

  define r where "r i = root (m i)" for i
  define a where "a i = args (m i)" for i
  define S where "S = \<Union>{set (a i) | i. True}"

  have m: "\<And>i. m i = mk (fst (r i)) (a i)"
   by (simp add: r_def a_def mk_root_args [OF trees])
  have lists: "\<forall>i. a i \<in> lists S" by (auto simp: a_def S_def)
  have arity: "\<And>i. length (a i) = snd (r i)"
    using trees_arity [OF trees] by (auto simp: r_def a_def)
  then have sig: "\<And>i. (fst (r i), length (a i)) \<in> F"
    using trees_root [OF trees] by (auto simp: a_def r_def)
  have a_trees: "\<And>i. \<forall>t \<in> set (a i). t \<in> trees" by (auto simp: a_def trees_args [OF trees])

  have "almost_full_on ?P S"
  proof (rule ccontr)
    assume "\<not> ?thesis"
    then obtain s :: "nat \<Rightarrow> 'a"
      where S: "\<And>i. s i \<in> S" and bad_s: "bad ?P s" by (auto simp: almost_full_on_def)

    define n where "n = (LEAST n. \<exists>k. s k \<in> set (a n))"
    have "\<exists>n. \<exists>k. s k \<in> set (a n)" using S by (force simp: S_def)
    from LeastI_ex [OF this] obtain k
      where sk: "s k \<in> set (a n)" by (auto simp: n_def)
    have args: "\<And>k. \<exists>m \<ge> n. s k \<in> set (a m)"
      using S by (auto simp: S_def) (metis Least_le n_def)

    define m' where "m' i = (if i < n then m i else s (k + (i - n)))" for i

    have m'_less: "\<And>i. i < n \<Longrightarrow> m' i = m i" by (simp add: m'_def)
    have m'_geq: "\<And>i. i \<ge> n \<Longrightarrow> m' i = s (k + (i - n))" by (simp add: m'_def)

    have "bad ?P m'"
    proof
      assume "good ?P m'"
      then obtain i j where "i < j" and emb: "?P (m' i) (m' j)" by auto
      { assume "j < n"
        with \<open>i < j\<close> and emb have "?P (m i) (m j)" by (auto simp: m'_less)
        with \<open>i < j\<close> and bad have False by blast }
      moreover
      { assume "n \<le> i"
        with \<open>i < j\<close> and emb have "?P (s (k + (i - n))) (s (k + (j - n)))"
          and "k + (i - n) < k + (j - n)" by (auto simp: m'_geq)
        with bad_s have False by auto }
      moreover
      { assume "i < n" and "n \<le> j"
        with \<open>i < j\<close> and emb have *: "?P (m i) (s (k + (j - n)))" by (auto simp: m'_less m'_geq)
        with args obtain l where "l \<ge> n" and **: "s (k + (j - n)) \<in> set (a l)" by blast
        from emb.arg [OF sig [of l] _ a_trees [of l] ** *]
          have "?P (m i) (m l)" by (simp add: m)
        moreover have "i < l" using \<open>i < n\<close> and \<open>n \<le> l\<close> by auto
        ultimately have False using bad by blast }
      ultimately show False using \<open>i < j\<close> by arith
    qed
    moreover have "(m, m') \<in> gseq"
    proof -
      have "m \<in> SEQ ?A" using trees by auto
      moreover have "m' \<in> SEQ ?A"
        using trees and S and trees_args [OF trees] by (auto simp: m'_def a_def S_def)
      moreover have "\<forall>i < n. m i = m' i" by (auto simp: m'_less)
      moreover have "size (m' n) < size (m n)"
        using sk and size_arg [OF trees, unfolded m]
        by (auto simp: m m'_geq root_mk [OF sig] args_mk [OF sig])
      ultimately show ?thesis by (auto simp: gseq_def)
    qed
    ultimately show False using min by blast
  qed
  from almost_full_on_lists [OF this, THEN almost_full_on_imp_homogeneous_subseq, OF lists]
    obtain \<phi> :: "nat \<Rightarrow> nat"
    where less: "\<And>i j. i < j \<Longrightarrow> \<phi> i < \<phi> j"
      and lemb: "\<And>i j. i < j \<Longrightarrow> list_emb ?P (a (\<phi> i)) (a (\<phi> j))" by blast
  have roots: "\<And>i. r (\<phi> i) \<in> F" using trees [THEN trees_root] by (auto simp: r_def)
  then have "r \<circ> \<phi> \<in> SEQ F" by auto
  with assms have "good P (r \<circ> \<phi>)" by (auto simp: almost_full_on_def)
  then obtain i j
    where "i < j" and "P (r (\<phi> i)) (r (\<phi> j))" by auto
  with lemb [OF \<open>i < j\<close>] have "?P (m (\<phi> i)) (m (\<phi> j))"
    using sig and arity and a_trees by (auto simp: m intro!: emb.list_emb)
  with less [OF \<open>i < j\<close>] and bad show False by blast
qed

inductive_cases
  emb_mk2 [consumes 1, case_names arg list_emb]: "emb P s (mk g ts)"

inductive_cases
  list_emb_Nil2_cases: "list_emb P xs []" and
  list_emb_Cons_cases: "list_emb P xs (y#ys)"

lemma list_emb_trans_right:
  assumes "list_emb P xs ys" and "list_emb (\<lambda>y z. P y z \<and> (\<forall>x. P x y \<longrightarrow> P x z)) ys zs"
  shows "list_emb P xs zs"
  using assms(2, 1) by (induct arbitrary: xs) (auto elim!: list_emb_Nil2_cases list_emb_Cons_cases)

lemma emb_trans:
  assumes trans: "\<And>f g h. f \<in> F \<Longrightarrow> g \<in> F \<Longrightarrow> h \<in> F \<Longrightarrow> P f g \<Longrightarrow> P g h \<Longrightarrow> P f h"
  assumes "emb P s t" and "emb P t u"
  shows "emb P s u"
using assms(3, 2)
proof (induct arbitrary: s)
  case (arg f m ts v)
  then show ?case by (auto intro: emb.arg)
next
  case (list_emb f m g n ss ts)
  note IH = this
  from \<open>emb P s (mk f ss)\<close>
    show ?case
  proof (cases rule: emb_mk2)
    case arg
    then show ?thesis using IH by (auto elim!: list_emb_set intro: emb.arg)
  next
    case list_emb
    then show ?thesis using IH by (auto intro: emb.intros dest: trans list_emb_trans_right)
  qed
qed

lemma transp_on_emb:
  assumes "transp_on P F"
  shows "transp_on (emb P) trees"
  using assms and emb_trans [of P] unfolding transp_on_def by blast

lemma kruskal:
  assumes "wqo_on P F"
  shows "wqo_on (emb P) trees"
  using almost_full_on_trees [of P] and assms by (metis transp_on_emb wqo_on_def)

end

end

subset_name: curated


TITLE: Calculate curvature of wave
QUESTION [0 upvotes]: I am looking for a way to calculate curvature of this wave (pic attached) in matlab.
Sinc Wave
I have generated this wave form in Matlab.
 t2 = linspace(6,2);
y2 = sinc(t2);
subplot(212),plot(t2,y2);
xlabel('Time (sec)');
ylabel('Amplitude');
title('Sinc Function: 04');

Would be grateful if some one can help me out.

REPLY [2 votes]: If you want to calculate the curvature of a line that is defined by a graph $\{(x,f(x)\}$ of a function $f:D\subset \mathbb R \to \mathbb R$ you can easily do that by following formula:
$$k(x) = \frac{f''(x)}{(1+(f'(x))^2)^{3/2}}$$
Source: Wikipedia


text:
\begin{document}
\begin{center}
{\bf\large Ljusternik-Schnirelmann Categories,}\\ {\bf\large Links
and Relations }\\ [1cm] M.R. Razvan \\  \noindent {\it \small
Department of Mathematics, Sharif University of Technology\\
P.O.Box: $11365-9415$, Tehran, IRAN
\\ Institute for Studies in Theoretical
Physics and Mathematics\\  P.O.Box: $19395-5746$,
Tehran, IRAN}\\ E-Mail:
 razvan@karun.ipm.ac.ir \\ Fax: 009821-2290648

\end{center}

\vspace*{5mm}
\begin{abstract}
This paper is concerned with some well-known
Ljusternik-Schnirelmann categories. We desire to find some links
and relations among them. This has been done by using the concepts
of precategoty, T-collection and closure of a category.
\end{abstract}

Subject Classification: 55M30

\section{Introduction}

In Ljusternik-Schnirelmann theory, there are several categories
with different properties. First of all, Ljusternik introduced a
category by means of closed contractible sets which is known as
(classical) Ljusternik-Schnirelmann category \cite{L}. Then
Schnirelmann estimated this category by using cohomology theory.
This method is still the most convenient way to compute LS
categories. For this reason, some authors use the same notations
for cohomological category \cite{MS}. The cuplength category is
also derived from this approach to LS theory. Besides these
categories, there is another LS category which is similar to the
classical one and it is defined by means of open contractible
subsets \cite{J}. For the excision property of open subsets, this
category is preferable especially in computation.

In the literature, all of the above categories are known as
Ljusternik-Schnirelmann category and it is customary to use the
notation $cat$ for them. In order to distinguish these categories,
we call them: (classical) Ljusternik-Schnirelmann (shortly LS)
category, Cohomology Ljusternik-Schnirelmann (CLS) category, Cup
Length (CL) category and Homotopy Ljusternik-Schnirelmann (HLS)
category, respectively. The aim of this paper is to find some
links and relations among these categories.

First of all in section 2, we define the concepts of category and
precategory. Indeed, both LS and CL categories are precategories
(but not necessarily categories) in an arbitrary topological
space. In section 3, we compare LS and HLS categories and find a
relation between them. In section 4, we introduce the concept of
T-collection which gives an extension of HLS and CLS categories.
Finally in section 5, we prove that the cuplength map is a
precategory and hence defines a category. This category has been
used in \cite{CZ} to prove the Arnold conjecture for even
dimensional tori. We also find a relation between CL and CLS
categories in this section.

\section{Category}
Let $M$ be a topological space. A category on $M$ is a map $\nu:
2^M\lo \mathbb{Z} \cup \{+\infty\}$ which satisfies the following
axioms:

i) If $A\subset B$, then $\nu(A)\leq \nu(B)$.

ii) $\nu (A\cup B)\leq \nu (A)+\nu (B)$.

iii) For every subset $A\subset M$ there exists an open set $U\subset M$ such
that $A\subset U$ and $\nu(A)=\nu(U)$.

iv) If $f:M\lo M$ is a continuous map homotopic to the identity $id_M$, then
$\nu(A)\leq \nu (f(A))$ for every subset $A\subset M$.\\

It has been shown that if $\varphi ^t$ is a continuous flow on a
compact metric space $M$ with a Morse decomposition {$M_1,\cdots
,M_n$}, then $\nu (M) \leq \sum _{i=1} ^n \nu(M_i)$ for every
category $\nu$ on $M$. This result leads to a critical point
theory for gradient-like flows. (See \cite{CZ} and \cite{R} for
details.)

\noindent {\bf Example 1.} (Ljusternik-Schnirelmann category). A
metric space $X$ is an absolute neighborhood extensor, shortly an
ANE, if for every metric space $Y$, every closed subset $B$ of $Y$
and $f:B\lo X$ continuous, there exists a continuous extension of
$f$ defined on a neighborhood of $B$
 in $Y$. For a subset $A\subset X$, we define $\nu_{LS}(A)$ to be the
minimum number of closed sets contractible in $M$ required to cover $A$. When
$X$ is an ANE, $\nu_{LS}$ is a category on $X$ (See \cite{MW}, $\S$ 4.6.)
which satisfies the following axiom:

v) If A consists of a single point, then $\nu (A)=1$.

Note that $\nu_{LS}$ is defined on  every topological space and satisfies
axioms
(i), (ii), (iv) and (v). But there are examples of compact metric spaces in
which $\nu_{LS}$ does not satisfy axiom (iii). \\

\noindent {\bf Example 2.} (Precategory) Let $X$ be a topological
space and $\tau$ be the topology on $X$. A precategory is a map
$\nu_0: \tau\lo \mathbb{Z} \cup\{+\infty\}$ which satisfies axioms
(ii) and (iv). For example $\nu_{LS}$ defines a precategory on
every topological space. In section 5, we shall show that the
cuplength map is also a precategory. Given a precategory $\nu_0$
on $X$, we can define a category $\st{\sim}{\nu_0}: 2^M \lo
\mathbb{Z} \cup \{+\infty\}$ as follows: $$\st{\sim}{\nu_0}
(A)=\min \{\nu_0 (U) | U \subset X \ \T{open, containing}
 \ A\}$$
Notice that $\nu_{LS}$ defines a category on $X$ if and only if
$\nu_{LS}=\st{\sim}{\nu}_{LS}$. Thus $\st{\sim}{\nu}_{LS}$ can be
considered as a generalization of Ljusternik-Schnirelmann
category.
\\

\noindent {\bf Example 3.} (Closure of a category) Let $\nu$ be a
category on a normal topological space $X$. We define
$\ov{\nu}:2^M\lo \mathbb{Z} \cup\{\infty\}$ by
$\ov{\nu}(A)=\nu(\ov{A})$. It is not hard to see that $\ov{\nu}$
is a category. (Normality is used to prove axiom (iii)). We have
$\nu\leq \ov{\nu}$ and if $\nu$ satisfies axiom (v), then so does
$\ov{\nu}$.

\section{ HLS Category}

Let $M$ be a topological space. A subset $A\subset M$ is called
contractible in $M$ if the inclusion map $A\lo M$ is homotopic to
a constant. We define Homotopy Ljusternik-Schnirelmann category as follows:\\

\noindent {\bf Definition.}
 The HLS-category $\nu_H(A)=\nu_H(A,M)$ of a subset $A\subset M$ is
defined to be the minimum number of open sets contractible in $M$
required to cover $M$. If such a covering does not exist, we set
$\nu_H(A)=+\infty$ and if it exists, $A$ is called
$H$-categorizable (in $M$).

It is easy to see that $\nu_H$ satisfies axioms (i)-(iii).
Moreover a subset $A\subset M$ is H-categorizable if and only if
$\nu_H(\{x\})=1$  for every $x\in A$. Thus
 $\nu_H$ satisfies axiom (v) if and only if $M$ is $H$-categorizable.
 The following lemma gives a generalization of axiom (iv). \\

\noindent {\bf Lemma 3.1.} If $Y$ dominates $X$, i.e. there are
continuous maps
 $f:X\lo Y$ and
 $g:Y\lo X$ with  $g\circ f\sim
id_X$, then for every $H$-categorizable subset $A\subset Y$,
$f^{-1} (A)$ is $H$-categorizable and $\nu_H(f^{-1}(A))\leq
 \nu_H(A)$. In particular if $Y$ is $H$-categorizable, then
so is $X$ and $\nu_H(X)\leq \nu_H(Y)$. Hence $\nu _H$ is an
invariant of homotopy type. \\ {\bf Proof.} It is enough to prove
that for every open set $U\subset Y$ contractible in $Y$,
$f^{-1}(U)$ is contractible in $X$. Consider the following
commutative diagram in which $i$ and $j$ are inclusion maps:

\unitlength=1mm \special{em:linewidth 0.4pt} \linethickness{0.4pt}
\begin{picture}(95.33,43.33)
\put(80.00,40.00){\vector(-1,0){20.00}}
\put(50.00,35.00){\vector(0,-1){10.00}}
\put(90.00,35.00){\vector(0,-1){10.00}}
\put(80.00,20.00){\vector(-1,0){20.00}}
\put(70.33,23.67){\makebox(0,0)[cc]{$(f|_{A})^*$}}
\put(70.33,43.33){\makebox(0,0)[cc]{$f^*$}}
\put(50.00,40.00){\makebox(0,0)[cc]{$H^k(X)$}}
\put(46.67,20.00){\makebox(0,0)[cc]{$H^k(A)$}}
\put(54.00,30.00){\makebox(0,0)[cc]{$i^*$}}
\put(95.33,30.33){\makebox(0,0)[cc]{$j^*$}}
\put(90.00,20.00){\makebox(0,0)[cc]{$H^k(f(A))$}}
\put(90.00,40.00){\makebox(0,0)[cc]{$H^k(Y)$}}
\end{picture}

\vspace*{-1cm}

$f\circ i=j\circ f|_V \Rightarrow g \circ f \circ i = g\circ j
\circ f|_V \Rightarrow i \sim g\circ j \circ f|_V \sim$ constant.
$\square$\\

The rest of this section concerns a comparison between $\nu _H$
and $\nu _{LS}$. We first prove that every ANE is H-categorizable.

\noindent {\bf Definition.}
 A topological space $X$ is called semi-locally contractible if for every
$x\in X$ and open set $U\subset X$ with $x\in U$, there exists a
neighborhood $V$ of $x$ such that $x\in V\subset U$ and $V$ is
contractible in $U$. \\

\noindent {\bf Proposition 3.2.} Every ANE is semi-locally
contractible, hence it is $H$-categorizable. \\ {\bf Proof.}
Suppose that $X$ is an ANE, $x_{0}
 \in X$ and $U\subset X$ is an
open set such that $x_0\in U$. We define $f_0:\ov{U} \times \{0,1\} \cup \{x_0\}
\times [0,1]\lo X$ by $f_0(x,t)=\left\{ \begin{array}{ll}
x & \text{if} \ t=0\\[-0.2cm]
x_0 & \text{otherwise.}
\end{array}\right .$ \\
$f_0$ is continuous and $\ov{U}\times \{0,1\}\cup
\{x_0\}\times[0,1]$ is a closed subset of $X\times [0,1]$. Since
$X$ is an ANE, there exists a continuous extension $f_1$ of $f_0$
defined on a neighborhood of $\{x_0\}\times [0,1]$. We have
$f_1(x_0,t)=f_0(x_0,t)=x_0\in U$. Thus $f_1^{-1}(U)$ is an open
set containing $\{x_0\}\times [0,1]$. By compactness of $[0,1]$,
there is an open set $V\subset U$ such that $V\times [0,1] \subset
f_1^{-1} (U)$. Now consider $f=f_1|_{V\times [0,1]}: V\times
[0,1]\lo U$. We have: $$f(x,0)=f_1(x,0)=f_0(x,0)=x \ \ \text{and}
\ \ f(x,1)=f_1(x,1)=f_0(x,1)=x_0.$$ It means that $V$ is
contractible in $U$. $\square$ \\

\noindent {\bf Proposition 3.3.} If $\nu_{LS}$ defines a category
on a normal topological space $X$, then $\nu_{LS}=\ov{\nu}_H$.
 In particular $\nu_{LS}$ and $\nu_H$ agree on closed
subsets of an $ANE$. \\ {\bf Proof.} Step 1. $\nu_{LS}
(A)=\nu_{LS}(\ov{A})$ for every subset $A\subset X$. \\ Since
$\nu_{LS} (A) \leq \nu_{LS} (\ov{A})$, we may assume that
$\nu_{LS}(A)<\infty$. Let $A\subset \D{\bigcup_{i=1}^{n}} A_i$
where each $A_i$ is closed contractible in $X$. Thus $\ov{A}
\subset \D{\bigcup_{i=1}^n} A_i$ and it follows that $\nu_{LS}
(\ov{A})\leq \nu_{LS}(A)$.

{Step 2.} $\nu_H(A)\leq \nu_{LS}(A)$ for every subset $A\subset
X$.\\ Suppose that $A\subset \D{\bigcup_{j\in J}} A_j$ and each
$A_j$ is closed contractible in $X$. Thus $\nu_{LS}(A_j)=1$ for
every $j\in J$ and by axiom (iii), there exists an open set $U_j$
with $A_j\subset U_j$ and $\nu_{LS}(U_j)=1$. Now each $U_j$ is
open contractible in $X$ and $A\subset \D{\bigcup_{j\in J}} U_j$.

{Step 3.} For every closed subset $A\subset X$, $\nu_{LS}(A)\leq
\nu_H(A)$.\\ We may assume that $\nu_H(A)<\infty$. Suppose that
$A\subset\D{\bigcup_{i=1}^{n}} U_i$ where each $U_i$ is open
contractible in $X$. We have $A=\D{\bigcup_{i=1}^n} A\cap U_i$ and
each $A\cap U_i$ is open in $A$. By Shrinking Lemma \cite{M},
 there are $V_i\subset A$ open in $A$ such
that $A=\D{\bigcup_{i=1}^n}
 V_i$ and $\ov{V}_i \subset A\cap U_i$. (The closure
is taken in $A$ which is a closed subset of $X$ and there is no
ambiguity.) Since $\ov{V}_i\subset U_i$ and $U_i$ is contractible
in $X$, each $\ov{V}_i$ is closed contractible in $X$ and
$A\subset \D{\bigcup_{i=1}^n} \ov{V}_i$.

The proof of Proposition 3.3. is easy now. By steps 1 and 2,
$\nu_H(\ov{A})\leq \nu_{LS} (\ov{A})=\nu_{LS} (A)$ and by steps 1
and 3, $\nu_{LS} (A)=\nu_{LS} (\ov {A})\leq \nu_H(\ov{A})$.
$\square$

the relation $\nu _{LS}=\ov{\nu}_H$ says that $\nu _{LS}$ can be
obtained by $\nu _H$. Moreover the above two results show that
$\nu _H$ is applicable to more spaces than $\nu _{LS}$.

\section{T-collection}
Having a glance at the definition of HLS category, one can easily
find a general method to define a category. We do this by using
the concept of T-collection. A generalization of this concept has
been used in \cite{R} to obtain a result in critical point theory.
\\ {\bf Definition.}
(a) A collection $T$  of open subsets of $M$ is called a
T-collection if for every continuous map $f:M\lo M$ homotopic to
$id_M$, $U\in T$ implies $f^{-1} (U) \in T$. Every $U\in T$ is
called $T$-trivial in $M$. A subset $A\subset M$ is called
$T$-categorizable if $A$ is covered by some $T$-trivial subsets.

(b) For every T-collection $T$ on $M$, we define the associated
category $\nu_T(A)$ to be the minimum number of open sets in $T$
required to cover $A\subset M$. If such a covering does not exist,
we set $\nu_T(A)=+\infty$. It is not hard to see that $\nu_T$ is a
category on $M$. \\

\noindent {\bf Example 1.} Let $U\subset M$ be an open set and $T$
be the set of all $f^{-1}(U)$ where $f:M\lo M$ is continuous
homotopic to $id_M$. Then $T$ is a T-collection.\\ {\bf Example
2.} If $T_j$'s are T-collections for $j\in J$, then so are
$\D{\bigcap_{j\in J}} T_j$ and $\D{\bigcup_{j\in J}} T_j$. It is
easy to see that every T-collection can be obtained by these two
examples. \\

\noindent {\bf Definition.} Suppose that $\nu:2^M\lo \mathbb{Z}
\cup \{+\infty\}$ satisfies axiom (iv). For every $n\in
\mathbb{Z}$ we define $T_{\nu,n}=\{U \subset M | U$ is open and
$\nu(U)\leq n\}$ which is obviously a T-collection. If $\nu$ is a
category, then $T_{\nu,1}$ is called the associated precategory
and it is denoted by $T_{\nu}$. \\

Now there are two natural questions: 1. When a given category is
associated to some T-collection? 2. When a given T-collection is
associated to some category? The rest of this section concerns
these two questions. First of all, notice that by the definition
of $\nu_T$, we have $T\subseteq T_{\nu_T}$. \\

\noindent {\bf Lemma 4.1.} For every category $\nu$ on $M$ and
$n\in\mathbb{N}$, $\nu\leq n\nu_{T_{v,n}}$. In particular $\nu\leq
\nu_{T_{\nu}}$. \\ {\bf Proof.} Let $A$ be any subset of $M$. We
may assume that $\nu_{T\nu}(A)<\infty$ and $A\subset
\D{\bigcup_{i=1}^{m}} U_i$ where $U_i\in T_{\nu, n}$ and
$m=\nu_{T_{\nu,n}}(A)$. Now by axiom (ii), $\nu(A)\leq
\D{\sum_{i=1}^{m}}\nu(U_i)\leq mn=n\nu_{T_{\nu,n}}(A)$.
$\square$\\

\noindent {\bf Proposition 4.2.} i) $T_{\nu_{T_{\nu}}}=T_{\nu}$
for every category $\nu$ on $M$. \\ ii) $\nu_{T_{\nu_T}}=\nu_T$
for every T-collection $T$ on $M$.\\ {\bf Proof.} Notice that if
$\nu \leq \nu'$ then $T_{\nu}\supseteq T_{\nu'}$ and if
$T\subseteq T'$ then $\nu_{T}\geq \nu_{T'}$. Now we have \\
$T\subseteq T_{\nu_T}$, hence $T_{\nu}\subseteq T_{\nu_{T_{\nu}}}
\text{and} \ \nu_{T}\geq \nu_{T_{\nu_T}}$. Similarly $\nu\leq
\nu_{T_\nu}$, hence $\nu_{T_{\nu_T}} \text{and} \ T_{\nu}\supseteq
T_{\nu_{T_{\nu}}}$. $\square$

\noindent {\bf Corollary 4.3} i) For every category $\nu$ on $M$,
$\nu=\nu_{T_{\nu}}$ if and only if $\nu=\nu_T$ for some
T-collection $T$ on $M$. \\ ii) For every T-collection $T$ on $M$,
$T=T_{\nu_{T}}$ if and only if $T=T_{\nu}$ for some category $\nu$
on $M$. \\ {\bf Proof.} If $\nu=\nu_T$, then
$\nu_{T_{\nu}}=\nu_{T_{\nu_{T}}}=\nu_T$ by the above proposition
and hence $\nu_{T_{\nu}}=\nu$. Similarly, if $T=T_{\nu}$, then
$T_{\nu_T}=T_{\nu_{T_{\nu}}}=T_{\nu}=T$. $\square$

\section{Cohomological Category}

This section concerns two examples: Cohomology
Ljusternik-Schnirelmann category and Cup Length category. From now
on, $H^*$ is assumed to be a fixed cohomology functor on a
topological space $M$ with a cup product $\cup$. \\

\noindent {\bf Definition.} A subset $A\subset M$ is called
cohomologically trivial in $M$ if the restriction map $j^*:
H^k(M)\lo H^k(A)$ is zero for $k>0$. The set of all
cohomologically
 trivial open subsets of $M$ is denoted by $T_c(M)$. For every
subset $A\subset M$, we define the cup length of $A$ (in $M$) to
be the minimum integer $N>0$ such that for any set of cohomology
classes $\alpha_j\in H^{k_j} (M)$, $j=1,\cdots , N$ of degree
$k_j\geq 1$, the class $(\alpha_1 \cup \cdots \cup
\alpha_N)|_A=j^* (\alpha_1 \cup \cdots \cup \alpha_N)$ is zero.
Hence $A$ is cohomologically trivial if and only if
$cuplength(A)=1$. \\

\noindent {\bf Proposition 5.1.} Suppose that $A$ and $B$ are
excisive in $X$ and $\alpha,\beta \in H^* (X)$ with
$\alpha|_A=\beta|_B=0$, then $(\alpha \cup \beta)|_{A\cup B}=0$.
In particular if $X=U \cup V$ where $U$ and $V$ are open sets and
$\alpha|_U=\beta|_V=0$, then $\alpha \cup \beta=0$.\\ {\bf Proof.}
Since $A$ and $B$ are excisive, the cup product map
$H^*(X,A)\otimes H^*(X,B)\lo H^* (X,A\cup B)$ is defined \cite{D}
and the following diagram commutes: $$\begin{array}{ccccc}
H^*(X,A) & \otimes & H^*(X,B) & \lo & H^* (X, A\cup B)\\
\downarrow & & \downarrow & & \downarrow\\ H^*(X) & \otimes &
H^*(X) & \lo & H^*(X)\\ \downarrow & & \downarrow & & \downarrow\\
H^*(A) & \otimes & H^*(B) &  & H^*(A\cup B)
\end{array}$$
the rest of the proof is a diagram chase and similar to Lemma 4 in
\cite{CZ}. $\square$

\noindent {\bf Lemma 5.7.} Suppose that $f:X\lo Y$ is a continuous
map such $f^*:H^k(Y)\lo H^k(X)$ is surjective for $k>0$. Then
$cuplength(A)\leq$ $cuplength(f(A))$ for every $A\sub X$, . \\
{\bf Proof.} We may assume that $m=cuplength(f(A))<\infty$. Now
for $\alpha_i \in H^{k_i} (X), i=1,\cdots , m$ with $k_i>0$, there
are $\beta_i\in H^{k_i} (Y)$ such that $f^*(\beta_i)=\alpha_i$.
Consider the following diagram

\unitlength=1mm \special{em:linewidth 0.4pt} \linethickness{0.4pt}
\begin{picture}(95.33,43.33)
\put(80.00,40.00){\vector(-1,0){20.00}}
\put(50.00,35.00){\vector(0,-1){10.00}}
\put(90.00,35.00){\vector(0,-1){10.00}}
\put(80.00,20.00){\vector(-1,0){20.00}}
\put(70.33,23.67){\makebox(0,0)[cc]{$(f|_{A})^*$}}
\put(70.33,43.33){\makebox(0,0)[cc]{$f^*$}}
\put(50.00,40.00){\makebox(0,0)[cc]{$H^k(X)$}}
\put(46.67,20.00){\makebox(0,0)[cc]{$H^k(A)$}}
\put(54.00,30.00){\makebox(0,0)[cc]{$i^*$}}
\put(95.33,30.33){\makebox(0,0)[cc]{$j^*$}}
\put(90.00,20.00){\makebox(0,0)[cc]{$H^k(f(A))$}}
\put(90.00,40.00){\makebox(0,0)[cc]{$H^k(Y)$}}
\end{picture}

\vspace*{-2cm}

\noindent where $i^*$ and $j^*$ are restriction maps. Now we have
$(\alpha_1 \cup \cdots \cup \alpha_m)|_A=i^*(\alpha_1 \cup\cdots
\cup \alpha_m)=i^*(f^*(\beta_1)\cup\cdots \cup (f^*(\beta_m))=
i^*(f^*(\beta_1\cup \cdots \cup \beta_m))=0$ and the proof in
complete. $\square$

The above two propositions show that the cup length
 map is a precategory and hence it
defines a category which is denoted by $\nu_{CL}$. Moreover if we
use the above lemma in the case of $cuplength(A)=1$, we see that
$T_c$ is a T-collection and hence defines a category which is
denoted by $\nu_c$. It is easy to see that
$T_{\nu_{CL}}=T_c\cup\{\varnothing\}$, hence $\nu _
c=\nu_{T_{\nu_{CL}}}$ which is a relation between CLS and CL
categories. Moreover by Lemma 4.1, $\nu_{CL}\leq
\nu_{T_{\nu_{CL}}}=\nu_c$ and since $T_H\subset T_c$, we have
$\nu_{CL} \leq \nu_c \leq \nu_H$. These inequalities show that the
best estimate is provided by $\nu_H$, but $\nu_{CL}$ is somewhat
easier to compute.

\paragraph{Acknowledgments.} The author  wishes to thank professors S. Shahshahani
and M. Hesaaraki for helpful discussions.

config: arxiv


TITLE: A nice way to phrase this theorem about ideals in Noetherian rings?
QUESTION [0 upvotes]: I came across this theorem:

Theorem. Let $I$ be an ideal of a Noetherian ring $R$. Then there is $r \in \mathbb{N}$ with $\operatorname{rad}(I)^r \subseteq I$.

Is there a concise way to state this in term of primary or nil ideals?
At first I tried comparing this with the assertion "$\operatorname{rad}(I)/I$ is a nil ideal of $R/I$", but the latter only says that whenever $x \in \operatorname{rad}(I)$, there is $r \in \mathbb{N}$ with $x^r \in I$. So it's a weaker assertion for two reasons: one, in the theorem $r$ is not allowed to depend on $x$, and two, the theorem says that any product $x_1 \ldots x_r$ is in $I$, not just elements of the form $x^r$.

REPLY [1 votes]: You can say that ‘ $\operatorname{rad}I/I$ is nilpotent in $R/I$ (or the radical of $R/I$ is nilpotent).


TITLE: Using the defenition of a limit, show this: $\lim_{x\rightarrow a} f(x)= \lim_{h\rightarrow 0}f(a+h)$ when at least one of the two limits exist.
QUESTION [0 upvotes]: Using the defenition of a limit, show that this is true: $\lim_{x\rightarrow a} f(x)= \lim_{h\rightarrow 0}f(a+h)$ when at least one of the two limits exist (thus also proof that the other one exists).
The definition of limits for which I got is $\lim_{x\rightarrow a} f(x) = b$ this is true if with $x\in dom(f)$ and $d(x,a)<\delta$ then $d(f(x),b)<\epsilon$ where  $\epsilon, \delta$ are positive real numbers.
I have no idea where to start here.

REPLY [0 votes]: The two sides of the equation differ by a change of variable: $x = a + h$ ($a$ is a constant). As $x \mapsto a$ means $h = x - a \mapsto 0$ you get the desired equality.


text:
\typeout{TCILATEX Macros for Scientific Word and Scientific WorkPlace 5.5 <06 Oct 2005>.}
\typeout{NOTICE:  This macro file is NOT proprietary and may be
freely copied and distributed.}

\makeatletter

\ifx\pdfoutput\relax\let\pdfoutput=\undefined\fi
\newcount\msipdfoutput
\ifx\pdfoutput\undefined
\else
 \ifcase\pdfoutput
 \else
    \msipdfoutput=1
    \ifx\paperwidth\undefined
    \else
      \ifdim\paperheight=0pt\relax
      \else
        \pdfpageheight\paperheight
      \fi
      \ifdim\paperwidth=0pt\relax
      \else
        \pdfpagewidth\paperwidth
      \fi
    \fi
  \fi
\fi

\def\FMTeXButton#1{#1}

\newcount\@hour\newcount\@minute\chardef\@x10\chardef\@xv60
\def\tcitime{
\def\@time{
  \@minute\time\@hour\@minute\divide\@hour\@xv
  \ifnum\@hour<\@x 0\fi\the\@hour:
  \multiply\@hour\@xv\advance\@minute-\@hour
  \ifnum\@minute<\@x 0\fi\the\@minute
  }}

\def\x@hyperref#1#2#3{

   \catcode`\~ = 12
   \catcode`\$ = 12
   \catcode`\_ = 12
   \catcode`\# = 12
   \catcode`\& = 12
   \catcode`\% = 12
   \y@hyperref{#1}{#2}{#3}
}

\def\y@hyperref#1#2#3#4{
   #2\ref{#4}#3
   \catcode`\~ = 13
   \catcode`\$ = 3
   \catcode`\_ = 8
   \catcode`\# = 6
   \catcode`\& = 4
   \catcode`\% = 14
}

\@ifundefined{hyperref}{\let\hyperref\x@hyperref}{}
\@ifundefined{msihyperref}{\let\msihyperref\x@hyperref}{}

\@ifundefined{qExtProgCall}{\def\qExtProgCall#1#2#3#4#5#6{\relax}}{}

\def\FILENAME#1{#1}

\def\QCTOpt[#1]#2{
  \def\QCTOptB{#1}
  \def\QCTOptA{#2}
}
\def\QCTNOpt#1{
  \def\QCTOptA{#1}
  \let\QCTOptB\empty
}
\def\Qct{
  \@ifnextchar[{
    \QCTOpt}{\QCTNOpt}
}
\def\QCBOpt[#1]#2{
  \def\QCBOptB{#1}
  \def\QCBOptA{#2}
}
\def\QCBNOpt#1{
  \def\QCBOptA{#1}
  \let\QCBOptB\empty
}
\def\Qcb{
  \@ifnextchar[{
    \QCBOpt}{\QCBNOpt}
}
\def\PrepCapArgs{
  \ifx\QCBOptA\empty
    \ifx\QCTOptA\empty
      {}
    \else
      \ifx\QCTOptB\empty
        {\QCTOptA}
      \else
        [\QCTOptB]{\QCTOptA}
      \fi
    \fi
  \else
    \ifx\QCBOptA\empty
      {}
    \else
      \ifx\QCBOptB\empty
        {\QCBOptA}
      \else
        [\QCBOptB]{\QCBOptA}
      \fi
    \fi
  \fi
}
\newcount\GRAPHICSTYPE

\GRAPHICSTYPE=\z@
\def\GRAPHICSPS#1{
 \ifcase\GRAPHICSTYPE
   \special{ps: #1}
 \or
   \special{language "PS", include "#1"}

 \fi
}

\def\GRAPHICSHP#1{\special{include #1}}

\def\graffile#1#2#3#4{

    \bgroup
	   \@inlabelfalse
       \leavevmode
       \@ifundefined{bbl@deactivate}{\def~{\string~}}{\activesoff}
        \raise -#4 \BOXTHEFRAME{
           \hbox to #2{\raise #3\hbox to #2{\null #1\hfil}}}
    \egroup
}

\def\draftbox#1#2#3#4{
 \leavevmode\raise -#4 \hbox{
  \frame{\rlap{\protect\tiny #1}\hbox to #2
   {\vrule height#3 width\z@ depth\z@\hfil}
  }
 }
}

\newcount\@msidraft
\@msidraft=\z@
\let\nographics=\@msidraft
\newif\ifwasdraft
\wasdraftfalse

\def\GRAPHIC#1#2#3#4#5{
   \ifnum\@msidraft=\@ne\draftbox{#2}{#3}{#4}{#5}
   \else\graffile{#1}{#3}{#4}{#5}
   \fi
}

\def\addtoLaTeXparams#1{
    \edef\LaTeXparams{\LaTeXparams #1}}

\newif\ifBoxFrame \BoxFramefalse
\newif\ifOverFrame \OverFramefalse
\newif\ifUnderFrame \UnderFramefalse

\def\BOXTHEFRAME#1{
   \hbox{
      \ifBoxFrame
         \frame{#1}
      \else
         {#1}
      \fi
   }
}

\def\doFRAMEparams#1{\BoxFramefalse\OverFramefalse\UnderFramefalse\readFRAMEparams#1\end}
\def\readFRAMEparams#1{
 \ifx#1\end
  \let\next=\relax
  \else
  \ifx#1i\dispkind=\z@\fi
  \ifx#1d\dispkind=\@ne\fi
  \ifx#1f\dispkind=\tw@\fi
  \ifx#1t\addtoLaTeXparams{t}\fi
  \ifx#1b\addtoLaTeXparams{b}\fi
  \ifx#1p\addtoLaTeXparams{p}\fi
  \ifx#1h\addtoLaTeXparams{h}\fi
  \ifx#1X\BoxFrametrue\fi
  \ifx#1O\OverFrametrue\fi
  \ifx#1U\UnderFrametrue\fi
  \ifx#1w
    \ifnum\@msidraft=1\wasdrafttrue\else\wasdraftfalse\fi
    \@msidraft=\@ne
  \fi
  \let\next=\readFRAMEparams
  \fi
 \next
 }

\def\IFRAME#1#2#3#4#5#6{
      \bgroup
      \let\QCTOptA\empty
      \let\QCTOptB\empty
      \let\QCBOptA\empty
      \let\QCBOptB\empty
      #6
      \parindent=0pt
      \leftskip=0pt
      \rightskip=0pt
      \setbox0=\hbox{\QCBOptA}
      \@tempdima=#1\relax
      \ifOverFrame

          \typeout{This is not implemented yet}
          \show\HELP
      \else
         \ifdim\wd0>\@tempdima
            \advance\@tempdima by \@tempdima
            \ifdim\wd0 >\@tempdima
               \setbox1 =\vbox{
                  \unskip\hbox to \@tempdima{\hfill\GRAPHIC{#5}{#4}{#1}{#2}{#3}\hfill}
                  \unskip\hbox to \@tempdima{\parbox[b]{\@tempdima}{\QCBOptA}}
               }
               \wd1=\@tempdima
            \else
               \textwidth=\wd0
               \setbox1 =\vbox{
                 \noindent\hbox to \wd0{\hfill\GRAPHIC{#5}{#4}{#1}{#2}{#3}\hfill}\\%
                 \noindent\hbox{\QCBOptA}
               }
               \wd1=\wd0
            \fi
         \else
            \ifdim\wd0>0pt
              \hsize=\@tempdima
              \setbox1=\vbox{
                \unskip\GRAPHIC{#5}{#4}{#1}{#2}{0pt}
                \break
                \unskip\hbox to \@tempdima{\hfill \QCBOptA\hfill}
              }
              \wd1=\@tempdima
           \else
              \hsize=\@tempdima
              \setbox1=\vbox{
                \unskip\GRAPHIC{#5}{#4}{#1}{#2}{0pt}
              }
              \wd1=\@tempdima
           \fi
         \fi
         \@tempdimb=\ht1

         \advance\@tempdimb by -#2
         \advance\@tempdimb by #3
         \leavevmode
         \raise -\@tempdimb \hbox{\box1}
      \fi
      \egroup
}

\def\DFRAME#1#2#3#4#5{
  \vspace\topsep
  \hfil\break
  \bgroup
     \leftskip\@flushglue
	 \rightskip\@flushglue
	 \parindent\z@
	 \parfillskip\z@skip
     \let\QCTOptA\empty
     \let\QCTOptB\empty
     \let\QCBOptA\empty
     \let\QCBOptB\empty
	 \vbox\bgroup
        \ifOverFrame
           #5\QCTOptA\par
        \fi
        \GRAPHIC{#4}{#3}{#1}{#2}{\z@}
        \ifUnderFrame
           \break#5\QCBOptA
        \fi
	 \egroup
  \egroup
  \vspace\topsep
  \break
}

\def\FFRAME#1#2#3#4#5#6#7{

  \@ifundefined{floatstyle}
    {
     \begin{figure}[#1]
    }
    {
	 \ifx#1h
      \begin{figure}[H]
	 \else
      \begin{figure}[#1]
	 \fi
	}
  \let\QCTOptA\empty
  \let\QCTOptB\empty
  \let\QCBOptA\empty
  \let\QCBOptB\empty
  \ifOverFrame
    #4
    \ifx\QCTOptA\empty
    \else
      \ifx\QCTOptB\empty
        \caption{\QCTOptA}
      \else
        \caption[\QCTOptB]{\QCTOptA}
      \fi
    \fi
    \ifUnderFrame\else
      \label{#5}
    \fi
  \else
    \UnderFrametrue
  \fi
  \begin{center}\GRAPHIC{#7}{#6}{#2}{#3}{\z@}\end{center}
  \ifUnderFrame
    #4
    \ifx\QCBOptA\empty
      \caption{}
    \else
      \ifx\QCBOptB\empty
        \caption{\QCBOptA}
      \else
        \caption[\QCBOptB]{\QCBOptA}
      \fi
    \fi
    \label{#5}
  \fi
  \end{figure}
 }

\newcount\dispkind

\def\makeactives{
  \catcode`\"=\active
  \catcode`\;=\active
  \catcode`\:=\active
  \catcode`\'=\active
  \catcode`\~=\active
}
\bgroup
   \makeactives
   \gdef\activesoff{
      \def"{\string"}
      \def;{\string;}
      \def:{\string:}
      \def'{\string'}
      \def~{\string~}

    }
\egroup

\def\FRAME#1#2#3#4#5#6#7#8{
 \bgroup
 \ifnum\@msidraft=\@ne
   \wasdrafttrue
 \else
   \wasdraftfalse
 \fi
 \def\LaTeXparams{}
 \dispkind=\z@
 \def\LaTeXparams{}
 \doFRAMEparams{#1}
 \ifnum\dispkind=\z@\IFRAME{#2}{#3}{#4}{#7}{#8}{#5}\else
  \ifnum\dispkind=\@ne\DFRAME{#2}{#3}{#7}{#8}{#5}\else
   \ifnum\dispkind=\tw@
    \edef\@tempa{\noexpand\FFRAME{\LaTeXparams}}
    \@tempa{#2}{#3}{#5}{#6}{#7}{#8}
    \fi
   \fi
  \fi
  \ifwasdraft\@msidraft=1\else\@msidraft=0\fi{}
  \egroup
 }

\def\TEXUX#1{"texux"}

\def\BF#1{{\bf {#1}}}
\def\NEG#1{\leavevmode\hbox{\rlap{\thinspace/}{$#1$}}}

\def\limfunc#1{\mathop{\rm #1}}
\def\func#1{\mathop{\rm #1}\nolimits}

\def\unit#1{\mathord{\thinspace\rm #1}}

\long\def\QQQ#1#2{
     \long\expandafter\def\csname#1\endcsname{#2}}
\@ifundefined{QTP}{\def\QTP#1{}}{}
\@ifundefined{QEXCLUDE}{\def\QEXCLUDE#1{}}{}
\@ifundefined{Qlb}{\def\Qlb#1{#1}}{}
\@ifundefined{Qlt}{\def\Qlt#1{#1}}{}
\def\QWE{}
\long\def\QQA#1#2{}
\def\QTR#1#2{{\csname#1\endcsname {#2}}}

  \let\QQQuline\uline
  \let\QQQsout\sout
  \let\QQQuuline\uuline
  \let\QQQuwave\uwave
  \let\QQQxout\xout
\long\def\TeXButton#1#2{#2}
\long\def\QSubDoc#1#2{#2}
\def\EXPAND#1[#2]#3{}
\def\NOEXPAND#1[#2]#3{}
\def\PROTECTED{}
\def\LaTeXparent#1{}
\def\ChildStyles#1{}
\def\ChildDefaults#1{}
\def\QTagDef#1#2#3{}

\@ifundefined{correctchoice}{\def\correctchoice{\relax}}{}
\@ifundefined{HTML}{\def\HTML#1{\relax}}{}
\@ifundefined{TCIIcon}{\def\TCIIcon#1#2#3#4{\relax}}{}
\if@compatibility
  \typeout{Not defining UNICODE  U or CustomNote commands for LaTeX 2.09.}
\else
  \providecommand{\UNICODE}[2][]{\protect\rule{.1in}{.1in}}
  \providecommand{\U}[1]{\protect\rule{.1in}{.1in}}
  \providecommand{\CustomNote}[3][]{\marginpar{#3}}
\fi

\@ifundefined{lambdabar}{
      \def\lambdabar{\errmessage{You have used the lambdabar symbol.
                      This is available for typesetting only in RevTeX styles.}}
   }{}

\@ifundefined{StyleEditBeginDoc}{\def\StyleEditBeginDoc{\relax}}{}

\def\QQfnmark#1{\footnotemark}
\def\QQfntext#1#2{\addtocounter{footnote}{#1}\footnotetext{#2}}

\@ifundefined{TCIMAKEINDEX}{}{\makeindex}

\@ifundefined{abstract}{
 \def\abstract{
  \if@twocolumn
   \section*{Abstract (Not appropriate in this style!)}
   \else \small
   \begin{center}{\bf Abstract\vspace{-.5em}\vspace{\z@}}\end{center}
   \quotation
   \fi
  }
 }{
 }
\@ifundefined{endabstract}{\def\endabstract
  {\if@twocolumn\else\endquotation\fi}}{}
\@ifundefined{maketitle}{\def\maketitle#1{}}{}
\@ifundefined{affiliation}{\def\affiliation#1{}}{}
\@ifundefined{proof}{\def\proof{\noindent{\bfseries Proof. }}}{}
\@ifundefined{endproof}{\def\endproof{\mbox{\ \rule{.1in}{.1in}}}}{}
\@ifundefined{newfield}{\def\newfield#1#2{}}{}
\@ifundefined{chapter}{\def\chapter#1{\par(Chapter head:)#1\par }
 \newcount\c@chapter}{}
\@ifundefined{part}{\def\part#1{\par(Part head:)#1\par }}{}
\@ifundefined{section}{\def\section#1{\par(Section head:)#1\par }}{}
\@ifundefined{subsection}{\def\subsection#1
 {\par(Subsection head:)#1\par }}{}
\@ifundefined{subsubsection}{\def\subsubsection#1
 {\par(Subsubsection head:)#1\par }}{}
\@ifundefined{paragraph}{\def\paragraph#1
 {\par(Subsubsubsection head:)#1\par }}{}
\@ifundefined{subparagraph}{\def\subparagraph#1
 {\par(Subsubsubsubsection head:)#1\par }}{}

\@ifundefined{therefore}{\def\therefore{}}{}
\@ifundefined{backepsilon}{\def\backepsilon{}}{}
\@ifundefined{yen}{\def\yen{\hbox{\rm\rlap=Y}}}{}
\@ifundefined{registered}{
   \def\registered{\relax\ifmmode{}\r@gistered
                    \else$\m@th\r@gistered$\fi}
 \def\r@gistered{^{\ooalign
  {\hfil\raise.07ex\hbox{$\scriptstyle\rm\text{R}$}\hfil\crcr
  \mathhexbox20D}}}}{}
\@ifundefined{Eth}{\def\Eth{}}{}
\@ifundefined{eth}{\def\eth{}}{}
\@ifundefined{Thorn}{\def\Thorn{}}{}
\@ifundefined{thorn}{\def\thorn{}}{}

\def\TEXTsymbol#1{\mbox{$#1$}}
\@ifundefined{degree}{\def\degree{{}^{\circ}}}{}

\newdimen\theight
\@ifundefined{Column}{\def\Column{
 \vadjust{\setbox\z@=\hbox{\scriptsize\quad\quad tcol}
  \theight=\ht\z@\advance\theight by \dp\z@\advance\theight by \lineskip
  \kern -\theight \vbox to \theight{
   \rightline{\rlap{\box\z@}}
   \vss
   }
  }
 }}{}

\@ifundefined{qed}{\def\qed{
 \ifhmode\unskip\nobreak\fi\ifmmode\ifinner\else\hskip5\p@\fi\fi
 \hbox{\hskip5\p@\vrule width4\p@ height6\p@ depth1.5\p@\hskip\p@}
 }}{}

\@ifundefined{cents}{\def\cents{\hbox{\rm\rlap c/}}}{}
\@ifundefined{tciLaplace}{\def\tciLaplace{\ensuremath{\mathcal{L}}}}{}
\@ifundefined{tciFourier}{\def\tciFourier{\ensuremath{\mathcal{F}}}}{}
\@ifundefined{textcurrency}{\def\textcurrency{\hbox{\rm\rlap xo}}}{}
\@ifundefined{texteuro}{\def\texteuro{\hbox{\rm\rlap C=}}}{}
\@ifundefined{euro}{\def\euro{\hbox{\rm\rlap C=}}}{}
\@ifundefined{textfranc}{\def\textfranc{\hbox{\rm\rlap-F}}}{}
\@ifundefined{textlira}{\def\textlira{\hbox{\rm\rlap L=}}}{}
\@ifundefined{textpeseta}{\def\textpeseta{\hbox{\rm P\negthinspace s}}}{}

\@ifundefined{miss}{\def\miss{\hbox{\vrule height2\p@ width 2\p@ depth\z@}}}{}

\@ifundefined{vvert}{\def\vvert{\Vert}}{}

\@ifundefined{tcol}{\def\tcol#1{{\baselineskip=6\p@ \vcenter{#1}} \Column}}{}

\@ifundefined{dB}{\def\dB{\hbox{{}}}}{}
\@ifundefined{mB}{\def\mB#1{\hbox{$#1$}}}{}
\@ifundefined{nB}{\def\nB#1{\hbox{#1}}}{}

\@ifundefined{note}{\def\note{$^{\dag}}}{}

\def\newfmtname{LaTeX2e}

\ifx\fmtname\newfmtname
  \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
  \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
  \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
  \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
  \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
  \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
  \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
\fi

\def\alpha{{\Greekmath 010B}}
\def\beta{{\Greekmath 010C}}
\def\gamma{{\Greekmath 010D}}
\def\delta{{\Greekmath 010E}}
\def\epsilon{{\Greekmath 010F}}
\def\zeta{{\Greekmath 0110}}
\def\eta{{\Greekmath 0111}}
\def\theta{{\Greekmath 0112}}
\def\iota{{\Greekmath 0113}}
\def\kappa{{\Greekmath 0114}}
\def\lambda{{\Greekmath 0115}}
\def\mu{{\Greekmath 0116}}
\def\nu{{\Greekmath 0117}}
\def\xi{{\Greekmath 0118}}
\def\pi{{\Greekmath 0119}}
\def\rho{{\Greekmath 011A}}
\def\sigma{{\Greekmath 011B}}
\def\tau{{\Greekmath 011C}}
\def\upsilon{{\Greekmath 011D}}
\def\phi{{\Greekmath 011E}}
\def\chi{{\Greekmath 011F}}
\def\psi{{\Greekmath 0120}}
\def\omega{{\Greekmath 0121}}
\def\varepsilon{{\Greekmath 0122}}
\def\vartheta{{\Greekmath 0123}}
\def\varpi{{\Greekmath 0124}}
\def\varrho{{\Greekmath 0125}}
\def\varsigma{{\Greekmath 0126}}
\def\varphi{{\Greekmath 0127}}

\def\nabla{{\Greekmath 0272}}
\def\FindBoldGroup{
   {\setbox0=\hbox{$\mathbf{x\global\edef\theboldgroup{\the\mathgroup}}$}}
}

\def\Greekmath#1#2#3#4{
    \if@compatibility
        \ifnum\mathgroup=\symbold
           \mathchoice{\mbox{\boldmath$\displaystyle\mathchar"#1#2#3#4$}}
                      {\mbox{\boldmath$\textstyle\mathchar"#1#2#3#4$}}
                      {\mbox{\boldmath$\scriptstyle\mathchar"#1#2#3#4$}}
                      {\mbox{\boldmath$\scriptscriptstyle\mathchar"#1#2#3#4$}}
        \else
           \mathchar"#1#2#3#4
        \fi
    \else
        \FindBoldGroup
        \ifnum\mathgroup=\theboldgroup
           \mathchoice{\mbox{\boldmath$\displaystyle\mathchar"#1#2#3#4$}}
                      {\mbox{\boldmath$\textstyle\mathchar"#1#2#3#4$}}
                      {\mbox{\boldmath$\scriptstyle\mathchar"#1#2#3#4$}}
                      {\mbox{\boldmath$\scriptscriptstyle\mathchar"#1#2#3#4$}}
        \else
           \mathchar"#1#2#3#4
        \fi
	  \fi}

\newif\ifGreekBold  \GreekBoldfalse
\let\SAVEPBF=\pbf
\def\pbf{\GreekBoldtrue\SAVEPBF}

\@ifundefined{theorem}{\newtheorem{theorem}{Theorem}}{}
\@ifundefined{lemma}{\newtheorem{lemma}[theorem]{Lemma}}{}
\@ifundefined{corollary}{\newtheorem{corollary}[theorem]{Corollary}}{}
\@ifundefined{conjecture}{\newtheorem{conjecture}[theorem]{Conjecture}}{}
\@ifundefined{proposition}{\newtheorem{proposition}[theorem]{Proposition}}{}
\@ifundefined{axiom}{\newtheorem{axiom}{Axiom}}{}
\@ifundefined{remark}{\newtheorem{remark}{Remark}}{}
\@ifundefined{example}{\newtheorem{example}{Example}}{}
\@ifundefined{exercise}{\newtheorem{exercise}{Exercise}}{}
\@ifundefined{definition}{\newtheorem{definition}{Definition}}{}

\@ifundefined{mathletters}{

  \newcounter{equationnumber}
  \def\mathletters{
     \addtocounter{equation}{1}
     \edef\@currentlabel{\theequation}
     \setcounter{equationnumber}{\c@equation}
     \setcounter{equation}{0}
     \edef\theequation{\@currentlabel\noexpand\alph{equation}}
  }
  \def\endmathletters{
     \setcounter{equation}{\value{equationnumber}}
  }
}{}

\@ifundefined{BibTeX}{
    \def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em
                 T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}}{}
\@ifundefined{AmS}
    {\def\AmS{{\protect\usefont{OMS}{cmsy}{m}{n}
                A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}}{}
\@ifundefined{AmSTeX}{\def\AmSTeX{\protect\AmS-\protect\TeX\@}}{}

\def\@@eqncr{\let\@tempa\relax
    \ifcase\@eqcnt \def\@tempa{& & &}\or \def\@tempa{& &}
      \else \def\@tempa{&}\fi
     \@tempa
     \if@eqnsw
        \iftag@
           \@taggnum
        \else
           \@eqnnum\stepcounter{equation}
        \fi
     \fi
     \global\tag@false
     \global\@eqnswtrue
     \global\@eqcnt\z@\cr}

\def\TCItag{\@ifnextchar*{\@TCItagstar}{\@TCItag}}
\def\@TCItag#1{
    \global\tag@true
    \global\def\@taggnum{(#1)}
    \global\def\@currentlabel{#1}}
\def\@TCItagstar*#1{
    \global\tag@true
    \global\def\@taggnum{#1}
    \global\def\@currentlabel{#1}}

\def\QATOP#1#2{{#1 \atop #2}}
\def\QTATOP#1#2{{\textstyle {#1 \atop #2}}}
\def\QDATOP#1#2{{\displaystyle {#1 \atop #2}}}
\def\QABOVE#1#2#3{{#2 \above#1 #3}}
\def\QTABOVE#1#2#3{{\textstyle {#2 \above#1 #3}}}
\def\QDABOVE#1#2#3{{\displaystyle {#2 \above#1 #3}}}
\def\QOVERD#1#2#3#4{{#3 \overwithdelims#1#2 #4}}
\def\QTOVERD#1#2#3#4{{\textstyle {#3 \overwithdelims#1#2 #4}}}
\def\QDOVERD#1#2#3#4{{\displaystyle {#3 \overwithdelims#1#2 #4}}}
\def\QATOPD#1#2#3#4{{#3 \atopwithdelims#1#2 #4}}
\def\QTATOPD#1#2#3#4{{\textstyle {#3 \atopwithdelims#1#2 #4}}}
\def\QDATOPD#1#2#3#4{{\displaystyle {#3 \atopwithdelims#1#2 #4}}}
\def\QABOVED#1#2#3#4#5{{#4 \abovewithdelims#1#2#3 #5}}
\def\QTABOVED#1#2#3#4#5{{\textstyle
   {#4 \abovewithdelims#1#2#3 #5}}}
\def\QDABOVED#1#2#3#4#5{{\displaystyle
   {#4 \abovewithdelims#1#2#3 #5}}}

\def\tint{\msi@int\textstyle\int}
\def\tiint{\msi@int\textstyle\iint}
\def\tiiint{\msi@int\textstyle\iiint}
\def\tiiiint{\msi@int\textstyle\iiiint}
\def\tidotsint{\msi@int\textstyle\idotsint}
\def\toint{\msi@int\textstyle\oint}

\def\tsum{\mathop{\textstyle \sum }}
\def\tprod{\mathop{\textstyle \prod }}
\def\tbigcap{\mathop{\textstyle \bigcap }}
\def\tbigwedge{\mathop{\textstyle \bigwedge }}
\def\tbigoplus{\mathop{\textstyle \bigoplus }}
\def\tbigodot{\mathop{\textstyle \bigodot }}
\def\tbigsqcup{\mathop{\textstyle \bigsqcup }}
\def\tcoprod{\mathop{\textstyle \coprod }}
\def\tbigcup{\mathop{\textstyle \bigcup }}
\def\tbigvee{\mathop{\textstyle \bigvee }}
\def\tbigotimes{\mathop{\textstyle \bigotimes }}
\def\tbiguplus{\mathop{\textstyle \biguplus }}

\newtoks\temptoksa
\newtoks\temptoksb
\newtoks\temptoksc

\def\msi@int#1#2{
 \def\@temp{{#1#2\the\temptoksc_{\the\temptoksa}^{\the\temptoksb}}}
 \futurelet\@nextcs
 \@int
}

\def\@int{
   \ifx\@nextcs\limits
      \typeout{Found limits}
      \temptoksc={\limits}
	  \let\@next\@intgobble
   \else\ifx\@nextcs\nolimits
      \typeout{Found nolimits}
      \temptoksc={\nolimits}
	  \let\@next\@intgobble
   \else
      \typeout{Did not find limits or no limits}
      \temptoksc={}
      \let\@next\msi@limits
   \fi\fi
   \@next
}

\def\@intgobble#1{
   \typeout{arg is #1}
   \msi@limits
}

\def\msi@limits{
   \temptoksa={}
   \temptoksb={}
   \@ifnextchar_{\@limitsa}{\@limitsb}
}

\def\@limitsa_#1{
   \temptoksa={#1}
   \@ifnextchar^{\@limitsc}{\@temp}
}

\def\@limitsb{
   \@ifnextchar^{\@limitsc}{\@temp}
}

\def\@limitsc^#1{
   \temptoksb={#1}
   \@ifnextchar_{\@limitsd}{\@temp}
}

\def\@limitsd_#1{
   \temptoksa={#1}
   \@temp
}

\def\dint{\msi@int\displaystyle\int}
\def\diint{\msi@int\displaystyle\iint}
\def\diiint{\msi@int\displaystyle\iiint}
\def\diiiint{\msi@int\displaystyle\iiiint}
\def\didotsint{\msi@int\displaystyle\idotsint}
\def\doint{\msi@int\displaystyle\oint}

\def\dsum{\mathop{\displaystyle \sum }}
\def\dprod{\mathop{\displaystyle \prod }}
\def\dbigcap{\mathop{\displaystyle \bigcap }}
\def\dbigwedge{\mathop{\displaystyle \bigwedge }}
\def\dbigoplus{\mathop{\displaystyle \bigoplus }}
\def\dbigodot{\mathop{\displaystyle \bigodot }}
\def\dbigsqcup{\mathop{\displaystyle \bigsqcup }}
\def\dcoprod{\mathop{\displaystyle \coprod }}
\def\dbigcup{\mathop{\displaystyle \bigcup }}
\def\dbigvee{\mathop{\displaystyle \bigvee }}
\def\dbigotimes{\mathop{\displaystyle \bigotimes }}
\def\dbiguplus{\mathop{\displaystyle \biguplus }}

\if@compatibility\else

  \RequirePackage{amsmath}
\fi

\def\ExitTCILatex{\makeatother\endinput}

\bgroup
\ifx\ds@amstex\relax
   \message{amstex already loaded}\aftergroup\ExitTCILatex
\else
   \@ifpackageloaded{amsmath}
      {\if@compatibility\message{amsmath already loaded}\fi\aftergroup\ExitTCILatex}
      {}
   \@ifpackageloaded{amstex}
      {\if@compatibility\message{amstex already loaded}\fi\aftergroup\ExitTCILatex}
      {}
   \@ifpackageloaded{amsgen}
      {\if@compatibility\message{amsgen already loaded}\fi\aftergroup\ExitTCILatex}
      {}
\fi
\egroup

\typeout{TCILATEX defining AMS-like constructs in LaTeX 2.09 COMPATIBILITY MODE}

\let\DOTSI\relax
\def\RIfM@{\relax\ifmmode}
\def\FN@{\futurelet\next}
\newcount\intno@
\def\iint{\DOTSI\intno@\tw@\FN@\ints@}
\def\iiint{\DOTSI\intno@\thr@@\FN@\ints@}
\def\iiiint{\DOTSI\intno@4 \FN@\ints@}
\def\idotsint{\DOTSI\intno@\z@\FN@\ints@}
\def\ints@{\findlimits@\ints@@}
\newif\iflimtoken@
\newif\iflimits@
\def\findlimits@{\limtoken@true\ifx\next\limits\limits@true
 \else\ifx\next\nolimits\limits@false\else
 \limtoken@false\ifx\ilimits@\nolimits\limits@false\else
 \ifinner\limits@false\else\limits@true\fi\fi\fi\fi}
\def\multint@{\int\ifnum\intno@=\z@\intdots@
 \else\intkern@\fi
 \ifnum\intno@>\tw@\int\intkern@\fi
 \ifnum\intno@>\thr@@\int\intkern@\fi
 \int}
\def\multintlimits@{\intop\ifnum\intno@=\z@\intdots@\else\intkern@\fi
 \ifnum\intno@>\tw@\intop\intkern@\fi
 \ifnum\intno@>\thr@@\intop\intkern@\fi\intop}
\def\intic@{
    \mathchoice{\hskip.5em}{\hskip.4em}{\hskip.4em}{\hskip.4em}}
\def\negintic@{\mathchoice
 {\hskip-.5em}{\hskip-.4em}{\hskip-.4em}{\hskip-.4em}}
\def\ints@@{\iflimtoken@
 \def\ints@@@{\iflimits@\negintic@
   \mathop{\intic@\multintlimits@}\limits
  \else\multint@\nolimits\fi
  \eat@}
 \else
 \def\ints@@@{\iflimits@\negintic@
  \mathop{\intic@\multintlimits@}\limits\else
  \multint@\nolimits\fi}\fi\ints@@@}
\def\intkern@{\mathchoice{\!\!\!}{\!\!}{\!\!}{\!\!}}
\def\plaincdots@{\mathinner{\cdotp\cdotp\cdotp}}
\def\intdots@{\mathchoice{\plaincdots@}
 {{\cdotp}\mkern1.5mu{\cdotp}\mkern1.5mu{\cdotp}}
 {{\cdotp}\mkern1mu{\cdotp}\mkern1mu{\cdotp}}
 {{\cdotp}\mkern1mu{\cdotp}\mkern1mu{\cdotp}}}

\def\RIfM@{\relax\protect\ifmmode}
\def\text{\RIfM@\expandafter\text@\else\expandafter\mbox\fi}
\let\nfss@text\text
\def\text@#1{\mathchoice
   {\textdef@\displaystyle\f@size{#1}}
   {\textdef@\textstyle\tf@size{\firstchoice@false #1}}
   {\textdef@\textstyle\sf@size{\firstchoice@false #1}}
   {\textdef@\textstyle \ssf@size{\firstchoice@false #1}}
   \glb@settings}

\def\textdef@#1#2#3{\hbox{{
                    \everymath{#1}
                    \let\f@size#2\selectfont
                    #3}}}
\newif\iffirstchoice@
\firstchoice@true

\def\Let@{\relax\iffalse{\fi\let\\=\cr\iffalse}\fi}
\def\vspace@{\def\vspace##1{\crcr\noalign{\vskip##1\relax}}}
\def\multilimits@{\bgroup\vspace@\Let@
 \baselineskip\fontdimen10 \scriptfont\tw@
 \advance\baselineskip\fontdimen12 \scriptfont\tw@
 \lineskip\thr@@\fontdimen8 \scriptfont\thr@@
 \lineskiplimit\lineskip
 \vbox\bgroup\ialign\bgroup\hfil$\m@th\scriptstyle{##}$\hfil\crcr}
\def\Sb{_\multilimits@}
\def\endSb{\crcr\egroup\egroup\egroup}
\def\Sp{^\multilimits@}
\let\endSp\endSb

\newdimen\ex@
\ex@.2326ex
\def\rightarrowfill@#1{$#1\m@th\mathord-\mkern-6mu\cleaders
 \hbox{$#1\mkern-2mu\mathord-\mkern-2mu$}\hfill
 \mkern-6mu\mathord\rightarrow$}
\def\leftarrowfill@#1{$#1\m@th\mathord\leftarrow\mkern-6mu\cleaders
 \hbox{$#1\mkern-2mu\mathord-\mkern-2mu$}\hfill\mkern-6mu\mathord-$}
\def\leftrightarrowfill@#1{$#1\m@th\mathord\leftarrow
\mkern-6mu\cleaders
 \hbox{$#1\mkern-2mu\mathord-\mkern-2mu$}\hfill
 \mkern-6mu\mathord\rightarrow$}
\def\overrightarrow{\mathpalette\overrightarrow@}
\def\overrightarrow@#1#2{\vbox{\ialign{##\crcr\rightarrowfill@#1\crcr
 \noalign{\kern-\ex@\nointerlineskip}$\m@th\hfil#1#2\hfil$\crcr}}}
\let\overarrow\overrightarrow
\def\overleftarrow{\mathpalette\overleftarrow@}
\def\overleftarrow@#1#2{\vbox{\ialign{##\crcr\leftarrowfill@#1\crcr
 \noalign{\kern-\ex@\nointerlineskip}$\m@th\hfil#1#2\hfil$\crcr}}}
\def\overleftrightarrow{\mathpalette\overleftrightarrow@}
\def\overleftrightarrow@#1#2{\vbox{\ialign{##\crcr
   \leftrightarrowfill@#1\crcr
 \noalign{\kern-\ex@\nointerlineskip}$\m@th\hfil#1#2\hfil$\crcr}}}
\def\underrightarrow{\mathpalette\underrightarrow@}
\def\underrightarrow@#1#2{\vtop{\ialign{##\crcr$\m@th\hfil#1#2\hfil
  $\crcr\noalign{\nointerlineskip}\rightarrowfill@#1\crcr}}}
\let\underarrow\underrightarrow
\def\underleftarrow{\mathpalette\underleftarrow@}
\def\underleftarrow@#1#2{\vtop{\ialign{##\crcr$\m@th\hfil#1#2\hfil
  $\crcr\noalign{\nointerlineskip}\leftarrowfill@#1\crcr}}}
\def\underleftrightarrow{\mathpalette\underleftrightarrow@}
\def\underleftrightarrow@#1#2{\vtop{\ialign{##\crcr$\m@th
  \hfil#1#2\hfil$\crcr
 \noalign{\nointerlineskip}\leftrightarrowfill@#1\crcr}}}

\def\qopnamewl@#1{\mathop{\operator@font#1}\nlimits@}
\let\nlimits@\displaylimits
\def\setboxz@h{\setbox\z@\hbox}

\def\varlim@#1#2{\mathop{\vtop{\ialign{##\crcr
 \hfil$#1\m@th\operator@font lim$\hfil\crcr
 \noalign{\nointerlineskip}#2#1\crcr
 \noalign{\nointerlineskip\kern-\ex@}\crcr}}}}

 \def\rightarrowfill@#1{\m@th\setboxz@h{$#1-$}\ht\z@\z@
  $#1\copy\z@\mkern-6mu\cleaders
  \hbox{$#1\mkern-2mu\box\z@\mkern-2mu$}\hfill
  \mkern-6mu\mathord\rightarrow$}
\def\leftarrowfill@#1{\m@th\setboxz@h{$#1-$}\ht\z@\z@
  $#1\mathord\leftarrow\mkern-6mu\cleaders
  \hbox{$#1\mkern-2mu\copy\z@\mkern-2mu$}\hfill
  \mkern-6mu\box\z@$}

\def\projlim{\qopnamewl@{proj\,lim}}
\def\injlim{\qopnamewl@{inj\,lim}}
\def\varinjlim{\mathpalette\varlim@\rightarrowfill@}
\def\varprojlim{\mathpalette\varlim@\leftarrowfill@}
\def\varliminf{\mathpalette\varliminf@{}}
\def\varliminf@#1{\mathop{\underline{\vrule\@depth.2\ex@\@width\z@
   \hbox{$#1\m@th\operator@font lim$}}}}
\def\varlimsup{\mathpalette\varlimsup@{}}
\def\varlimsup@#1{\mathop{\overline
  {\hbox{$#1\m@th\operator@font lim$}}}}

\def\stackunder#1#2{\mathrel{\mathop{#2}\limits_{#1}}}

\begingroup \catcode `|=0 \catcode `[= 1
\catcode`]=2 \catcode `\{=12 \catcode `\}=12
\catcode`\\=12
|gdef|@alignverbatim#1\end{align}[#1|end[align]]
|gdef|@salignverbatim#1\end{align*}[#1|end[align*]]

|gdef|@alignatverbatim#1\end{alignat}[#1|end[alignat]]
|gdef|@salignatverbatim#1\end{alignat*}[#1|end[alignat*]]

|gdef|@xalignatverbatim#1\end{xalignat}[#1|end[xalignat]]
|gdef|@sxalignatverbatim#1\end{xalignat*}[#1|end[xalignat*]]

|gdef|@gatherverbatim#1\end{gather}[#1|end[gather]]
|gdef|@sgatherverbatim#1\end{gather*}[#1|end[gather*]]

|gdef|@gatherverbatim#1\end{gather}[#1|end[gather]]
|gdef|@sgatherverbatim#1\end{gather*}[#1|end[gather*]]

|gdef|@multilineverbatim#1\end{multiline}[#1|end[multiline]]
|gdef|@smultilineverbatim#1\end{multiline*}[#1|end[multiline*]]

|gdef|@arraxverbatim#1\end{arrax}[#1|end[arrax]]
|gdef|@sarraxverbatim#1\end{arrax*}[#1|end[arrax*]]

|gdef|@tabulaxverbatim#1\end{tabulax}[#1|end[tabulax]]
|gdef|@stabulaxverbatim#1\end{tabulax*}[#1|end[tabulax*]]

|endgroup

\def\align{\@verbatim \frenchspacing\@vobeyspaces \@alignverbatim
You are using the "align" environment in a style in which it is not defined.}
\let\endalign=\endtrivlist

\@namedef{align*}{\@verbatim\@salignverbatim
You are using the "align*" environment in a style in which it is not defined.}
\expandafter\let\csname endalign*\endcsname =\endtrivlist

\def\alignat{\@verbatim \frenchspacing\@vobeyspaces \@alignatverbatim
You are using the "alignat" environment in a style in which it is not defined.}
\let\endalignat=\endtrivlist

\@namedef{alignat*}{\@verbatim\@salignatverbatim
You are using the "alignat*" environment in a style in which it is not defined.}
\expandafter\let\csname endalignat*\endcsname =\endtrivlist

\def\xalignat{\@verbatim \frenchspacing\@vobeyspaces \@xalignatverbatim
You are using the "xalignat" environment in a style in which it is not defined.}
\let\endxalignat=\endtrivlist

\@namedef{xalignat*}{\@verbatim\@sxalignatverbatim
You are using the "xalignat*" environment in a style in which it is not defined.}
\expandafter\let\csname endxalignat*\endcsname =\endtrivlist

\def\gather{\@verbatim \frenchspacing\@vobeyspaces \@gatherverbatim
You are using the "gather" environment in a style in which it is not defined.}
\let\endgather=\endtrivlist

\@namedef{gather*}{\@verbatim\@sgatherverbatim
You are using the "gather*" environment in a style in which it is not defined.}
\expandafter\let\csname endgather*\endcsname =\endtrivlist

\def\multiline{\@verbatim \frenchspacing\@vobeyspaces \@multilineverbatim
You are using the "multiline" environment in a style in which it is not defined.}
\let\endmultiline=\endtrivlist

\@namedef{multiline*}{\@verbatim\@smultilineverbatim
You are using the "multiline*" environment in a style in which it is not defined.}
\expandafter\let\csname endmultiline*\endcsname =\endtrivlist

\def\arrax{\@verbatim \frenchspacing\@vobeyspaces \@arraxverbatim
You are using a type of "array" construct that is only allowed in AmS-LaTeX.}
\let\endarrax=\endtrivlist

\def\tabulax{\@verbatim \frenchspacing\@vobeyspaces \@tabulaxverbatim
You are using a type of "tabular" construct that is only allowed in AmS-LaTeX.}
\let\endtabulax=\endtrivlist

\@namedef{arrax*}{\@verbatim\@sarraxverbatim
You are using a type of "array*" construct that is only allowed in AmS-LaTeX.}
\expandafter\let\csname endarrax*\endcsname =\endtrivlist

\@namedef{tabulax*}{\@verbatim\@stabulaxverbatim
You are using a type of "tabular*" construct that is only allowed in AmS-LaTeX.}
\expandafter\let\csname endtabulax*\endcsname =\endtrivlist

 \def\endequation{
     \ifmmode\ifinner
      \iftag@
        \addtocounter{equation}{-1}
        $\hfil
           \displaywidth\linewidth\@taggnum\egroup \endtrivlist
        \global\tag@false
        \global\@ignoretrue
      \else
        $\hfil
           \displaywidth\linewidth\@eqnnum\egroup \endtrivlist
        \global\tag@false
        \global\@ignoretrue
      \fi
     \else
      \iftag@
        \addtocounter{equation}{-1}
        \eqno \hbox{\@taggnum}
        \global\tag@false
        $$\global\@ignoretrue
      \else
        \eqno \hbox{\@eqnnum}
        $$\global\@ignoretrue
      \fi
     \fi\fi
 }

 \newif\iftag@ \tag@false

 \def\TCItag{\@ifnextchar*{\@TCItagstar}{\@TCItag}}
 \def\@TCItag#1{
     \global\tag@true
     \global\def\@taggnum{(#1)}
     \global\def\@currentlabel{#1}}
 \def\@TCItagstar*#1{
     \global\tag@true
     \global\def\@taggnum{#1}
     \global\def\@currentlabel{#1}}

  \@ifundefined{tag}{
     \def\tag{\@ifnextchar*{\@tagstar}{\@tag}}
     \def\@tag#1{
         \global\tag@true
         \global\def\@taggnum{(#1)}}
     \def\@tagstar*#1{
         \global\tag@true
         \global\def\@taggnum{#1}}
  }{}

\def\tfrac#1#2{{\textstyle {#1 \over #2}}}
\def\dfrac#1#2{{\displaystyle {#1 \over #2}}}
\def\binom#1#2{{#1 \choose #2}}
\def\tbinom#1#2{{\textstyle {#1 \choose #2}}}
\def\dbinom#1#2{{\displaystyle {#1 \choose #2}}}

\makeatother
\endinput


TITLE: Value of the given limit.
QUESTION [5 upvotes]: What is $$\lim _{ x\rightarrow 1 }{ \frac { x\log { \left( x \right) -x+1 }  }{ \left( x-1 \right) \log { \left( x \right)  }  }  } $$
 Note I have used $\lim _{ x\rightarrow 0 }{ \frac { \log { \left( 1+x \right)  }  }{ x }  } =1$ . So I wrote $\log(x)=\log(1+x-1)$ and hence I got $\frac{x^2-2x+1}{x-1}$ after cancelling I got the value as $0$. But the correct answer is $\frac{1}{2}$. Where's my mistake? Any hint. I don't want Lhospital rule or Taylor series if they aren't compulsory to work out the answer .

REPLY [0 votes]: The problem is quite easy  using Taylor and L’Hôpital  but the O.P. wishes this way  forbidden so the question becomes, at least for me, something difficult.  Anyway, here a method of approximation to solve the question (especially when it is knowing that the limit is $\frac 12$):
Let $E$ be the given expression. We have
$$E=\frac{x}{x-1}-\frac{1}{\ln(x)}$$ Put $x=t+1$ so we have $$E=\frac{t+1}{t}-\frac{1}{\ln(t+1)}=1+f(t)$$ where $$f(t)=\frac{1}{t}-\frac{1}{\ln(1+t)}$$
The domain of $f$ is $(-1,0)\cup (0,\infty)$ however if the searched limit exists then prolonging by continuity we know the function $f$ can be considered as continuous on $(-1, \infty)$. The derivative is $$f’(t)=-\frac{1}{t^2}+\frac{1}{\ln^2(1+t)}\gt 0$$ so the function is deduced to be increasing on its domain. Now, calculating some values in the neighborhood of $t=0$
$$ f(0.01)\approx  -0.499170\\ f(0.001)\approx -0.499916\\f(0.0001)\approx -0.499991\\
f(-0.01)\approx  -0.500837\\f(-0.001)\approx  -0.500083\\f(-0.0001)\approx -0.500008$$
Knowing that the limit exists, that $f$ is continuous for $x\gt -1$ and increasing, we can conclude, that this limit indeed is equal to ${\frac {-1}{2}}$.
 Thus $$\lim_{t\to 0}E=1-\frac 12=\color{red}{\frac 12}$$


TITLE: $R/I$ and $I$ are Artinian rings. Is $R$ Artinian?
QUESTION [1 upvotes]: Let $R/I$ and $I$ be Artinian rings. Must $R$ be Artinian?
Considering a sequence of ideals $\{I_n\}$ with $\subseteq$ and after using correspondence theorem, can I claim that there exists $k$ such that $I_{k+i}/I \subseteq I_k/I=I \cdots$

REPLY [0 votes]: Observe that $0 \to I \to R \to R/I \to 0$ is an exact sequence.
If you have the following result at your disposal, you're done:
Lemma: Let $0 \to M' \xrightarrow \alpha M \xrightarrow \beta M'' \to 0$ be an exact sequence of $R$-modules. Then $M$ is Artinian if and only if $M'$ and $M''$ are Artinian.


TITLE: Exponential equation in $\mathbb{Z}$
QUESTION [1 upvotes]: Solve the equation:
$$5^{18x}+12=13^{18y+1},$$ where x, y are positive integer.
I notice that $x=y=0$ is the only solution. I tried to reduce modulo primes but I didn't succeed.

REPLY [1 votes]: $$5^{18x}+12=13^{18y+1}\Leftrightarrow 10^{9x}+12=13^{18y+1}$$
Assume $x\neq 0$, modulo 10, we have
$$2\equiv 3^{18y+1}\pmod{10}$$
Due to $3^{\varphi(10)}=3^{4}\equiv1\pmod{10}$, then
$$2\equiv3^{2y+1}\pmod{10}$$
According CRT(Chinese remainder theorem), we have
\begin{equation}
\begin{cases}
2\equiv 3^{2y+1}\pmod{2} \\
2\equiv 3^{2y+1}\pmod{5} \\
\end{cases}
\end{equation}
However,
$$
2\equiv3^{2y+1}\pmod{2}\Leftrightarrow 0\equiv 1\pmod{2}
$$
Which is impossible, so we are sure that $x=0$, then $y=0$.