Eliminate spurious redefinition of derivabbrev in Ctensor, fix documentation of diagm...
[maxima/cygwin.git] / src / trdata.lisp
blob3b3176c8f4965712b1bbd2d1b217c936f402f8bd
1 ;;; -*- Mode: Lisp; Package: Maxima; Syntax: Common-Lisp; Base: 10 -*- ;;;;
2 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3 ;;; The data in this file contains enhancments. ;;;;;
4 ;;; ;;;;;
5 ;;; Copyright (c) 1984,1987 by William Schelter,University of Texas ;;;;;
6 ;;; All rights reserved ;;;;;
7 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
8 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
9 ;;; If you see bogus or missing data here, please tell GJC or JPG. ;;;
10 ;;; (c) Copyright 1982 Massachusetts Institute of Technology ;;;
11 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
13 (in-package :maxima)
15 (macsyma-module trdata)
17 ;;; N.B. This is some data. Boy, does it have subtle effect on the code
18 ;;; produced by TRANSLATE. It should be carefully checked and updated.
19 ;;; Since it is so small, and compiles so quickly it sometimes serves
20 ;;; as a fix (i.e. hack) file. so be careful.
22 ;;; MODEDECLARE(FUNCTION(LENGTH),FIXNUM)
24 ;;I think all this can be done at load time only:--wfs
25 (eval-when
26 #+gcl (load eval)
27 #-gcl (:load-toplevel :execute)
29 (mapc #'(lambda (x) (putprop x '$fixnum 'function-mode))
30 '($length $nterms random $nroots $rank $polysign $time
31 $array_dimension_n))
33 (mapc #'(lambda (x) (putprop x '$float 'function-mode))
34 '($find_root_subr))
36 ;;; Functions of BOOLEAN return VALUE. i.e. PREDICATES
38 (mapc #'(lambda (x) (putprop x '$boolean 'function-mode))
39 '($array $bfloatp $listp $matrixp $ratnump $constantp
40 $atom $freeof $subvarp $symbolp
41 $evenp $oddp $orderlessp $ordergreatp $mapatom
42 $integerp $floatnump $nonscalarp $numberp $ratp $member
43 $emptyp))
45 ;;; MODEDECLARE(TRUE,BOOLEAN)
47 (mapc #'(lambda (x) (putprop x '$boolean 'mode))
48 '($true $false $doallmxops $domxmxops $doscmxops $detout
49 $dotassoc $dotdistrib $dotscrules $exponentialize
50 $keepfloat $listarith $logsimp
51 $maxapplyheight $maxapplydepth $maperror $powerdisp
52 $scalarmatrix $simp $ttyoff $underflow $infeval
53 $xaxis $yaxis $ratfac))
55 (mapc #'(lambda (x) (putprop x t 'implied-quotep))
56 '($eval $done $%i $%pi $%e $%phi $%gamma
57 mqapply ; important for array referencing conventions.
61 ;;; The result of a part function never needs simplification.
62 ;;; $CONS for example has the same property, although it
63 ;;; is not a "PART" function.
65 ;;; ELL has just shown a bug with FIRST and REST interaction with
66 ;;; DEFMATCH and MATCHDECLARE. The extra simplification needed
67 ;;; it seems. LIST mode must be implemented, untill then the
68 ;;; cost of the extra SIMPLFY call is not much compared with the
69 ;;; consing involved. Above all, we must have correct code !!!
71 (mapc #'(lambda (l) (putprop l t 'tr-nosimp))
72 '($print $num $denom $lhs $rhs $part
73 $cons $reverse $endcons $append
74 $union $intersection $setdiff $symdiff
75 $mapset $predset |${| $elementof)))