text:
Derivation of the Fick’s law.

# Derivation of the Fick’s law for the Lorentz model in a low density regime

G. Basile Dipartimento di Matematica “Guido Castelnuovo”, Sapienza Università di Roma, P.le Aldo Moro 5, I-00185 Roma, Italy A. Nota Dipartimento di Matematica “Guido Castelnuovo”, Sapienza Università di Roma, P.le Aldo Moro 5, I-00185 Roma, Italy F. Pezzotti Dipartimento di Matematica “Guido Castelnuovo”, Sapienza Università di Roma, P.le Aldo Moro 5, I-00185 Roma, Italy  and  M. Pulvirenti Dipartimento di Matematica “Guido Castelnuovo”, Sapienza Università di Roma, P.le Aldo Moro 5, I-00185 Roma, Italy
###### Abstract.

We consider the Lorentz model in a slab with two mass reservoirs at the boundaries. We show that, in a low density regime, there exists a unique stationary solution for the microscopic dynamics which converges to the stationary solution of the heat equation, namely to the linear profile of the density. In the same regime the macroscopic current in the stationary state is given by the Fick’s law, with the diffusion coefficient determined by the Green-Kubo formula.

G. Basile]basile@mat.uniroma1.it A. Nota]nota@mat.uniroma1.it F. Pezzotti]pezzotti@mat.uniroma1.it M. Pulvirenti]pulvirenti@mat.uniroma1.it

## 1. Introduction

One of the most important and challenging problem in the rigorous approach to non-equilibrium Statistical Mechanics is the characterization of stationary nonequilibrium states exhibiting transport phenomena such as energy or mass transport, which are macroscopically described by Fourier’s and Fick’s law respectively. A simple microscopic model to validate the Fick’s Law is the Lorentz gas, namely a system of non interacting light particles in a distribution of scatterers, in contact with two mass reservoirs. One expects that under a suitable space-time scaling (hydrodynamical limit) the stationary mass current is proportional to the gradient of the density. However the rigorous proof of that is a difficult and still open problem.

In this paper we propose a contribution in this direction in a situation of low density. The system we study is the following. Consider the two-dimensional strip In the left and in the right of the boundaries, and respectively, there are two mass reservoirs constituted by free point particles at equilibrium at different densities , . Inside the strip there is a random distribution of hard disks of radius , distributed according to a Poisson law with density . Here is a small scale parameter and we let it go to zero. In the mean time is diverging in such a way that and . Therefore the scatterer configuration is dilute.

The light particles are flowing through the boundaries, from right with density and from left with density They are not interacting among themselves, but are elastically reflected by the obstacles. Their mean free paths vanish as , but not too quickly. More precisely they can vanish at most as in order to have a dilute configuration of scatterers.

We expect that there exists a stationary state for which

 (1.1) J≈−D∇ρ

where is the mass current, is the mass density and is the diffusion coefficient. Formula (1.1) is the well known Fick’s law which we want to prove in the present context.

We underline preliminary that our result holds in a low-density regime. This means that we can use the linear Boltzmann equation as a bridge between our original mechanical system and the diffusion equation. This basic idea has been used in [ESY] [BGS-R] [BNP] to obtain the heat equation from a particle system in different contexts. It works once having an explicit control of the error in the kinetic limit, which suggests the scale of times for which the diffusive limit can be achieved. As a consequence the diffusion coefficient is given by the Green-Kubo formula for the kinetic equation at hand (namely linear Quantum Boltzmann for [ESY], linear Boltzmann for [BGS-R], linear Landau for [BNP]). In the present paper we work in a stationary situation for which we face new problems which will be discussed later on.

The idea of using the linear Boltzmann equation for the Lorentz gas in not new. In [LS] the authors consider exactly our system but with two thermal reservoirs at different temperatures at the boundaries. The aim was to study the energy flux in a stationary regime. However, as pointed out in [LS], due to the energy conservation of a single elastic collision, the energy is not diffused, there is no local equilibrium and hence the local temperature is not defined. As a consequence the Fourier’s law fails to hold, at least in the conventional sense.

This is the reason why we consider here the mass transport, being the heat equation for the mass density the unique hydrodynamical equation.

It may be worth to mention that, for a suitable stochastic dynamics, the Fourier’s law can indeed be derived, see [KMP], [GKMP].

Concerning the Fick’s law we mention the papers [LS1], [LS2], for the self-diffusion of a tagged particle in a gas at equilibrium.

Our paper is organized as follows. The starting point is the transition from the mechanical system to the Boltzmann equation in a low density regime. We follow the classical analysis due to Gallavotti [G], complemented by an explicit analysis of the bad events preventing the Markovianity, in the same spirit of [DP], [DR] . This is necessary to reach a diffusive behavior on a longer time scale as in [BGS-R], [BNP].

Moreover we point out that our initial boundary value problem presents a new feature due to the presence of the first exit (stopping) time. This difficulty is handled by an extension procedure which essentially reduces our problem to the corresponding one in the whole space.

The transition from the mechanical system to the linear Boltzmann regime is presented in Section 5.

However we are interested in a stationary problem. This is handled, more conveniently, in terms of a Neumann series to overcome problems connected with the exchange of the limits , . To the best of our knowledge this is a new tool. This analysis is presented in Section 3. The basic idea is that the explicit solution of the heat equation and the control of the time dependent problem allow us to characterize the stationary solution of the linear Boltzmann equation and this turns out to be the basic tool to obtain the stationary solution of the mechanical system which is the basic object of our investigation.

Finally the transition from Boltzmann to the diffusion equation is classical and ruled out by the Hilbert expansion method which is presented in Section 4. This step is discussed in detail, not only for completeness, but also because we need an apparently new analysis in , for the time dependent problem (needed for the control of the Neumann series) and a analysis for the stationary problem.

## 2. The model and main results

Let be the strip . We consider a Poisson distribution of fixed hard disks (scatterers) of radius in and denote by their centers. This means that, given , the probability density of finding obstacles in a bounded measurable set is

 (2.1) P(dcN)=e−μ|A|μNN!dc1…dcN

where and .

A particle in moves freely up to the first instant of contact with an obstacle. Then it is elastically reflected and so on. Since the modulus of the velocity of the test particle is constant, we assume it to be equal to one, so that the phase space of our system is .

We rescale the intensity of the obstacles as

 με=ε−1ηεμ,

where, from now on, is fixed and is slowly diverging as . More precisely we make the following assumption.

###### Assumption 1.

As , diverges in such a way that

 (2.2) ε12η6ε→0.

The behaviour (2.2) is dictated mostly by the recollision estimates in Section 5.3.

We denote by the probability density (2.1) with replaced by . will be the expectation with respect to the measure restricted on those configurations of the obstacles whose centers do not belong to the disk of center and radius .

For a given configuration of obstacles , we denote by the (backward) flow with initial datum and define , , as the first (backward) hitting time with the boundary. We use the notation to indicate the event such that the trajectory , , never hits the boundary. For any the one-particle correlation function reads

 (2.3) fε(x,v,t)=Eε[fB(T−(t−τ)cN(x,v))χ(τ>0)]+Eε[f0(T−tcN(x,v))χ(τ=0)],

where and the boundary value is defined by

with the density of the uniform distribution on and . Here denotes the horizontal component of the velocity . Without loss of generality we assume . Since , from now on we will absorb it in the definition of the boundary values . Therefore we set

 (2.4)
###### Remark.

Here we allow overlapping of scatterers, namely the Poisson measure is that of a free gas. It would also be possible to consider the Poisson measure restricted to non-overlapping configurations, namely the Gibbs measure for a systems of hard disks in the plane. However the two measures are asymptotically equivalent and the result does hold also in the last case.

Note also that the dynamics is well defined only almost everywhere with respect to .

We are interested in the stationary solutions of the above problem. More precisely for any solves

 (2.5)

The main result of the present paper can be summarized in the following theorem.

###### Theorem 2.1.

For sufficiently small there exists a unique stationary solution for the microscopic dynamics (i.e. satisfying (2.5)). Moreover, as

 (2.6) fSε→ϱS,

where is the stationary solution of the heat equation with the following boundary conditions

 (2.7) {\vspace0.2cmϱS(x)=ρ1,     x∈{0}×R,ϱS(x)=ρ2,     x∈{L}×R.

The convergence is in .

Some remarks on the above Theorem are in order. The boundary conditions of the problem depend on the space variable only through the horizontal component. As a consequence, the stationary solution of the microscopic problem, as well as the stationary solution of the heat equation, inherits the same feature. This justifies the convergence in instead of in . The explicit expression for the stationary solution reads

 (2.8) ϱS(x)=ρ1(L−x1)+ρ2x1L,

where is the horizontal component of the space variable . We note that in order to prove Theorem 2.1 it is enough to assume that The stronger Assumption 1 is needed to prove Theorem 2.2 below.

Next we discuss the Fick’s law by introducing the stationary mass flux

 (2.9) JSε(x)=ηε∫S1vfSε(x,v)dv,

and the stationary mass density

 (2.10) ϱSε(x)=∫S1fSε(x,v)dv.

Note that is the total amount of mass flowing through a unit area in a unit time interval. Although in a stationary problem there is no typical time scale, the factor appearing in the definition of , is reminiscent of the time scaling necessary to obtain a diffusive limit.

###### Theorem 2.2 (Fick’s law).

We have

 (2.11) JSε+D∇xϱSε→0

as . The convergence is in and is given by the Green-Kubo formula (see (3.12) below). Moreover

 (2.12) JS=limε→0JSε(x),

where the convergence is in and

 (2.13) JS=−D∇ϱS=−Dρ2−ρ1L,

where is the linear profile (2.8).

Observe that, as expected by physical arguments, the stationary flux does not depend on the space variable. Furthermore the diffusion coefficient is determined by the behavior of the system at equilibrium and in particular it is equal to the diffusion coefficient for the time dependent problem.

###### Remark (The scaling).

We have formulated our result in macroscopic variables . Another point of view is to argue in terms of microscopic variables.

Let us set our problem in these variables denoted by . This means that the radius of the disks is unitary while the strip, seen in micro-variables, is .

To deal with a low density situation, we rescale the density as , where is gently diverging. Note that in the usual Boltzmann-Grad limit At times of order , one particle has an average number of collisions of order . At larger times, namely of order , we expect a diffusive behavior. Actually this emerges from the linear Boltzmann equation (see equation (3.10) and Proposition 3.2 below) which is derived from the microscopic dynamics through the scaling and .

In this paper we consider a two dimensional case but our techniques apply in higher dimensions as well since in this case the pathological events are less likely. Moreover we consider the easier geometrical setting. However we believe that there are no serious obstructions to extend our results to more general geometries.

## 3. Proofs

In this section we prove Theorems 2.1 and 2.2, postponing the technical details to the next sections. In order to prove Theorem 2.1 our strategy is the following. We introduce the stationary linear Boltzmann equation

 (3.1) ⎧⎪ ⎪⎨⎪ ⎪⎩(v⋅∇x)hSε(x,v)=ηεLhSε(x,v),hSε(x,v)=ρ1,     x∈{0}×R,v1>0,hSε(x,v)=ρ2,     x∈{L}×R,v1<0,

where is the linear Boltzmann operator defined as

 (3.2) Lf(v)=μ∫1−1dρ[f(v′)−f(v)],f∈L1(S1)

with

 (3.3) v′=v−2(n⋅v)n

and the outward normal to the hard disk (see Figure 1). Here is the impact parameter, namely with the angle of incidence.

Since the boundary conditions depend on the space variable only through the horizontal component, the stationary solution inherits the same feature, as well as and .

The strategy of the proof consists of two steps. First we prove that there exists a unique which converges, as , to given by (2.8). See Proposition 3.3 below. Secondly we show that there exists a unique asymptotically equivalent to . See Proposition 3.6 below. This result is achieved by showing that the memory effects of the mechanical system, preventing the Markovianity, are indeed negligible.

Let be the solution of the problem

 (3.4) ⎧⎪ ⎪ ⎪ ⎪ ⎪⎨⎪ ⎪ ⎪ ⎪ ⎪⎩(∂t+v⋅∇x)hε(x,v,t)=ηεLhε(x,v,t),hε(x,v,0)=f0(x,v),      f0∈L∞(Λ×S1),hε(x,v,t)=ρ1,     x∈{0}×R,v1>0,   t≥0,hε(x,v,t)=ρ2,     x∈{L}×R,v1<0,   t≥0.

Then has the following explicit representation

 (3.5) hε(x,v,t)=∑N≥0(μεε)N∫t0dt1…∫tN−10dtN∫1−1dρ1…∫1−1dρNχ(τ0)e−2μεε(t−τ)fB(γ−(t−τ)(x,v))++∑N≥0e−2μεεt(μεε)N∫t0dt1…∫tN−10dtN∫1−1dρ1…∫1−1dρNχ(τ=0)f0(γ−t(x,v)),

with defined in (2.4). Given , denotes the trajectory whose position and velocity are

 (x−v(t−t1)−v1(t1−t2)⋯−vNtN,vN).

The transitions are obtained by means of a scattering with an hard disk with impact parameter via (3.3). As before , , is the first (backward) hitting time with the boundary. We remind that

In formula (3.5) results as the sum of two contributions, one due to the backward trajectories hitting the boundary and the other one due to the trajectories which never leave . Therefore we set

 hε(x,v,t)=houtε(x,v,t)+hinε(x,v,t),

where and are respectively the first and the second sum on the right hand side of (3.5). Observe that solves

 (3.6) ⎧⎪ ⎪ ⎪ ⎪ ⎪⎨⎪ ⎪ ⎪ ⎪ ⎪⎩(∂t+v⋅∇x)houtε(x,v,t)=ηεLhoutε(x,v,t),houtε(x,v,0)=0,      x∈Λ,houtε(x,v,t)=ρ1,     x∈{0}×R,v1>0,   t≥0,houtε(x,v,t)=ρ2,     x∈{L}×R,v1<0,   t≥0.

We denote by the Markov semigroup associated to the second sum, namely

 (S0ε(t)ℓ)(x,v)=∑N≥0e−2μεεt(μεε)N∫t0dt1…∫tN−10dtN∫1−1dρ1…∫1−1dρNχ(τ=0)ℓ(γ−t(x,v)),

with In particular

 hinε(t)=S0ε(t)f0.

We observe that , solution of (3.1), satisfies, for

 hSε=houtε(t0)+S0ε(t0)hSε,

so that we can formally express as the Neumann series

 (3.7) hSε=∑n≥0(S0ε(t0))nhoutε(t0).
###### Remark.

Note that is a fixed point of the map solution to (3.4). Hence belongs to a periodic orbit, of period , of the flow . But this orbit consists of a single point because the Neumann series, being convergent, identifies a single element. This implies that is constant with respect to the flow (3.4) and hence stationary.

We now establish existence and uniqueness of by showing that the Neumann series (3.7) converges. In order to do it we need to extend the action of the semigroup to the space , namely

 (3.8) S0ε(t)ℓ0(x,v)=χΛ(x)∑N≥0e−2μεεt(μεε)N∫t0dt1…∫tN−10dtN∫1−1dρ1…∫1−1dρNχ(τ=0)ℓ0(γ−t(x,v)),

for any Here is the characteristic function of .

###### Proposition 3.1.

There exists such that for any and for any we have

 (3.9) ||S0ε(ηε)ℓ0||∞≤α||ℓ0||∞,   α<1.

As a consequence there exists a unique stationary solution satisfying (3.1).

To prove Proposition 3.1 we have first to exploit the diffusive limit of the linear Boltzmann equation in a setting and in the whole space. We introduce the solution of the following rescaled linear Boltzmann equation

 (3.10)

with is a smooth function of the variable only (local equilibrium).

We can prove

###### Proposition 3.2.

Let be the solution of (3.10), with an initial datum . Then, as , converges to the solution of the heat equation

 (3.11) {\vspace0.4cm∂tϱ−DΔϱ=0ϱ(x,0)=ϱ0(x),

where is given by the Green-Kubo formula

 (3.12) D=14π∫S1dvv⋅(−L)−1v.

The convergence is in

We postpone the proof of Proposition (3.2) to Section 4.1. The proof relies on the Hilbert expansion and, to make it work, we need smoothness of the initial datum .

###### Proof of Proposition 3.1.

We can rewrite (3.8) as

 S0ε(t)ℓ0(x,v)=χΛ(x)∑N≥0e−2μεεt(μεε)N∫t0dt1…∫tN−10dtN∫1−1dρ1…∫1−1dρNχ(τ=0)ℓ0(γ−t(x,v))χΛ(γ−tv(x)),

where is the first component of . Note that the insertion of is due to the constraint . Therefore

 S0ε(t)ℓ0≤||ℓ0||∞∑N≥0e−2μεεt(μεε)N∫t0dt1…∫tN−10dtN∫1−1dρ1…∫1−1dρNχΛ(γ−tv(x)).

We denote by a mollified version of , namely , , and . Therefore

 (3.13) S0ε(t)ℓ0≤||ℓ0||∞∑N≥0e−2μεεt(μεε)N∫t0dt1…∫tN−10dtN∫1−1dρ1…∫1−1dρNχδΛ(γ−tv(x)).

The series on the right hand side of (3.13) defines a function which solves

 {(∂t+v⋅∇x)F(x,v,t)=ηεLF(x,v,t),F(x,v,0)=χδΛ(x).

Moreover, defining then solves (3.10) with initial datum . By virtue of Proposition 3.2

 ∥Gε(1)−ϱδ(1)∥∞≤ω(ε)

where is the solution of (3.11) with initial datum . Here and in the sequel denotes a positive function vanishing with . On the other hand

 ϱδ(x,1)=∫R2dy 14πDe−|x−y|24DχδΛ(y)=∫L+δ−δdy1 1√4πDe−|x1−y1|24D<1.

Therefore for small enough

 ||S0ε(ηε)ℓ0||∞≤||ℓ0||∞||S0ε(ηε)χδΛ||∞≤||ℓ0||∞(∥Gε(1)−ϱδ(1)∥∞+||ϱδ(1)||∞)≤||ℓ0||∞(ω(ε)+||ϱδ(1)||∞)<α||ℓ0||∞,   α<1.

We are using (3.13) for .

Finally, since , by (3.7) we get

 ||hSε||∞≤1(1−α) ||houtε(ηε)||∞≤1(1−α)ρ2.

As we will discuss later on, we find convenient to obtain the stationary solution via the Neumann series (3.7) rather than as the limit of as . For further details see Remark 3.7.

###### Remark (L∞ vs. L2).

The control of the Neumann series (3.7) in a setting seems quite natural. This is provided by the bound (3.9). It basically means that for a time the probability of a backward trajectory to fall out of is strictly positive. To prove rigorously this rather intuitive fact, we use Proposition 3.2 and explicit properties of the solution of the heat equation. The price we pay is to develop an Hilbert expansion analysis (see Section 4.1) which is, however, interesting in itself. On the other hand the use of the well known version of Proposition 3.2 requires a control of the Neumann series which seems harder, weaker and less natural.

The last step is the proof of the convergence of to the stationary solution of the diffusion problem

 (3.14)

with the diffusion coefficient given by the Green-Kubo formula (3.12). We remind that the stationary solution to the problem (3.14) has the following explicit expression

 (3.15) ϱS(x)=ρ1(L−x1)+ρ2x1L,

where .

By using again the Hilbert expansion technique (this time in ) we can prove

###### Proposition 3.3.

Let be the solution to the problem (3.1). Then

 (3.16) hSε→ϱS

as , where is given by (3.15). The convergence is in .

The proof is postponed to Section 4.2.

This concludes our analysis of the Markov part of the proof.

Recalling the expression (2.3) for the one-particle correlation function , we introduce a decomposition analogous to the one used for , namely

 (3.17) foutε(x,v,t):=Eε[fB(T−(t−τ)cN(x,v))χ(τ>0)]

and

 (3.18) finε(x,v,t):=Eε[f0(T−tcN(x,v))χ(τ=0)],

so that

 fε(x,v,t)=foutε(x,v,t)+finε(x,v,t).

Here is the contribution due to the trajectories that do leave at times smaller than , while is the contribution due to the trajectories that stay internal to . We introduce the flow such that

 (F0ε(t)ℓ)(x,v)=Eε[ℓ(T−tcN(x,v))χ(τ=0)],ℓ∈L∞(Λ×S1)

and remark that is just the dynamics ”inside” . In particular

To detect the stationary solution for the microscopic dynamics we proceed as for the Boltzmann evolution (see (2.5)) by setting, for ,

 fSε=foutε(t0)+F0ε(t0)fSε

and we can formally express the stationary solution as the Neumann series

 (3.19) fSε=∑n≥0(F0ε(t0))nfoutε(t0).

To show the convergence of the series (3.19) and hence existence of we first need the following two Propositions.

###### Proposition 3.4.

Let . For any

 (3.20) ∥foutε(t)−houtε(t)∥L∞(Λ×S1)≤Cε12η3εt2,

where solves (3.6).

###### Proposition 3.5.

For every

 (3.21) ||(F0ε(t)−S0ε(t))ℓ0||∞≤C||ℓ0||∞ε12η3εt2,∀t∈[0,T].

The proof of the above two Propositions is postponed to Section 5. As a corollary we can prove

###### Proposition 3.6.

For sufficiently small there exists a unique stationary solution satisfying (2.5). Moreover

 (3.22) ∥hSε−fSε∥∞≤Cε12η5ε.
###### Proof.

We prove the existence and uniqueness of the stationary solution by showing that the Neumann series (3.19) converges, namely

 (3.23) ||F0ε(ηε)f0||∞≤α′||f0||∞,   α′<1.

This implies

 ||fSε||∞≤1(1−α′) ||foutε(ηε)||∞≤1(1−α′)ρ2,    α′<1.

In fact, since

 ||F0ε(ηε)f0||∞≤||(F0ε(ηε)−S0ε(ηε))f0||∞+||S0ε(ηε)f0||∞,

thanks to Propositions 3.1 and 3.5 we get

 (3.24) ||F0ε(ηε)f0||∞≤||f0||∞Cε12η5ε+||S0ε(ηε)f0||∞≤(Cε12η5ε+α)||f0||∞≤α′||f0||∞,

with , for sufficiently small (remind that as ). This guarantees the existence and uniqueness of the microscopic stationary solution .

In order to prove we compare the two Neumann series representing and ,

 (3.25) ∥fSε−hSε∥∞=∥∑n≥0((F0ε(ηε))nfoutε(ηε)−(S0ε(ηε))nhoutε(ηε))∥∞≤∑n≥0∥(F0ε(ηε))n(foutε(ηε)−houtε(ηε))∥∞+∑n≥0∥((F0ε(ηε))n−(S0ε(ηε))n)houtε(ηε)∥∞.

By (3.24), using Proposition 3.4, the first sum on the right hand side of (3.25) is bounded by

 11−α′∥foutε(ηε)−houtε(ηε)∥∞≤Cε12η5ε.

As regard to the second sum on the right hand side of (3.25) we have

 ∑n≥0∥((F0ε(ηε))n−(S0ε(ηε))n)houtε(ηε)∥∞≤∑n≥0n−1∑k=0∥(F0ε(ηε))n−k−1(F0ε(ηε)−S0ε(ηε))(S0ε(ηε))khoutε(ηε)∥∞≤∑k,ℓ≥0∥(F0ε(ηε))ℓ(F0ε(ηε)−S0ε(ηε))(S0ε(ηε))khoutε(ηε)∥∞≤C∥houtε(ηε)∥∞ε12η5ε,

by virtue of (3.9), (3.24) and (3.21). This concludes the proof of Proposition 3.6.

At this point the proof of Theorem 2.1 follows from Propositions 3.3 and 3.6.

###### Remark 3.7.

One could try to characterize and in terms of the long (macroscopic) time asymptotics of and . The trick of expressing both stationary states by means of Neumann series avoids the problem of controlling the convergence rates, as , with respect to the scale parameter .

We conclude by proving Theorem 2.2 which actually is a Corollary of the previous analysis.

###### Proof of Theorem 2.2.

By standard computations (see e.g. Section 4.2) we have

 hSε=ϱS+1ηεh(1)+1ηεRηε,

where

 h(1)(v)=L−1(v⋅∇xϱS)=ρ2−ρ1LL−1(v1)

and, as we shall see in Section 4.2, in Therefore, since ,

 (3.26) ηε∫S1vhSε(x,v)dv=−D∇xϱS+O(1√ηε),

where is given by (3.12). By Theorem 2.1 the right hand side of (3.26) is close to in , where


text:
## Can I reuse a disguise check/familiarity with fabricated identity

I have a character who is always in disguise and I was wondering how that affected things. Does he have to reroll his check every day? Does someone he’s known for years have a bonus to seeing through the disguise he’s worn ever since they met?

## Configure OIDC (OpenId Connect) identity provider to authenticate to SharePoint Online /Office 365

Does anybody know how to configure OIDC (OpenId Connect) identity provider such as identity server 4 (http://docs.identityserver.io/en/latest/) to authenticate to SharePoint online?

Looked at the following blog but it uses SAML 2.0 instead of OpenId Connect.

https://docs.microsoft.com/en-us/previous-versions/azure/azure-services/dn641269(v=azure.100)

Any body configured SharePoint Online with OpenID Connect identity provider?

Thanks.

## ASP.Net Core 3, add Identity from external assembly. Failed reference

I am trying to add Identity service from external assembly.

When I do:

using System;     using Microsoft.AspNetCore.Hosting;     using Microsoft.AspNetCore.Identity;     using Microsoft.EntityFrameworkCore;     using Assemblies.IHostingStartupAssembly.IdentityStartup.Data;      [assembly: HostingStartup(typeof(Assemblies.IHostingStartupAssembly.IdentityStartup.IdentityStartupAssembly))]     namespace Assemblies.IHostingStartupAssembly.IdentityStartup     {         public class IdentityStartupAssembly : IHostingStartup         {             public void Configure(IWebHostBuilder builder)             {                 builder.ConfigureServices((services) =>                 {                     services.AddDbContext<ApplicationDbContext>(options =>                    options.UseSqlServer(                        Configuration.GetConnectionString("DefaultConnection")));                     services.AddDefaultIdentity<IdentityUser>()                         .AddEntityFrameworkStores<ApplicationDbContext>();                 });             }            }     }

I found that

IServiceCollection” does not contain a definition for “AddDbContext” or an accessible extension method “AddDbContext” that accepts a first argument of type “IServiceCollection” (missing any using directive or an assembly reference?)

It is a sample scenario. But why it miss the reference? Here package references:

<ItemGroup>             <PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="3.0.0-preview6.19307.2" /> <PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.0.0-preview6.19304.10" />             <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.0.0-preview6.19304.10" />             <PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="3.0.0-preview6.19304.6" />         </ItemGroup>     <ItemGroup>         <Reference Include="Microsoft.AspNetCore.Hosting.Abstractions">           <HintPath>[LONGLOCALROUTE]\netcoreapp3.0\Microsoft.AspNetCore.Hosting.Abstractions.dll         </HintPath>         </Reference>        </ItemGroup>

## How can I publish text and video without revealing my identity?

Let’s I want to publish online

• a fiction book and
• a series of videos for promoting it.

Let’s further assume that the book challenges some widely held views and it is possible that people will hat me for that. However, no part of the book breaks any law (i. e. there are no threats in that book, nor appeals to violence; I can prove that it was me who wrote the book).

How can I make the book and the videos accessible to a wider audience such that

• my identity cannot easily be revealed, nor
• the identities of people who read the book and view the videos?

Note that the protection is meant against co-workers, employers, and neighbors who may not like my views. It is not a protection against the authorities.

## Is it normal for a company to ask me for a picture of my ID for proof of identity?

I bought a game off a third party website and they declined my card and said to send a picture of the cardholders ID to prove that the debt card is mine. i don’t feel safe sending a picture of my ID to this website. They charged my card and i didn’t receive my game so i don’t know what to do. the website is https://www.instant-gaming.com/en/

## How to determine my current wpa_supplicant identity?

My wpa_supplicant.conf file has, among other things, two different identities for the same SSID. How can I determine which identity I’m currently using on an established connection? wpa_cli status gives good info about the connection except what identity is in use.

## Lorenz curve bellow identity line

I struggling to prove that the Lorenz curve is always bellow the identity line (except in (0,0) and (1,1)) or is equal the identity line on interval $$[0,1]$$.

Be $$x_{(i)}\geq0$$ an order statitic such that $$x_{(1)}\leq x_{(2)}\leq \ldots \leq x_{(n)}$$. If $$p_{i}=\frac{i}{n}$$ and $$q_{i}=\frac{\sum_{j=1}^{i}{x_{(j)}}}{\sum_{j=1}^{n}{x_{(j)}}}$$, then $$q_{i}\leq p_{i}, \forall i=1,\ldots , n$$.

I’ve been thinking about it for hours and I couldn’t solve it. I’d appreciate any help.

## Can you make an identity from this product?

(1+x+x^2) (1+x^2)(1+x^3)(1+x^4)…

(The first polynomial is a trinomial..The others are binomials..) Is it possible by changing some of the signs to get a series all of whose coefficients are -1,0,or 1?

A simple computer search should suffice to answer the question if the answer is “no”

## Automorphisms of a First Order Inf. Deformation which pull back to the Identity Morphism

Let $$X$$ be a scheme over an algebraically closed field $$k$$ and let $$X’$$ be a deformation of $$X$$ over the dual numbers $$k[\epsilon]/(\epsilon)^2$$. Here we are assuming that $$X$$ has non-trivial first order inf. deformations.

I am interested in classifying automorphisms of $$X’$$ which pullback to the identity on $$X$$. Let $$U_i$$ be an open affine cover of $$X$$ so that $$U_i’ \cong X’ \vert_{U_i}$$ is an open cover of $$X’$$ by trivial first order inf. deformations of $$U_i$$.

Now let $$\phi$$ be an automorphism of $$X’$$ which pulls back to the identity morphism on $$X$$. Then $$\phi \vert_{U_i’}$$ is an automorphism of $$U_i’$$. Since $$U_i’$$ is trivial we know that its automorphism group is isomorphic to $$\Gamma(U_i, \mathcal{T}X \vert_{U_i})$$.

Is it possible to glue together these local automorphism (i.e global sections of the associated tangent sheaf) to form a global automorphism?

Based on the description given above, I think that the group of automorphisms of $$X’$$ which pullback to the identity on $$X$$ is isomorphic to $$\Gamma(X, \mathcal{T}_{X’/k[\epsilon]})$$.

Is this correct?

## Building object identity in PHP

I am trying to build object identity in PHP so that when I have a collection of objects, each one can have a string as identifier and all of these identifiers are afterwards combined to form an unique md5 to represent the “identity of a collection”.

Why? So that I can choose to skip re-execution of code when it’s not needed:

interface SomeTestInterface {     public function testFunction(); }  abstract class Identifiable {     public function __toString()     {         $identity_shards = array_merge( get_object_vars($  this ), class_implements( $this ) );$  identity_string = '';          foreach( $identity_shards as$  identity_shard_key => $identity_shard_value ) {$  identity_string .= (string) $identity_shard_key . (string) json_encode($  identity_shard_value );         }          return md5( get_class( $this ) .$  identity_string );     } }  class SomeBaseClass extends Identifiable implements SomeTestInterface {     public function __construct( $number ) {$  this->number = $number;$  this->thing = 'a';         $this->other_thing = ['a','b','c',1,2,3,]; } public function testFunction() { return 'a'; } }  This is testable with: for($  i = 1; $i < 10000;$  i++ ) {     $class = new SomeBaseClass($  i );     (string) $class; }  For me, PHP 7.3 and WordPress, this takes ~100ms to execute. My micro-decisions: 1. I need json_encode on $ identity_shard_value because you can’t cast an array to string, for example. json_encode is both fast in my experience and knows how to deal with it all.
2. I chose to make this an abstract class because json_encode doesn’t have access to scoped classes, as such, it cannot encode what it can’t find, so I must be able to access $this though it’s weird because even in the abstract class, I still can’t encode it, but I should be able to. My main concerns with this is if I really need all these items to build my object identity or if there’s another, faster way. 10000 objects in 0.1ms, although very good on its own, doesn’t necessarily scale. In essence, every single object that implements Identifiable in a collection that a module of my framework has will have an identity that I will then combine into a final “collection identity” to later do a check such as: $  collection_identity = getCollectionIdentity( $collection ); //MD5 computed from the identity of all these objects if($  collection_identity != getCollectionIdentityByName( 'some_collection' ) {     setCollectionIdentity( 'some_collection', \$  collection_identity );     //re-execute code } else {  retrieveDataFromStorage(); }

As you can see, it checks if there was a change to the objects / collection and if so, it re-executes all the other code, but if not, it just retrieves what that “other code” generated in the past and as such, this is a way to use persistent storage to skip execution of heavy code.

format: plain


text:
In astrodynamics and celestial mechanics a radial trajectory is a Kepler orbit with zero angular momentum. Two objects in a radial trajectory move directly towards or away from each other in a straight line.

## Classification

There are three types of radial trajectories (orbits).[1]

• Radial elliptic trajectory: an orbit corresponding to the part of a degenerate ellipse from the moment the bodies touch each other and move away from each other until they touch each other again. The relative speed of the two objects is less than the escape velocity. This is an elliptic orbit with semi-minor axis = 0 and eccentricity = 1. Although the eccentricity is 1 this is not a parabolic orbit. If the coefficient of restitution of the two bodies is 1 (perfectly elastic) this orbit is periodic. If the coefficient of restitution is less than 1 (inelastic) this orbit is non-periodic.
• Radial parabolic trajectory, a non-periodic orbit where the relative speed of the two objects is always equal to the escape velocity. There are two cases: the bodies move away from each other or towards each other.
• Radial hyperbolic trajectory: a non-periodic orbit where the relative speed of the two objects always exceeds the escape velocity. There are two cases: the bodies move away from each other or towards each other. This is a hyperbolic orbit with semi-minor axis = 0 and eccentricity = 1. Although the eccentricity is 1 this is not a parabolic orbit.

Unlike standard orbits which are classified by their orbital eccentricity, radial orbits are classified by their specific orbital energy, the constant sum of the total kinetic and potential energy, divided by the reduced mass:

$\epsilon = \frac{v^2}{2} - \frac{ \mu }{ x }$

where x is the distance between the centers of the masses, v is the relative velocity, and $\mu={G}(m_1 + m_2)$ is the standard gravitational parameter.

Another constant is given by:

$w = \frac{1}{x} - \frac{ v^2 }{ 2 \mu } = \frac{- \epsilon}{\mu}$
• For elliptic trajectories, w is positive. It is the inverse of the apoapsis distance (maximum distance).
• For parabolic trajectories, w is zero.
• For hyperbolic trajectories, w is negative, It is $\textstyle \frac{ -v_{\infty }^2}{2 \mu}$ where $\textstyle v_{\infty }$ is the velocity at infinite distance.

## Time as a function of distance

Given the separation and velocity at any time, and the total mass, it is possible to determine the position at any other time.

The first step is to determine the constant w. Use the sign of w to determine the orbit type.

$w = \frac{1}{ x_0 } - \frac{ v_0^2 }{ 2 \mu }$

where $\textstyle x_0$ and $\textstyle v_0$ are the separation and relative velocity at any time.

### Parabolic trajectory

$t(x) = \sqrt{ \frac{2 x^3 }{ 9 \mu } }$

where t is the time from or until the time at which the two masses, if they were point masses, would coincide, and x is the separation.

This equation applies only to radial parabolic trajectories, for general parabolic trajectories see Barker's equation.

### Elliptic trajectory

$t( x,w ) = \frac{ \arcsin( \sqrt{ w \, x } ) - \sqrt{ w \, x \ ( 1 - w \, x ) } }{ \sqrt{ 2 \mu } \, w^{3/2} }$

where t is the time from or until the time at which the two masses, if they were point masses, would coincide, and x is the separation.

This is the radial Kepler equation.[2]

### Hyperbolic trajectory

$t( x,w ) = \frac{ \sqrt{ (|w|x)^2+|w|x} - \ln (\sqrt{|w|x}+\sqrt{1+|w|x}) }{ \sqrt{ 2 \mu } \, |w|^{3/2} }$

where t is the time from or until the time at which the two masses, if they were point masses, would coincide, and x is the separation.

### Universal form (any trajectory)

The radial Kepler equation can be made "universal" (applicable to all trajectories):

$t( x, w ) = \lim_{ u \to w } \frac{ \arcsin( \sqrt{ u \, x } ) - \sqrt{ u \, x \ ( 1 - u \, x ) } }{ \sqrt{ 2 \mu } \, u^{3/2} }$

or by expanding in a power series:

$t( x, w ) = \frac{ 1 }{ \sqrt{ 2 \mu } } \left. (\frac{2}{3} x^{3/2} + \frac{1}{5} w x^{5/2} + \frac{3}{28} w^2 x^{7/2} + \frac{5}{72} w^3 x^{9/2} + \frac{35 }{704 } w^4 x^{11/2} \cdots ) \right|_{ -1

## The radial Kepler problem (distance as function of time)

The problem of finding the separation of two bodies at a given time, given their separation and velocity at another time, is known as the Kepler problem. This section solves the Kepler problem for radial orbits.

The first step is to determine the constant w. Use the sign of w to determine the orbit type.

$w = \frac{1}{ x_0 } - \frac{ v_0^2 }{ 2 \mu }$

Where $\textstyle x_0$ and $\textstyle v_0$ are the separation and velocity at any time.

### Parabolic trajectory

$x(t) = \left( \frac{9}{2} \mu t^2 \right)^{ \frac{1}{3} }$

### Universal form (any trajectory)

Two intermediate quantities are used: w, and the separation at time t the bodies would have if they were on a parabolic trajectory, p.

$w = \frac{1}{x_0} - \frac{ v_0^2 }{ 2 \mu } \quad \text{and} \quad p = \left( \frac{9}{2} \mu t^2 \right)^{ \frac{1}{3} }$

Where t is the time, $x_0$ is the initial position, $v_0$ is the initial velocity, and $\mu ={G}(m_1 + m_2)$.

The inverse radial Kepler equation is the solution to the radial Kepler problem:

$x( t ) = \sum_{n=1}^{ \infty } \left( \lim_{ r \to 0 } \left( {\frac{ w^{n-1} p^{ n }}{ n! }} \frac{\mathrm{d}^{\,n-1}}{\mathrm{ d } r ^{\,n-1}} \left( r^n \left( \frac{ 3 }{ 2 } ( \arcsin( \sqrt{ r } ) - \sqrt{ r - r^2 } ) \right)^{ - \frac{2}{3} n } \right) \right) \right)$

Evaluating this yields:

$x(t) = p - \frac{1}{5} w p^2 - \frac{3}{175} w^2 p^3 - \frac{23}{7875} w^3 p^4 - \frac{1894}{3931875} w^4 p^5 - \frac{3293}{21896875} w^5 p^6 - \frac{2418092}{62077640625}w^6 p^7 \cdots$

Power series can be easily differentiated term by term. Repeated differentiation gives the formulas for the velocity, acceleration, jerk, snap, etc.

## Orbit inside a radial shaft

The orbit inside a radial shaft in a uniform spherical body[3] would be a simple harmonic motion, because gravity inside such a body is proportional to the distance to the center. If the small body enters and/or exits the large body at its surface the orbit changes from or to one of those discussed above. For example, if the shaft extends from surface to surface a closed orbit is possible consisting of parts of two cycles of simple harmonic motion and parts of two different (but symmetric) radial elliptic orbits.

## References

• Cowell, Peter (1993), Solving Kepler's Equation Over Three Centuries, William Bell.
1. ^ William Tyrrell Thomson (1986), Introduction to Space Dynamics, Dover
2. ^ Brown, Kevin,http://www.mathpages.com/rr/s4-03/4-03.htm, MathPages
3. ^ Strictly this is a contradiction. However, it is assumed that the shaft causes a negligible influence on the gravity.


text:
Cases In Corporate Finance Take My Exam For Me The last time I examined the same thing in a company and found a very interesting fact. There are a bunch of different companies that have a good reputation for a good marketing strategy, but this time I’ll take a look at the recent ones. The first one is a “Theorem” with two numbers. These numbers are based on the number of occurrences of the term $\alpha$ in $[t]$ with $0 \leq t \leq 1$. The example is the following: We can think of the term as a ‘number of occurrences’, i.e. as a permutation of $\alpha$ (or any number) Theorem Let $Y$ be a finite set of $[t_1]$-free words with $t_1 \leq \alpha$. Then the word $Y$ is a word such that $Y \cap Y^{\top} = \emptyset$ for every $Y$ in $Y^{\top}:= \{Y_1, Y_2, \ldots, Y_n\}$. We call $Y$ a “free word”, so the term is in some sense “free”. Now, lets look at the proof of the theorem. We’ll make a little notation. Let $\mathcal{C}$ be a set of words in $Y$. We say that $\mathcal C$ is a *$Y$-free word* if the subset $\mathcal imp source C)$ of $Y$-terms is free to either be or not, and $Y$ itself is not a free word. $\mathcal C=\mathcal{B}(\mathcal{A}(\mathbb{C}))$ Now let’s look at the case when $\mathcal A$ is a free word, which is the case if $Y$ has a free word $\mathcal W$: Let’s consider some short example. Let’s take $Y$ my response the word $X=\{x_1, \ld, x_2, x_3, x_4 \}$ which is a word in $X$ and let $Y=\{y_1, y_2, y_3, y_4\}$. So let $X$ be a word in $\mathcal X$ and let $\mathcal Y$ be the word $x_1y_1x_2y_2x_3y_3y_{11}x_{12}y_{12}x_2x_{23}y_{23}x_{23′}x_1$. $y_1y_{12}\ld\ld\ld x_1x_{23}\ld\mathcal Y=x_1x=x_2(\mathcal Y)$. Now we can easily see that $\mathbb C$ is the free word of $\mathcal Z$ and $\mathbb G$ is the word $y_1\ld x y_2y_{23}\mathcal Y$. If $\mathbb Z$ is the group of all words of type $Z$, then $\mathbb R$ is the unital ring with unit and so by the above lemma $\mathbb N$ is the set of words of type $\mathbb F_1$. Now we can see that $\{Y\}$ is a $Y$ word.

## Crack My Examination Proctored

Chapter 2.1 covers the case of a free word as well as the case when $Y$ contains words of type  and is a free group. Chapter 2.2 covers the case when the group of words of the form $X=x_i Y$ with $x_i \in X$ is a group, but the case when it contains words of the the form $Y$ and a constant $X$ is a non-free word. Chapter 2 is also a book chapter on the topic of free words and the topic of the book is a book on free words and free groups. In Chapter 2.3 we will have a proof of the Theorem on words ofCases In Corporate Finance Take My Exam For Me In other words, a lot of companies are more likely to have a problem with their investments than a company with a really good revenue stream. Unfortunately, we have a lot of information on the topic today. So, here’s my first experience with corporate finance and the reasons why it’s a great idea to take the time and research the right way to tackle this problem. 1. A “vast majority” of companies are not going to pay their shareholders dividends. This is the way the stock market is designed. So, what is the best way to deal with this? There are some very good a knockout post of this. In 2003, the average price of a company was $1,100, which is a very good price for a company to pay when it pays dividends. However, in 2008, they paid$1,200 in dividends. The dividend is generally not excessive. So, from a management perspective, the best way would be to increase the dividend to $1,250 or even higher. This would boost the stock price to$100. 2. As a result, a lot companies are holding their dividends in the right way.

## Hire Someone To Do My Exam

The most common solution that this is working out is to increase the share price. With this, the stock market will be more like the stock market. 3. If you are looking for a better way to deal, you’re going to have to think about how to use your expertise to make money. Since these are two different things, I’ll talk some more about them later. 4. When you’ve done your research, you can see that a pop over to this web-site of these companies are beginning to pay dividends. The best thing to do is to focus on the “investing in the right ways to get the money” approach. I’ll go into more details later. This is what I’ve found interesting. 5. Most of them are not going (or paying) their dividends. A lot of them are going to take a lot of time and money to do this. However, this is very important. The money they spend on investing is going to be a lot more valuable than their dividends. So, how do you make sure that you can spend less money on investing in the right companies? 6. In addition to the dividend, there are some companies that are more likely than not to pay their dividends. Usually, this is due to the fact that the get more is usually for a long time. But, if you are in the right place, you can increase the dividend. To do that, if you have a CEO, or a boss, and you find a company that is not going to spend more money on investing, you can do a monthly dividend.

## Take My Proctoru Examination

This will give you a better idea of how much money you are going to make. So, for instance, if you find that your company is putting in $2 million per year and you make$2.5 million per year, your company is going to get \$2.2 million per month. 7. There is also an option to increase the dividends. This means that if you are not paying your dividend, you can invest more in the company and that will make you more profitable. 8. Actually, the most common way to increase the pay of a company is by increasing the capacity of the company. On one hand, this is going to increase the size of the company as well as a lot of other things. On the other hand, if you don’t invest enough money in the company, you don‘t have enough money to invest in the company. It’s all about your shareholders. 9. You can also increase the size and number of shareholders. This implies that you can invest in the companies that are the largest group. 10. Of course, there are a lot more companies that are not going for a dividend. Therefore, you should not invest in companies that don’ t pay dividends. To do that, you can either invest in companies which are not going, or investCases In Corporate Finance Take My Exam For Me I am a CFA (C-Finance) student. I have a lot of experience in finance and banking and I’ve had some experience in an early stage business.

## Take My Online Classes And Exams

I know that I have a large amount of experience in the finance industry and I”ve been a CFA for over 10 years. My experience is that of an experienced board member who is not afraid to help me with my finance. I am very busy and I“ve been working on my own finance and banking skills for over a decade. My experience includes doing finance work for a large corporation. I have many years of experience as an investment banker, financial advisor, and financial adviser. I have worked with clients in several major investment companies. In these areas I have been given some experience but as an investment professional I have not had any experience. I have been a C-Finance student for over 10+ years and I know that my experience is not limited to finance. I know how to make the right investments and how to make them in a competent and regulated way. Financial Writing I have studied at many institutions, including Boston College, Princeton, and Columbia. I have also studied at the same institution. While there are many, many different types of financial writing, I have found that the most important thing is to understand the proper way to write. I try to write my first book, Finance Writing, which I wrote in the fall of 2005. I have started my own business and I am continuing to write and publish my first book. This book is called Finance Writing. The Importance of Writing My first book is a book that I have written. It is very useful and it is the most important book I have ever Do My Online Classes For Me I want to learn from the experts and the industry experts and try to create a good book which you will have many years to work on. I have not written any other book in the years that I click here to find out more been writing. I have written hundreds of books, but I have written few others.

## Crack My Examination Proctored

I know that I am a very busy person and I know when I have to write something that I do not know where to begin. I have learned a lot from my experience, I have started a business and I have decided that I am the best and the best. Writing Writing is a very important part of your career. I am a C-FA with another board member who was an investment banker for many years. He helped me in my education and was very helpful. I know I am a good writer and the book is very important to me. When you read my book, you know that I consider it my best book. I know when to write a good book and when to write it well. I believe that writing is a very big part of my career. If you have any questions, I would be happy to help you. About I“ve taught Finance and Banking for over 10” years. I am an experienced C-Finary and have been working on Finance and Banking since 1997. I have used my knowledge and experience in most of the fields of Finance, Banking, and Investment for over 10 yrs. of my time in finance. This is a post for all who are interested in a little background. Be sensitive to any questions you may have. Here is a link to my blog. This post is one of several that I have posted on this blog, as I would like discover here share with you. I hope that you will enjoy my blog and I hope that you find this post useful. If you have any further questions, please feel free to send me a message on Twitter.

## Exam Doing Service Online

I hope you will find this post helpful. What I’m The C-Founded C-Founded in 2006 is a body of corporate finance that was founded in 2009 and has become one of the most well-known and influential companies in the world. The C-finance is a group of people who collaborate in the field of corporate finance. C-finance refers to the practice of using a person’s skills and experience in a company. The CFA is a highly regarded body of professionals who have worked in the field for over 10yrs. CFA is a group that has been widely employed in the finance field in a


text:
Journal article Open Access

Upper limits on neutron and γ-ray emission from cold fusion

Gai, M.; Rugari, S. L.; France, R. H.; Lund, B. J.; Zhao, Z.; Davenport, A. J.; Isaacs, H. S.; Lynn, K. G.

Neutron and γ-ray emission from a variety of electrochemical cells (running continuously for up to two weeks) have been measured using a sensitive detection system with a very low background. Titanium alloy powder deuterided at room temperature and high pressure was also used for comparison. No statistically significant deviation from the background was observed in either γ-ray or neutron detectors. The estimated neutron flux in this experiment is at least a factor of 50 times smaller than that reported by Jones et al. and about one million times smaller than that reported by Fleischmann et al. The results suggest that a significant fraction of the observed neutron events are associated with cosmic rays.

Files (575.8 kB)
Name Size
article.pdf
md5:173390ca410f53beb357514fc1718d91
575.8 kB
13
1
views


text:
[Tex/LaTex] vspace not working after linebreak

spacing

For this minimal example

\documentclass{article}
\begin{document}
\noindent
Hallo \\
How \\
Are \\
\vspace{15cm}You?
\end{document}

There is no vertical space created between the word Are and You. How can I add vertical space between them? Using \vspace* did not work either.

\vspace if used mid paragraph, as here, stores the vertical space in a special place (a vadjust node) which is then inserted after the paragraph has been broken into lines, after the line on which the space is added. in your example the \vspace is added in the last line of the paragraph so the space comes after the paragraph. Compare

\documentclass{article}
\begin{document}
\noindent
Hallo \\
How \\
Are \\
You?

xxxxx

\noindent
Hallo \\
How \\
Are \\
\vspace{15cm}You?

xxxxx
\end{document}

to add a space at the linebreak you should use

\\[3cm]

but it is almost always wrong to use \\ at all apart from its use in tables.


text:
# Sea Level and its variability with regard to 'Altitude'

I'm wondering how we are managing 'things' that relate to 'sea level'.

Mean Sea Level is taken to be the halfway point between high- and low tide... but as the sea level rises, presumably this will change over time...

Within the world of cartography, where elevations can often be given in 5m increments, has someone decided what '0m' is, and fixed it?

Presumably cartography and systems like GPS have the same problem...

I'm also curious with regard to barometric pressure... With the rising sea level one could reason that the absolute value (e.g: in bar) of the pressure at sea level will be falling (the atmosphere is now surrounding a 'larger' planet, and thus is spread more thinly).

I don't expect this to be of significant concern to aviation (presumably they are working with large-ish tolerances), but pressure sensors in consumer applications (e.g: mobile phones) have a high enough resolution that they can detect a change in pressure over 1-2 metres or less. I wonder where else they are employed...

I thought I'd follow up (24th Oct 2017) with a link to Tom Scott's video, where he mentions variations in gravity causing problems for "sea level" too: What is sea level, anyway?

• Can you provide a reference for portable barometric altimeters with the 1m resolution you quote? Most mobile phones use GPS data for their altitude readings, and the weather-driven variation is bigger than that. – Emilio Pisanty Apr 9 '17 at 13:43
• Apologies - I didn't mean that these pressure sensors can provide an absolute altitude alone (as you state, the weather alone would make that impossible), but rather that they are able to detect the change in pressure over a 1-2m vertical range. – Attie Apr 9 '17 at 13:46
• In that case, you should clarify that statement in the question. – Emilio Pisanty Apr 9 '17 at 14:23
• @Emilio updated – Attie Apr 9 '17 at 14:43

Sea level is defined by the "reference geoid ellipsoid"--the current version is WGS 84. This has sub-1 meter resolution, and its value is $6378137.0$ meters at the equator and $6356752.314$ meters at the poles.

Note that the polar radius is calculated by the flattening of $1/298.257223563$ (as defined by the WGS 84 standard; see the linked page for information on how that is determined). NOTE that the equatorial radius (semi-major axis) and the flattening are defined; the polar radius (semi-minor axis) is calculated.

Modern technologies such as GPS and similar can be used to measure sea level (and variations thereof) with accuracy down to centimeters (maybe more). Also, GPS uses the reference ellipsoid when telling your smartphone or handheld GPS thingy what altitude you're at.

As for the barometric pressure, I intuitively say yes, it would decrease, but the amount would be negligible--way below any current means of measurement. I'm certain other environmental factors would have a bigger impact on average barometric pressure. Note that the chemical composition of air has changed over geological timescales, and this affects the density (and thus the mass and pressure).

ADDED: This is an interesting page to read regarding the ellipsoid and what we know as "sea level".

Side note: The Panamá Canal empties into the Pacific Ocean 20 cm higher than at the Atlantic Ocean (and this is not due to diurnal tides, etc.).

• So by the sounds of it, sea level is becoming a reference point that was historically related to the sea, but may no longer be related? i.e: It's fixed, and maps, etc... don't need to be updated. – Attie Apr 9 '17 at 14:06
• Thanks for pointing out the composition of the atmosphere - not something I'd considered here!.. – Attie Apr 9 '17 at 14:07
• WGS84 is a reference ellipsoid--the approximate shape of a spinning planet. A geoid is different from an ellipsoid. A geoid is an equipotential surface, and on the Earth is not an ellipsoid--as there are density variations in the planet. EGM96 and EGM08 are commonly used unclassified geoids; they are available as look up tables with 1 degree and 1 minute postings, respectively, or a as spherical harmonic expansions. The mean sea level should approximate a geoid. – JEB Apr 9 '17 at 15:37
• @JEB - thanks, fixed. Apparently I'm confusing the two terms. – pr1268 Apr 9 '17 at 15:50
• @Aditya: I believe it's because the ellipsoid is a mathematical model that can easily be calculated with software and hardware (thinking smart phones and GPS devices here). On the other hand, a geoid is a model of the Earth with all its irregularities. Check the "interesting page" link above and the first image on that page shows an example (albeit highly exaggerated) of all the "bumps" and protuberances of the Earth. – pr1268 Jul 8 '17 at 23:13


text:
# Bag contain 10 back and 20 white balls, One ball is drawn at random. What is the probability that ball is white

1

$\frac{2}{3}$

$\frac{1}{3}$

$\frac{4}{3}$

Please do not use chat terms. Example: avoid using "grt" instead of "great".


text:
We’re going to continue playing around with our simple classification function. For those of you arriving late to the party, the function in question is:

$f(x) = \begin{cases} 0 & \mbox{if } xc+b\end{cases}$

We’re trying to apply that function to arrays of data as quickly as possible. In my last post, I focused on using Cython and C extensions to speed up the calculations. This post focuses on using an algorithmic optimization. I’m very glad to report that it appears not going down this road at my job was a good call.

%timeit [p_classify(x, c, b) for x in DATA]
100 loops, best of 3: 1.59 ms per loop

%timeit s_classify(s_list, c, b)
100 loops, best of 3: 1.01 ms per loop

Close to 40% speedup? Not bad for… more than a hundred lines of code, a few hours of work and a significant increase in code complexity. Like I said, vindicated. With p_classify, we are simply looping over all the data and applying our function, and s_classify is a function optimized to work with our skip list data structure. However, we’re not giving up after this result. More details at the end of the post, but you could soon be seeing a C++ compiled skip list class in Python. Yeah, I’m excited, too.

First, let’s run a quick line profile of our classify function to make sure that reducing the number of comparisons will do us some good. To bias the results in our favor, we’ll take some randomized data distributed so that observations are classified as 0 or 1 80% of the time. The profile looks like:

Line #      Hits  Time  Per Hit   % Time  Line Contents
==============================================================
2                                    @profile
3                                    def classify(x, c, b):
8      1000  4287      4.3     40.7    if x<c-b:
9       405   850      2.1      8.1      return 0
10       595  2233      3.8     21.2    elif x>c+b:
11       406   856      2.1      8.1      return 1
12                                      else:
13       189   422      2.2      4.0      if b>10**-7:
14       189  1877      9.9     17.8        return (xc+b)/2/b
15                                        else:
16                                          return 0.5

The comparisons end up being 60% of the total run time, so we’ll be able to get a real return if we play our optimization right. We’ll also be able to cut down the number of times this function has to return a value since we will have big blocks of ones and zeros. Somewhat surprising to me, the floating point operations don’t take a disproportionate amount of time. The floating point section is hit about 19% of the time, and it takes up about 22% of the actual time used. When we’re done, 90% of the time is going to be spent on the floating point section.

For more detail about skip lists, see the previous post and the links therein. We’re going to jump straight into our algorithm. Due to time constraints, I’m going to keep the discussion of the algorithm at a pretty high level. The first thing we need to do is to augment skip lists to allow us to calculate the number of elements less than or equal to a given value. Basically, what we are going to do is store the number of elements we skip over at each jump and add those up on our way down. Here is some quality ASCII art to illustrate my point:

             x --------- 3 ----- 2 - x
|           |       |   |
x - 1 ----- 2 - 1 - 1 - x
|   |       |   |   |   |
x - 1 - 1 - 1 - 1 - 1 - x

At each node, we count how many nodes over we are after each jump to the right. That number is stored in the variable accum, at each node, and we can find the rank of a number in our skip list:

def rank(self, value):
rank = 0
while value >= node.value:
if value < node.right.value:
if node.down:
node = node.down
else:
break
else:
node = node.right
rank += node.accum
return rank

All we are doing is moving along each list until we encounter a node containing a value greater than our argument and moving down. Once we can’t move down any more, we return our count of elements less than our argument. The hard part is maintaining the variable accum, but that doesn’t turn out to be all that hard:

def insert(self, value):
self.n_items += 1
while node.down:
if value < node.right.value:
node.right.accum += 1
node = node.down
else:
node = node.right
while value > node.right.value:
node = node.right
node(value)
node.right.accum = 1
self._raise_level(node.right)

def _raise_level(self, node, accum=None):
if accum is None:
accum = 1
if self._raise_check():
up_check = node.left
while up_check.up is None and up_check.value>float("-inf"):
accum += up_check.accum
up_check = up_check.left
if up_check.up:
place_node = up_check.up
place_node(node.value)
place_node.right.accum = accum
place_node.right.right.accum -= accum
node.up = place_node.right
place_node.right.down = node
self._raise_level(place_node.right, accum=accum)
else:
self._init_level()

If you want to go through the code line by line, I recommend heading over to GitHub. At a high level, we find where to insert the node exactly as before and then perform some indexing to make sure all the accum values continue to add up. Delete does basically the same thing in reverse. Test code is also included at GitHub to confirm everything is working properly. Finally, the method find_rank(m) returns a reference to the node with rank m.

That is all we need to implement our skip list classifier function:

def classify_list(rslist, c, b):
N = rslist.count()
zeros = rslist.rank(c-b)
ones = N-rslist.rank(c+b)

start = rslist.find_rank(zeros+1) if zeros > 0 else None
end = rslist.find_rank(N-ones+1) if ones > 0 else None

output = [_classify(val, c, b) for val in
rslist.iterate(start=start, stop=end)]
return [0]*zeros + output + [1]*ones

Because of the skip list structure, the four rank() calls are asymptotically as efficient as binary search, which is O(log N). The iterate() method returns a generator which loops over the base linked list in the usual way. Now, let’s look at how this performs line by line:

Line #      Hits     Time  Per Hit   % Time  Line Contents
==============================================================
12                                       #@profile
13                                       def classify_list(rslist, c, b):
14      1000     1694      1.7      0.1    N = rslist.count()
15      1000    79401     79.4      4.2    zeros = rslist.rank(c-b)
16      1000    81666     81.7      4.3    ones = N-rslist.rank(c+b)
17
18      1000    23593     23.6      1.3    start = rslist.find_rank(zeros+1) if zeros > 0 else None
19      1000    24351     24.4      1.3    end = rslist.find_rank(N-ones+1) if ones > 0 else None
20
21      1000      782      0.8      0.0    output = [_classify(val, c, b) for val in
22    181000  1654586      9.1     88.1    rslist.iterate(start=start, stop=end)]
23      1000    12238     12.2      0.7    return [0]*zeros + output + [1]*ones

We are now spending almost all of our time dealing with the middle section of classifier. The generator we return is significantly slower that iterating over a list, but we have greatly reduced the amount of time classifying 1s and 0s. Recalling our comparison with the Pythonic classifier:

%timeit [p_classify(x, c, b) for x in DATA]
100 loops, best of 3: 1.59 ms per loop

%timeit s_classify(s_list, c, b)
100 loops, best of 3: 1.01 ms per loop

The 40% reduction in run time is not much compared to the speedup seen by converting to a compiled version, but it certainly is nothing to scoff at. This would certainly make sense as an optimization to combine with using tools like Cython.

Now, for the teaser: What we really want is to compare our new algorithm with a Cython and a C++ implementation. The Cython implementation should be pretty straightforward, so look for that to come out first. However, I’ve been wanting to create a compiled class for quite a while. Why haven’t I? This. That’s a pretty steep learning curve for something I want to do for the hell of it. I recently learned about Boost.Python and how it can expose C++ classes to Python, and I’m pretty excited to try it out.


text:
The RSA algorithm is named after Ron Rivest, Adi Shamir and Len Adleman, who invented the system in 1977. The RSA cryptosystem is the most widely-used public key cryptography algorithm in the world. It can be used to encrypt a message without requiring the exchange of a secret key. RSA exploits the fact that while multiplying large integers is trivial, determining the factors of large integers is much more difficult. The original paper introducing the RSA cryptosystem is quite readable, and can be downloaded here.

In this post, we’ll walk through each step of the RSA algorithm (key generation, key distribution, encryption and decryption) with an illustrative example using small primes.

### RSA Algorithm

1. Generate two prime numbers $$p, q$$ then compute their product $$n$$.

2. Compute Euler’s totient: $$\phi = (p - 1)(q - 1)$$.

3. Select a number $$e$$ that is relatively coprime with $$(p -1)$$ and $$(q - 1)$$.

4. Compute $$d$$ such that $$ed \equiv 1 (mod \phi)$$.

Once we have $$n$$, $$d$$ and $$e$$, we specify our public key as $$(n, e)$$ and private key as $$(n, d)$$.

For a plain text message $$m$$, we can generate the corresponding ciphertext $$c$$ by computing:

$$c = m^{e} \bmod n$$

Similarly, we can convert the ciphertext $$c$$ back to plaintext $$m$$ using:

$$m = c^{d} \bmod n$$

### Demonstration

In order to use the RSA cryptosystem, it is necessary to use an encoding to represent letters as numbers. A well know mapping of english letters to numeric values is the ASCII character encoding, reproduced below:

For example, using the ASCII encoding, HELP! would be encoded as 72 - 69 - 76 - 80 - 33.

As specified above, we start by generating two primes then compute their product. In practice, the modulus can be 1024-bits or greater. A 1024-bit
modulus corresponds to a number with over 300 decimal digits[1].

\begin{align} p&=19\\ q&=29\\ n&=pq = 551 \end{align}

Then we compute Euler’s totient:

$$\phi = (p -1)(q-1) = 18 \times 28 = 504$$

Next we need to find a number $$e$$, where $$1 < e < \phi$$ that is relatively coprime with $$(p - 1)$$ and $$(q - 1)$$. In other words, find $$e$$ such that the greatest common divisor of $$\phi$$ and $$e$$ is 1. For this example, we set $$e=17$$.

Finally, we need to find $$d$$ such that $$ed \equiv 1 (mod \phi)$$. This can be accomplished using the following function implemented in Python:

import itertools

def get_d(e, phi):
"""
Compute d such that e * d = 1 % phi.
"""
for i in itertools.count(start=int(phi / e)):
v = (e * i) % phi
if v==1: break
return(i)

Running get_d yields $$89$$.

To summarize:

\begin{align} p&=19\\ q&=29\\ n&=551\\ \phi&=504\\ e&=17\\ d&=89 \end{align}

Given these values, our public key is $$(551, 17)$$ and our private key is $$(551, 89)$$.

Given our numerically-encoded plaintext HELP! as 72 - 69 - 76 - 80 - 33, we can generate the ciphertext. Recall that in order to convert plaintext to ciphertext, we use $$c = m^{e} \bmod n$$. Note that Python’s pow function takes an optional 3rd parameter representing the modulus. For example, calling pow(a, b, c) calculates $$a^{b}\bmod c$$:

>>> p, q, n, phi, e, d = 19, 29 551, 504, 17, 89
>>> m = [72, 69, 76, 80, 33]
>>> c = [[pow(i, e, n) for i in m]
>>> print(c)
[185, 293, 171, 5, 528]

Notice that when we print c, the numbers are completely different than the plaintext encoding (we should hope!).

This message can only be decoded by the entity in possession of the private key. Let’s imagine that we received a message from a counter party who generated the ciphertext using the public key. We need to decrypt the message using our private key. To do so, we calculate $$m = c^{d} \bmod n$$. In Python, we can obtain the ASCII character associated with an integer by calling the chr function. Picking up where we left off in the previous example, we first convert the ciphertext to plaintext, then the plaintext array of integers to a string:

>>> m_ = [pow(i, d, n) for i in c]
>>> print(m_)
[72, 69, 76, 80, 33]
>>> "".join(chr(i) for i in m_)
HELP!

### Breaking RSA with Brute-Force

Recently I came across a question posted to crypto.statsexchange inquiring about the computing resources that would be required to brute-force enumerate every possible RSA {1024, 2048,4096}-bit key-pair. Here were two responses I found particularly helpful.

The first response:

Even if you had infinite computing power you would not have the space to store all these public/private key pairs (I’ll spare you the semimathematical posts comparing the space required to the number of protons in the universe). Many people have trouble perceiving just how big a number $$2^{2048}$$ is, it’s a common error. A much more practical approach instead is to harvest as many real-life public keys as possible, and trying to find common factors between them. It actually works because of poor key generation practices.

The second response:

It’s not possible. The number of primes smaller than x is approximately $$\frac{x}{ln(x)}$$. Therefore the number of 512 bit primes (the length you need for 1024 bit modulus) is approximately:

$$\frac{2^{513}}{\ln 2^{513}}-\frac{2^{512}}{\ln 2^{512}} \approx 2.76×10^{151}$$

The number of RSA moduli (i.e. pair of two distinct primes) is therefore:

$$\frac{(2.76×10^{151})^2}{2}-2.76×10^{151}=1.88×10^{302}$$

Now consider that the observable universe contains about $$10^{80}$$ atoms. Assume that you could use each of those atoms as a CPU, and each of those CPUs could enumerate one modulus per millisecond. To enumerate all 1024 bit RSA moduli you would need:

$$\begin{eqnarray*} 1.88×10^{302}ms / 10^{80}&=&1.88×10^{222}ms\\ &=&1.88×10^{219}s\\ &=&5.22×10^{215}h\\ &=&5.95×10^{211} \text{years} \end{eqnarray*}$$

Just as a comparison: the universe is about $$13.75×10^{9}$$ years old.

It’s not a question of resources, it’s simply not possible.

This has been merely a brief introduction to the RSA cryptosystem. For more information, please refer to the original paper referenced above, or this site for a detailed description of the algorithm and its various implementations as well as practical considerations. Until next time, happy coding!

### Footnotes:

1. https://www.di-mgt.com.au/rsa_alg.html


text:
Article Contents
Article Contents

# Incremental gradient-free method for nonsmooth distributed optimization

This research was partially supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIP) through GCRC-SOP (No. 2011-0030013), the Natural Science Foundation of China (11501070,11401064,11471062 and 61473326), by the Natural Science Foundation Projection of Chongqing (cstc2015jcyjA00011, cstc2013jjB00001 and cstc2013jcyjA00029), by the Chongqing Municipal Education Commission under Grant KJ1500301 and KJ1500302, and by the Chongqing Normal University Research Foundation 15XLB005.
• In this paper we consider the minimization of the sum of local convex component functions distributed over a multi-agent network. We first extend the Nesterov's random gradient-free method to the incremental setting. Then we propose the incremental gradient-free methods, including a cyclic order and a randomized order in the selection of component function. We provide the convergence and iteration complexity analysis of the proposed methods under some suitable stepsize rules. To illustrate our proposed methods, extensive numerical results on a distributed $l_1$-regression problem are presented. Compared with existing incremental subgradient-based methods, our methods only require the evaluation of the function values rather than subgradients, which may be preferred by practical engineers.

Mathematics Subject Classification: Primary: 47N10; Secondary: 49J52.

 Citation:

• Figure 1.  Function value error versus number of cycles $K$ with a constant stepsize $\alpha=0.001$ for algorithms CIGF and CISG

Figure 2.  Function value error versus number of iterations $N$ with a constant stepsize $\alpha=0.001$ for algorithms RIGF and RISG

Figure 3.  (a) Function value error versus number of cycles $K$ with diminishing stepsize choices: $\alpha_{1}(k)={1}/{(m(k-1)+i)}, ~ \alpha_{2}(k)={1}/{(m(k-1)+i)^{\frac{2}{3}}}, k=0, 1, \ldots, i=1, \ldots, m$; (b) Function value error versus number of iterations $N$ with diminishing stepsize choices: $\theta_{1}(k)={1}/{k}, ~\theta_{2}(k)={0.1}/{k^{\frac{2}{3}}}, k=1, 2, \ldots$

Figure 4.  For a fixed target accuracy $\epsilon=0.01$ and a constant stepsize $\alpha=0.001$, comparisons between algorithms CIGF and CISG: (a) number of iterations $N$ versus dimensions of the agent $d$ for fixed $m=100$; (b) number of iterations $N$ versus number of agents $m$ for fixed $d=2$

Figures(4)


text:
# Knowledgebase

Back to Articles List

# How do I modify an MSI installer using a transform file?

### Symptoms

I want to customise an MSI install without using a command line set of options.

### Cause

Command line switches may not be an option for your installation scenario.  Publishing or Assigning software through an Active Directory Group Policy for example does not allow the use of command line options.

### Resolution

A transform file can be used to define the changes you wish to make to an MSI installer.  A transform file is the preferred method for Publishing or Assigning software through an Active Directory Group Policy and Microsoft provide a tool, Orca.exe, to do this.

MSDN page on Orca.exe.: http://msdn.microsoft.com/en-us/library/aa370557(v=vs.85).aspx
Where to find Orca through Microsoft: https://blogs.msdn.microsoft.com/jsacks/2007/02/15/where-to-find-orca-the-msi-editor-tool-in-the-windows-sdk/
Link to Orca MSI installer: https://www.tracker-software.com/OrcaMSI.zip

Using the first link above you can find how to get Orca from the Windows Installer SDK.

## Create a Transform

In this example I will use the Editor MSI.  Launch Orca.exe and load the MSI file you wish to modify.:
File --> Open --> PDFXC5_x64.msi

You are creating a new transform so:
Transform --> New Transform

The available features in the MSI are found in the Feature Table, selecct it from the list of Tables on the left:

Features are nested with a Parent/Child relationship and as with command line switches for a child feature to be installed the Parent feature must be installed.  We are interested here in the feature to be installed and the the Level.  Level dictates if the specified feature is to be installed, a value of 1 means to install, a value of 0 means do not install. Notice that these are exactly the same as the command line arguements used with the installers.  See here for details on using command line arguements: KB#461   Because all features are installed by default, to not install a feature is as simple as changing the Level value to 0.

The other table where you can make changes is the Property Table. Here you can change the default values for preferences or include a license key (string or path to xcvault file).  A numeric value of 1 equates to "True" and 0 "False".  In the example below I have set a path to an xcvault KeyFile, set VIEW_IN_BROWSERS to false leaving SET_AS_DEFAULT true and changed the EDITOR_LANGUAGE to German.    See the MSI installer help pages for the MSI you are using at http://help.tracker-software.com for details on the values used for EDITOR_LANGUAGE.

Values that are changed are highlighted in Green.  Once you are happy with the changes you need to generate a transform file that can then be used in conjunction with the MSI file to apply the differences.  Transform --> Generate Transform  You will be prompted to save it as an mst file:

## Using the transform during deployment.

Now that you have a Transform File, applying it during installation is as simple as :

msiexec /i "\path\toPDFXC5Pro_x64.msi" TRANSFORMS="\path\to\transform.mst"

Further reading on applying Transforms can be found here: http://technet.microsoft.com/en-ca/library/cc759262(v=ws.10).aspx#BKMK_InstallTransform

alternatively the transform can be applied to a Group Policy deployment: KB#373

Related: KB#494


text:
0.5 moles of CO taken in a 2 l flask is maintained at 750 K in the presence of a catalyst so that the followin

# Ask a Question

### Question Asked by a Student from EXXAMM.com Team

Q 3181191027.     0.5 moles of CO taken in a 2 l flask is maintained
at 750 K in the presence of a catalyst so
that the following reaction can take place: CO +
2H_2 ⇋ CH_3OH When hydrogen is introduced,
the pressure of the system is increased to 23.629
atm from 15.129 atm at equilibrium and 0.08
moles of gaseous product, methanol is formed.
Calculate K_c.

#### HINT

(Provided By a Student and Checked/Corrected by EXXAMM.com Team)

#### Access free resources including

• 100% free video lectures with detailed notes and examples
• Previous Year Papers
• Mock Tests
• Practices question categorized in topics and 4 levels with detailed solutions
• Syllabus & Pattern Analysis


text:
# redox

• October 14th 2009, 06:57 PM
william
redox
in the equation: $Fe+Cl_{2} --> Fe^{2+} + 2 Cl^{-}
$

identify
a) what is being oxidized( i am going to say Fe because it lost electrons)
b) what is being reduced( i am going to say Cl because it gained electrons)
c) what is the oxidizing agent
d) what is the reducing agent

can someone provide assistance?
• October 14th 2009, 07:02 PM
mr fantastic
Quote:

Originally Posted by william
in the equation: $Fe+Cl_{2} --> Fe^{2+} + 2 Cl^{-}
$

identify
a) what is being oxidized( i am going to say Fe because it lost electrons)
b) what is being reduced( i am going to say Cl because it gained electrons)
c) what is the oxidizing agent
d) what is the reducing agent

can someone provide assistance?

You should be posting these questions here: http://www.chemistryhelpforum.com/chemistry-help/


text:
# 50074. Tree Statistics

## I'm a slow walker, but I never walk backwards.

Given a pointer to the root of a tree in which a node could have many children, write a function to compute the following statistics.

• The number of internal nodes, i.e., nodes with at least one child node.
• The number of leaves, i.e., nodes without any child node.
• The maximum branch factor, i.e., the maximum number of child nodes an internal node has.
• The depth of the tree, i.e., the maximum number of edges along any path from the root to a leaf.

You need to write one file trace.c with one function trace() to compute above statistics and write the answers into the struct Answer.

Note that the children of a node is given as a linked list, where each node in this list has a pointer to the children of this node.

trace.h

123456789101112131415typedef struct ChildList ChildList;typedef struct Node {        ChildList *list;} Node;struct ChildList {        Node *node;        ChildList *next;};typedef struct Answer {        int InternalNode;        int Leaf;        int MaxBranchFactor;        int Depth;} Answer;void trace(Node *root, Answer *ans);

sample

main.c

1234567891011121314151617181920212223242526272829303132#include <stdio.h>#include <stdlib.h>#include "trace.h"Node *newNode(){        Node *ret = malloc(sizeof(Node));        ret->list = NULL;        return ret;}ChildList *newList(Node *node, ChildList *next){        ChildList *ret = malloc(sizeof(ChildList));        ret->node = node;        ret->next = next;        return ret;}int main(){        //sample input        Node *root = newNode();        Node *n1= newNode(), *n2 = newNode(), *n3 = newNode(), *n4 = newNode(), *n5 = newNode(), *n6 = newNode();        ChildList *l3 = newList(n3, NULL), *l2 = newList(n2, l3), *l1 = newList(n1, l2);        ChildList *l5 = newList(n5, NULL), *l4 = newList(n4, l5), *l6 = newList(n6, NULL);        root->list = l1;        n2->list = l4;        n4->list = l6;        //end        Answer *ans = calloc(1, sizeof(Answer));        trace(root, ans);        printf("%d %d %d %d\n", ans->InternalNode, ans->Leaf, ans->MaxBranchFactor, ans->Depth);        return 0;}

## Compile

123gcc -std=c99 -O2 trace.c -cgcc -std=c99 -O2 main.c -cgcc -std=c99 -O2 main.o trace.o

## Input Format

A root pointer and a structure.

## Output Format

Four integers indicating internal node, leaf, maximum branch factor and depth numbers.

0.in

## Sample Output

3 4 3 3


text:
# ggspatial 1.1.5 Unreleased

• Added a NEWS.md file to track changes to the package.
• Fixed an error that caused RStudio to crash from excessive memory allocation resulting when trying to plot a single point with annotation_map_tile() (#74).


text:
OPTIMALITY CONDITIONS AND DUALITY FOR SEMI-INFINITE PROGRAMMING INVOLVING SEMILOCALLY TYPE I-PREINVEX AND RELATED FUNCTIONS

Title & Authors
OPTIMALITY CONDITIONS AND DUALITY FOR SEMI-INFINITE PROGRAMMING INVOLVING SEMILOCALLY TYPE I-PREINVEX AND RELATED FUNCTIONS
Jaiswal, Monika; Mishra, Shashi Kant; Al Shamary, Bader;

Abstract
A nondifferentiable nonlinear semi-infinite programming problem is considered, where the functions involved are $\small{{\eta}}$-semidifferentiable type I-preinvex and related functions. Necessary and sufficient optimality conditions are obtained for a nondifferentiable nonlinear semi-in nite programming problem. Also, a Mond-Weir type dual and a general Mond-Weir type dual are formulated for the nondifferentiable semi-infinite programming problem and usual duality results are proved using the concepts of generalized semilocally type I-preinvex and related functions.
Keywords
multiobjective programming;semi-infinite programming;optimality;duality;
Language
English
Cited by
References
1.
K. H. Elster and R. Nehse, Optimality Conditions for some Nonconvex Problems, Springer-Verlag, New York, 1980.

2.
G. M. Ewing, Sufficient conditions for global minima of suitably convex functionals from variational and control theory, SIAM Rev. 19 (1977), no. 2, 202-220.

3.
M. A. Hanson and B. Mond, Necessary and sufficient conditions in constrained opti- mization, Report M683, Department of Statistics, Florida State University, Tallahassee, Florida, 1984.

4.
M. A. Hanson, R. Pini, and C. Singh, Multiobjective programming under generalized type I invexity, J. Math. Anal. Appl. 261 (2001), no. 2, 562-577.

5.
M. Hayashi and H. Komiya, Perfect duality for convexlike programs, J. Optim. Theory Appl. 38 (1982), no. 2, 179-189.

6.
R. N. Kaul and S. Kaur, Generalizations of convex and related functions, European J. Oper. Res. 9 (1982), no. 4, 369-377.

7.
S. Kaur, Theoretical studies in mathematical programming, Ph.D. Thesis, University of Delhi, India, 1984.

8.
S. K. Mishra, S. Y. Wang, and K. K. Lai, Multiple objective fractional programming involving semilocally type I-preinvex and related functions, J. Math. Anal. Appl. 310 (2005), no. 2, 626-640.

9.
S. K. Mishra, S. Y. Wang, and K. K. Lai,Generalized Convexity and Vector Optimization, Springer-Verlag, Berlin Heidelberg, 2009.

10.
M. A. Noor, Nonconvex functions and variational inequalities, J. Optim. Theory Appl. 87 (1995), no. 3, 615-630.

11.
V. Preda, Optimality and duality in fractional multiple objective programming involving semilocally preinvex and related functions, J. Math. Anal. Appl. 288 (2003), no. 2, 365-382.

12.
V. Preda and I. M. Stancu-Minasian, Duality in multiple objective programming involv- ing semilocally preinvex and related functions, Glas. Mat. Ser. III 32(52) (1997), no. 1, 153-165.

13.
V. Preda, I. M. Stancu-Minasian, and A. Batatorescu, Optimality and duality in nonlin- ear programming involving semilocally preinvex and related functions, J. Inform. Optim. Sci. 17 (1996), no. 3, 585-596.

14.
N. G. Rueda and M. A. Hanson, Optimality criteria in mathematical programming involving generalized invexity, J. Math. Anal. Appl. 130 (1988), no. 2, 375-385.

15.
T. Weir and B. Mond, Pre-invex functions in multiple objective optimization, J. Math. Anal. Appl. 136 (1988), no. 1, 29-38.

16.
X. M. Yang and D. Li, On properties of preinvex functions, J. Math. Anal. Appl. 256 (2001), no. 1, 229-241.

17.
X. M. Yang and D. Li, Semistrictly preinvex functions, J. Math. Anal. Appl. 258 (2001), no. 1, 287- 308.


text:
Abelian surface

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

An Abelian variety of dimension two, i.e. a complete connected group variety of dimension two over a field . The group law is commutative. In the sequel, is assumed to be algebraically closed (cf. Algebraically closed field).

In the classification of algebraic surfaces, Abelian surfaces are exactly the smooth complete surfaces with Kodaira dimension , geometric genus and irregularity .

For an Abelian surface , the dual Abelian variety is again an Abelian surface. An invertible sheaf on defines the homomorphism , . The homomorphism depends only on the algebraic equivalence class of . The invertible sheaf is ample (cf. Ample sheaf) if and only if is an isogeny (i.e., is surjective and has finite kernel) and . In this case, with a positive integer and the Riemann–Roch theorem says that

where denotes the self-intersection number. Every Abelian surface admits an ample invertible sheaf and hence is projective (cf. Projective scheme).

A polarization on is the algebraic equivalence class of an ample invertible sheaf . The degree of is by definition . An Abelian surface together with a polarization is a polarized Abelian surface. A principal polarization is a polarization of degree . A principally polarized Abelian surface is either the Jacobi variety of a smooth projective curve of genus , and is the class of the theta divisor, or is the product of two elliptic curves (Abelian varieties of dimension one, cf. also Elliptic curve) with the product polarization.

If the degree of is prime to , then is said to be a separable polarization and the kernel of is isomorphic to the group , where and are positive integers such that divides and . The pair is the type of the polarized Abelian surface .

A polarization of type on defines a polarization on the dual Abelian surface . The polarization is again of type and it is characterized by each of the following two equivalent properties:

For a polarized Abelian surface of type , the assignment defines a rational mapping from into the projective space of hyperplanes in :

If , then is everywhere defined. The Lefschetz theorem says that for the morphism is an embedding. Suppose ; then with a polarization of type . If the linear system has no fixed components, then is an embedding.

Complex Abelian surfaces.

An Abelian surface over the field of complex numbers is a complex torus

(with a lattice in ) admitting a polarization. A polarization on can be considered as a non-degenerate alternating form , the elementary divisors of which are given by the type of .

In the sequel, the field is assumed to be , although some of the following results are also valid for arbitrary algebraically closed fields.

Suppose is of type and the linear system has no fixed components. The Reider theorem states that for the invertible sheaf is very ample if and only if there is no elliptic curve on with (see [a14] and [a10]). For arbitrary there exist finitely many isogenies of degree onto principally polarized Abelian surfaces (cf. also Isogeny). Suppose with a symmetric invertible sheaf (i.e., ) and let be the unique divisor in the linear system . The divisor on defines a symmetric invertible sheaf with class and the covering is étale of degree . One distinguishes two cases: i) is smooth of genus , and is smooth of genus ; and ii) is the sum of two elliptic curves with intersection number , and is the sum of two elliptic curves with .

In the following list, is a polarized Abelian surface of type such that admits no fixed components

Type — The linear system has exactly base points. The blow-up of in these points admits a morphism induced by . The general fibre of is a smooth curve of genus . The curve on defining as above is double elliptic: with an elliptic curve , and is isomorphic to (see [a3]).

Type defines a -fold covering ramified along a curve of degree . The general divisor in the linear system is a smooth curve of genus . There are isogenies of degree onto principally polarized Abelian surfaces. In case i) the smooth genus- curve is double elliptic: , and the embedding of into the Jacobian induces an exact sequence

The étale -fold covering induces a morphism with image , the dual Abelian surface of (see [a7]).

Type — There are isogenies of degree onto principally polarized Abelian surfaces. If the curves and do not admit elliptic involutions compatible with , then is a birational morphism onto a singular octic . In the exceptional case, is a double covering of a singular quartic , which is birational to an elliptic scroll. In the first case the octic is smooth outside the four coordinate planes of and touches the coordinate planes in curves , , of degree . Each of the curves has double points and passes through pinch points of . The octic is a covering of a Kummer surface: (see also Type below). The restrictions are -fold coverings of four double conics of lying on a coordinate tetrahedron. The three double points of map to three double points of on the conic and the pinch points on map to the other three double points on the double conic (see [a6]).

Type — The invertible sheaf is very ample, i.e. is an embedding if and only if the curves and do not admit elliptic involutions compatible with . In the exceptional case is a double covering of an elliptic scroll (see [a13] and [a9]). If is very ample, is a smooth surface of degree in . It is the zero locus of a section of the Horrocks–Mumford bundle (see [a8]). Conversely, the zero set of a general section is an Abelian surface of degree , i.e. of type .

Type is twice a principal polarization on . The morphism is a double covering of the Kummer surface associated with . It is isomorphic to .

Type — The ideal sheaf of the image of the embedding is generated by quadrics (see [a3]).

Type — Suppose is very ample and let be the associated Kummer surface. The subvector space of odd sections induces an embedding of , the blow-up of in the double points, as a smooth quartic surface into . is invariant under the action of the level- Heisenberg group (cf. also Heisenberg representation) . The blown-up double points become skew lines on the quartic surface. Any -invariant quartic surface in with skew lines comes from a polarized Abelian surface of type in this way (see [a5], [a11] and [a12]).

Type is three times a principal polarization and is an embedding. If is not a product, then the quadrics vanishing on generate the ideal sheaf . In the product case, is generated by quadrics and cubics (see [a4]).

Algebraic completely integrable systems.

An algebraic completely integrable system in the sense of M. Adler and P. van Moerbeke is a completely integrable polynomial Hamiltonian system on (with Casimir functions and independent constants of motion in involution) such that:

a) for a general point the invariant manifold is an open affine part of an Abelian variety ;

b) the flows of the integrable vector fields linearize on the Abelian varieties [a2].

The divisor at infinity defines a polarization on . In this way the mapping defines a family of polarized Abelian varieties (cf. Moduli problem). Some examples of -dimensional algebraic completely integrable systems and their associated Abelian surfaces are:

the three-body Toda lattice and the even, respectively odd, master systems (cf. also Master equations in cooperative and social phenomena) linearize on principally polarized Abelian surfaces;

the Kowalewski top, the Hénon–Heiles system and the Manakov geodesic flow on linearize on Abelian surfaces of type [a1];

the Garnier system linearizes on Abelian surfaces of type [a15].

References

 [a1] M. Adler, P. van Moerbeke, "The Kowalewski and Hénon–Heiles motions as Manakov geodesic flows on : a two-dimensional family of Lax pairs" Comm. Math. Phys. , 113 (1988) pp. 659–700 [a2] M. Adler, P. van Moerbeke, "The complex geometry of the Kowalewski–Painlevé analysis" Invent. Math. , 97 (1989) pp. 3–51 Zbl 0678.58020 [a3] W. Barth, "Abelian surfaces with -polarization" , Algebraic Geometry, Sendai, 1985 , Advanced Studies in Pure Math. , 10 (1987) pp. 41–84 MR946234 [a4] W. Barth, "Quadratic equations for level- abelian surfaces" , Abelian Varieties, Proc. Workshop Egloffstein 1993 , de Gruyter (1995) pp. 1–18 MR1336597 [a5] W. Barth, I. Nieto, "Abelian surfaces of type and quartic surfaces with skew lines" J. Algebraic Geom. , 3 (1994) pp. 173–222 MR1257320 Zbl 0809.14027 [a6] Ch. Birkenhake, H. Lange, D. van Straten, "Abelian surfaces of type " Math. Ann. , 285 (1989) pp. 625–646 MR1027763 Zbl 0714.14028 [a7] Ch. Birkenhake, H. Lange, "Moduli spaces of Abelian surfaces wih isogeny" , Geometry and Analysis, Bombay Colloquium 1992 , Tata Inst. Fundam. Res. (1995) pp. 225–243 MR1351509 [a8] G. Horrocks, D. Mumford, "A rank vector bundle on with symmetries" Topology , 12 (1973) pp. 63–81 MR382279 Zbl 0255.14017 [a9] K. Hulek, H. Lange, "Examples of abelian surfaces in " J. Reine Angew. Math. , 363 (1985) pp. 200–216 MR0814021 Zbl 0593.14027 [a10] H. Lange, Ch. Birkenhake, "Complex Abelian varieties" , Grundlehren math. Wiss. , 302 , Springer (1992) MR1217487 Zbl 0779.14012 [a11] I. Naruki, "On smooth quartic embeddings of Kummer surfaces" Proc. Japan Acad. , 67 A (1991) pp. 223–224 MR1137912 [a12] V. V. Nikulin, "On Kummer surfaces" Math USSR Izv. , 9 (1975) pp. 261–275 (In Russian) MR429917 Zbl 0325.14015 [a13] S. Ramanan, "Ample divisors on abelian surfaces" Proc. London Math. Soc. , 51 (1985) pp. 231–245 MR0794112 Zbl 0603.14013 [a14] I. Reider, "Vector bundles of rank and linear systems on algebraic surfaces" Ann. of Math. , 127 (1988) pp. 309–316 MR0932299 Zbl 0663.14010 [a15] P. Vanhaecke, "A special case of the Garnier system, -polarized Abelian surfaces and their moduli" Compositio Math. , 92 (1994) pp. 157–203 MR1283227
How to Cite This Entry:
Abelian surface. Encyclopedia of Mathematics. URL: http://www.encyclopediaofmath.org/index.php?title=Abelian_surface&oldid=23736
This article was adapted from an original article by Ch. Birkenhake (originator), which appeared in Encyclopedia of Mathematics - ISBN 1402006098. See original article


text:
When to use upright letters in math mode

what are the conventions when to use upright letters in math mode?

Example:

    \begin{align}
W_{mag} = \frac{1}{2}LI^2
\end{align}

should the inductivity and the current be typeset in upright letters (\mathrm)?

• Welcome to TeX.SX! While this is an interesting question, it's not really about TeX, but rather about style. – egreg Aug 2 '15 at 16:17
• @egreg Would it be better asked on Maths or Physics SE? (I don't know if this is discipline dependent or not?) – cfr Aug 2 '15 at 16:19
• Possibly Physics.SE, if the topic is physics, but I'm not sure if they accept such questions. Anyway, a subscript should be upright if it is verbal (a word or abbreviation thereof) as opposed to a symbol. – egreg Aug 2 '15 at 16:20
• @egreg: I am not very active on Physics.SE, but I doubt they would accept this question, since it's not about Physics itself, 'only' formatting. Of course, the index quantity should be upright if it's an abbreviation or a word, and just as usual if it's a symbol – user31729 Aug 2 '15 at 17:54
• Could Graphic Design SX be an alternative? There should be professional typesetters around that may also have experience with mathematics and physics print media. – Ruben Aug 2 '15 at 19:15

$W_\mathrm{mag} = \frac{1}{2} L I^2$