comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: About the F-22 software bug
Date: Fri, 5 Feb 2010 11:31:16 +0100
Date: 2010-02-05T11:31:16+01:00	[thread overview]
Message-ID: <or5kkmvy2m50.1b7pr41w5ahvb$.dlg@40tude.net> (raw)
In-Reply-To: e37a808f-d079-41a4-b638-7579cb643fcf@r19g2000yqb.googlegroups.com

On Fri, 5 Feb 2010 01:02:40 -0800 (PST), Martin wrote:

> On Feb 5, 8:52�am, Ludovic Brenta <ludo...@ludovic-brenta.org> wrote:
>> Martin wrote on comp.lang.ada:
>>
>>
>>
>>> On Feb 5, 6:42�am, Dennis Lee Bieber <wlfr...@ix.netcom.com> wrote:
>>> > On Thu, 04 Feb 2010 19:46:15 +0100, Pascal Obry <pas...@obry.net>
>>> > declaimed the following in comp.lang.ada:
>>> > > I know that the F-22 is 90% of Ada. Is there some public information
>>> > > about this bug? Is that a design bug?
>>
>>> > � � � � So far as I recall -- from some years ago -- it was an algorithm
>>> > problem handling position information wrap-around from crossing, as
>>> > mentioned, the International Dateline... -180.0 to +180.0 deg longitude.
>>
>>> > � � � � I didn't hear that they had to follow the tankers back -- was under
>>> > the impression once they managed to cross back heading east a reboot of
>>> > the navigation system started working again...
>>
>>> > --
>>> > � � � � Wulfraed � � � � Dennis Lee Bieber � � � � � � � KD6MOG
>>> > � � � � wlfr...@ix.netcom.com HTTP://wlfraed.home.netcom.com/
>>
>>> For some reason (that I don't get at all) lots of systems define long
>>> as -180 <= x <= +180 degrees.
>>
>>> Having the potential to alias a position seems like a bad idea for a
>>> start, so when I've been coding such systems up, I've always spent a
>>> bit of time making it convert positions into the range -180 <= x <
>>> +180 degrees and using a proper ADT.
>>
>>> I wonder if it was anything to do with that?...
>>
>> I would have thought a longitude was really a mod 360, shifted by -180
>> for display purposes? For fractional degrees (i.e. minutes and
>> seconds), make that mod (360 * 60 * 60), shift by -180 * 60 * 60 and
>> split in degrees, minutes and seconds when displaying.
>>
>> --
>> Ludovic Brenta.
> 
> No...it's -180 <= x <(=) +180...always - check any map / globe!!
> 
> Lat is always -90 <= x <= +90 deg - no doubt about that one :-)
> 
> Adding "shifts" would make understanding any problem very hard...

And shift does not solve the problem anyway, if that existed. The potential
problem is that the angle is not a real number. It could be represented by
one, but then the operations like +, -, *, /, =, /= must be replaced and
ones like <, >, <=, >= disallowed. With that done the value +180 would do
no harm, because -180 = +180 in terms of proper ADT operations. You simply
would not be able to distinguish them (without tricks like
Unchecked_Conversion).

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2010-02-05 10:31 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-04 18:46 About the F-22 software bug Pascal Obry
     [not found] ` <4YKdnVFQX_suIPbWnZ2dnUVZ_rednZ2d@earthlink.com>
2010-02-05  6:51   ` Hibou57 (Yannick Duchêne)
2010-02-05  8:30   ` Martin
2010-02-05  8:52     ` Ludovic Brenta
2010-02-05  9:02       ` Martin
2010-02-05 10:31         ` Dmitry A. Kazakov [this message]
2010-02-05 11:18           ` Martin
2010-02-05 16:50           ` Hibou57 (Yannick Duchêne)
2010-02-05 18:19             ` Dmitry A. Kazakov
2010-02-06  9:28             ` Martin
2010-02-05 23:39         ` Phil Clayton
2010-02-06 12:12           ` sjw
2010-02-07 10:11             ` Martin
2010-02-06 15:30 ` jonathan
2010-02-06 16:35   ` Pascal Obry
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox