Mathematica 9 is now available
Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2006
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Determining continuity of regions/curves from inequalities

  • To: mathgroup at smc.vnet.net
  • Subject: [mg67271] Re: [mg67216] Determining continuity of regions/curves from inequalities
  • From: "Carl K. Woll" <carlw at wolfram.com>
  • Date: Thu, 15 Jun 2006 03:25:54 -0400 (EDT)
  • References: <200606130506.BAA23751@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Bonny Banerjee wrote:
> Is there an easy way in Mathematica to determine whether the region or curve 
> formed by a system of inequalities is continuous or not?
> 
> For example, the output of some function (e.g. Reduce) might be as follows:
> 
> x>2 && y>0
> 
> which forms a continuous region. Again, the following output
> 
> (x<2 && y<0) || (x>2 && y>0)
> 
> is not continuous. Similarly, for curves.
> 
> Given such a system of inequalities, how to determine whether the 
> region/curve it forms is continuous or not? Or in other words, if I pick any 
> two random points, say P1 and P2, lying on the output curve/region, does 
> there exist a continuous path lying entirely within the output curve/region 
> from P1 to P2?
> 
> Any help will be appreciated.
> 
> Thanks,
> Bonny. 
> 

The function SemialgebraicComponents in the package 
Algebra`AlgebraicInequalities may help. From the help browser:

"The package provides a function for solving systems of strong 
polynomial inequalities in one or more unknowns. To be precise, 
SemialgebraicComponents[ineqs, vars] gives a finite set of solutions of 
the system of inequalities. That is, within the set of solutions, any 
solution can be connected by a continuous path to a solution in the 
finite set. The variable ineqs is a list of strong inequalities, where 
both sides of each inequality are polynomials in variables vars with 
rational coefficients. In other words, SemialgebraicComponents[ineqs, 
vars] gives at least one point in each connected component of the open 
semialgebraic set defined by inequalities ineqs. "

Needs["Algebra`AlgebraicInequalities`"]

First example: x>2 && y>0

SemialgebraicComponents accepts a list of inequalities:

In[6]:=
SemialgebraicComponents[{x>2,y>0},{x,y}]

Out[6]=
{{3,1}}

Only one point is returned, so the region is connected.

Second example: (x<2 && y<0) || (x>2 && y>0)

This example is not a list of inequalities due to the Or. However, in 
this case it is easy to construct an equivalent inequality that 
encompasses the same region:

In[5]:=
SemialgebraicComponents[(x-2)y>0,{x,y}]

Out[5]=
{{0,-1},{3,1}}

There are two components, so the region is not connected.

Carl Woll
Wolfram Research


  • Prev by Date: Re: dynamic variable definiton
  • Next by Date: Re: Find a function that fits two dimensional data
  • Previous by thread: Re: Determining continuity of regions/curves from inequalities
  • Next by thread: Re: Determining continuity of regions/curves from inequalities