[gecode-users] element constraint
frank lemoine
benouna84 at live.fr
Wed Nov 4 19:49:58 CET 2009
hi gecode users,
thank you christian for tips about the element constraint i run it, it's a very usefull but still i had some difficulties i don't know if gecode provide a solution for representing two intvar by a single intvar.
let this constaint element (home, a,b,c)
i have two integer variables represented by Intvar, i want to use a variable Intvar in c that can represent the link between this two varaibles (an edge for example)
the goal is to check if this pair is in a the set of all pairs in a
have some one an idea ?
_________________________________________________________________
Nouveau! Découvrez le Windows phone Samsung Omnia II disponible chez SFR.
http://clk.atdmt.com/FRM/go/175819072/direct/01/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.ps.uni-sb.de/pipermail/users/attachments/20091104/91e82904/attachment.htm>
More information about the gecode-users
mailing list


Top
Menu
Home
Shows
Photos
Videos
Live
Album Release
Shows
Upcoming Shows
Photos
Spring Drips Album Release
A few moments of the song "Cooper's Bank Bomb" by Grotto played live at the Mutiny Information Cafe
Your browser does not support HTML5 video.
Contact Us
Lorem ipsum dolor sit amet consectetur.
Send Message


RPC over XML (RoX) provides a light-weight, scalable library for marshalling and unmarshalling XML-RPC messages, directly and over an HTTP transport.
RoX builds on top of the NanoXML parser (this is the only external dependency RoX has beyond the JDK), without which I probably would have just given up (having no desire to produce yet another XML parser). Thanks go to Marc De Scheemaecker for this parser.
RoX builds on the NIO libraries introduced with Java 1.4.


Application types:
processor
source
sink
task
app
Versions:
1.2.2.RELEASE
1.2.2.RELEASE
2
Stream statuses:
DEPLOYING
DEPLOYED
INCOMPLETE
FAILED
UNDEPLOYED
Task statuses:
UNKNOWN
COMPLETE
ERROR
RUNNING
Job execution statuses:
COMPLETED
ERROR
Record actions statuses:
DEPLOY
CREATE
DELETE
ROLLBACK
UNDEPLOY
UPDATE
Record operations statuses:
APP_REGISTRATION
SCHEDULE
TASK
STREAM


Match Play. Red trails 4-6 to 7 (post-Crawford). How should Red play 32?
pips Red=157 White=98
(CorrectAnswer= 0/0, ErrorScore= 0)
There is very little difference between the plays here and with two White checkers on the bar Red is a big favourite.
However, care must still be taken and in situations like this, joker avoidance should be a key element
Therefore, Red should play 20/17, 11/9*, avoiding 11, 22 and 55 by White. 12/9*/7 is the second best move but that is still an error. The important lesson here is about joker avoidance so bear it in mind for future situations of a similar nature.
However, care must still be taken and in situations like this, joker avoidance should be a key element
Therefore, Red should play 20/17, 11/9*, avoiding 11, 22 and 55 by White. 12/9*/7 is the second best move but that is still an error. The important lesson here is about joker avoidance so bear it in mind for future situations of a similar nature.
1. Cubeful 2-ply 12/9* 10/8 Eq.: +0.843 0.700 0.222 0.009 - 0.300 0.150 0.006 2. Cubeful 2-ply 12/9*/7 Eq.: +0.831 (-0.012) 0.697 0.218 0.009 - 0.303 0.134 0.003 3. Cubeful 2-ply 20/17 11/9* Eq.: +0.821 (-0.023) 0.701 0.210 0.009 - 0.299 0.132 0.004 4. Cubeful 2-ply 11/9* 10/7 Eq.: +0.820 (-0.023) 0.693 0.217 0.009 - 0.307 0.172 0.013 5. Cubeful 2-ply 13/11 12/9* Eq.: +0.785 (-0.058) 0.681 0.212 0.009 - 0.319 0.127 0.002


PUMP UP THE VOLUME A Film Review Copyright Dragan Antulov 1999
Age of Internet should be remembered as the first time in history when those unprivileged, unpopular or simply ignored got more or less equal opportunity to have their say in the matters of this world. But even before this time, such people had found ways to express themselves. One of such ways was in the form of pirate radio stations. PUMP UP THE VOLUME, 1990 teen drama by Canadian author Allan Moyle, is dedicated to such media.
The hero in this movie is Mark Hunter (Christian Slater), high school student whose parents brought him from trendy megalopolis of New York to suburban Arizona. Without friends, and feeling isolated, this nerdy student at day at night finds comfort by operating pirate radio station operating from his room. Every night at 10 PM he begins with programme, playing rock music and uses the medium to express his feelings and opinions about many things that bother teenagers, including the oppressive administration of his school. Gradually, his on-air personality of Hard Harry begins getting the cult following, but when one of the viewers commits suicide while listening to his programme, the authorities become interested. Nora Diniro (Samantha Mathis), one of the students at school, is also trying to seek for Hard Harry and his true identity.
People who watch this film from today's perspective might be tempted to conclude that the pre-Internet times used to be the golden age of teen-adult relations. Teenagers were simply being oppressed, and their rebellious rather seldom expressed itself in violent or dangerous forms. But today, a teenager that preaches rebellion and uses media to spew anger towards world and injustice is more likely to cause unease than sympathy, especially after some overhyped examples of high school shootings in USA.
For Canadian author Allan Moyle, this film had a lot of autobiographical elements and explored themes very similar to his 1980s film TIMES SQUARE. Unfortunately for the commercial prospects of the film, but fortunately for the viewers who like the movies that make them think, Moyle took this film and its subject seriously.  For some people, this film might also look sadly outdated - teenagers in previous two decades became most important target group of entertainment industry, and as such, their rebellious instincts became suppressed in the hedonism. On the other hand, outdated solution of the film might be still compensated with the fact that it asks the right question, in more ways than one superior to its much more celebrated companion, 1989 black comedy HEATHERS.
Difference between contemporary and today's perspective of the film and its topics can be seen through the different perspective of Christian Slater, its lead. In the early 1990s Slater was promising bright star of teen movies. At the end of the decade, Slater is bad boy of tabloid media. However, in this film he really shines with his great acting potential. Samantha Mathis also shows talent, and the chemistry between the two is great (and it was repeated six years later in BROKEN ARROW). Because of such chemistry, we can almost forget the fact that it was used in rather unnecessary romantic subplot that brought the taste of commercialism into the movie that didn't need such compromises.
However, despite its flaws, PUMP UP THE VOLUME is the very good film that deserves praise because it makes people think -something seldom seen in Hollywood these days.
RATING: 7/10 (+++)
Review written on May 7th 1999
-- Dragan Antulov a.k.a. Drax Fido: 2:381/100 E-mail<EMAIL_ADDRESS>E-mail<EMAIL_ADDRESS>E-mail<EMAIL_ADDRESS>The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


% include com/stdhead.html %>
The email address associated with your Hashbase account is <%= sessionUser.email %>
New email address
Your password


@JvmStatic fun newInstance(settings: RecurrencePickerSettings): RecurrenceListDialog
Create a new instance of the dialog with settings. More settings can be set with the returned dialog instance later.


Alen Ribic / @alenribic
January 2013, Lambda Luminaries
Cloud Haskell is a DSL for developing programs for a distributed computing environment in Haskell.
Often called the 'Actor model'
newtype Process a = Process {
unProcess :: ReaderT LocalProcess IO a
} deriving (Functor, Monad, MonadIO, MonadReader LocalProcess,
Typeable, Applicative)
data ProcessId
data NodeId
class (Binary a, Typeable a) => Serializable a
send :: Serializable a => ProcessId -> a -> Process ()
expect :: Serializable a => Process a
receiveWait :: [Match b] -> Process b
receiveTimeout :: Int -> [Match b] -> Process (Maybe b)
match :: Serializable a => (a -> Process b) -> Match b
matchIf :: Serializable a => (a -> Bool) -> (a -> Process b) -> Match b
spawn :: NodeId -> Closure (Process ()) -> Process ProcessId
terminate :: Process a
getSelfPid :: Process ProcessId
getSelfNode :: Process NodeId
link :: ProcessId -> Process ()
monitor :: ProcessId -> Process MonitorRef
say :: String -> Process ()
+------------------------------------------------------------+ | Application | +------------------------------------------------------------+ | | V V +-------------------------+ +------------------------------+ | Cloud Haskell |<--| Cloud Haskell Backend | +-------------------------+ +------------------------------+ | ______/ | V V V +-------------------------+ +------------------------------+ | Transport Interface |<--| Transport Implementation | +-------------------------+ +------------------------------+ | V +------------------------------+ | Haskell/C Transport Library | +------------------------------+
Implementations
Also possible
"SimpleLocalnet" backend
"Windows Azure" backend
Building a distributed app to find and sum up a number of prime factors for every natural number [1..n]
factors :: [Integer] -> Integer -> [Integer]
factors qs@(p:ps) n
| n <= 1 = []
| m == 0 = p : factors qs d
| otherwise = factors ps n
where
(d,m) = n `divMod` p
primeFactors :: Integer -> [Integer]
primeFactors = factors primes
numPrimeFactors :: Integer -> Integer
numPrimeFactors = fromIntegral . length . primeFactors
Written by Dan Weston
Push work to available nodes and sum up the results
master :: Integer -> [NodeId] -> Process Integer
master n slaves = do
us <- getSelfPid
-- Start slave processes
slaveProcesses <- forM slaves $
\nid -> spawn nid ($(mkClosure 'slave) us)
-- Distribute 1 .. n amongst the slave processes
spawnLocal $ forM_ (zip [1 .. n] (cycle slaveProcesses)) $
\(m, them) -> send them m
-- Wait for the result
sumIntegers (fromIntegral n)
sumIntegers :: Int -> Process Integer
sumIntegers = go 0
where
go :: Integer -> Int -> Process Integer
go !acc 0 = return acc
go !acc n = do
m <- expect
go (acc + m) (n - 1)
Compute the number of prime factors and send results to master node
slave :: ProcessId -> Process ()
slave them = forever $ do
n <- expect
send them (numPrimeFactors n)
remotable ['slave]
main = do
args <- getArgs
case args of
["master", host, port, n] -> do
backend <- initializeBackend host port rtable
startMaster backend $ \slaves -> do
result <- master (read n) slaves
liftIO $ print result
["slave", host, port] -> do
backend <- initializeBackend host port rtable
startSlave backend
./prime-factors slave localhost 8081
./prime-factors master localhost 8080 100
=> 239
For more examples, check out the distributed-process-demos package.
A brief look at running Raspberry Pi in a Haskell Cloud
Cloud Haskell brings some key contributions that, in one form or another, can play a major role in the next generation of cloud computing. And because Raspberry Pi, through its sheer low cost and capability, has the potential to gain the greatest reach of any embedded system.
Ready for serious experiments, but not yet for serious use.
Hackage
Source code and documentation
https://github.com/haskell-distributed/distributed-processThe New Cloud Haskell presentation by Duncan Coutts and Edsko de Vries delivered at the Haskell Implementors Workshop.


Protesters in France condemn violence against women
by Lauren ChadwickProtesters in Paris hit the streets today to condemn violence against women ahead of an international awareness day on Monday (November 25).
It comes as the number of femicides in France is already larger this year than it was in 2018. Many protesters held signs with the names of women killed by a partner or ex-partner.
At least 49,000 protesters showed up in Paris, according to the independent research firm Occurrence.
The protests follow several high profile cases in France including a woman in Alsace who was stabbed to death in front of her daughter.
The French justice department said last week that in 65% of 88 domestic violence murders or attempted in the country last year, police were notified beforehand.
The Council of Europe said in a report released on Tuesday that France had insufficiencies in its system that including flaws in its judicial processes.
The government is set to reveal the conclusions of its consultations on the issue of domestic violence on Monday.


| About Dailyrotten |
|
Feedback
If you like this page, hate it, or would like to suggest changes,
<EMAIL_ADDRESS>is listening. This page
is experimental and somewhat different from what we usually offer, so please
do send your feedback.
Adding Stories
If you are a rotten newshound and you would like to suggest a story,
visit our submit page to
send us the URL. Stories that are accepted will have your name credited.
Posting Comments
In order to post comments to stories, you will have to
create an account.
Accounts will generally be validated within 24 hours, and of
course will be disabled if there is abuse.
Viewership
On the first full day this page went live, 100,000 people visited this Rotten
News page. Of course that was the day after the WTC attacks, so that number is
somewhat distorted. Right now this page gets between 50,000 and 75,000 people
every day.
Linking
We encourage everyone to link to this page; if you like it, others probably
will as well.
Other Rotten
Rotten
Gaping Maw
Celebrity Morgue
Mugshots
Rotten Store
Rate My Poo
Rate My Kitten
Rate My Finger
Penny Postcards
Phallic
Boners
Home
Make Dailyrotten your start page
|
|
|
July 13, 2002
Man who loved his dog buried in pet cemetery
Wire Services | Submitted by: JOPY
"The cremated remains of Jim Crovetti and his Rottweiler, Lady,
are buried in separate urns at the Loving Rest Pet Cemetery in Warren
County, about 10 miles south of Des Moines, in a section
dedicated to service animals."
|
|
Read article...
|
|
Once-a-week e-mail ban to get staff to talk
Straits Times | Submitted by: Leth
"Staff at Liverpool City Council have been banned from sending e-mail in a bid to encourage more traditional forms of communication." Quote: " Violators of the ban will be frowned upon by managers."
|
|
Read article...
|
|
Tear gas machismo test
Ottawa Daily Times | Submitted by: Gutter Juice
Beer and Tear Gas don't mix. Beer and Bravado don't mix. Making a circle
of friends around a tear gas canister to see who has the biggest balls, well,
don't mix too well either. "Witness statements indicate that this gas was
tear gas. This is not personal use size."
|
|
Read article...
|
|
Tokyo Horror Surgery
Mainichi Daily News | Submitted by: Major Hockstetter
Japan appears to have more than its fair share of horror hospitals and
sadistic surgeons. "For hours, the microsurgeon worked in the tense
atmosphere of the operating room as he slowly and meticulously fused the
severed limb back onto its owner. Then, suddenly, the chief surgeon gave
a gasp. 'Oh my God,' he said. 'I've reattached it the wrong way around.'"
|
|
Read article...
|
|
Chicken Feathers: Not just for pillows
Washington Post | Submitted by: wingnut
"In late June, a chemical engineer from the University of Delaware filed a patent that described a new generation of microchips. The patent proposes to replace silicon -- which has long served as the basis for microchips -- with another material. And what might this mystery component be? Chicken feathers." Today the feathers, tomorrow the poo!
|
|
Read article...
|
|
My baby's covered with fur
Sun | Submitted by: jenlb
"Emergency services who took a call from a frantic woman claiming
her 'daughter' had stopped breathing were stunned to find the child
was a dog. Camille Wood, 19, is alleged to have dialled 911 and
asked for help. When the emergency operator asked what colour the baby
was, to see if it was turning blue, Wood is said to have replied:
"I can't tell; my baby's covered with fur."
|
|
Read article...
|
|
Did he or didn't he clone?
BBC | Submitted by: Ann Onymous
"An Italian doctor, Severino Antinori, has denied a newspaper report that he is in the process of cloning a human being. He later said in a statement that the newspaper report had nothing to do with the serious scientific work he was involved in. Professor Antinori has always denied beining involved in preganancies brought about with cloned human embryos, although he recently said that three women had been made preganant using the technique."
|
|
Read article...
|
|
Caseworker falsifies documents about dead child
St. Petersburg Times | Submitted by: Toots
"A state child-welfare investigator was fired and criminally charged
Friday with falsely claiming she had visited the 2-year-old boy whose
body was found beside I-275 this week. The investigator, Erica Jones,
reported that she visited the child on the same day police say he was killed."
|
|
Read article...
|
|
|
|
|


CryptoAttacker helps detect and exploit some common crypto flaws.
- Active Scanning to detect padding Oracle attacks
- Active Scanning capabilities to detect input being encrypted with ECB and reflected back (can be slow)
- Attack tab to encrypt/decrypt padding oracles
- Attack tab to decrypt ECB where you control part of the request
I only test this on Burp pro latest version and Jython 2.7 (but please report issues if you have any with different configs)
The source for this extension can be found here.


Each column represents a permission. Hover the mouse over the permission names to get more information about what they represent.
Each row represents a user or a group (often called 'role', depending on the security realm.) This includes a special user 'anonymous', which represents unauthenticated users, as well as 'authenticated', which represents all authenticated users (IOW, everyone except anonymous users.) Use the text box below the table to add new users/groups/roles to the table, and click the [x] icon to remove it from the table.
Permissions are additive. That is, if an user X is in group A, B, and C, then the permissions that this user actually has are the union of all permissions given to X, A, B, C, and anonymous.


Status: Passed, Jun 89 X3J13Issue: PATHNAME-LOGICAL
Forum: Cleanup
References: Pathnames (pp410-413)
OPEN (p.418), WITH-OPEN-FILE (p.422), RENAME-FILE (p.423),
DELETE-FILE (p.424), PROBE-FILE (p.424),
FILE-WRITE-DATE (p.424), FILE-AUTHOR (p.424), LOAD (p.426),
COMPILE-FILE (p.439), DIRECTORY (p.427), PATHNAME (p.413),
TRUENAME (p.413), MERGE-PATHNAMES (p.415),
MAKE-PATHNAME (p.416), and PARSE-NAMESTRING (p.414).
Related issues: PATHNAME-CANONICAL-TYPE, PATHNAME-COMPONENT-VALUES,
PATHNAME-SUBDIRECTORY-LIST, and PATHNAME-WILD
Category: ADDITION
Edit history: Version 1, 11-May-89, by Moon
Version 2, 18-May-89, by Moon
Version 3, 21-Jun-89, by Moon (revise based on discussion
in the cleanup committee)
Version 4, 23-Jun-89, by Moon (remove backtranslation)
Problem description:
Pathname values are not portable, but they are sometimes part of a
program, for example the names of files containing the program and the
data used by the program. Moving large programs between sites would
be easier if pathname values did not have to be translated.
Pathname values are nonportable because not all Common Lisp
implementations use the same operating system and file name syntax varies
widely among operating systems. In addition, corresponding files at two
different sites may have different names even when the operating system
is the same; for example, they may be on different directories or
different devices.
The issue of portable pathname values is separate from the issues of
portable pathname operations. See the related issues listed above.
For inter-issue interactions, see the discussion section below.
Note that issue PATHNAME-LOGICAL fundamentally depends on issue
PATHNAME-WILD. If PATHNAME-WILD:NEW-FUNCTIONS does not pass,
PATHNAME-LOGICAL cannot pass.
Proposal (PATHNAME-LOGICAL:ADD):
1. Define a "logical" file system that looks the same at every site.
This file system is implemented by translating each logical pathname into
a physical pathname on a real file system. The logical pathnames are the
same at all sites, but the translations are different at each site, thus
the physical pathnames can be different at each site.
2a. The syntax of a logical pathname namestring is as follows:
[ host ":" ] [ ";" ] { directory ";" }* [ name ] [ "." type [ "." version ]]
2b. Terminology:
A <word> consists of one or more uppercase letters, digits, and hyphens.
A <wildcard word> consists of one or more asterisks, uppercase letters,
digits, and hyphens, including at least one asterisk, with no two
asterisks adjacent. Each asterisk matches a sequence of zero or more
characters. The <wildcard word> "*" parses into :WILD, the others parse
into strings.
In <words> and <wildcard words> lowercase letters are translated to
uppercase. The consequences of using other characters are unspecified.
2c. Logical pathname components:
The host is a <word> that has been defined as a logical pathname host by
using SETF of LOGICAL-PATHNAME-TRANSLATIONS.
There is no device, so the device component of a logical pathname is
always :UNSPECIFIC. No other component can be :UNSPECIFIC.
Each directory is a <word>, a <wildcard word>, or "**" (:WILD-INFERIORS).
If a semicolon precedes the directories, the directory component is
relative, otherwise it is absolute.
The name is a <word> or a <wildcard word>.
The type is a <word> or a <wildcard word>.
The version is a positive decimal integer or "NEWEST" (:NEWEST) or "*"
(:WILD). The letters in "NEWEST" can be in either alphabetic case.
The consequences of using any value not specified here as a logical
pathname component are unspecified.
The null string "" is not a valid value for any component of a logical
pathname, since "" is not a <word> and not a <wildcard word>.
3. Parsing of logical pathname namestrings into logical pathnames
operates as follows:
3a. Logical pathname namestrings are recognized by the LOGICAL-PATHNAME
and TRANSLATE-LOGICAL-PATHNAME functions. In this case the host portion
of the logical pathname namestring and its following colon are required.
3b. The PARSE-NAMESTRING function recognizes a logical pathname
namestring when the host argument is logical or the defaults argument is
a logical pathname. In this case the host portion of the logical
pathname namestring and its following colon are optional. If the host
portion of the namestring and the host argument are both present and do
not match, an error is signalled.
The host argument is logical if it is supplied and came from
PATHNAME-HOST of a logical pathname. Whether a host argument is logical
if it is a string equal to a logical pathname host name is
implementation-defined.
3c. The MERGE-PATHNAMES function recognizes a logical pathname namestring
when the defaults argument is a logical pathname. In this case the host
portion of the logical pathname namestring and its following colon are
optional.
3d. Whether the other functions that coerce strings to pathnames
(PATHNAME, TRUENAME, PARSE-NAMESTRING in other circumstances than those
described in point 3b, MERGE-PATHNAMES in other circumstances than those
described in point 3c, the :DEFAULTS argument to MAKE-PATHNAME,
PATHNAME-HOST, PATHNAME-DEVICE, PATHNAME-DIRECTORY, PATHNAME-NAME,
PATHNAME-TYPE, PATHNAME-VERSION, NAMESTRING, FILE-NAMESTRING,
DIRECTORY-NAMESTRING, HOST-NAMESTRING, ENOUGH-NAMESTRING, OPEN,
WITH-OPEN-FILE, RENAME-FILE, DELETE-FILE, PROBE-FILE, FILE-WRITE-DATE,
FILE-AUTHOR, LOAD, DIRECTORY, COMPILE-FILE, ED, DRIBBLE, WILD-PATHNAME-P,
PATHNAME-MATCH-P, TRANSLATE-PATHNAME, and COMPILE-FILE-PATHNAME)
recognize logical pathname namestrings is implementation defined.
4. Some real file systems do not have versions. Logical pathname
translation to such a file system ignores the version. This implies that
a program cannot rely on being able to store more than one version of a
file named by a logical pathname.
5. The type of a logical pathname for a Common Lisp source file is "LISP".
This should be translated into whatever type is appropriate in a physical
6. The logical pathname host name "SYS" is reserved for the implementation.
The existence and meaning of SYS: logical pathnames is
implementation-defined.
7. File manipulation functions operate with logical pathnames as follows:
7a. The functions OPEN (and WITH-OPEN-FILE), RENAME-FILE, DELETE-FILE,
PROBE-FILE, FILE-WRITE-DATE, FILE-AUTHOR, LOAD, DIRECTORY, COMPILE-FILE,
ED, DRIBBLE, COMPILE-FILE-PATHNAME, and TRUENAME accept logical pathnames
and translate them into physical pathnames, as if by calling the
TRANSLATE-LOGICAL-PATHNAME function.
7b. PATHNAME of a stream created by OPEN (or WITH-OPEN-FILE) of a logical
pathname is a logical pathname.
7c. TRUENAME, PROBE-FILE, and DIRECTORY never return logical pathnames.
7d. RENAME-FILE with a logical pathname as the second argument returns a
logical pathname as the first value.
7e. MERGE-PATHNAMES returns a logical pathname if and only if its first
argument is a logical pathname or its first argument does not specify a
host and the default is a logical pathname.
7f. MAKE-PATHNAME returns a logical pathname if and only if the host is
logical. If the :host argument to MAKE-PATHNAME is supplied, the host is
logical if it came from PATHNAME-HOST of a logical pathname. Whether a
:host argument is logical if it is a string equal to a logical pathname
host name is implementation-defined.
7g. PARSE-NAMESTRING returns a logical pathname according to points 3b
and 3d.
Add these defined names to Common Lisp in support of logical pathnames:
8. LOGICAL-PATHNAME [Class]
LOGICAL-PATHNAME is a subclass of PATHNAME.
9. LOGICAL-PATHNAME pathname [Function]
Converts the argument to a logical pathname and returns it. The
argument can be a logical pathname, a logical pathname namestring
containing a host component, or a stream for which the PATHNAME
function returns a logical pathname. For any other argument,
LOGICAL-PATHNAME signals an error of type TYPE-ERROR.
10. TRANSLATE-LOGICAL-PATHNAME pathname &key [Function]
Translates a logical pathname to the corresponding physical pathname.
The pathname argument is first coerced to a pathname. If it is not a
pathname, string, or file stream an error of type TYPE-ERROR is
signalled.
If the coerced argument is a physical pathname, it is returned.
If the coerced argument is a logical pathname, the first matching
translation (according to PATHNAME-MATCH-P) of the logical pathname
host is applied, as if by calling TRANSLATE-PATHNAME. If the result is
a logical pathname, this process is repeated. When the result is
finally a physical pathname, it is returned.
If no translation matches, an error of type FILE-ERROR is signalled.
TRANSLATE-LOGICAL-PATHNAME might perform additional translations,
typically to provide translation of file types to local naming
conventions, to accomodate physical file systems with limited length
names, or to deal with special character requirements such as
translating hyphens to underscores or uppercase letters to lowercase.
Any such additional translations are implementation defined. Some
implementations do no additional translations.
There are no specified keyword arguments for
TRANSLATE-LOGICAL-PATHNAME, but implementations are permitted to extend
it by adding keyword arguments. There is one specified return value
from TRANSLATE-LOGICAL-PATHNAME; implementations are permitted to
extend it by returning additional values.
11. LOGICAL-PATHNAME-TRANSLATIONS host [Function]
If <host> is not the host component of a logical pathname and not a
string that has been defined as a logical pathname host name by SETF of
LOGICAL-PATHNAME-TRANSLATIONS, signals an error of type TYPE-ERROR.
Otherwise returns the host's list of translations. Each translation is
a list of at least two elements: from-wildcard and to-wildcard. Any
additional elements are implementation defined. From-wildcard is a
logical pathname whose host is <host>. To-wildcard is a pathname.
Translations are searched in the order listed, so more specific
from-wildcards must precede more general ones.
(SETF (LOGICAL-PATHNAME-TRANSLATIONS host) translations) sets a logical
pathname host's list of translations. If <host> is a string that has
not been previously used as logical pathname host, a new logical
pathname host is defined, otherwise an existing host's translations are
replaced. Logical pathname host names are compared with STRING-EQUAL.
When setting the translations list, each from-wildcard can be a logical
pathname whose host is <host> or a logical pathname namestring
parseable by (PARSE-NAMESTRING string <<host>>), where <<host>>
represents the appropriate object as defined in point 3b. Each
to-wildcard can be anything coercible to a pathname by
(PATHNAME to-wildcard). If to-wildcard coerces to a logical pathname,
TRANSLATE-LOGICAL-PATHNAME will perform repeated translation steps when
it uses it.
Implementations can define additional functions that operate on
logical pathname hosts, for example to specify additional translation
rules or options.
12. LOAD-LOGICAL-PATHNAME-TRANSLATIONS host [Function]
If a logical pathname host named <host> (a string) is already defined,
return NIL. Otherwise, search for a logical pathname host definition
in an implementation defined manner. If none is found, signal an
error. If a definition is found, install it and return T.
The search used by LOAD-LOGICAL-PATHNAME-TRANSLATIONS should be
documented, as logical pathname definitions will be created by users,
not only by Lisp implementors. A typical search technique is to
look in a certain directory for a file whose name is derived from
the host name in an implementation-defined fashion.
13. COMPILE-FILE-PATHNAME pathname &key :output-file [Function]
Returns the pathname that COMPILE-FILE would write into, if given the
same arguments. If the pathname argument is a logical pathname and the
:output-file argument is unspecified, the result is a logical pathname.
If an implementation supports additional keyword arguments to
COMPILE-FILE, COMPILE-FILE-PATHNAME must accept the same arguments.
Examples:
;A very simple example of setting up a logical pathname host. No
;translations are necessary to get around file system restrictions, so
;all that is necessary is to specify the root of the physical directory
;tree that contains the logical file system.
;The namestring syntax on the right-hand side is implementation-specific.
(setf (logical-pathname-translations "foo")
'(("**;*.*.*" "MY-LISPM:>library>foo>**>")))
;Sample use of that logical pathname. All return values
;are of course implementation-specific.
(translate-logical-pathname "foo:bar;baz;mum.quux.3")
=> MY-LISPM:>library>foo>bar>baz>mum.quux.3
;A more complex example, dividing the files among two file servers
;and several different directories. This Unix doesn't support
;:WILD-INFERIORS in the directory, so each directory level must
;be translated individually. No file name or type translations
;are required except for .MAIL to .MBX.
;The namestring syntax on the right-hand side is implementation-specific.
(setf (logical-pathname-translations "prog")
'(("RELEASED;*.*.*" "MY-UNIX:/sys/bin/my-prog/")
("RELEASED;*;*.*.*" "MY-UNIX:/sys/bin/my-prog/*/")
("EXPERIMENTAL;*.*.*" "MY-UNIX:/usr/Joe/development/prog/")
("EXPERIMENTAL;DOCUMENTATION;*.*.*"
"MY-VAX:SYS$DISK:[JOE.DOC]")
("EXPERIMENTAL;*;*.*.*" "MY-UNIX:/usr/Joe/development/prog/*/")
("MAIL;**;*.MAIL" "MY-VAX:SYS$DISK:[JOE.MAIL.PROG...]*.MBX")))
;Sample use of that logical pathname. All return values
;are of course implementation-specific.
(translate-logical-pathname "prog:mail;save;ideas.mail.3")
=> MY-VAX:SYS$DISK:[JOE.MAIL.PROG.SAVE]IDEAS.MBX.3
;Example translations for a program that uses three files main.lisp,
;auxiliary.lisp, and documentation.lisp. These translations might be
;supplied by a software supplier as examples.
;For Unix with long file names
(setf (logical-pathname-translations "prog")
'(("CODE;*.*.*" "/lib/prog/")))
;Sample use of that logical pathname. All return values
;are of course implementation-specific.
(translate-logical-pathname "prog:code;documentation.lisp")
=> /lib/prog/documentation.lisp
;For Unix with 14-character file names, using .lisp as the type
(setf (logical-pathname-translations "prog")
'(("CODE;DOCUMENTATION.*.*" "/lib/prog/docum.*")
("CODE;*.*.*" "/lib/prog/")))
;Sample use of that logical pathname. All return values
;are of course implementation-specific.
(translate-logical-pathname "prog:code;documentation.lisp")
=> /lib/prog/docum.lisp
;For Unix with 14-character file names, using .l as the type
;The second translation shortens the compiled file type to .b
(setf (logical-pathname-translations "prog")
`(("**;*.LISP.*" ,(logical-pathname "PROG:**;*.L.*"))
(,(compile-file-pathname (logical-pathname "PROG:**;*.LISP.*"))
,(logical-pathname "PROG:**;*.B.*"))
("CODE;DOCUMENTATION.*.*" "/lib/prog/documentatio.*")
("CODE;*.*.*" "/lib/prog/")))
;Sample use of that logical pathname. All return values
;are of course implementation-specific.
(translate-logical-pathname "prog:code;documentation.lisp")
=> /lib/prog/documentatio.l
;For a Cray with 6 character names and no directories, types, or versions.
(setf (logical-pathname-translations "prog")
(let ((l '(("MAIN" "PGMN")
("AUXILIARY" "PGAUX")
("DOCUMENTATION" "PGDOC")))
(logpath (logical-pathname "prog:code;"))
(phypath (pathname "XXX")))
;; Translations for source files
(phy (second x)))
(list (make-pathname :name log
:type "LISP"
:version :wild
:defaults logpath)
(make-pathname :name phy
:defaults phypath))))
l)
;; Translations for compiled files
(phy (second x))
(com (compile-file-pathname
(make-pathname :name log
:type "LISP"
:version :wild
:defaults logpath))))
(setq phy (concatenate 'string phy "B"))
(list com
(make-pathname :name phy
:defaults phypath))))
l))))
;Sample use of that logical pathname. All return values
;are of course implementation-specific.
(translate-logical-pathname "prog:code;documentation.lisp")
=> PGDOC
Rationale:
1. Large programs can be moved between sites without changing any
pathnames, provided all pathnames used are logical. A portable system
construction tool can be created that operates on programs defined as
sets of files named by logical pathnames.
2. Logical pathname syntax was chosen to be easily translated into most
popular file systems, while still being powerful enough for storing large
programs. Although they have hierarchical directories, extended wildcard
matching, versions, and no limit on the length of names, they can be
mapped onto a less capable real file file system by translating each
directory that is used into a flat directory name, doing wildcards in
Lisp rather than in the file system, treating all versions as :newest,
and/or using translations to shorten long names.
Logical pathname words are restricted to non-case-sensitive letters,
digits, and hyphens to avoid creating problems with real file systems
that support limited character sets for file naming. Other characters
could have been mapped onto such file systems through translations, but
that didn't seem worth the trouble. Logical pathnames have to be
non-case-sensitive or it would be very difficult to map them onto a
non-case-sensitive file system.
Features such as :UP and :BACK relative directories and a namestring
syntax for the root directory were not felt to be necessary in logical
pathnames. They could be added later if a need emerges.
It is not a goal of logical pathnames to be able to represent all
possible file names. Their goal is rather to represent just enough file
names to be useful for storing software. Real pathnames, in contrast,
need to provide a uniform interface to all possible file names, including
names and naming conventions that are not under the control of Common
Lisp.
The choice of logical pathname syntax, using colon, semicolon, and
period, was guided by the goals of being visually distinct from real file
systems and minimizing the use of special characters.
The consequences of using any value not specified here as a logical
pathname component are unspecified, for the benefit of the Explorer.
3. The LOGICAL-PATHNAME function is separate from the PATHNAME function
so that the syntax of logical pathname namestrings does not constrain the
syntax of physical pathname namestrings in any way. Logical pathname
syntax must be defined by Common Lisp so that logical pathnames can be
conveniently exchanged between implementations, but physical pathname
syntax is dictated by forces outside our control.
3b,c. Allowing PARSE-NAMESTRING and MERGE-PATHNAMES to recognize logical
pathname namestrings in these situations provides for natural operations
on logical pathnames. Frequently a string containing just a name, or a
name and a type, will be recognized as a logical pathname by merging it
against a default containing a logical pathname host and directory.
3d. Recognition of logical pathname namestrings by PATHNAME and related
functions is left up to each implementation because some implementations
definitely require this, other implementations don't want to do this, and
nobody wants to change. In any case, Common Lisp historically has avoided
saying anything about the syntax of the strings accepted by the PATHNAME
function, and point 3d preserves that position.
3b,7f. Leaving it implementation defined whether a string, used as the
host argument to PARSE-NAMESTRING or the :host argument to MAKE-PATHNAME,
can be recognized as logical pathname host name is for the same reason as
point 3d. It allows each implementation to decide whether there is one
namespace or two. The correct way to write this is:
(MAKE-PATHNAME :HOST (PATHNAME-HOST (LOGICAL-PATHNAME "hostname:"))
...)
4. Logical pathname versions could have been supported on real file
systems that do not have versions by defining a kind of translation to
encode the version number in the name. However, the typical use of
versions is such that on a file system without versions, people would
rather just store one version of a file, and not preserve the version
information by encoding it somehow in the name. This is different from
the typical use of types or directories, where the files with different
values in those components are truly distinct and everything would break
if you only kept one file.
5,13. The COMPILE-FILE-PATHNAME function and the specification of "LISP"
as the type of a logical pathname for a Common Lisp source file together
provide enough information about compilation for a portable system
construction tool that uses logical pathnames to work. Suppose you want
to call COMPILE-FILE only if the source file is newer than the compiled
file. To do that, you have to have a way to know the name of the
compiled file without actually calling COMPILE-FILE.
No standard file type for compiler output is proposed, because in some
implementations the compiler produces one of several file types,
depending on a variety of implementation-dependent circumstances.
COMPILE-FILE-PATHNAME provides access to the "default[ing] in a manner
appropriate to the implementation's file system conventions" mentioned in
the CLtL documentation of COMPILE-FILE.
6. The use of the logical pathname host name "SYS" for the implementation
is current practice. Standardizing on this name helps users choose
logical pathname host names that avoid conflicting with
implementation-defined names.
7. Accepting logical pathnames for file access is a natural extension
of the file access functions and makes it easier to program using only
logical pathnames in situations where that is appropriate.
8. The LOGICAL-PATHNAME class exists so that methods can distinguish
logical pathnames from regular pathnames.
9. See point 3 above.
10. TRANSLATE-LOGICAL-PATHNAME is the heart of the logical pathname
feature. Allowing TRANSLATE-LOGICAL-PATHNAME on a physical pathname,
simply returning the argument, makes some programs easier to write.
Additional implementation defined translations make it possible for
implementations with unusual file systems to offer some help to the user
in setting up the translations for a logical pathname host, by handling
some of the work automatically.
11. SETF of LOGICAL-PATHNAME-TRANSLATIONS is a simple way for a user to
define a new logical pathname host. Using SETF makes it possible to add
to or modify the translations of an existing logical pathname host.
It is always up to the person who writes the translation rules for a
particular logical pathname host to a particular physical file system to
make sure that the logical pathnames that are actually going to be used
translate to valid pathnames for the particular file system, and that
no two logical pathnames that are supposed to be distinct translate to
the same physical pathname.
12. Loading of logical pathname translations from a site-dependent file
allows software to be distributed using logical pathnames. The assumed
model of software distribution is a division of labor between the
supplier of the software and the user installing it. The supplier
chooses logical pathnames to name all the files used or created by the
software, and supplies examples of logical pathname translations for a
few popular file systems. Each example uses an assumed directory and/or
device name, assumes local file naming conventions, and provides
translations that will translate all the logical pathnames used or
generated by the particular software into valid physical pathnames.
For a powerful file system these translations can be quite simple. For
a more restricted file system, it may be necessary to list an explicit
translation for every logical pathname used, for example when dealing
with restrictions on the maximum length of a file name.
The user installing the software decides on which device and/or directory
to store the files and edits the example logical pathname translations
accordingly. If necessary, the user also adjusts the translations for
local file naming conventions and any other special aspects of the user's
local file system policy and local Common Lisp implementation. For
example, the files might be divided among several file server hosts to
share the load. The process of defining site-customized logical pathname
translations is quite easy for a user of a popular file system for which
the software supplier has provided an example. A user of a more unusual
file system might have to take more time; the supplier can help by
providing a list of all the logical pathnames used or generated by the
software.
Once the user has created a suitable SETF of LOGICAL-PATHNAME-TRANSLATIONS
form, he can evaluate that form and then load and run the software. It
may be necessary to use the translations again, or on another workstation
at the same site, so it is best to save the SETF form in the standard
place where it can be found later by LOAD-LOGICAL-PATHNAME-TRANSLATIONS.
Often a software supplier will include a program for restoring software
from the distribution medium to the file system, and a program for loading
the software from the file system into a Common Lisp, and these programs
will start by calling LOAD-LOGICAL-PATHNAME-TRANSLATIONS to make sure that
the logical pathname host is defined.
Note that the SETF of LOGICAL-PATHNAME-TRANSLATIONS form isn't part of
the program, it's separate. It's written by the user, not by the
software supplier. That separation, and a uniform convention for how to
do the separation, are the key aspects of logical pathnames. For small
programs involving only a handful of files, it doesn't matter much. The
real benefits come with large programs with hundreds or thousands of
files and more complicated situations such as program-generated file
names or porting a program developed on a system with long file names
onto a system with a very restrictive limit on the length of file names.
Current practice:
Symbolics Genera has had a similar facility for many years. It is used
extensively for software distribution by Symbolics and its customers.
The Genera facility uses the same logical pathname syntax but different
function names, and is somewhat more complicated. The extra complexity
is not necessary in the Common Lisp standard.
The T.I. Explorer also has a comparable logical pathname facility,
although the translation mechanism is unfortunately less general than
proposed here. The namestring syntax used is slightly different:
host ":" [{directory "."}* directory ";"] [name] ["." type] ["#" version]
The newest version is indicated by ">" instead of "newest".
Macintosh Allegro Common Lisp) has a logical pathname feature which is
somewhat simpler but aimed at solving the same problems. It has logical
directory names, to simplify access to sets of files in differently named
directories (an especially severe problem on micros where everybody just
has to have a different pet name for their hard disk). This isn't really
the same as simplifying access to different file systems, although of
course solving the latter automatically solves the former. In general,
access to different file systems requires translating names and types,
not just translating directories.
Symbolics Genera offers a function for translating from a physical
pathname back to a logical pathname. There are a number of problems with
this, and so it has not been proposed here. An earlier version specified
TRANSLATE-LOGICAL-PATHNAME to return enough information to allow the user
program to perform the backtranslation itself, but that hsd problems
so it was removed.
The Genera equivalent of LOAD-LOGICAL-PATHNAME-TRANSLATIONS looks for
a file named SYS:SITE;hostname.TRANSLATIONS.
Current practice in Genera, Explorer, and Macintosh has one namespace for
both logical and physical namestrings. This proposal allows an
implementation to choose to have one namespace or to have two separate
namespaces for namestrings.
Cost to Implementors:
This is a fairly complex facility, but its performance is unimportant
so a straightforward implementation should suffice. Most of the
complexity comes in dealing with unusual file systems, such as ones
that don't allow long file names.
Cost to Users:
None.
Cost of non-adoption:
Portable software construction and distribution will have to rely on
implementation-dependent kludges. Lisp software will continue to be
difficult to install.
Performance impact:
None.
Benefits:
Avoid cost of non-adoption.
Esthetics:
Improved portability of large programs.
Discussion:
Issue PATHNAME-LOGICAL fundamentally depends on issue PATHNAME-WILD. If
PATHNAME-WILD:NEW-FUNCTIONS does not pass, PATHNAME-LOGICAL cannot pass.
If PATHNAME-CANONICAL-TYPE:NEW-CONCEPT passes, it will affect the
behavior of the function TRANSLATE-PATHNAME and therefore the behavior of
the function TRANSLATE-LOGICAL-PATHNAME. When a logical pathname
translation has from-wildcard and to-wildcard type components that are
:WILD or omitted, translation of the type will be guided by canonical
types. If PATHNAME-CANONICAL-TYPE:NEW-CONCEPT fails to pass, it will
either have to be done behind the scenes by TRANSLATE-PATHNAME or users
will have to write more verbose translations that individually specify
the handling of each file type (as shown in some of the examples here).


The Open Cluster Plotting Tool
Interactive plots of open cluster membership lists based on data from Gaia and beyond!


Common Modules¶
Attention¶
-
class
kospeech.models.attention.
AdditiveAttention
(d_model: int)[source]¶ Applies a additive attention (bahdanau) mechanism on the output features from the decoder. Additive attention proposed in “Neural Machine Translation by Jointly Learning to Align and Translate” paper.
Parameters: d_model (int) – dimension of model - Inputs: query, value
- query (batch_size, q_len, hidden_dim): tensor containing the output features from the decoder.
- value (batch_size, v_len, hidden_dim): tensor containing features of the encoded input sequence.
- Returns: context, attn
- context: tensor containing the context vector from attention mechanism.
- attn: tensor containing the alignment from the encoder outputs.
- Reference:
- Neural Machine Translation by Jointly Learning to Align and Translate: https://arxiv.org/abs/1409.0473
-
forward
(query: torch.Tensor, key: torch.Tensor, value: torch.Tensor) → Tuple[torch.Tensor, torch.Tensor][source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-
class
kospeech.models.attention.
LocationAwareAttention
(d_model: int = 512, smoothing: bool = False)[source]¶ Applies a location-aware attention mechanism on the output features from the decoder. Location-aware attention proposed in “Attention-Based Models for Speech Recognition” paper. The location-aware attention mechanism is performing well in speech recognition tasks. We refer to implementation of ClovaCall Attention style.
Parameters: - Inputs: query, value, last_attn
- query (batch, q_len, hidden_dim): tensor containing the output features from the decoder.
- value (batch, v_len, hidden_dim): tensor containing features of the encoded input sequence.
- last_attn (batch_size * num_heads, v_len): tensor containing previous timestep`s attention (alignment)
- Returns: output, attn
- output (batch, output_len, dimensions): tensor containing the feature from encoder outputs
- attn (batch * num_heads, v_len): tensor containing the attention (alignment) from the encoder outputs.
- Reference:
- Attention-Based Models for Speech Recognition: https://arxiv.org/abs/1506.07503
- ClovaCall: https://github.com/clovaai/ClovaCall/blob/master/las.pytorch/models/attention.py
-
forward
(query: torch.Tensor, value: torch.Tensor, last_alignment_energy: torch.Tensor) → Tuple[torch.Tensor, torch.Tensor][source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-
class
kospeech.models.attention.
MultiHeadAttention
(d_model: int = 512, num_heads: int = 8)[source]¶ Multi-Head Attention proposed in “Attention Is All You Need” Instead of performing a single attention function with d_model-dimensional keys, values, and queries, project the queries, keys and values h times with different, learned linear projections to d_head dimensions. These are concatenated and once again projected, resulting in the final values. Multi-head attention allows the model to jointly attend to information from different representation subspaces at different positions.
- MultiHead(Q, K, V) = Concat(head_1, …, head_h) · W_o
- where head_i = Attention(Q · W_q, K · W_k, V · W_v)
Parameters: - Inputs: query, key, value, mask
- query (batch, q_len, d_model): tensor containing projection vector for decoder.
- key (batch, k_len, d_model): tensor containing projection vector for encoder.
- value (batch, v_len, d_model): tensor containing features of the encoded input sequence.
- mask (-): tensor containing indices to be masked
- Returns: output, attn
- output (batch, output_len, dimensions): tensor containing the attended output features.
- attn (batch * num_heads, v_len): tensor containing the attention (alignment) from the encoder outputs.
-
forward
(query: torch.Tensor, key: torch.Tensor, value: torch.Tensor, mask: Optional[Any] = None) → Tuple[torch.Tensor, torch.Tensor][source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-
class
kospeech.models.attention.
ScaledDotProductAttention
(dim: int)[source]¶ Scaled Dot-Product Attention proposed in “Attention Is All You Need” Compute the dot products of the query with all keys, divide each by sqrt(dim), and apply a softmax function to obtain the weights on the values
- Args: dim, mask
- dim (int): dimension of attention mask (torch.Tensor): tensor containing indices to be masked
- Inputs: query, key, value, mask
- query (batch, q_len, d_model): tensor containing projection vector for decoder.
- key (batch, k_len, d_model): tensor containing projection vector for encoder.
- value (batch, v_len, d_model): tensor containing features of the encoded input sequence.
- mask (-): tensor containing indices to be masked
- Returns: context, attn
- context: tensor containing the context vector from attention mechanism.
- attn: tensor containing the attention (alignment) from the encoder outputs.
-
forward
(query: torch.Tensor, key: torch.Tensor, value: torch.Tensor, mask: Optional[Any] = None) → Tuple[torch.Tensor, torch.Tensor][source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
Extractor¶
-
class
kospeech.models.extractor.
CNNExtractor
(activation: str = 'hardtanh')[source]¶ Provides inteface of convolutional extractor.
Note
Do not use this class directly, use one of the sub classes.
-
forward
(*args, **kwargs)[source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-
-
class
kospeech.models.extractor.
DeepSpeech2Extractor
(activation: str = 'hardtanh', mask_conv: bool = False)[source]¶ DeepSpeech2 extractor for automatic speech recognition described in “Deep Speech 2: End-to-End Speech Recognition in English and Mandarin” paper - https://arxiv.org/abs/1512.02595
-
forward
(inputs: torch.Tensor, input_lengths: torch.Tensor) → Optional[Any][source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-
-
class
kospeech.models.extractor.
MaskConv
(sequential: torch.nn.modules.container.Sequential)[source]¶ Masking Convolutional Neural Network
Adds padding to the output of the module based on the given lengths. This is to ensure that the results of the model do not change when batch sizes change during inference. Input needs to be in the shape of (batch_size, channel, hidden_dim, seq_len)
Refer to https://github.com/SeanNaren/deepspeech.pytorch/blob/master/model.py Copyright (c) 2017 Sean Naren MIT License
Parameters: sequential (torch.nn) – sequential list of convolution layer - Inputs: inputs, seq_lengths
- inputs (torch.FloatTensor): The input of size BxCxHxT
- seq_lengths (torch.IntTensor): The actual length of each sequence in the batch
- Returns: output, seq_lengths
- output: Masked output from the sequential
- seq_lengths: Sequence length of output from the sequential
-
forward
(inputs: torch.Tensor, seq_lengths: torch.Tensor) → Tuple[torch.Tensor, torch.Tensor][source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-
get_sequence_lengths
(module: torch.nn.modules.module.Module, seq_lengths: torch.Tensor) → torch.Tensor[source]¶ Calculate convolutional neural network receptive formula
Parameters: - module (torch.nn.Module) – module of CNN
- seq_lengths (torch.IntTensor) – The actual length of each sequence in the batch
- Returns: seq_lengths
- seq_lengths: Sequence length of output from the module
-
class
kospeech.models.extractor.
VGGExtractor
(activation: str, mask_conv: bool)[source]¶ VGG extractor for automatic speech recognition described in “Advances in Joint CTC-Attention based End-to-End Speech Recognition with a Deep CNN Encoder and RNN-LM” paper - https://arxiv.org/pdf/1706.02737.pdf
-
forward
(inputs: torch.Tensor, input_lengths: torch.Tensor) → Optional[Any][source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-
Modules¶
-
class
kospeech.models.modules.
BNReluRNN
(input_size: int, hidden_dim: int = 512, rnn_type: str = 'gru', bidirectional: bool = True, dropout_p: float = 0.1, device: str = 'cuda')[source]¶ Recurrent neural network with batch normalization layer & ReLU activation function.
Parameters: - input_size (int) – size of input
- hidden_dim (int) – the number of features in the hidden state h
- rnn_type (str, optional) – type of RNN cell (default: gru)
- bidirectional (bool, optional) – if True, becomes a bidirectional encoder (defulat: True)
- dropout_p (float, optional) – dropout probability (default: 0.1)
- device (torch.device) – device - ‘cuda’ or ‘cpu’
- Inputs: inputs
- inputs: list of sequences, whose length is the batch size and within which each sequence is list of tokens
-
forward
(inputs: torch.Tensor, input_lengths: torch.Tensor)[source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-
class
kospeech.models.modules.
BaseRNN
(input_size: int, hidden_dim: int = 512, num_layers: int = 1, rnn_type: str = 'lstm', dropout_p: float = 0.3, bidirectional: bool = True, device: str = 'cuda')[source]¶ Applies a multi-layer RNN to an input sequence.
Note
Do not use this class directly, use one of the sub classes.
Parameters: - input_size (int) – size of input
- hidden_dim (int) – dimension of RNN`s hidden state vector
- num_layers (int, optional) – number of RNN layers (default: 1)
- bidirectional (bool, optional) – if True, becomes a bidirectional RNN (defulat: False)
- rnn_type (str, optional) – type of RNN cell (default: gru)
- dropout_p (float, optional) – dropout probability (default: 0)
- device (torch.device) – device - ‘cuda’ or ‘cpu’
Variables: = Dictionary of supported rnns (supported_rnns) –
-
forward
(*args, **kwargs)[source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-
class
kospeech.models.modules.
LayerNorm
(dim: int, eps: float = 1e-06)[source]¶ Wrapper class of torch.nn.LayerNorm
-
forward
(z: torch.Tensor) → torch.Tensor[source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-
-
class
kospeech.models.modules.
Linear
(in_features: int, out_features: int, bias: bool = True)[source]¶ Wrapper class of torch.nn.Linear Weight initialize by xavier initialization and bias initialize to zeros.
-
forward
(x: torch.Tensor) → torch.Tensor[source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-
-
class
kospeech.models.modules.
View
(shape: tuple, contiguous: bool = False)[source]¶ Wrapper class of torch.view() for Sequential module.
-
forward
(inputs)[source]¶ Defines the computation performed at every call.
Should be overridden by all subclasses.
Note
Although the recipe for forward pass needs to be defined within this function, one should call the
Module
instance afterwards instead of this since the former takes care of running the registered hooks while the latter silently ignores them.
-


Do you need design support or questions about our capabilities and pricing? Please do not hesitate to contact us!


{% extends 'base/base.html' %} {% block exp_info_block %}
{% endblock %} {% block exp_block %}
Thank you for completing this task.
Click the next button to proceed to the next stage of the experiment:
{% endblock %} {% block exp_footer_block %} Participant: {{ participant }} - Condition: {{ condition }} - Task: {{ task }} {% endblock %}


This is the UiKit assesment done by Joaquin Atienza, the picture is in format .jpg (available for download when click on the button above), let´s explain it more in detail
-This UIkit is ment to be a for a finantial app, focus on the teen market, it was done in photoshop, then exported and edited by the Photos aplication of Microsoft to add some filters,
there were more opction like using Ilustrate but photoshop is a more complete program.
-There was almost no expirience with photshop I follow some tutorial from cydia, I especially recomend the one in
this text.
-I decided to used red as a background theme after a fist atemp of a UIKIT that went terrible wrong (check image below), there was no style, no harmony and no nothing, so I checked some pages and decided to used red as some examples of
this article.
Plus I always like the color and the contrast white and red make, it expresses some energy, like Coca-cola, eveyone likes it but is focus on the young market so the brand doesn´t lose it´s strength.
-Then the design was made with some intentions, the uikit is divided into 3 colums, the left colums where design as if it was a touch menu, when the MAIN MENU this will disappear, and arrow with open like the Close one will come out.
The column in the middle has the name of the brand, in this case APP TEEN on top with your salaty, probably the most important thing the user
needs to know so it´s right at the top. Then below are what we thought were the most relevant things that the user should see, the four main bottoms, access web, settings, see your mail and contact. Then the acces to the aplication was done small on purpose, as if it was big the user will
go direct to the login and we want him to see the offers of the right column.
There is a calender in which important days (as ones witih discounts) will be mark, like tha last week of june that is all marked in blue.


Wireshark Lab: HTTP 7.0
Changes from listed instructions
- I always restricted all captures to my computer's IP, to avoid cluttering the window with unnecessary information
- The school's internet is too fast for their 'long' page to be divided, so I used the sample capture for that problem
Lab
- Capture all HTTP packets when visiting this site (standard practice capture)
- Both the server and client seem to be running HTTP 1.1
- The lab asks what languages the server supports, but I could only find a language line in the client request, and it only allowed english (american or otherwise)
- The server returned the status code '200 OK'
- The file was last modified a few seconds before I accessed it
- Clear the cache and capture all HTTP packets when visiting this site, then immediately refresh the page (examine page caching)
- The second time the page was loaded, the browser recognized that it already had the most recent version of the page in its cache and didn't actually send the HTML data
- Because of this, the second request received a status code of '304 Not Modified'
- Capture all HTTP packets when visiting this page (very long page)
- Two HTTP messages were sent: a GET and a 200 OK response.
- However, the response was contained in 4 packets due to the length.
- Expanding the view to include TCP packets allowed me to see the contents of each packet
- Acknowledgement
- 200 OK and start of HTML document
- Continuation of HTML document
- End of HTML document
- Capture all HTTP packets when visiting this page (page with images)
- The browser sent 4 HTTP GET messages:
- GET the HTML page
- GET the first image
- GET the second image
- GET the second image
- The second image needed two messages because the first one returned that the image had been moved elsewhere
- The images seem to have been downloaded in serial, based on the timestamps on the response messages
- Capture all HTTP packets when visiting this page (password protected page)
- The server responds to the initial HTTP GET message with the error code 401 Unauthorized
- When the browser sends the second HTTP GET message, it has a new field: Authorization, containing the username and password
There are no hugs in computer science
Home


Manage Core and Custom settings
Showing {{ settings.start | number }} - {{ settings.end | number }} of {{ settings.total | number}}


{% extends "base.html" %} {% block title %} Alerts {% endblock %} {% block body %}
Realtime email notification alert for Type A 3D printer jobs in Jacobs Hall, UC Berkeley.
The alert table will refresh automatically every 10 seconds. Finished alerts will be automatically removed after 5 minutes.
| Printer Number | Print Name | Print Progress | Print State | Name | Alert Status |
|---|


---
sort_order: 68
tei_id: rdx_b5j2m.p.idp144854208
annotation_count: 0
images:
small-thumbnail: http://readux.library.emory.edu/books/emory:b5j2m/pages/emory:p75n9/mini-thumbnail/
json: http://readux.library.emory.edu/books/emory:b5j2m/pages/emory:p75n9/info/
full: http://readux.library.emory.edu/books/emory:b5j2m/pages/emory:p75n9/fs/
page: http://readux.library.emory.edu/books/emory:b5j2m/pages/emory:p75n9/single-page/
thumbnail: http://readux.library.emory.edu/books/emory:b5j2m/pages/emory:p75n9/thumbnail/
title: Page 68
number: 68
---
{% raw %}CHAPTER IX.{% endraw %}
{% raw %}TAKEN SOUTH, AWAY FEOM WIFE AND{% endraw %}
{% raw %}CHILDEEX.{% endraw %}
{% raw %}START FOR NEW ORLEANS. —STUDY NAVIGATION ON THE MISSISSIPPI.{% endraw %}
{% raw %}—THE CAPTAIN STRUCK BLIND.—FIND SOME OF MY OLD COM¬{% endraw %}
{% raw %}PANIONS.—THE LOWER DEPTHS.{% endraw %}
{% raw %}OHhings went on in this way about a year. From{% endraw %}
{% raw %}1 time to time Master Amos joked me about the{% endraw %}
{% raw %}six hundred and fifty dollars, and said his brother{% endraw %}
{% raw %}kept writing to know why I did not send something.{% endraw %}
{% raw %}It was "diamond cut diamond" with the two{% endraw %}
{% raw %}brothers. Mr. Amos had no desire to play into the{% endraw %}
{% raw %}hands of Mr. Isaac. He was glad enough to secure{% endraw %}
{% raw %}my services to take care of his stock and his people.{% endraw %}
{% raw %}One day my master suddenly informed me that{% endraw %}
{% raw %}his son Amos, a young man about twenty-one years{% endraw %}
{% raw %}of age, was going down the river to New Orleans,{% endraw %}
{% raw %}with a flat-boat loaded with produce from the farm,{% endraw %}
{% raw %}and that I was to go with him. He was to start the{% endraw %}
{% raw %}next day, and I was to accompany him and help him{% endraw %}
{% raw %}dispose of his cargo to the best advantage.{% endraw %}
{% raw %}This intimation was enough. Though it was not{% endraw %}
{% raw %}distinctly stated, 3'et I well knew what was in¬{% endraw %}
{% raw %}tended, and my heart sunk within me at the pros¬{% endraw %}
{% raw %}pect of this fatal blight to all my long-cherished{% endraw %}
{% raw %}hopes. There was no alternative but death itself;{% endraw %}


Text ever the 1500s, when an unknown printer took a galley oftype and scrambled it to make a type specimen book. It has survived not only five centuries, but alos the leap into electronic typesetting, remaining essentially.
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem
Ipsum has been the industry's standard dummmy text ever since the
Text ever the 1500s, when an unknown printer took a galley oftype and scrambled it to make a type specimen book. It has survived not only five centuries, but alos the leap into electronic typesetting, remaining essentially.


PIZZA INN
Cart (
)
Clear Cart
Summerhill
Price: ksh.1,200
Add to cart
Size
small
Medium
Large
toppings
pineapples
strawberries
ice flakes
crust
crispy
stuffed
glutten-free
Napoletana
Price: ksh.1,100
Add to cart
Size
small
Medium
Large
toppings
spiced
strawberries
sugared
crust
crispy
stuffed
glutten-free
Parachi
Price: ksh.900
Add to cart
Size
small
Medium
Large
toppings
maukasta
cheesy
chilly
crust
crispy
stuffed
glutten-free
Newton
Price: ksh.1,000
Add to cart
Size
small
Medium
Large
toppings
beaconed
caramelised
cheese
crust
crispy
stuffed
glutten-free
Italian
Price: ksh.1,250
Add to cart
Size
small
Medium
Large
toppings
taco
margherita
saused
crust
crispy
stuffed
glutten-free
Chicago
Price: ksh.850
Add to cart
Size
small
Medium
Large
toppings
caulliflower
peperoni
toppers
crust
crispy
stuffed
glutten-free
Cart
×
Total price: $


--- title: New stream wrappers version: "5.3" tags: - "5.3" - new-stream-wrappers ---
The following stream wrappers were introduced in 5.3.0:


This one can be resized and ignores mouse input (so that it "acts like" an image)
Hmm, jbrowse failed to load :-(
resize
This is the un-resized JBrowse in a div
Hmm, jbrowse failed to load :-(


Free books
Millions of titles in the public domain, such as A Tale of Two Cities, Les Misérables, Pride and Prejudice, and more are available for free.
Thinnest & Lightest
The all-new Kindle is 11% thinner and 16% lighter than the previous generation Kindle, making it easy and comfortable to hold in one hand.
Unlimited
With Kindle Unlimited, you can read as much as you want, choosing from over 1 million titles and thousands of audiobooks. From mysteries and romance to sci-fi and more, freely explore new authors, books, and genres on any device for just $9.99 a month.


Employee
View
Add
Update
Supplier
View
Add
Generate BIll
Orders
Add Order Details
Add New Product
View Stock
Log Out


WITNESS LIST Subcommittee on Infrastructure Committee March 16, 1999-8:30A SB 514 ON: Bohuslav, Thomas (Texas Department of Transportation), Austin SB 515 ON: Bohuslav, Thomas (Texas Department of Transportation), Austin Webb, Zane (Texas Department of Transportation), Austin SB 834 FOR: Beasley, Lica (Self), Edgewood ON: Howdeshell, Doris K. (Texas Department of Transportation), Austin