<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Hi Nicolas,<br>
<br>
On 2/27/2023 7:42 PM, Nicolas Cellier via Cuis-dev wrote:
<blockquote
cite="mid:CAKnRiT5JRaFcscZvsZz53Xicy3zJpPJ0_3Xo8FSyPJyM9A6PHg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>Hi Juan,</div>
<div>I like this POV</div>
</div>
</blockquote>
<br>
Cool.<br>
<br>
<blockquote
cite="mid:CAKnRiT5JRaFcscZvsZz53Xicy3zJpPJ0_3Xo8FSyPJyM9A6PHg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>Previously, I was more aligned with the pragmatic
considerations of Luciano</div>
<div>You can't have reduction of Complex to Number because that
would mean implementing complex extension of functions in
Number, and that's maybe not what we want... {[-2 sqrt]. [-2
log]. [-2 arcSin]} shouldAllFail.</div>
<div><br>
</div>
<div>With this POV, if we want to use a complex extension of
sqrt, then we have to be explicit: -2 asComplex sqrt.<br>
</div>
<div><br>
</div>
<div>Of course, Float is not Real...<br>
</div>
<div>Most of the reals cannot be represented in our computers,
because we don't have any algorithm to compute them...</div>
<div>There are only a countable infinity of reals that we can
compute, that's not that much ;)</div>
</div>
</blockquote>
<br>
Still, a Float is a lot more than a specific rational number with
2^k denominator. It is a belief that our unknown real number is
'close' to it. Not precise, but good enough to be the basis for all
engineering.<br>
<br>
<blockquote
cite="mid:CAKnRiT5JRaFcscZvsZz53Xicy3zJpPJ0_3Xo8FSyPJyM9A6PHg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div>Arithmetic operations with Float operands might be inexact
(approximated), and that's the reason why we convert to Float
and not the other way around, mixing inexact and exact
arithmetic leads to inexact results...</div>
<div><br>
</div>
<div>For Complex, this would be more like falling in a 2nd
dimension...<br>
</div>
<div><br>
</div>
<div>Nicolas<br>
</div>
</div>
</blockquote>
<br>
Yep.<br>
<br>
<blockquote
cite="mid:CAKnRiT5JRaFcscZvsZz53Xicy3zJpPJ0_3Xo8FSyPJyM9A6PHg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div><br>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">Le lun. 27 févr. 2023 à 22:41,
Juan Vuletich via Cuis-dev <<a moz-do-not-send="true"
href="mailto:cuis-dev@lists.cuis.st">cuis-dev@lists.cuis.st</a>>
a écrit :<br>
</div>
<blockquote class="gmail_quote" style="margin: 0px 0px 0px
0.8ex; border-left: 1px solid rgb(204, 204, 204);
padding-left: 1ex;">On 2/26/2023 10:48 AM, ken.dickey--- via
Cuis-dev wrote:<br>
> On 2023-02-26 05:31, ken.dickey--- via Cuis-dev wrote:<br>
><br>
>> BTW, we can do better. I think -4+0i above should be
and print as -4.<br>
><br>
> Ah! The code is already there and just needed to be
uncommented <br>
> (attached).<br>
><br>
> As we have Complex>>basicReal:imaginary: why does <br>
> Complex>>real:imaginary not do the simplification?
Can we not just <br>
> enable this?<br>
><br>
> Thanks,<br>
> -KenD<br>
<br>
Given that in Math, Complex is an extension of Real (and not
of Integer <br>
or Rational), I think that consistency with Floats is most
important. <br>
And Floats don't reduce to Integer (it would be a huge mistake
to do <br>
that). That's why the commented code in #real:imaginary: would
only go <br>
back if the imaginary part is not Float: doing it for Complex
with Float <br>
parts would be the same as converting 0.0 to 0.<br>
<br>
And doing it differently for Complex with Float parts and with
Integer <br>
parts would not be simpler. It would be more complicated, and
need this <br>
extra explanation to make sense.<br>
<br>
In the Number hierarchy, Float is like a pit you can't exit
once you <br>
fall into it. As Complex is an extension of Real, I think
Complex should <br>
do the same.<br>
<br>
Maybe this rant should be in the comment at #real:imaginary:,
after all.<br>
<br>
Thanks,<br>
<br>
-- <br>
Juan Vuletich<br>
<a moz-do-not-send="true" href="http://cuis.st"
rel="noreferrer" target="_blank">cuis.st</a><br>
<a moz-do-not-send="true" href="http://github.com/jvuletich"
rel="noreferrer" target="_blank">github.com/jvuletich</a><br>
<a moz-do-not-send="true"
href="http://researchgate.net/profile/Juan-Vuletich"
rel="noreferrer" target="_blank">researchgate.net/profile/Juan-Vuletich</a><br>
<a moz-do-not-send="true"
href="http://independent.academia.edu/JuanVuletich"
rel="noreferrer" target="_blank">independent.academia.edu/JuanVuletich</a><br>
<a moz-do-not-send="true"
href="http://patents.justia.com/inventor/juan-manuel-vuletich"
rel="noreferrer" target="_blank">patents.justia.com/inventor/juan-manuel-vuletich</a><br>
<a moz-do-not-send="true"
href="http://linkedin.com/in/juan-vuletich-75611b3"
rel="noreferrer" target="_blank">linkedin.com/in/juan-vuletich-75611b3</a><br>
<a moz-do-not-send="true"
href="http://twitter.com/JuanVuletich" rel="noreferrer"
target="_blank">twitter.com/JuanVuletich</a><br>
<br>
-- <br>
Cuis-dev mailing list<br>
<a moz-do-not-send="true" href="mailto:Cuis-dev@lists.cuis.st"
target="_blank">Cuis-dev@lists.cuis.st</a><br>
<a moz-do-not-send="true"
href="https://lists.cuis.st/mailman/listinfo/cuis-dev"
rel="noreferrer" target="_blank">https://lists.cuis.st/mailman/listinfo/cuis-dev</a><br>
</blockquote>
</div>
</blockquote>
<br>
Cheers,<br>
<pre class="moz-signature" cols="72">--
Juan Vuletich
cuis.st
github.com/jvuletich
researchgate.net/profile/Juan-Vuletich
independent.academia.edu/JuanVuletich
patents.justia.com/inventor/juan-manuel-vuletich
linkedin.com/in/juan-vuletich-75611b3
twitter.com/JuanVuletich</pre>
</body>
</html>