Prof. Dr. Johannes Grabmeier privat
2018-06-30 15:08:29 UTC
Hi all,
since long I have a domain which respresents the elements of a list as a
elements of the domain: FiniteSet(S, List S) and a special case OneToN =
{1,2,3,...,n}.
Two problems:
1. < of PartialOrder does not work properly. Note, that the order of the
elements in the finite set is the given order in the list.
2. OneToN: my attempts to make it as comfortable for the user by using
as underlying domain PositiveInteger gives an error message:
(14) -> enumerate()$Q10
  >> System error:
  The value
 #:G2267
is not of type
 LIST
Using Integer instead gives confusion for coercing from positive
integers to OneToN by missing retractIfCan, but could not be identified,
what the system means.
Is the list argument ln a problem?
If the problems can be fixed, the domains could go into the system.
-- Here is an example computation:
FS4 := FiniteSet(Integer, [2,1,3,4])
  (1) FiniteSet(Integer,[2,1,3,4])
                                                                                        Â
Type: Type
eFS4 := enumerate()$FS4
  (2) [2, 1, 3, 4]
                                                           Type:
List(FiniteSet(Integer,[2,1,3,4]))
a : FS4 := first eFS4
  (3) 2
                                                                 Type:
FiniteSet(Integer,[2,1,3,4])
b : FS4 := second eFS4
  (4) 1
                                                                 Type:
FiniteSet(Integer,[2,1,3,4])
a <= b
  (5) true
                                                                                     Â
Type: Boolean
b <= a
  (6) false
                                                                                     Â
Type: Boolean
a < b
  (7) false
                                                                                     Â
Type: Boolean
"in the interpreter this is true, in accordance with the implementation
of <= in the domain!"
  (8) "in the interpreter this is true, in accordance with the
implementation of <= in the domain!"
                                                                                      Â
Type: String
(a <= b) and not(b <= a)
  (9) true
                                                                                     Â
Type: Boolean
Q10 := OneToN 10
  (10) OneToN(10)
                                                                                        Â
Type: Type
enumerate()$Q10
  >> System error:
  The value
 #:G2456
is not of type
 LIST
--
Mit freundlichen GrÃŒÃen
Johannes Grabmeier
Prof. Dr. Johannes Grabmeier
KöckstraÃe 1, D-94469 Deggendorf
Tel. +49-(0)-991-2979584, Tel. +49-(0)-151-681-70756
Tel. +49-(0)-991-3615-141 (d), Fax: +49-(0)-32224-192688
since long I have a domain which respresents the elements of a list as a
elements of the domain: FiniteSet(S, List S) and a special case OneToN =
{1,2,3,...,n}.
Two problems:
1. < of PartialOrder does not work properly. Note, that the order of the
elements in the finite set is the given order in the list.
2. OneToN: my attempts to make it as comfortable for the user by using
as underlying domain PositiveInteger gives an error message:
(14) -> enumerate()$Q10
  >> System error:
  The value
 #:G2267
is not of type
 LIST
Using Integer instead gives confusion for coercing from positive
integers to OneToN by missing retractIfCan, but could not be identified,
what the system means.
Is the list argument ln a problem?
If the problems can be fixed, the domains could go into the system.
-- Here is an example computation:
FS4 := FiniteSet(Integer, [2,1,3,4])
  (1) FiniteSet(Integer,[2,1,3,4])
                                                                                        Â
Type: Type
eFS4 := enumerate()$FS4
  (2) [2, 1, 3, 4]
                                                           Type:
List(FiniteSet(Integer,[2,1,3,4]))
a : FS4 := first eFS4
  (3) 2
                                                                 Type:
FiniteSet(Integer,[2,1,3,4])
b : FS4 := second eFS4
  (4) 1
                                                                 Type:
FiniteSet(Integer,[2,1,3,4])
a <= b
  (5) true
                                                                                     Â
Type: Boolean
b <= a
  (6) false
                                                                                     Â
Type: Boolean
a < b
  (7) false
                                                                                     Â
Type: Boolean
"in the interpreter this is true, in accordance with the implementation
of <= in the domain!"
  (8) "in the interpreter this is true, in accordance with the
implementation of <= in the domain!"
                                                                                      Â
Type: String
(a <= b) and not(b <= a)
  (9) true
                                                                                     Â
Type: Boolean
Q10 := OneToN 10
  (10) OneToN(10)
                                                                                        Â
Type: Type
enumerate()$Q10
  >> System error:
  The value
 #:G2456
is not of type
 LIST
--
Mit freundlichen GrÃŒÃen
Johannes Grabmeier
Prof. Dr. Johannes Grabmeier
KöckstraÃe 1, D-94469 Deggendorf
Tel. +49-(0)-991-2979584, Tel. +49-(0)-151-681-70756
Tel. +49-(0)-991-3615-141 (d), Fax: +49-(0)-32224-192688
--
You received this message because you are subscribed to the Google Groups "FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fricas-devel+***@googlegroups.com.
To post to this group, send email to fricas-***@googlegroups.com.
Visit this group at https://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.
You received this message because you are subscribed to the Google Groups "FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fricas-devel+***@googlegroups.com.
To post to this group, send email to fricas-***@googlegroups.com.
Visit this group at https://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.