text:
Chia sẻ: Thanh Cong | Ngày: | Loại File: PDF | Số trang:50

0
80
lượt xem
22

Mô tả tài liệu

Tham khảo tài liệu 'tcp/ip network administration- p9', công nghệ thông tin, quản trị mạng phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

Chủ đề:

Bình luận(0)

Lưu

## Nội dung Text: TCP/IP Network Administration- P9

1. file:///C|/mynapster/Downloads/warez/tcpip/ch09_08.htm Previous: 9.7 Mail Servers Chapter 9 Next: 10. sendmail Configuring Network Servers 9.8 Summary This chapter covers several important TCP/IP network services. Network File System (NFS) is the leading TCP/IP file-sharing protocol. It allows server systems to share directories with clients that are then used by the clients as if they were local disk drives. NFS uses trusted hosts and UNIX UIDs and GIDs for authentication and authorization. pcnfsd provides password-based user authentication and NFS-based printer sharing for non-UNIX clients. NFS-based printer sharing is not the only type of printer sharing available on a TCP/IP network. It is also possible to use the Line Printer Daemon (LPD). This software is originally from BSD UNIX but is widely available. The lpd program reads the printer definitions from the printcap file. Network Information Service (NIS) is a server that distributes several system administrations databases. It allows central control of and automatic distribution of important system configuration information. Bootstrap Protocol provides a wide range of configuration values to its client. Each implementation of BOOTP has a different configuration file and command syntax. The CMU BOOTP server stores configuration parameters in the /etc/bootptab file and uses a syntax very similar to the /etc/printcap syntax. Dynamic Host Configuration Protocol (DHCP) extends BOOTP to provide the full set of configuration parameters defined in the Requirements for Internet Hosts RFC. It also provides for dynamic address allocation, which allows a network to make maximum use of a limited set of addresses. Large networks use distributed boot servers to avoid overloading a single server and to avoid sending boot parameters through IP routers. The configuration files on distributed boot servers are kept synchronized through file transfer, NFS file sharing, or the Remote File Distribution Program (rdist). Post Office Protocol (POP) and Internet Message Access Protocol (IMAP) servers allow email to be stored on the mail server until the user is ready to read it. In the next chapter, we take a closer look at configuring an electronic mail system as we explore sendmail. Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. file:///C|/mynapster/Downloads/warez/tcpip/ch09_08.htm (1 of 2) [2001-10-15 09:18:35]
2. file:///C|/mynapster/Downloads/warez/tcpip/ch09_08.htm Previous: 9.7 Mail Servers TCP/IP Network Next: 10. sendmail Administration 9.7 Mail Servers Book Index 10. sendmail [ Library Home | DNS & BIND | TCP/IP | sendmail | sendmail Reference | Firewalls | Practical Security ] Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. file:///C|/mynapster/Downloads/warez/tcpip/ch09_08.htm (2 of 2) [2001-10-15 09:18:35]
3. [Chapter 10] sendmail Previous: 9.8 Summary Chapter 10 Next: 10.2 Running sendmail as a Daemon 10. sendmail Contents: sendmail's Function Running sendmail as a Daemon sendmail Aliases The sendmail.cf File sendmail Configuration Rewriting the Mail Address Modifying a sendmail.cf File Testing sendmail.cf Summary Users have a love-hate relationship with email; they love to use it, and hate when it doesn't work. It's the system administrator's job to make sure it does work. That is the job we tackle in this chapter. sendmail is not the only mail transport program. MMDF (Multichannel Memorandum Distribution Facility) predates sendmail and is still used today. There are also variations of basic sendmail, such as IDA sendmail, that are widely used. But plain sendmail is the most widely used mail transport program, and it's the one we cover. This entire chapter is devoted to sendmail, and an entire book is easily devoted to the subject. [1] In part this is because of email's importance, but it is also because sendmail has a complex configuration. [1] See sendmail, by Costales and Allman (O'Reilly & Associates), for a book-length treatment of sendmail. The variety of programs and protocols used for email complicates configuration and support. SMTP sends email over TCP/IP networks. Another program sends mail between users on the same system. Still another sends mail between systems on UUCP networks. Each of these mail systems - SMTP, UUCP, and local mail - has its own delivery program and its own mail addressing scheme. All of this can cause confusion for mail users and for system administrators. Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. file:///C|/mynapster/Downloads/warez/tcpip/ch10_01.htm (1 of 3) [2001-10-15 09:18:35]
4. [Chapter 10] sendmail 10.1 sendmail's Function sendmail eliminates some of the confusion caused by multiple mail delivery programs. It does this by routing mail for the user to the proper delivery program based on the email address. It accepts mail from a user's mail program, interprets the mail address, rewrites the address into the proper form for the delivery program, and routes the mail to the correct delivery program. sendmail insulates the end user from these details. If the mail is properly addressed, sendmail will see that it is properly passed on for delivery. Likewise, for incoming mail, sendmail interprets the address and either delivers the mail to a user's mail program or forwards it to another system. Figure 10.1 illustrates sendmail's special role in routing mail between the various mail programs found on UNIX systems. Figure 10.1: Mail is routed through sendmail In addition to routing mail between user programs and delivery programs, sendmail: q Receives and delivers SMTP (internet) mail q Provides system-wide mail aliases, which allow mailing lists Configuring a system to perform all of these functions properly is a complex task. In this chapter we discuss each of these functions, look at how they are configured, and examine ways to simplify the task. First, we'll see how sendmail is run to receive SMTP mail. Then we'll see how mail aliases are used, and how sendmail is configured to route mail based on the mail's address. Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. file:///C|/mynapster/Downloads/warez/tcpip/ch10_01.htm (2 of 3) [2001-10-15 09:18:35]
5. [Chapter 10] sendmail Previous: 9.8 Summary TCP/IP Network Next: 10.2 Running Administration sendmail as a Daemon 9.8 Summary Book Index 10.2 Running sendmail as a Daemon [ Library Home | DNS & BIND | TCP/IP | sendmail | sendmail Reference | Firewalls | Practical Security ] Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. file:///C|/mynapster/Downloads/warez/tcpip/ch10_01.htm (3 of 3) [2001-10-15 09:18:35]
6. [Chapter 10] 10.2 Running sendmail as a Daemon Previous: 10.1 sendmail's Chapter 10 Next: 10.3 sendmail Aliases sendmail Function 10.2 Running sendmail as a Daemon To receive SMTP mail from the network, run sendmail as a daemon during system startup. The sendmail daemon listens to TCP port 25 and processes incoming mail. In most cases the code to start sendmail is already in one of your boot scripts. If it isn't, add it. The following code is from the Slackware Linux /etc/rc.d/rc.M startup script: # Start the sendmail daemon: if [ -x /usr/sbin/sendmail ]; then echo "Starting sendmail daemon (/usr/sbin/sendmail -bd -q 15m)..." /usr/sbin/sendmail -bd -q 15m fi First, this code checks for the existence of the sendmail program. If the program is found, the code displays a startup message on the console and runs sendmail with two command-line options. One option, the -q option, tells sendmail how often to process the mail queue. In the sample code, the queue is processed every 15 minutes (-q15m), which is a good setting to process the queue frequently. Don't set this time too low. Processing the queue too often can cause problems if the queue grows very large, due to a delivery problem such as a network outage. For the average desktop system, every hour (-q1h) or half hour (-q30m) is an adequate setting. The other option relates directly to receiving SMTP mail. The option (-bd) tells sendmail to run as a daemon and to listen to TCP port 25 for incoming mail. Use this option if you want your system to accept incoming TCP/IP mail. The Linux example is a simple one. Some systems have a more complex startup script. Solaris 2.5, which dedicates the entire /etc/init.d/sendmail script to starting sendmail, is a notable example. The mail queue directory holds mail that has not yet been delivered. It is possible that the system went down while the mail queue was being processed. Versions of sendmail prior to sendmail V8, such as the version that comes with Solaris 2.5, create lock files when processing the queue. Therefore lock files may have been left behind inadvertently and should be removed during the boot. Solaris checks for the existence of the mail queue directory and removes any lock files found there. If a mail queue directory doesn't exist, it creates one. The additional code found in some startup scripts is not required when running sendmail V8. All you really need is the sendmail command with the -bd option. Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. file:///C|/mynapster/Downloads/warez/tcpip/ch10_02.htm (1 of 2) [2001-10-15 09:18:36]
7. [Chapter 10] 10.2 Running sendmail as a Daemon Previous: 10.1 sendmail's TCP/IP Network Next: 10.3 sendmail Aliases Function Administration 10.1 sendmail's Function Book Index 10.3 sendmail Aliases [ Library Home | DNS & BIND | TCP/IP | sendmail | sendmail Reference | Firewalls | Practical Security ] Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. file:///C|/mynapster/Downloads/warez/tcpip/ch10_02.htm (2 of 2) [2001-10-15 09:18:36]
8. [Chapter 10] 10.3 sendmail Aliases Previous: 10.2 Running Chapter 10 Next: 10.4 The sendmail.cf sendmail sendmail as a Daemon File 10.3 sendmail Aliases It is almost impossible to exaggerate the importance of mail aliases. Without them, a sendmail system could not act as a central mail server. Mail aliases provide for: q Alternate names (nicknames) for individual users q Forwarding of mail to other hosts q Mailing lists sendmail mail aliases are defined in the aliases file. [2] The basic format of entries in the aliases file is: [2] The location of the file is defined in the "Options" section of the sendmail configuration file. alias: recipient[, recipient,...] alias is the name to which the mail is addressed, and recipient is the name to which the mail is delivered. recipient can be a username, the name of another alias, or a full email address containing both a username and a hostname. Including a hostname allows mail to be forwarded to a remote host. Additionally, there can be multiple recipients for a single alias. Mail addressed to that alias is delivered to all of the recipients, thus creating a mailing list. Aliases that define nicknames for individual users can be used to handle frequently misspelled names. You can also use aliases to deliver mail addressed to special names, such as postmaster or root, to the real users that do those jobs. Aliases can also be used to implement simplified mail addressing, especially when used in conjunction with MX records. [3] This aliases file from almond shows all of these uses: [3] Chapter 8, Configuring DNS Name Service , discusses MX records. # special names postmaster: clark root: norman Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. file:///C|/mynapster/Downloads/warez/tcpip/ch10_03.htm (1 of 3) [2001-10-15 09:18:36]
12. [Chapter 10] 10.4 The sendmail.cf File version of sendmail. The tar file can be downloaded via anonymous ftp from ftp.sendmail.org. [6] Login and change to the pub/sendmail directory. This displays a list of the available versions of sendmail. See Appendix E, for an example of downloading and installing the sendmail distribution. [6] Even if your UNIX system comes with its own version of sendmail, obtain the tar file for the useful documentation it contains, e.g., the Sendmail Installation and Operation Guide, by Eric Allman. The sendmail cf/cf directory contains several sample configuration files. Several of these are generic files preconfigured for different operating systems. The cf/cf directory on my system contains generic configurations for BSD, Solaris, SunOS, HP Unix, Ultrix, OSF1, and Next Step. The directory also contains a few prototype files designed to be easily modified and used for other operating systems. We will modify the tcpproto.mc file, which is for systems that have direct TCP/IP network connections and no direct UUCP connections, to run on our Linux system. 10.4.1.1 Building a sendmail.cf with m4 macros The prototype files that come with the sendmail tar are not "ready to run." They must be edited and then processed by the m4 macro processor to produce the actual configuration files. For example, the tcpproto.mc file contains the following macros: divert(0)dnl VERSIONID(@(#)tcpproto.mc 8.5 (Berkeley) 3/23/96') OSTYPE(unknown) FEATURE(nouucp) MAILER(local) MAILER(smtp) These macros are not sendmail commands; they are input for the m4 macro processor. The few lines shown above are the important lines in the tcpproto.mc file. They are preceded by a section of comments, not shown here, that is discarded by m4 because it follows a divert(-1) command, which diverts the output to the "bit bucket." This section of the file begins with a divert(0) command that means these commands should be processed and that the results should be directed to standard output. [7] [7] The dnl option is used to prevent excessive blank lines from appearing in the output file. It affects the appearance, but not the function, of the output file. dnl can appear at the end of any macro command. The VERSIONID macro is used for version control. Usually the value passed in the macro call is a version number in RCS (Release Control System) or SCCS (Source Code Control System) format. This macro is optional and we just ignore it. Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. file:///C|/mynapster/Downloads/warez/tcpip/ch10_04.htm (2 of 7) [2001-10-15 09:18:37]


text:
# RClone¶

RClone is a powerful command line tool for transferring and synchronizing files over the internet between various machines, servers and cloud storage services. It is highly recommended for small to moderate amounts of data. For very large amounts of data consider using Globus for increased robustness against failure. Where Globus is not available, rclone is still suitable.

RClone requires a modest amount of setup time on local machines, but once setup can be used fairly easily. RClone uses the concepts of "remotes", which is an abstract term for any storage service or device that is not physically part of the local machine. Many remotes are offered, including SFTP and various UAB Cloud Storage Solutions. SFTP may be used to access Cheaha, cloud.rc and other laptop and desktop computers.

To use RClone effectively, you'll need to setup remotes before using the various commands. Most file manipulation commands on Linux can be found in the RClone commands, but may have slightly different names, e.g. cp is rclone copy.

RClone is very powerful and, as such, has a wide variety of configuration options and flags to fine tune behavior. We will only cover the basics needed to install the software, setup remotes relevant to work at UAB, and some basic usage commands.

## Quick Tutorial for Cheaha¶

To use RClone for simple data transfer to and from Cheaha, follow these steps:

1. Load the module using module load rclone.
2. Set up a remote storage provider
3. Copy files using the rclone cp command.

• To transfer from Cheaha, use rclone cp :path/on/cheaha remote:path/on/dest
• To transfer to Cheaha, use rclone cp remote:/path/on/remote :path/on/cheaha.

Be sure to replace remote with the name of the remote you set up in step 2.

## Installing¶

### Installing on Cheaha¶

On Cheaha, RClone is already installed as a Module. Use module load rclone to load it.

### Installing on Linux and cloud.rc¶

See Installing Software for general good practice on installing software, then use the following command.

curl https://rclone.org/install.sh | sudo bash

Open a new terminal and enter rclone to verify installation.

### Installing on Windows¶

It is highly recommended to install rclone in Windows Subsystem for Linux (WSL).

To instead install natively on Windows, you will need to use the following instructions.

2. Extract rclone.exe into a memorable folder on your system. Do not put it into Program Files.
3. In the Start Menu type env and look for the application "Edit the system Environment Variables" to open the System Properties dialog.
4. Click the "Environment Variables..." button.
5. Under "User variables for $USER" find the variable "Path". 6. Click "Path" to select it. 7. Click the "Edit..." button to open a new dialog. 8. Click the "New" button. 9. Type in the folder path to rclone.exe as C:/path/to/rclone_folder, modified appropriately. 10. Click the "OK" button to confirm and close the dialog box. 11. Click the "OK" button to confirm and close the Environment Variables dialog box. 12. Click the "OK" button to confirm and close the System Properties dialog box. 13. Verify the installation by typing "cmd" in the Start Menu and opening the Command Prompt application. 14. Type rclone and you should see the rclone help text. ### MacOS¶ Follow the online instructions for installing with brew. ## Setting up Remotes¶ RClone is capable of interfacing with many remote cloud services, as well as using sftp for connecting two personal computers or servers. We will only cover those cloud services relevant to UAB use. We will not cover how to connect to any other cloud services using RClone. More detailed information is available at the RClone documentation Important Cloud access tokens are always supplied with an expiration date for security reasons. You will need to repeat the setup process periodically to regain access via RClone. Note RClone has an unusual user interface, using alternating red and green blocks to differentiate list items. The colors do not convey any particular meaning beyond differentiation. ### Setting up an SFTP Remote¶ RClone connects two personal computers or servers using SFTP which is built on SSH, so a lot of these instructions mirror what would be done with an SSH configuration. 1. Generate a Key Pair for use with the remote machine. 2. At the terminal enter rclone config. 3. Follow the prompts to choose sftp. 4. Enter the following values as they come up, using defaults for other values. • name> Name of the remote for future reference and configuration • host> Remote IP address or cheaha.rc.uab.edu for Cheaha • user> The user you will log into on the remote machine • key_file> The absolute path to the private key file on the local machine, something like ~/.ssh/private_key_ed25519 • key_file_pass> The passphrase used to secure the private key file (optional, but highly recommended) 5. Verify by using rclone lsd <name>. The official docuemntation for rclone sftp is here. ### Setting up UAB Cloud Remotes¶ The setup process for UAB cloud remotes is generally the same, except for the specifics of authentication. The instruction template is outlined below and will point you to the authentication section specific to each remote when it becomes relevant. As you step through the process, you will ultimately open two terminal windows and a browser window, and will need to copy text between the terminal windows. The first terminal window will be used to setup the RClone cloud remote. The second terminal will be used to authenticate to that cloud service and gain a token that will be passed back to the first terminal. Authentication will happen by logging into the service in a browser window. This setup method is necessary for any machine where a browser is not readily available, such as a cloud.rc virtual machine. To facilitate setup on these machines, the second terminal will be opened on a machine with RClone and a browser. An example of what this setup might look like is given below. Important If you are using RClone in Windows Subsystem for Linux (WSL), you won't be able to open a browser using WSL. Instead, you will need to Install RClone on Windows and use the Windows Command Prompt terminal to use rclone authorize. 1. Open a terminal on the device you wish to authorize to access the chosen cloud service provider using RClone. This terminal will be referred to as terminal-1. 2. At terminal-1 enter rclone config. 3. Follow the prompts to choose one of the following. The selection here will be used later and will be referred to as <remote>. 4. UAB Box: select Box. <remote> will be replaced by box. 5. UAB SharePoint Site: select Microsoft OneDrive. <remote> will be replaced by onedrive. 6. UAB OneDrive: select Microsoft OneDrive. <remote> will be replaced by onedrive. 7. Enter a short, memorable name for future reference when prompted with name>. Keep this <name> in mind as it will be how you access the remote when Using Commands. 8. Press enter to leave all additional prompts blank until "Use auto config?". Type "n", for no, and press enter. 9. The prompt should now read config_token>. 10. On a machine with a browser, such as your personal computer, open a new terminal and enter rclone authorize "<remote>". Replacing <remote> with the value from step (3). This terminal will be referred to as terminal-2. 11. When the browser window opens, use it to authenticate to your selected service. 12. Terminal-2 will print a secret token, which will appear like in the following image. You will need to copy the portion highlighted in the image, between the lines with ---> and <---. 13. Copy and paste the token from the terminal-2 to terminal-1. 14. Follow the remaining prompts. 15. Verify success by using rclone lsd <name>: in terminal-1. ### Authenticating to Cloud Remotes¶ #### Authenticating to UAB Box¶ 1. Click "Use Single Sign On (SSO)". 2. Type in your UAB email address (not your @uabmc.edu email!). 3. Click "Authorize". 4. You will be redirected to the UAB SSO page. 5. Authenticate with your blazerid credentials. 6. You will be asked to grant permission to the RClone software. Click "Grant access to Box" if you want the software to work with Box. If you do not grant permission, you will not be able to use RClone with Box. 7. You will be redirected to a "Success!" page. Return to Terminal (5) to find the authentication token. 8. Return to Setting up UAB Cloud Remotes. Warning Tokens are set to expire after some time of disuse to decrease risk of a data breach. If your token expires, you can Reconnect to an Existing Remote rather than recreate the remote configuration completely from scratch. #### Authenticating to Microsoft OneDrive¶ 1. Type in your UAB email address (not your @uabmc.edu email!). 2. Click "Next". 3. If prompted, click "Work or school account". 4. You will be asked to grant permission to the RClone software. Click "Accept" if you want the software to work with OneDrive. If you do not grant permission, you will not be able to use RClone with OneDrive. 5. You will be redirected to a "Success!" page. Return to Terminal (5) to find the authentication token. 6. Next you will return to the general instructions. Before you do, note that you'll be asked to choose which type of OneDrive service to access. The prompt will look like the image below. For UAB, the two relevant selections will be (1) to access your personal OneDrive space and (3) for a SharePoint Site, e.g. for a lab or department. 7. With your selection in mind, return to Setting up UAB Cloud Remotes. ### Setting Up an S3 LTS Remote¶ The full S3 configuration process can be done from a single command line terminal. Open a terminal and enter rclone config to begin the configuration process. Note The locations where you will need to input either a command or select an option are preceded with a $ for easier navigation.

$rclone config 2022/02/22 13:02:15 NOTICE: Config file "/home/mdefende/.config/rclone/rclone.conf" not found - using defaults No remotes found - make a new one n) New remote s) Set configuration password q) Quit config # select 'n' to create a new remote$ n/s/q> n

# name the new remote
$name> uablts  At this point, you've created a new remote configuration called uablts. This will be the remote name used in further commands. You can name the remote whatever you would like, but will need to replace uablts in the instructions with whichever name you chose, if you chose a different name. ... 4 / Amazon Drive \ (amazon cloud drive) 5 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Lyve Cloud, Minio, RackCorp, SeaweedFS, and Tencent COS \ (s3) 6 / Backblaze B2 \ (b2) ...$ Storage> 5

...
2 / Alibaba Cloud Object Storage System (OSS) formerly Aliyun
\ (Alibaba)
3 / Ceph Object Storage
\ (Ceph)
4 / Digital Ocean Spaces
\ (DigitalOcean)
...

$provider> 3 Option env_auth. Get AWS credentials from runtime (environment variables or EC2/ECS meta data if no env vars). Only applies if access_key_id and secret_access_key is blank. Choose a number from below, or type in your own boolean value (true or false). Press Enter for the default (false). 1 / Enter AWS credentials in the next step. \ (false) 2 / Get AWS credentials from the environment (env vars or IAM). \ (true)$ env_auth> 1 (or leave blank)

Option access_key_id.
AWS Access Key ID.
Leave blank for anonymous access or runtime credentials.
Enter a value. Press Enter to leave empty.

$access_key_id> (Enter your access key given to you by research computing) Option secret_access_key. AWS Secret Access Key (password). Leave blank for anonymous access or runtime credentials. Enter a value. Press Enter to leave empty.$ secret_access_key> (Enter your secret access key given to you by research computing here)

Option region.
Region to connect to.
Leave blank if you are using an S3 clone and you don't have a region.
Choose a number from below, or type in your own value.
Press Enter to leave empty.
/ Use this if unsure.
1 | Will use v4 signatures and an empty region.
\ ()
/ Use this only if v4 signatures don't work.
2 | E.g. pre Jewel/v10 CEPH.
\ (other-v2-signature)

$region> (Leave empty) Option endpoint. Endpoint for S3 API. Required when using an S3 clone. Enter a value. Press Enter to leave empty.$ endpoint> s3.lts.rc.uab.edu

From here, press Enter to accept default options until it gives you a summary of your connection

[uablts]
type = s3
provider = Ceph
access_key_id = ****************** # these will be filled in on your screen
secret_access_key = ********************************
endpoint = s3.lts.rc.uab.edu
--------------------
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d>

Make sure everything looks correct here, then press Enter. At this point, it will bring you back to the main configuration menu. You can choose the Quit Config option and exit back to a basic terminal.

### Reconnecting to an Existing Remote¶

When your tokens expire, rather than recreate the remote from scratch, simply use the following command with your existing remote <name>.

rclone config reconnect <name>:

• If you already have a token, you will be asked if you want to refresh it. Choose yes if so, then continue.
• You will be prompted with Use auto config?. If you are on a machine with no access to a browser, respond n, as in the original setup.
• Follow the steps in the appropriate section under Authenticating to Cloud Remotes, as in the original setup.

## Usage¶

RClone is a powerful tool with many commands available. We will only cover a small subset of the available commands, as most are beyond typical usage, so please see the RClone documentation for more information.

All commands have access to the global flags. An important global flag is --dry-run to show what will happen without actually executing the command, which can be helpful to prevent costly mistakes. Other Helpful Global Flags are also available.

The various remotes each have their own individual page with their own specific flags, and are linked in the relevant Setting up Remotes section above.

Important

Remote paths are always prefixed by the name of the remote like cheaha:/path/to/files. The colon character : is required for all remote paths. Local paths have no prefix like /path/to/local/files. RClone can thus be used between any two machines that are configured where rclone is being used, including from the local machine to itself. In the following instructions, replace <remote:> by the appropriate remote name from configuration. To access local files, leave <remote:> off entirely.

Important

Remember to use quotes " around paths with spaces like "path\to\a folder with spaces"

### Usage Concept¶

All rclone commands follow the same general patterns outlined below. source is the name of the source remote and destination is the name of the destination remote. Remotes must be set up before using commands. To work with local files use the format :path/to/data instead of remote:path/to/data. The colon is necessary to access local files.

• Single-source commands like ls:

rclone ls <flags...> source:path/to/data

• Transfer commands like cp:

rclone cp <flags...> source:path/to/data destination:path/to/data

Source always comes before destination. To change the direction of file transfer, swap the order of source and destination.

### Creating a Directory¶

To create a directory use rclone mkdir <remote:><path>.

Example: rclone mkdir box:manuscript.

### Listing Files and Directories¶

To list files on a machine use rclone ls <remote:><path>.

Example rclone ls box:.

To list directories on a machine use rclone lsd <remote:><path>.

Example: rclone lsd box: should show manuscript.

### Copying Files¶

To copy files without changing their name, or to recursively copy directory content, use rclone copy <source:><path> <destination:><path>. Note that the directory contents are copied, so when copying a directory, be sure that directory exists on the remote and that you are copying into it.

Example: rclone copy "C:\users\Name\My Documents" box:manuscript

To copy a single file and change its name, use rclone copyto <source:><path/oldname> <destination:><path/newname>.

Example rclone copyto "C:\users\Name\My Documents\manuscript.docx" box:manuscript\newest.docx

### Syncing Between Two Devices¶

To make a destination directory's contents identical to a source directory, use rclone sync <source:><path> <destination:><path>

Example: rclone sync cheaha:"C:\users\Name\My Documents" box:manuscript.

Danger

rclone sync is a destructive operation and cannot be undone! If files exist on the destination that do not exist on the source, then they will be deleted permanently from the destination. To avoid accidental destruction of files use the --immutable flag.

## Other Helpful Global Flags¶

Flag used with any RClone command are called global flags. Below are some useful global flags.

• -C or --checksum: Skip syncing files based on checksum instead of last modified time.
• --dry-run: Show what will happen if the command were executed. No changes are made.
• --immutable: Do not allow any files to be modified. Helpful to avoid unintended deletions and overwrites.
• --max-depth <integer>: Only recurse to <integer> depth within directory tree. Using rclone ls --max-depth 1 means only show top-level files in the current directory.
• -P or --progress: Show progress of command as it runs.
• --quiet: Print as little as possible. Useful in scripts.
• -u or --update: Skips files that are newer on the remote.

Last update: November 29, 2022

format: plain


text:
Problem: A proton has an initial speed of 3.9 × 105 m/s.What potential difference is required to reduce the initial speed of the proton by a factor of 3?

FREE Expert Solution

Law of conservation of energy:

$\overline{)\begin{array}{rcl}{\mathbf{K}}_{\mathbf{i}}\mathbf{+}{\mathbf{U}}_{\mathbf{i}}& {\mathbf{=}}& {\mathbf{K}}_{\mathbf{f}}\mathbf{+}{\mathbf{U}}_{\mathbf{f}}\\ \frac{\mathbf{1}}{\mathbf{2}}\mathbf{m}{{\mathbf{v}}_{\mathbf{i}}}^{\mathbf{2}}\mathbf{+}\mathbf{q}{\mathbf{V}}_{\mathbf{i}}& {\mathbf{=}}& \frac{\mathbf{1}}{\mathbf{2}}\mathbf{m}{{\mathbf{v}}_{\mathbf{f}}}^{\mathbf{2}}\mathbf{+}\mathbf{q}{\mathbf{V}}_{\mathbf{f}}\end{array}}$

The final speed of the proton is:

vf = vi/3 = (3.9 × 105)/3 = 1.3 × 105 m/s

Problem Details

A proton has an initial speed of 3.9 × 105 m/s.

What potential difference is required to reduce the initial speed of the proton by a factor of 3?


text:
Principles of Finance

# 20.3Exchange Rates and Risk

Principles of Finance20.3 Exchange Rates and Risk

### Learning Outcomes

By the end of this section, you will be able to:

• Describe exchange rate risk.
• Identify transaction, translation, and economic risks.
• Describe a natural hedge.
• Explain the use of forward contracts as a hedge.
• List the characteristics of an option contract.
• Describe the payoff to the holder and writer of a call option.
• Describe the payoff to the holder and writer of a put option.

The managers of companies that operate in the global marketplace face additional complications when managing the riskiness of their cash flows compared to domestic companies. Managers must be aware of differing business climates and customs and operate under multiple legal systems. Often, business must be conducted in multiple languages. Geopolitical events can impact business relationships. In addition, the company may receive cash flows and make payments in multiple currencies.

### Exchange Rates

The costs to companies are impacted when the prices of the raw materials they use change. Very little coffee is grown in the United States. This means that all of those coffee beans that Starbucks uses in its espresso machines in Seattle, New York, Miami, and Houston were bought from suppliers outside of the United States. Brazil is the largest coffee-producing country, exporting about one-third of the world’s coffee.6 When a company purchases raw materials from a supplier in another country, the company needs not just money but the money that is used in that country to make the purchase. Thus, the company is concerned about the exchange rate, or the price of the foreign currency.

Figure 20.2 Brazilian Reals to One US Dollar7

The currency used in Brazil is called the Brazilian real. Figure 20.2 shows how many Brazilian reals could be purchased for $1.00 from 2010 through the first quarter of 2021. In March 2021, 5.4377 Brazilian reals could be purchased for$1.00. This will often be written in the form of

BRL is an abbreviation for Brazilian real, and USD is an abbreviation for the US dollar. This price is known as a currency exchange rate, or the rate at which you can exchange one currency for another currency.

If you know the price of $1.00 is 5.4377 Brazilian reals, you can easily find the price of Brazilian reals in US dollars. Simply divide both sides of the equation by 5.4377, or the price of the US dollar: If you have US dollars and want to purchase Brazilian reals, it will cost you$0.1839 for each Brazilian real you want to buy.

The foreign exchange rate changes in response to demand for and supply of the currency. In early 2020, the exchange rate was . In other words, $1 purchased fewer reals in early 2020 than in it did a year later. Because you receive more reals for each dollar in 2021 than you would have a year earlier, the dollar is said to have appreciated relative to the Brazilian real. Likewise, because it takes more Brazilian reals to purchase$1.00, the real is said to have depreciated relative to the US dollar.

### Exchange Rate Risks

Starbucks, like other firms that are engaged in international business, faces currency exchange rate risk. Changes in exchange rates can impact a business in several ways. These risks are often classified as transaction, translation, or economic risk.

#### Transaction Risk

Transaction risk is the risk that the value of a business’s expected receipts or expenses will change as a result of a change in currency exchange rates. If Starbucks agrees to pay a Brazilian coffee grower seven million Brazilian reals for an order of one million pounds of coffee beans, Starbucks will need to purchase Brazilian reals to pay the bill. How much it will cost Starbucks to purchase these Brazilian reals depends on the exchange rate at the time Starbucks makes the purchase.

In March 2021, with an exchange rate of , it would have cost Starbucks to purchase the reals needed to receive the one million pounds of coffee beans. If, however, Starbucks agreed in March to purchase the coffee beans several months later, in July, Starbucks would not have known then what the exchange rate would be when it came time to complete the transaction. Although Starbucks would have locked in a price of BRL 7,000,000 for one million pounds of coffee beans, it would not have known what the coffee beans would cost the company in terms of US dollars.

The company can determine how many Korean won it would take to purchase $100,000 today. If the current exchange rate is , then it will need KWN 110,000,000 to pay the bill. The current exchange rate is known as the spot rate. The company, however, does not need the US dollars for another six months. The company can purchase a call option, which is a contract that will allow it to purchase the needed US dollars in six months at a price stated in the contract. This allows the company to guarantee a price for dollars in six months, but it does not obligate the company to purchase the dollars at that price if it can find a better price when it needs the dollars in six months. The price that is in the contract is called the strike price (exercise price). Suppose the company purchases a call contract for US dollars with a strike price of KWN 1,200/USD. While this contract would be for a set size, or a certain number of US dollars, we will talk about this transaction as if it were per one US dollar to highlight how options contracts work. The company must pay a price, known as the premium, to purchase this call option contract. For our example, let’s assume the premium for the call option contract is KWN 50. In other words, the company has paid KWN 50 for the right to buy US dollars in six months for a price of KWN 1,200/USD. In six months, the company makes a choice to either (1) pay the strike price of KWN 1,200/USD or (2) let the option expire. If the company chooses to pay the strike price and purchase the US dollars, it is exercising the option. How does the company choose which to do? It simply compares the strike price of KWN 1,200/USD to the market, or spot, exchange rate at the time the option is expiring. If, six months from now, the spot exchange rate is , it will be cheaper for the company to buy the US dollars it needs at the spot price than it would be to buy the dollars with the option. In fact, if the spot rate is anything below , the company will not choose to exercise the option. If, however, the spot exchange rate in six months is , the company will exercise the option and purchase each US dollar for only KWN 1,200. The profitability, or the payoff, to the owner of a call option is represented by the chart in Figure 20.4 below. Possible spot prices are measured from left to right, and the financial gain or loss to the company of the option contract is measured vertically. If the spot price is anything less than KWN 1,200/USD, the option expires without being exercised. The company paid KWN 50 for something that ended up being worthless. Figure 20.4 The Payoff to the Holder of a Call Option If, in six months, the spot exchange rate is , then the company will choose to exercise the option. The company will be saving KWN 25 for each dollar purchased, but the company originally paid 50 KWN for the contract. So, the company will be 25 KWN worse off than if it had never purchased the call option. If the spot exchange rate is , the company will be in exactly the same position having purchased and exercised the call option as it would have been if it had not purchased the option. At any spot price higher than KWN 1,250/USD, the firm will be in a better financial position, or will have a positive payoff, because it purchased the call option. The more the Korean won depreciates over the next six months, the higher the payoff to the firm of owning the call contract. Purchasing the call contract is a way that the company can protect itself from the currency exposure it faces. For any transaction, there must be two parties—a buyer and a seller. For the company to have purchased the call option, another party must have sold the call option. The seller of a call option is called the option writer. Let’s consider the potential benefits and risks to the writer of the call option. When the company purchases the call option, it pays the premium to the writer. The writer of the option does not have a choice regarding whether the option will be exercised. The purchaser of the option has the right to make the choice; in essence, the writer of the option sold the right to make that decision to the purchasers of the call option. Figure 20.5 shows the payoff to the writer of the call option. Recall that the buyer of the call option will let the option expire if the spot rate is less than when the call option matures in six months. If this occurs, the writer of the option collected the KWN 50 option premium when the contract was sold and then never hears from the purchaser again. This is what the writer of the option is hoping for; the writer of the call option profits when the options contract is not exercised Figure 20.5 The Payoff to the Writer of a Call Option If the spot rate is above , then the holder of the option will choose to exercise the right to purchase the won at the option strike price. Then the writer of the option will be obligated to sell the Korean won at a price of KWN 1,200/USD. If the spot rate is , the option writer will be obligated to sell the dollars for KWN 50 less than what they are worth; because the option writer was initially paid a KWN 50 premium for taking on that obligation, the option writer will just break even. For any exchange rate higher than , the writer of the call option will have a loss. The option contract is a zero-sum game. Any payoff the owner of the option receives is exactly equal to the loss the writer of the option has. Any loss the owner of the option has is exactly equal to the payoff the writer of the option receives. #### Put Options While the call option you just considered gives the owner the right to buy an underlying asset, the put option gives the owner to right to sell an underlying asset. Take, for example, an Indian company that has a contract to provide graphic artwork for a US company. The US company will pay the Indian company 200,000 US dollars in three months. While the Indian company receives US dollars, it must pay its workers in Indian rupees. Because the company does not know what the spot exchange rate will be in three months, it faces transaction risk and may be interested in hedging this exposure using a put option. The company knows that the current spot rate is , meaning that the company would be able to use$200,000 to purchase if it possessed the \$200,000 today. If the Indian rupee appreciates relative to the US dollar over the next three months, however, the company will receive fewer rupees when it makes the exchange; perhaps the company will not be able to purchase enough rupees to cover the wages of its employees.

Assume the company can purchase a put option that gives it the right to sell US dollars in three months at a strike price of INR 75/USD; the premium for this put option is INR 5. By purchasing this put option, the company is spending INR 5 to guarantee that it can sell its US dollars for rupees in three months at a price of INR 75/USD.

If, in three months, when the company receives payment in US dollars, the spot exchange rate is higher than , the company will simply exchange the US dollars for rupees at that exchange rate, allowing the put option to expire without exercising it. The payoff to the company for the option is INR -5, the premium that was paid for the option that was never used (see Figure 20.6).

Figure 20.6 The Payoff to the Holder of a Put Option

If, however, in three months, the spot exchange rate is anything less than , then the company will choose to exercise the option. If the spot rate is between and , the payoff for the option is negative. For example, if the spot exchange rate is , the company will exercise the option and receive three more Indian rupees per dollar than it would in the spot market. However, the company had to spend INR 5 for the option, so the payoff is INR -2. At a spot exchange rate of , the company has a zero payoff; the benefit of exercising the option, INR 5, is exactly equal to the price of purchasing the option, the premium of INR 5.

If, in three months, the spot exchange rate is anything below , the payoff of the put option is positive. At the theoretical extreme, if the USD became worthless and would purchase no rupees in the spot market when the company received the dollars, the company could exercise its option and receive INR 75/USD, and its payoff would be INR 70.

Now that we have considered the payoff to a purchaser of a put contract, let’s consider the opposite side of the contract: the seller, or writer, of the put option. The writer of a put option is selling the right to sell dollars to the purchaser of the put option. The writer of the put option collects a premium for this. The writer of the put has no choice as to whether the put option will be exercised; the writer only has an obligation to honor the contract if the owner of the put option chooses to exercise it.

The owner of the option will choose to let the option expire if the spot exchange rate is anything above . If that is the case, the writer of the put option collects the INR 5 premium for writing the put, as shown by the horizontal line in Figure 20.7. This is what the writer of the put is hoping will occur.

Figure 20.7 The Payoff to the Writer of a Put Option

The owner of the option will choose to exercise the option if the exchange rate is less than . If the spot exchange rate is between and , the writer of the put option has a positive payoff. Although the writer must now purchase US dollars for a price higher than what the dollars are worth, the INR 5 premium that the writer received when entering into the position is more than enough to offset that loss.

If the spot exchange rate drops below , however, the writer of the put option is losing more than INR 5 when the option is exercised, leaving the writer with a negative payoff. In the extreme, the writer of the put will have to purchase worthless US dollars for INR 75/USD, resulting in a loss of INR 70.

Notice that the payoff to the writer of the put is the negative of the payoff to the holder of the put at every spot price. The highest payoff occurs to the writer of the put when the option is never exercised. In that instance, the payoff to the writer is the premium that the holder of the put paid when purchasing the option (see Figure 20.7).

Table 20.2 provides a summary of the positions that the parties who enter into options contract are in. Remember that the buyer of an option is always the one purchasing the right to do something. The seller or writer of an option is selling the right to make a decision; the seller has the obligation to fulfill the contract should the buyer of the option choose to exercise the option. The most the seller of an option can ever profit is by the premium that was paid for the option; this occurs when the option is not exercised.

Benefits Harm
Party to an Option Contract Right of the Party Obligation of the Party When Maximum Profit When Maximum Loss
Buyer of a call To buy   Price of underlying rises Unlimited Price of underlying falls Premium paid
Seller of a call   To sell Price of underlying falls Premium received Price of underlying rises Unlimited
Buyer of a put To sell   Price of underlying falls Strike price minus premium Price of underlying rises Premium paid
Table 20.2 Summary of Option Contracts

### Footnotes

• 6Global Agricultural Information Network. Brazil: Coffee Annual 2019. GAIN Report No. BR19006. Washington, DC: USDA Foreign Agricultural Service, May 2019. https://apps.fas.usda.gov/newgainapi/api/report/downloadreportbyfilename?filename=Coffee%20Annual_Sao%20Paulo%20ATO_Brazil_5-16-2019.pdf
• 7Data from Board of Governors of the Federal Reserve System (US). “Brazil / US Foreign Exchange Rate (DEXBZUS).” FRED. Federal Reserve Bank of St. Louis, accessed August 6, 2021. https://fred.stlouisfed.org/series/DEXBZUS
• 8Data from Board of Governors of the Federal Reserve System (US). “Japan / US Foreign Exchange Rate (DEXJPUS).” FRED. Federal Reserve Bank of St. Louis, accessed August 6, 2021. https://fred.stlouisfed.org/series/DEXJPUS
Do you know how you learn best?
Order a print copy

As an Amazon Associate we earn from qualifying purchases.


text:
Find all School-related info fast with the new School-Specific MBA Forum

 It is currently 07 Feb 2016, 16:53

### GMAT Club Daily Prep

#### Thank you for using the timer - this advanced tool can estimate your performance and suggest more practice questions. We have subscribed you to Daily Prep Questions via email.

Customized
for You

we will pick new questions that match your level based on your Timer History

Track

every week, we’ll send you an estimated GMAT score based on your performance

Practice
Pays

we will pick new questions that match your level based on your Timer History

# Events & Promotions

###### Events & Promotions in June
Open Detailed Calendar

# GMAT Prep QUANT level too high??

Author Message
TAGS:
Intern
Joined: 30 Nov 2012
Posts: 30
Followers: 0

Kudos [?]: 1 [0], given: 20

GMAT Prep QUANT level too high?? [#permalink]  11 Jan 2013, 09:49
Hey

Is it just me or is the level of quant in the official gmat prep way too high??...I took a test today but I was just not able to figure the answers out..I wasnt short on time but I just didnt know how to solve them...I have never experienced that before..I do pretty ok in other tests...but GmatPrep was just too difficult..I am panicking now coz it is supposed to be closest to the real exam...I got my exam in 4 days...not much I can do...what do u guys feel about the quant in gmat prep ?
 Kaplan GMAT Prep Discount Codes Knewton GMAT Discount Codes Manhattan GMAT Discount Codes
Moderator
Joined: 01 Sep 2010
Posts: 2739
Followers: 597

Kudos [?]: 4620 [1] , given: 755

Re: GMAT Prep QUANT level too high?? [#permalink]  11 Jan 2013, 11:27
1
KUDOS
Expert's post
it is .

I do not wan to scare you but is the truth, nothing more or less.

Even OG problem are not realistic, they do not reflect the actual gmat level of the questions. Verbal yes, but quant not.

Good luck
_________________
Intern
Joined: 30 Nov 2012
Posts: 30
Followers: 0

Kudos [?]: 1 [0], given: 20

Re: GMAT Prep QUANT level too high?? [#permalink]  11 Jan 2013, 12:27
carcass wrote:
it is .

I do not wan to scare you but is the truth, nothing more or less.

Even OG problem are not realistic, they do not reflect the actual gmat level of the questions. Verbal yes, but quant not.

Good luck

Oh man...exactly i found the OG Quant too simple..which is why i was so taken aback by the gmat prep quant questions...

I'm screwed
Intern
Joined: 15 Aug 2012
Posts: 12
Location: United States
Concentration: Finance, Economics
Schools: HBS '15 (D)
GMAT 1: 720 Q49 V40
GPA: 3.4
WE: Account Management (Mutual Funds and Brokerage)
Followers: 0

Kudos [?]: 5 [0], given: 3

Re: GMAT Prep QUANT level too high?? [#permalink]  11 Jan 2013, 13:08
How does GMAT Prep compare to the Manhattan GMAT Tests?
Veritas Prep GMAT Instructor
Joined: 16 Oct 2010
Posts: 6216
Location: Pune, India
Followers: 1675

Kudos [?]: 9588 [1] , given: 196

Re: GMAT Prep QUANT level too high?? [#permalink]  11 Jan 2013, 20:24
1
KUDOS
Expert's post
006 wrote:
Hey

Is it just me or is the level of quant in the official gmat prep way too high??...I took a test today but I was just not able to figure the answers out..I wasnt short on time but I just didnt know how to solve them...I have never experienced that before..I do pretty ok in other tests...but GmatPrep was just too difficult..I am panicking now coz it is supposed to be closest to the real exam...I got my exam in 4 days...not much I can do...what do u guys feel about the quant in gmat prep ?

OG does not give you a true picture of what to expect. GMAT prep questions do. Sometimes people know their concepts well but still find GMAT prep questions hard because they are not used to the format. In the next 4 days, try to do as many GMAT prep questions as you can and as thoroughly as you can. It might make you a little more comfortable with the pattern. A big contributor to your test performance will be your confidence. So if you work your way through a good number of GMAT test prep questions, you will feel more confident.
We generally suggest our students to take it easy in the last 2-3 days but since you tried out GMAT prep test questions just now, you might want to push yourself a little. Needless to say, do not sleep late the night before your test.
_________________

Karishma
Veritas Prep | GMAT Instructor
My Blog

Get started with Veritas Prep GMAT On Demand for $199 Veritas Prep Reviews Intern Joined: 30 Nov 2012 Posts: 30 Followers: 0 Kudos [?]: 1 [0], given: 20 Re: GMAT Prep QUANT level too high?? [#permalink] 12 Jan 2013, 01:30 VeritasPrepKarishma wrote: 006 wrote: Hey Is it just me or is the level of quant in the official gmat prep way too high??...I took a test today but I was just not able to figure the answers out..I wasnt short on time but I just didnt know how to solve them...I have never experienced that before..I do pretty ok in other tests...but GmatPrep was just too difficult..I am panicking now coz it is supposed to be closest to the real exam...I got my exam in 4 days...not much I can do...what do u guys feel about the quant in gmat prep ? OG does not give you a true picture of what to expect. GMAT prep questions do. Sometimes people know their concepts well but still find GMAT prep questions hard because they are not used to the format. In the next 4 days, try to do as many GMAT prep questions as you can and as thoroughly as you can. It might make you a little more comfortable with the pattern. A big contributor to your test performance will be your confidence. So if you work your way through a good number of GMAT test prep questions, you will feel more confident. We generally suggest our students to take it easy in the last 2-3 days but since you tried out GMAT prep test questions just now, you might want to push yourself a little. Needless to say, do not sleep late the night before your test. Thanks a lot for the information and advice....will definitely do all the gmat prep questions before the exam +1 Intern Joined: 12 Dec 2012 Posts: 3 Followers: 0 Kudos [?]: 0 [0], given: 0 Re: GMAT Prep QUANT level too high?? [#permalink] 14 Jan 2013, 06:18 006 wrote: VeritasPrepKarishma wrote: 006 wrote: In the next 4 days, try to do as many GMAT prep questions as you can and as thoroughly as you can. It might make you a little more comfortable with the pattern. So are you saying that the OG is too hard or too easy? Also when referring to GMAT Prep questions is it the PREP software test you are referring to or how? Veritas Prep GMAT Instructor Joined: 16 Oct 2010 Posts: 6216 Location: Pune, India Followers: 1675 Kudos [?]: 9588 [0], given: 196 Re: GMAT Prep QUANT level too high?? [#permalink] 14 Jan 2013, 20:01 Expert's post andyp1 wrote: So are you saying that the OG is too hard or too easy? Also when referring to GMAT Prep questions is it the PREP software test you are referring to or how? Most OG questions are very straight forward. You might get first 4-5 such questions in the beginning but if you answer them correctly, you will see much harder questions later on. The adaptable format of the test makes it much harder than what OG will have you believe. And yes, the GMAT prep questions are the questions of the GMAT prep tests - the ones who download free of cost from mba.com _________________ Karishma Veritas Prep | GMAT Instructor My Blog Get started with Veritas Prep GMAT On Demand for$199

Veritas Prep Reviews

Intern
Joined: 25 Aug 2013
Posts: 4
Followers: 0

Kudos [?]: 0 [0], given: 15

Re: GMAT Prep QUANT level too high?? [#permalink]  25 Aug 2013, 04:29
006 wrote:
Hey

Is it just me or is the level of quant in the official gmat prep way too high??...I took a test today but I was just not able to figure the answers out..I wasnt short on time but I just didnt know how to solve them...I have never experienced that before..I do pretty ok in other tests...but GmatPrep was just too difficult..I am panicking now coz it is supposed to be closest to the real exam...I got my exam in 4 days...not much I can do...what do u guys feel about the quant in gmat prep ?

How much did you score?

Posted from my mobile device
Intern
Joined: 30 Nov 2012
Posts: 30
Followers: 0

Kudos [?]: 1 [1] , given: 20

Re: GMAT Prep QUANT level too high?? [#permalink]  05 Sep 2013, 04:23
1
KUDOS
federite wrote:
006 wrote:
Hey

Is it just me or is the level of quant in the official gmat prep way too high??...I took a test today but I was just not able to figure the answers out..I wasnt short on time but I just didnt know how to solve them...I have never experienced that before..I do pretty ok in other tests...but GmatPrep was just too difficult..I am panicking now coz it is supposed to be closest to the real exam...I got my exam in 4 days...not much I can do...what do u guys feel about the quant in gmat prep ?

How much did you score?

Posted from my mobile device

Hi Federite
I scored a 580 :( ...i am retaking the exam on 14th Sep...and now that I am done with the OG (around 3 times) and the Official Quant Review ..I think I can afford to say that these questions are not truly representative of the actual GMAT Quant...Just my opinion but I found the Quant in the official guides much easier than the actual exam/GMATPrep
Re: GMAT Prep QUANT level too high??   [#permalink] 05 Sep 2013, 04:23
Similar topics Replies Last post
Similar
Topics:
2 Quant question sources closer to GMAT level 3 25 Nov 2015, 15:51
Easy GMAT Prep Quant 3 01 Oct 2014, 13:36
Bias in the GMAT Prep Quant ? 2 10 Apr 2013, 00:32
Request for GMAT PREP Collection? (Quant) 1 19 Dec 2012, 15:18
31 Two guns were fired from the same place at an interval of 10 13 06 May 2010, 04:34
Display posts from previous: Sort by


text:
# Will this makina program halt?

makina is a cell-based esolang composed of automata which move around a grid. These automata follow paths of instructions that direct their movement. Your task is to, given a makina program using only the below instructions (so a subset of normal makina) as input, output two distinct values depending on whether or not it is a loop. (If program flow comes to an arrow character that it has already visited then the program is a loop.)

## Instructions

• ^>v< These instructions (arrows) set the direction of the automaton to the direction they point in.
• I This instruction halts automata going up or down, but does nothing to ones going left or right.
• H This instruction halts automata going left or right, but does nothing to ones going up or down.
• O This instruction does nothing to the automaton, acting like a sort of 4-way intersection.

All other characters (including spaces) halt the automaton, as does exiting the bounds of the program. The automaton starts in the top-left corner going right. You may assume programs are padded by spaces to be rectangular. This is , so shortest answer wins!

## Truthy

>>>v
v<<<

OOOv
H<<<
v

>>>v
v<I<
H>^
>^

>>>>v
v <<<

## Falsey

>>>v
^<<<

>v
^O<
>^

• The testcase OOOv H<<< v is truthy and falsy? Apr 21 at 14:44
• Also, why doesn't >>>>v v <<< (second-to-last [before edit, now it's the last] falsy case) halt? Doesn't it hit a space and then halt? Apr 21 at 14:46
• Why >>>v/v<I</H>^/>^ be falsy? Won't it halt on I?
– tsh
Apr 22 at 2:15
• The last two test cases are truthy. They halt. Apr 23 at 0:58
• Suggested testcase: vv<v<X/>OOOOv/vOOOO</>OOOOv/XO^<^<. My previous answer failed on it.
– tsh
Apr 25 at 2:09

# Python, 182 187 bytes

def f(s):
i=j=h=0;d=1;v={0}
while 1:
if(t:=(i,j,h,d))in v:return 0
try:c=s[i][j];0/(c-32)/(c&16 or(c&3^h))
except:return 1
if c&16:h=c>>6;d=(c>>4&c&2)-1
v|={t};i+=h*d;j+=d-h*d

Attempt This Online!

Edit: the previous version did return falsey if the automaton visited twice a cell with H or I. Thanks to @tsh for the useful comments on the challenge post.

Brief explanation:

• i and j are the coordinates of the current cell (i is the row index, j is the column index);
• v is the set of the previously visited cells; if the current cell was already in v, it means that the automaton does not halt (hence return 0);
• the try block assigns to c the symbol in the current cell; it also checks if the coordinates refer to a cell present in the input, if the cell contains a space, or if the automaton halts encountering a H or a I;
• h stores the direction of the movement; if h is 0 the automaton is moving horizontally, if h is 1 it is moving vertically;
• d stores the magnitude of the movement, can be -1 or +1

# Ruby, 274 233 bytes

->b{b=b.lines.map &:chars;x=y=0;d=[1,0];i={?>=>d,?<=>[-1,0],?^=>[0,-1],?v=>[0,1],?H=>0,?I=>1};loop{a=b[y][x] rescue break;a=~/[><^v]/? (d=i[a];b[y][x]=0): a=~/[IH]/? (break if d[i[a]]!=0): a==?O? 0: a==0? v: break;x,y=x+d[0],y+d[1]}}

Try it online! I've only put a couple test cases in the TIO link because the test cases in the question aren't all sorted correctly. (Some marked falsy are actually truthy.)

Takes a string. Errors if the input doesn't terminate, runs without error (returns nil) if it does. I'm proud of the golfed case statement and use of inline rescue, an arguably useless feature that's only really applicable in an edge case like this. Still trying to figure out how to golf i (a direction lookup hash) as well as optimize control flow in the function itself.

Ungolfed code:

def simulate_makina program
program = program.chomp.split(?\n).map(&:chars)
x, y = 0, 0
dir = [1, 0]
dirs = {?> => [1, 0], ?< => [-1, 0], ?^ => [0, -1], ?v => [0, 1], ?H => 0, ?I =>1}

loop do
a = program[y][x] rescue break
case a
when /[><^v]/
dir = dirs[a]
program[y][x] = 0
when /[IH]/
break if dir[dirs[a]] != 0
when ?O
0 # nop
when 0
v # raises a NameError
else
break
end
x, y = x + dir[0], y + dir[1]
end
end

# Ruby, 252 211 bytes

->b{x=y=0;d=[1,0];i={?>=>d,?<=>[-1,0],?^=>[0,-1],?v=>[0,1],?H=>0,?I=>1};loop{a=b[y][x] rescue break;a=~/[><^v]/? (d=i[a];b[y][x]=0): a=~/[IH]/? (break if d[i[a]]!=0): a==?O? 0: a==0? v: break;x,y=x+d[0],y+d[1]}}

Alternative answer that takes, instead of a string, a 2d array of characters. Again, errors if the input doesn't terminate and returns if it does. Try it online!

• is there a shorter error that can be used with rescue? Apr 23 at 2:32
• @Razetime Probably, but the NoMethodError is caused by the execution pointer moving out of bounds, which terminates the input program; the rescue block pulls execution outside of the loop and returns. I could probably replace it with Exception or maybe omit it entirely, I haven't checked Apr 23 at 4:58

# JavaScript, 118 bytes

s=>[x=-1,y=0,d=4,...s+s].every(_=>d=1+'^<v>'.indexOf(c=s.split
[y+=(d-2)%2]?.[x+=(d-3)%2])||d*(c=='O'|c=='IH'[d%2]))

This answer disagree with the last 2 testcases.

f=

s=>[x=-1,y=0,d=4,...s+s].every(_=>d=1+'^<v>'.indexOf(c=s.split
[y+=(d-2)%2]?.[x+=(d-3)%2])||d*(c=='O'|c=='IH'[d%2]))

t=
>>>v
v<<<

OOOv
H<<<
v

>>>v
^<<<

>v
^O<
>^

>>>v
v<I<
H>^
>^

>>>>v
v <<<

vv<v<X
>OOOOv
vOOOO<
>OOOOv
XO^<^<
.trim().split(/\n\n+/);
t.forEach(s => {
console.log(f(s));
});

Basic idea: A makina program with $$\n\$$ bytes source code will always terminate in at most $$\2n\$$ steps or it will never terminate.

# Python 3.8 (pre-release), 248 bytes

def h(i):
p=P=d=0;D=1;v=[]
while 1:
try:p+=d;P+=D;r=i[p][P]
except:return 1
if[p,P]in v:return 0
if'H'==r and D or'I'==r and d or'<>^vHIO'.find(r)<0:return 1
L=r in'<>^v';v+=[[p,P]]*L
if L:d=r>']'and' v'.find(r);D=r<'?'and' >'.find(r)

Try it online!

Wrong output for fourth falsy case but it seems like the output should in fact be truthy (the automaton hits a space and halts). I am waiting for clarification from the OP on this. Works on all other testcases.

Nothing too complex; just moves around as dictated by the input. The only part of note here is how to check whether to halt at an H or I location. For H, this is done by checking that D, which is the horizontal movement variable, is truthy, because it is truthy if it is not zero, and if it is not zero then the automaton is moving from the left or right. If it is zero then it is moving from the top or bottom. Similar for I but we check d (vertical movement) instead.

+6 bytes to fix bug pointed out by @tsh in comments, which means that the output for the third "falsey" case is now 1. However, it would appear that this is the correct answer.

# Charcoal, 56 bytes

ＷＳ⊞υιＰ⪫υ¶Ｗ⊕⌕⪪HIO>^<v¹ＫＫ¿‹ι⁴¿⁼⊖ι﹪φ²⎚Ｍ✳⊗φ«≔ιφ✳⊗φψ»≔ＫＫθ⎚⁼θψ

Try it online! Link is to verbose version of code. Takes input as a list of newline-terminated strings and outputs - if the program does not halt, nothing if it halts. Explanation:

ＷＳ⊞υιＰ⪫υ¶

Input the instructions and print them to the canvas without moving the cursor.

Ｗ⊕⌕⪪HIO>^<v¹ＫＫ

While the character under the cursor is a valid instruction:

¿‹ι⁴

If this was an intersection-type character, then...

¿⁼⊖ι﹪φ²⎚

... if this intersection should halt the program then clear the canvas, causing the loop to exit, ...

Ｍ✳⊗φ

... otherwise move on through the intersection.

«≔ιφ✳⊗φψ»

Otherwise, update the direction, replace the current character with a null marker and move in the new direction.

≔ＫＫθ⎚⁼θψ

Output whether the cursor landed on a null marker, indicating an infinite loop.


text:
A Linear Optimization Technique for Graph Pebbling

# A Linear Optimization Technique for Graph Pebbling

Glenn Hurlbert
School of Mathematics and Statistics
Arizona State University
Tempe, AZ 85287 USA
hurlbert@asu.edu
Much of this work was carried out while vising the Centre de Recerca Matematica during the research program on Variational Analysis and Optimization, Fall 2010.
###### Abstract

Graph pebbling is a network model for studying whether or not a given supply of discrete pebbles can satisfy a given demand via pebbling moves. A pebbling move across an edge of a graph takes two pebbles from one endpoint and places one pebble at the other endpoint; the other pebble is lost in transit as a toll. It has been shown that deciding whether a supply can meet a demand on a graph is NP-complete. The pebbling number of a graph is the smallest such that every supply of pebbles can satisfy every demand of one pebble. Deciding if the pebbling number is at most is -complete.

In this paper we develop a tool, called the Weight Function Lemma, for computing upper bounds and sometimes exact values for pebbling numbers with the assistance of linear optimization. With this tool we are able to calculate the pebbling numbers of much larger graphs than in previous algorithms, and much more quickly as well. We also obtain results for many families of graphs, in many cases by hand, with much simpler and remarkably shorter proofs than given in previously existing arguments (certificates typically of size at most the number of vertices times the maximum degree), especially for highly symmetric graphs.

Here we apply the Weight Function Lemma to several specific graphs, including the Petersen, Lemke, weak Bruhat, Lemke squared, and two random graphs, as well as to a number of infinite families of graphs, such as trees, cycles, graph powers of cycles, cubes, and some generalized Petersen and Coxeter graphs. This partly answers a question of Pachter, et al., by computing the pebbling exponent of cycles to within an asymptotically small range. It is conceivable that this method yields an approximation algorithm for graph pebbling.

## 1 Introduction

Graph pebbling is like a number of network models, including network flow, transportation, and supply chain, in that one must move some commodity from a set of sources to a set of sinks optimally according to certain constraints. Network flow constraints restrict flow along edges and conserve flow through vertices, and the goal is to maximize the amount of commodity reaching the sinks. The transportation model includes per unit costs along edges and aims to minimize the total cost of shipments that satisfy the source supplies and sink demands. At its simplest, the supply chain model ignores transportation costs while seeking to satisfy demands with minimum inventory. The graph pebbling model introduced by Chung [7] also tries to meet demands with minimum inventory, but constrains movement across an edge by the loss of the commodity itself, much like an oil tanker using up the fuel it transports, not unlike heat or other energy dissipating during transfer.

Specifically, a configuration of pebbles on the vertices of a connected graph is a function (the nonnegative integers), so that counts the number of pebbles placed on the vertex . We write for the size of ; i.e. the number of pebbles in the configuration. A pebbling step from a vertex to one of its neighbors reduces by two and increases by one (so that one can think of it as moving one pebble at the cost of another as toll). Given two configurations and we say that is -solvable if some sequence of pebbling steps converts to . In this paper we study the traditional case in which the target distribution consists of a single pebble at some root vertex (one can peruse [14, 15, 17] for a wide array of variations on this theme). We are concerned with determining , the minimum number of pebbles so that every configuration of size is -solvable. Then the pebbling number of equals . Alternatively, is one more than the maximum such that there is some root and some size configuration so that does not solve . The primary focus of this paper is to exploit this duality with newly discovered algebraic constraints.

### 1.1 Calculating Pebbling Numbers

Given a graph , configuration , and root , one can ask how difficult it is to determine if solves . In [18] it was determined that this problem is NP-hard. Subsequently, [19, 22] proved that the problem is NP-complete, with [19] showing further that answering the question “is ?” is -complete (and hence both NP-hard and coNP-hard, and therefore in neither NP nor coNP unless NP  coNP). Finding classes of graphs on which we can answer more quickly is therefore relevent, and there is some evidence that one can be successful in this direction. Besides what we share in this introduction, we show later that many graphs can have very short certificates that .

The -unsolvable configuration with one pebble on every vertex other than the root shows that , where denotes the number of vertices of . In [20] it is proved that graphs of diameter two satisfy , with a characterization separating the two classes (Class 0 means and Class 1 means ) given in [5, 8]. One of the consequences of this is that 3-connected diameter two graphs are Class 0. As an extension it is proved in [11] that -connected diameter graphs are also Class 0, and they use this result to show that almost every graph with significantly more than (for any fixed ) edges is Class 0. Consequently, it is a very (asymptotically) small collection of graphs that cause all the problems.

Knowing the pebbling number of a graph and actually solving a particular configuration are two different things, as even a configuration that is known to be solvable (say, one of size equal to the pebbling number) can be difficult to solve. Evidence that most configurations are not so difficult, though, comes in the following form. The work of [2] shows that every infinite graph sequence has a pebbling threshold , which yields the property that almost every configuration on of size is solvable (and almost every configuration of size is not). In papers such as [3, 9, 10] we find that is significantly smaller than — for example, as opposed to for the complete graph , and roughly as opposed to for the path . Moreover, the proof techniques reveal that almost all of these solvable configurations can be solved greedily, meaning that every pebbling step reduces the distance of the pebble to the root. So the hardness of the problem stems from a rare collection of configurations.

With these results as backdrop, [1] presents a polynomial algorithm for determining the solvability of a configuration on diameter two graphs of connectivity some fixed . Furthermore, [21] contains an algorithm that calculates pebbling numbers, and is able to complete the task for every graph on at most 9 vertices. Also, the proof in [7] that the -dimensional cube is of Class 0 is a polynomial algorithm (actually bounded by its number of edges ). Along these lines, our main objective is to develop algorithmic tools that will in a reasonable amount of time yield good upper bounds on for much larger graphs, and in particular decide in some cases whether or not a graph is of Class 0.

This latter determination is motivated most by the following conjecture of Graham in [7]. For graphs and , let denote the Cartesian product whose vertices are , with edges whenever in and whenever in .

###### Conjecture 1

(Graham) Every pair of graphs and satisfy .

The conjecture has been verified for many graphs; see [13] for the most recent work. However, as noted in [16], there is good reason to suspect that might be a counterexample to this conjecture, if one exists, where is the Lemke graph of Figure 1. Since is Class 0, Graham’s conjecture requires that is also, but it is a formiddable challenge to compute the pebbling number of a graph on 64 vertices. One hopes that graph structure and symmetry will be of use, but purely graphical methods have failed to date. The methods of this paper represent the first strides toward the computational resolution of the question111Yes, I’ll pay if you beat me to it!, “Is ?”. Certainly, these methods alone will not suffice222We obtain evidence that in Theorem 10 — in fact, for one root we show ., but if they produce a decent upper bound then the methods of [21] might be able to finish the job.

### 1.2 Results

The main tool we develop is the Weight Function Lemma 2. This lemma allows us to define a (very large) integer linear optimization problem that yields an upper bound on the pebbling number. This has several important consequences, including the following.

1. The pebbling numbers of reasonably small graphs often can be computed easily. Moreover, it is frequently the case that the fractional relaxation suffices for the task, allowing the computation for somewhat larger graphs.

2. It is also common that only a small portion of the constraints are required, expanding the pool of computable graphs even more.333We present some findings along these lines in Section 3.2, with graphs on and vertices. One can restrict the types of constraints to greedy, bounded depth, and so on, with great success, seemingly because of the comments above. Potentially, this allows one to begin to catalog special classes of graphs such as Class 0, (semi-)greedy, and tree-solvable.

3. The dual solutions often yield very short certificates of the results, in most cases quadratic in the number of vertices, and usually at most the number of vertices times the degree of the root. These certificates are remarkably simple compared to the usual solvability arguments that chase pebbles all over the graph in a barrage of cases. One can sometimes find such certificates for infinite families of graphs by hand, without resorting to machine for more than the smallest one or two of its members. This was our approach in Section 3.3, for example.

4. Our method gives trivial proofs of

1. and , which we write as , and

2. is Class 0 for , where denotes the graph power of (as opposed to the Cartesian power ). This answers a question of [20], who defined the pebbling exponent of minimum such for which . Thus (see Theorem 16), which is fairly close to the obvious lower bound of .

In this paper we apply the Weight Function Lemma to several specific graphs, including the Petersen, Lemke, weak Bruhat, Lemke squared, and two random graphs, as well as to a number of infinite families of graphs, such as trees, cycles, graph powers of cycles, cubes, and some generalized Petersen and Coxeter graphs.

## 2 The Weight Function Lemma

Let be the path on vertices. Then is easily proved by induction. In particular, any configuration of at least pebbles solves . But one can say more about smaller -solvable configurations as well, with the use of a weight function . Define on by , and extend the weight function to configurations by . Then a pebbling step can only preserve or decrease the weight of a configuration. Since the weight of a configuration with a pebble on is at least , we see that is a lower bound on every -solvable configuration. In fact, induction shows that every -unsolvable configuration has weight at most , which equals . That is, this inequality characterizes -unsolvable configurations on . The Weight Function Lemma 2 generalizes this result on trees, and we explore the applications of the lemma in the following sections.

### 2.1 Linear Optimization

Let be a graph and be a subtree of rooted at vertex , with at least two vertices. For a vertex let denote the parent of ; i.e. the -neighbor of that is one step closer to (we also say that is a child of ). We call a strategy when we associate with it a nonnegative, nonzero weight function with the property that and for every other vertex that is not a neighbor of (and for vertices not in ). Let be the configuration with , for all , and everywhere else. With this notation note that the path result above can be restated: is -unsolvable if and only if and , where is the strategy with associated weight function .

###### Lemma 2

[Weight Function Lemma] Let be a strategy of rooted at , with associated weight function . Suppose that is an -unsolvable configuration of pebbles on . Then .

Proof.  By contrapositive and induction. The base case is when is a path, which is proved above. Suppose , let be a leaf of , and define to be the path from to in , with being the subpath from to its closest vertex on of degree at least 3 in (or if none exists). Denote by the tree , and among all such -unsolvable configurations, choose to be the one having largest weight on . The restriction of to witnesses that is a strategy for the root , so induction requires that . Likewise, the restriction of to witnesses that is a strategy for the root . Because and , we must have which by induction means that the restriction of to solves (and so ). Let be the resulting configuration after moving a pebble from to . Since is -unsolvable, so is . Now , but , which contradicts the initial choice of .

For a graph and root vertex , let be the set of all -strategies in , and denote by the optimal value of the integer linear optimization problem :

 Max. ∑v≠rC(v) s.t. w(C)≤w(T), and T∈T with witnessing weight function w . (1)

We also let be the optimum of the relaxation, which allows configurations to be rational. We will find the relation useful at times. The following corollary is straightforward.

###### Corollary 3

Every graph and root satisfies .

Proof.  By definition, the pebbling number is one more than the size of the largest unsolvable configuration.

Until now, one could only use trees in an individual manner: for every spanning tree rooted at . The Weight Function Lemma allows one to consider all subtrees rooted at (not only spanning trees) simultaneously, which we will see is significantly more powerful. One strength of the method is that the relaxation frequently has an integer optimum. This means that the dual solution will point out which tree constraints certify the result, and because the dual problem has only constraints there are at most that many such trees in the certificate. Experience has shown, however, that usually one can find a certificate with only trees (or sometimes a few extra). We will see this behavior starting in Section 3.

### 2.2 Basic Applications

We begin with the pebbling number of trees, whose formula was first discovered and proved in [7]. View a tree with root as a directed graph with every edge directed toward . Then a path partition of is a set of edge-disjoint directed paths whose union is . One path partition majorizes another if its nonincreasing sequence of path lengths majorizes that of the other. A path partition is maximum if it majorizes all others. We can use Corollary 3 to give a new proof of the following result of [7].

###### Theorem 4

For a tree and root we have , where denotes the length (number of edges) of .

Proof.  We begin by showing that a maximum size -unsolvable configuration has pebbles on leaves only, and in fact on all leaves. Indeed, if has a pebble on the nonleaf , then we define a pushback of at to be any configuration obtained by removing the pebbles from , adding pebbles to one of the children of , and adding pebble to all other children of . Certainly, if is -unsolvable and has no pebbles past (on the subtree of rooted at , minus itself), then the pushback will also be -unsolvable, and thus satisfy the constraints of . It will also be larger than . The configuration that places pebbles on the leaf of the path is one possible result of pushing back the empty configuration, and so satisfies the constraints of . Hence .

For the upper bound we prove that is optimal by using induction to show that the optimal configuration has pebbles on the leaf of for every . This is true if , so suppose and let denote one of the paths in whose leaf has the highest weight in , with a tie going to one of the shortest length. This is to guarantee that the graph , where is the root of , is a tree (i.e. is connected). In order to maximize the number of pebbles that satisfy we would transfer as many pebbles from to other leaves as possible because their weights are at most and we could add extra pebbles when the weight is smaller. But by induction on we know from the constraint that each , with equality for all if and only if is maximum. Therefore, since for all , we have

 w(yP)C(yP) ≤ ∑P∈Pw(P)−∑P∈P−{Q}w(yP)(2eP−1) = w(Q) = w(yQ)(2eQ−1) ,

which implies that .

A slight weakness of these tree constraints is that they do not classify unsolvable configurations on trees the way that they do on paths. This is because they let in a few solvable configurations. For example, consider the star on four vertices with one of its leaves as root . Then the configuration with pebbles on each of the other two leaves is -solvable and satisfies all tree contraints. Since it is the average of the two -unsolvable configurations that place either and or and on those other leaves, it cannot be cut out by the tree constraints that don’t cut out at least one of these two other constraints. In this case it doesn’t hurt us, since the strategy bound yields and the actual pebbling number is 5, but it can cause trouble on graphs in general. For example, we know that the 3-cube in Figure 2 has pebbling number 8, so that the shown configuration is solvable (pebbles from to top must be split in two directions in its solution). However, no strategy recognizes its solution, and Corollary 3 yields only (the three rotations of the strategy in the center in Figure 2 certify this). One can see where the aforementioned star appears in the Figure 2 configuration on and is exploited accordingly: moving pebbles from the along one edge yields a configuration, while splitting the moves along two edges yields a configuration.

## 3 General Applications

In this section we illustrate the method more fully by presenting short proofs of both known and new results. We begin by relaxing strategies in the following way. We now use the term basic to describe the strategies as currently defined. A nonbasic strategy will satisfy the inequality in place of the equality used in a basic strategy (see Figure 2). The following lemma shows that we can use nonbasic strategies in an upper bound certificate since they are conic combinations of a nested family of basic strategies. Thus the use of nonbasic strategies can simplify and shorten certificates significantly.

###### Lemma 5

If is a nonbasic strategy for the rooted graph , then there exists basic strategies for and nonnegative constants so that .

Proof.  We use induction, as the result is true when has two vertices since is basic then. Given , let be a basic strategy on the edge set of , define to be the largest constant for which , and denote . Then some vertex of satisfies , so has fewer vertices than . Also, because is basic, any vertex whose unique -path contains also satisfies , which means that is connected, and hence a strategy. Moreover, is nonbasic since every nonneighbor of has . By induction, is a conic combination of basic strategies, and so therefore is .

We use conic combinations of strategies to derive, for some , the inequality for -unsolvable configurations . From this we surmise that . Instead of writing our strategies algebraically, it will be somewhat easier to show them graphically. We will display them so as to derive for some sequence with , and let the reader divide by . In fact, in many instances we will derive for all , which makes for the following observation.

###### Lemma 6

[Uniform Covering Lemma] Let be a set of strategies for the root of the graph . If there is some such that, for each vertex , we have , then .

### 3.1 Specific Graphs

It has been said in jest that every graph theory paper should contain the Petersen graph, so we get it out of the way first.

###### Theorem 7

Let denote the Petersen graph. Then .

Of course, the vertex lower bound implies , but since the focus of this paper regards upper bounds, we prove them only.

Proof.  The strategies shown in Figure 3 certify the result.

Without such nice symmetry, the Lemke graph requires a different certificate for each possible root.

###### Theorem 8

Let denote the Lemke graph and suppose . Then .

Proof.  We show the strategies for each root vertex in turn, below.

For :

For :

Without the edge , the resulting graph would view and symmetrically. Using that symmetry, the solutions for become solutions for .

For :

For we use the solutions from the case given by the appropriate symmetry.

For :

Because of the -cube-like configuration with on , the best that our tree strategies can muster is . Thus, to show that is Class 0 one must handle by more traditional methods.

To illustrate that larger graphs can be tackled, we move on to one of order 24 that is not Class 0. Define the (weak) Bruhat graph of order (see Figure 4) to have all permutations of as vertices, with an edge between pairs of permutations that differ by an adjacent transposition. One can recognize it as the Cayley graph of , generated by adjacent transpositions, and also note that is the cubic Ramanujan (expander) graph of [6]. Intuitively, expander graphs would seem to have low pebbling numbers, but because has diameter 6 we have the lower bound . We give here a fairly tight bound.

###### Theorem 9

Let be the Bruhat graph of order 4. Then .

Proof.  Because the graph is vertex transitive, only one root must be checked. The strategies shown in Figure 4 certify the result. We combined them into one figure, separated by edge styles.

Next we consider , the square of the Lemke graph . Because has diameter 3, has diameter 6, and so . Strategies deliver the following upper bounds. Since the bounds are not that tight, we do not pursue bounds for all vertices, although it is likely (since is the most problematic root in ) that the upper bound of works for all roots .

###### Theorem 10

Let be the square of the Lemke graph . Then

 π(L\vbox\hruleheight0.4ptwidth100ptheight3.0pt\vrulewidth0.4pt\hruleheight0.4ptwidth100L,(r,r))≤{108if r=v1 ,96if r=v8 , and68if r=v4 .

Proof.  For one can verify that a quarter of the sum of the four strategies in Figure 5 yields the weights

 T3v1v2v3v4v5v6v7v8v108814112v284121111v384111111v441111111v512111111v611111111v711111111v821111111 ,

giving the bound of . One verifies that each is a strategy by making sure that each nonzero entry has a corresponding entry in its column or row with at least twice its weight that is joined to it by an edge in the appropriate copy of .

We use a similar argument when , using the strategies from Figure 6, along with their transposes, and divide by 8 to obtain the bound .

Likewise, for , the strategies and their transposes from Figure 7 yield an upper bound of .


text:
# What's the mass of $D_1(2430)^{\pm}$?

What's the mass of $$D_1(2430)^{\pm}$$? The standard reference http://pdglive.lbl.gov/ParticleGroup.action?init=0&node=MXXX035 only shows the data for $$D_1(2430)^0$$ but not for $$D_1(2430)^{\pm}$$. For some other particles that similarly have "cousins" with different electric charges, the listing will

1. either have a separate page for the charged ones and another for the neutral ones (e.g. a page labeled $$D_0^*(2400)^{\pm}$$ and another page labeled $$D_0^*(2400)^{0}$$), or
2. one page for all the differently charged "cousins" (e.g. one page labeled $$b_1(1235)$$ that supposedly should work for $$b_1(1235)^0$$, $$\overline{b}_1(1235)^0$$, $$b_1(1235)^+$$, $$b_1(1235)^-$$.)
• What makes you think it isn't 2430 MeV? That is how I understand the nomenclature. – rob Dec 29 '18 at 3:38
• The fact many particles whose name have such a parenthetical integer in Review of Particle Physics actually have a different and/or a more accurate mass value. – qazwsx Dec 29 '18 at 3:40
• For example, pdglive.lbl.gov/DataBlock.action?node=M185M – qazwsx Dec 29 '18 at 3:52

You have also asked a similar question for the b1 meson and were told in the comments that the accuracy of measuring the masses of these resonances, and possibly the data available , is less than the minimum sigmas (of PDG fits to values of different experiments) away from each other. In this case the mass in the parenthesis is the mass of the resonance, and neutral to charged cannot be separated with any accuracy.

To get a feeling for magnitudes in MeV look at the $$D^0$$ mass and errors versus $$D^+$$ ,page 7 here for acceptable errors .

The mass difference is 4.822+/-0.015 MeV . It means that there are many experiments measuring masses with accuracy.

For the ones where there is no separation of the masses ,charged from neutral, in general it means that there is no statistical separation in the measured values, also possibly not enough experiments. The resonance signal is there, but the calculated errors are too large to separate the masses of charged to neutral with any accuracy.

The particular D you are asking about seems to have only a zero charged mode anyway, there is one experiment that has seen it and its decay mode is to a $$D^*(2010)$$ $$π^-$$. The width is large and with large errors, so it needs more experimental evidence, though it has been published. You have to go to the original paper to see whether it is an only neutral resonance or more measurements are needed to clear up its structure.

• So the fact $D_1(2430)^0$ has its own page and explicitly labels the charge with a superscript 0 is not significant? The data on that page also applies to $D_1(2430)^{\pm}$? If that's true, I'd expect the particle's name in that page is simply $D_1(2430)$ as many other similar cases, e.g. pdglive.lbl.gov/DataBlock.action?node=M099M labeled with $K_1(1650)$ but applies for all the different charge states $K_1(1650)^0$, $\bar{K}_1(1650)^0$, $K_1(1650)^+$, and $K_1(1650)^-$ due to the experimental data's limited accuracy. – qazwsx Dec 29 '18 at 4:24
• No , it could also be a neutral only resonance as the ω or η. It means no experiment has seen a charged mode, so it is an open question for the next experiements – anna v Dec 29 '18 at 4:28
• So, basically $D_1(2430)^{\pm}$ have not been observed, and that's why PDG lists the mass explicitly for the neutral $D_1(2430)^{0}$ only. But for the example of $K_1(1650)$, all those four "cousins" have been observed, but the accuracy is not good enough to have their different masses, so there is only one page labeled $K_1(1650)$. Right? – qazwsx Dec 29 '18 at 4:44
• yes, thats it in a nutshell – anna v Dec 29 '18 at 4:45
• I added the two examples, that should clarify why it was confusing to me. – qazwsx Dec 29 '18 at 4:53


text:
Homework Chp 5 Update – problem #20

Hi everyone,

Problem #20 in Chapter 5 uses an idea that we have *not* yet covered in class.  It is no longer a required problem – you don’t have to do it – but I will give you extra credit if you turn in a solution.  This is excellent practice in reading and applying a definition (just as we have been doing for the definitions of odd, even, divides, and so on).  The problem relies on a new definition, that of congruence mod n – it appears in the book as Definition 5.1 on page 105, but I will also give it here:

Definition.  Given integers a and b, and $n \in \mathbb{N}$, we say “a is congruent to b mod n”, or $a \equiv b \pmod n$, if
$n | (b-a)$.

For example, if are told that $x \equiv 7 \pmod 3$, then we can conclude:
$3|(7-x)$  (by the definition of congruence), and
$7-x = 3k$ for some integer $k$ (by the definition of divides)

Hope this helps!  Please write back and let me know if you have any questions.

Best of luck,
Prof. Reitz


text:
## Discussion:

The time until something is due is always important. There are a lot of countdown timers which are available. There are a lot of interesting ways to implement a countdown timer. In restricted IT environments, where installing applications is frowned upon, one approach to creating a lightweight application is using HTML Applications (HTA).  The following example shows how to use an HTA to build a standalone countdown timer which is displayed as a window.

Several techniques are used to make this countdown timer work. First, the name of the file is parsed to determine the target date and time. This way, the remaining time can be set by renaming the file. Next, javascript is used to rewrite a portion of the document by assigning a value to the ‘innerHTML’  of  div element. Then, the countdown function is called once when the body of the document is loaded. However, once the function is called, the last thing it does is reschedule itself to run again in 1 second. Finally, this file, which looks like an HTML file is saved as with the extension HTA.

## Code Example:

<TITLE>Countdown Timer</TITLE>
<HTA:APPLICATION
ID="oMyApp"
APPLICATIONNAME="CountDownTimer"
BORDER="yes"
CAPTION="yes"
SINGLEINSTANCE="yes"
WINDOWSTATE="normal"
MAXIMIZEBUTTON="no">

• IE9
• Win7


text:
# Smoothness of ramification divisor

Let $f:X \to Y$ be a finite morphism of smooth projective surfaces over a field $k$ of characteristic $0$. Is the branch divisor $B \subset Y$ a smooth curve?

The answer is negative if $\mathrm{cha}(k) = 2$. Consider the del Pezzo surface of degree $2$ given by $$X: \quad w^2 + xyw = f(x,y,z) \subset \mathbb{P}(1,1,1,2),$$ where $f$ is homogeneous of degree $4$. Then the projection $(x,y,z,w) \mapsto (x,y,z)$ is a separable double cover branched over the reducible plane curve $xy = 0 \subset \mathbb{P}^2$ when $\mathrm{cha}(k) = 2$. In particular it is singular curve, even though $X$ is smooth over $k$ when $f$ is general.

• You might find useful results in Edixhoven-de Jong- Schepers article Covers of surfaces with fixed branch locus Jul 12 '18 at 20:56
• I do not understand this question. For a smooth surface $X$ in $\mathbb{P}^n$, for a general linear projection from $X$ to $Y=\mathbb{P}^2$, the branch divisor is almost never smooth. Classically, the double points, cusps, etc., of the branch divisor were the invariants that were studied in trying to understand the geometry of polarized surfaces. For instance, for a hypersurface in $\mathbb{P}^3$, the double points correspond to bitangent lines that contains a specified general point of $\mathbb{P}^3$. These numbers were stand-ins for Chern numbers prior to Chern. Jul 12 '18 at 21:41
• I see, I had no idea of this theory. I'm just familiar with the case of double covers, where I believe the branch curve is always smooth. Jul 12 '18 at 21:55
• Here is a classical example when the branching divisor is not smooth. Take $\mathbb C^2\to \mathbb C^2$ with $(x,y)\to (x^2,y^2)$. This extends to a map $\mathbb CP^2\to \mathbb CP^2$. Jul 12 '18 at 23:06
• Even that is too optimistic. It might help to take a look at this paper in combination with Jason's comment above arxiv.org/abs/0811.0467 Jul 14 '18 at 9:18

This is by no means true. Local examples exist thanks to classical Vieta formulas https://en.wikipedia.org/wiki/Vieta%27s_formulas

The following is an exercise (about Vieta formulas), it provides a counter-example for smooth affine surfaces

Exercise: Consider the action of $$S_3$$ on the plane $$x_1+x_2+x_3=0$$ in $$\mathbb C^3$$ by permutations. Then the quotient $$\mathbb C^2/S_3$$ is again $$\mathbb C^2$$ and the branch divisor is the cuspidal cubic $$x^2=y^3$$ in $$\mathbb C^2$$.

If you want to make the surfaces projective, take an elliptic curve $$E$$ with a line bundle $$L$$ of degree $$3$$ then the projectivisation of the space of non-zero sections of $$E$$ is $$\mathbb CP^2$$. On the other hand this $$\mathbb CP^2$$ is a quotient of a complex $$2$$-torus (an Abelian surface) by $$S_3$$. The branch divisor in $$\mathbb CP^2$$ is a curve of degree $$6$$ with $$9$$ cusps - it is dual to a smooth cubic curve in $$\mathbb CP^2$$.